프로그래밍-1/Unity3D

Unity3D에서 자주 쓰고 있는 C# 코드 (1) - player 움직임 부분 (1)

daslyee 2013. 8. 15. 12:22
728x90

※ 설명하기에 앞서서 Unity3D의 기초를 익힌 상태에서 보는 것이 이해가 빠를 것이라고 생각된다.


1. player(자기자신) 움직임


 /* player를 움직이게 만드는 명령어, 변수를 곱해도 되며 Time.deltaTime을 이용함으로써 모든 성능에서 동일하게 동작하게 만듬. */


float h= Input.GetAxis("Horizontal")* Time.deltaTime;
transform.Translate(Vector3.right* h* 100 *Time.deltaTime); //좌우.

 float v= Input.GetAxis("Vertical")* Time.deltaTime; 
transform.Translate(Vector3.up* h* 100 *Time.deltaTime); //위아래.



/* 점프를 하는 부분은 매우 다양함으로 그 중에 두개만 뽑아보았다. */


/*bool함수를 이용한 방법.*/


/*JumpB가 true되는 조건은 사용자의 판단에 맞기겠다.*/


if(Input.GetKey (KeyCode.Space) && JumpB == true ){
	rigidbody.velocity = Vector3.up * jump *Time.deltaTime; //위로 점프.
	JumpB = false;
} 



/*쿨타임을 이용한 방법.*/

/*nextfireQ값은 0으로 고정.firerateQ값이 10이라고 지정되어있다면 쿨타임이 10초가 되는 것이다.*/



if(Input.GetKey (KeyCode.Space) && Time.time > nextfireQ){    
	nextfireQ = Time.time + firerateQ; 
	rigidbody.velocity = Vector3.up * jump *Time.deltaTime; //위로 점프.
}


이밖에도 스킬 사용,  아이템 사용, 슬라이딩 등등 많은 것들이 있다. 주로이용하는 것은 Input.GetKey(KeyCode.자신이누르면발생되는키) 를 많이 이용한다. 





728x90