티스토리 뷰

<"강의 3"에서 오브젝트를 움직이는 것에 성공했습니다>

강의 3에서 저희는 게임 오브젝트에 PlayerMove_1을 드래그 앤 드랍(상속)시켜서 오브젝트를 움직이게 하는 것을 성공했습니다. 그런데 문제가 있습니다.

<가깝지만 만날 수 없는 너..>

플레이어 캐릭터와 적이 동일한 속도로 움직이기 때문에 만날 수가 없습니다. 두 오브젝트의 속도를 동일한 C# Script로 바꾸는 방법에 대해 알아보도록 하겠습니다.

PlayerMove_1 클래스에 public float m_fSpeed; (멤버변수)를 추가했습니다. 이걸 추가하면 뭐가 바뀌는지 유니티에서 확인 해봅시다.

유니티로 돌아와서 PlayerMove_1 스크립트를 추가한 오브젝트를 선택해보면 Inspector에서 새로운 것을 확인할 수 있습니다. 추가한 멤버변수의 값을 유니티에서 바꿀 수 있는데요. 이것을 활용해 각 오브젝트의 속도를 바꿀 수 있습니다.

현재 코드를 보면 m_fSpeed와 Time.deltaTime을 곱하고 있죠. 유니티에서 m_fSpeed의 값을 수동으로 바꿀 수 있으니 각 각 오브젝트마다 값을 바꿔주면 다른 속도로 이동할 수 있겠죠?

<이제 독수리가 여우를 잡을 수 있다!>

여우는 m_fSpeed = 1, 독수리는 m_fSpeed = 3을 주었습니다. 이제 독수리가 여우보다 빠르군요.


이상으로 간단하게 각각의 오브젝트에 속도를 다르게 주는 방법에 대해 알아보았습니다. 감사합니다.

댓글