키보드로 캐릭터를 움직이는 방법이다.
방향키 상하좌우에 따라서 자동차 이미지가 해당 방향으로 움직인다.
자동차 이미지를 씬뷰에 배치한뒤, 스크립트 코드를 자동차 오브젝트에 적용한다.
C#코드
using UnityEngine;
public class KeyInputMove : MonoBehaviour
{
public float speed = 2;
float x = 0;
float y = 0;
// Update is called once per frame
void Update()
{
Debug.Log("Update");
//키 입력없을때는 정지하기 위해서
x = 0;
y = 0;
//오른쪽 방향키 입력시
if(Input.GetKey("right")){
x = speed;
}
//왼쪽 방향키 입력시
if (Input.GetKey("left"))
{
x = -speed;
}
if (Input.GetKey("up"))
{
y = speed;
}
if (Input.GetKey("down"))
{
y = -speed;
}
}
private void FixedUpdate()
{
//좌표점 이동 하기
transform.Translate(x/50, y/50, 0);
}
}
- Update() 함수에서 키 입력 구현을 한다.
그 이유는 고정적으로 1초에 50번만 실행하는 FixedUpdate()함수는 키보드 입력값을 놓칠수도 있기에
Update()함수에서 입력에 키 값에 따라 x,y 좌표점을 설정한다.
- 키 입력을 없을때는 x,y 값을 0으로 초기화 해야지만 캐릭터 가 계속해서 움직이지 않는다.
- FixedUpdate()에서는 실제로 좌표점 이동을 구현한다.
반응형
'앱 만들기 > 유니티2D 게임 만드는 방법' 카테고리의 다른 글
유니티 캐릭터 가로로 움직이는 방법(물리엔진 속도 적용) (1) | 2024.11.02 |
---|---|
유니티 키보드로 캐릭터 움직이는 방법(2) - 이미지 좌우 뒤집기 (0) | 2024.11.01 |
유니티 트레이스 출력 방법 (0) | 2024.10.30 |
유니티 캐릭터 좌우로 왕복으로 움직이는 방법 (0) | 2024.10.29 |
유니티 캐릭터 회전 시키는 방법 (0) | 2024.10.28 |
댓글