✨Feat 플레이어 좌우앞뒤 이동
플레이어의 방향을 전환하기 위해서
transform.eulerAngles = new Vector3(0, 90, 0)과 같이 오브젝트의 rotation 값을 바꿔주어
각각 방향키를 눌렀을 때 플레이어의 rotation 값이 변경되도록 했다.
처음에는 플레이어 방향전환 기능을 만들었을 때
오른쪽 방향키를 누르면 오른쪽으로 90도로 회전하도록 했다.
그랬더니 방향키를 누를 때마다 rotaition값이 계속 +90씩 추가되어서
오른쪽으로 가는 것이 아니라 오른쪽 회전 후 앞으로 나가서
플레이어가 계속 뱅뱅 돌게 되는 문제가 생겼다.
오른쪽 방향키를 눌렀을 때 rotation값을 (0, 90,0)으로 변경되도록 하니까
뱅뱅 도는 문제없이 오른쪽으로 이동만 할 수 있게 되었다.
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class Player : MonoBehaviour
{
// Start is called before the first frame update
void Start()
{
}
// Update is called once per frame
void Update()
{
if (Input.GetKeyDown(KeyCode.UpArrow) | Input.GetKeyDown(KeyCode.DownArrow) | Input.GetKeyDown(KeyCode.LeftArrow) | Input.GetKeyDown(KeyCode.RightArrow))
{
//Move forward
if (Input.GetKeyDown(KeyCode.UpArrow))
{
transform.eulerAngles = new Vector3(0,0,0);
}
// Move backward
if (Input.GetKeyDown(KeyCode.DownArrow))
{
transform.eulerAngles = new Vector3(0,-180,0);
}
//Move left
if (Input.GetKeyDown(KeyCode.LeftArrow))
{
transform.eulerAngles = new Vector3(0,-90,0);
}
//Move right
if (Input.GetKeyDown(KeyCode.RightArrow))
{
transform.eulerAngles = new Vector3(0,90,0);
}
transform.Translate(Vector3.forward * 2);
}
}
}
'유니티 > [길건너 친구들] 클론코딩' 카테고리의 다른 글
[Unity] #2 플레이어 이동 바운더리 제한 (0) | 2023.01.03 |
---|---|
[Unity] #0 길건너 친구들(Crossy Road) 클론코딩 (0) | 2023.01.02 |