Hierarchy창에 Car 게임오브젝트를 움직이도록 하기 위해서 Move.cs 이란 C#을 만듭니다.
Hierarchy창에 있는 Car 게임오브젝트에 Move.cs 이란 C#을 연결하기 위해서 Assets 폴더에 있는 Move.cs를 왼쪽 마우스버튼으로 잡고서 끌어다가 Hierarchy창의 Car 게임오브젝트에 놓습니다. 그러면 Car 게임오브젝트의 Inspector 창에 Move(Script) 컴포넌트가 추가 됩니다.
Move.cs의 Update() 함수에 화살표키(위,아래,오른쪽,왼쪽 키)를 누르면 Car 게임오브젝트가 움직이도록 합니다.
Transform이란 컴포넌트는 움직임이나 크기, 회전 등의 기능을 바꿀 수 있습니다.
* Move.cs
void Update( )
{
if (Input.GetKey(KeyCode.RightArrow))
{
transform.Translate(10 * Time.deltaTime, 0, 0);
}
if (Input.GetKey(KeyCode.LeftArrow))
{
transform.Translate(-10 * Time.deltaTime, 0, 0);
}
if (Input.GetKey(KeyCode.UpArrow))
{
transform.Translate(0, 10 * Time.deltaTime, 0);
}
if (Input.GetKey(KeyCode.DownArrow))
{
transform.Translate(0, -10 * Time.deltaTime, 0);
}
}
화살표키(위,아래,오른쪽,왼쪽 키)를 누르면 Car 게임오브젝트가 움직입니다. 그런데 오른쪽 왼쪽키를 눌렀을 때 바라보는 방향이 바뀌도록 하려고 SpriteRenderer 컴포넌트에 있는 flipX를 이용합니다.
* Move.cs
void Update( )
{
if (Input.GetKey(KeyCode.RightArrow))
{
GetComponent<SpriteRenderer>( ).flipX = false;
transform.Translate(10 * Time.deltaTime, 0, 0);
}
if (Input.GetKey(KeyCode.LeftArrow))
{
GetComponent<SpriteRenderer>( ).flipX = true;
transform.Translate(-10 * Time.deltaTime, 0, 0);
}
if (Input.GetKey(KeyCode.UpArrow))
{
transform.Translate(0, 10 * Time.deltaTime, 0);
}
if (Input.GetKey(KeyCode.DownArrow))
{
transform.Translate(0, -10 * Time.deltaTime, 0);
}
}
'유니티' 카테고리의 다른 글
[유니티 2D] 미로 - Collider 컴포넌트 추가하기 (0) | 2024.03.10 |
---|---|
[유니티 2D] 미로 - 물리법칙 Rididbody 2D 적용하기 (0) | 2024.03.10 |
[유니티 2D] 미로 - 벽 만들기 (0) | 2024.03.10 |
[유니티 2D] 미로 - Car 추가하기 (0) | 2024.03.10 |
[유니티 2D] 게임오브젝트 드래그 움직이기 (0) | 2024.03.10 |