매 프레임 이동하기
Coddy Unity 여정의 Unity 스크립팅 기초 섹션에 포함된 레슨. 85개 중 10번째.
Unity는 그리는 각 프레임마다 Update()를 한 번 호출합니다. 그 안에서 위치를 조금씩 바꾸면 매 프레임 오브젝트가 조금씩 움직이고, 화면에서는 부드러운 움직임처럼 보입니다.
위치에 +=를 사용하면 위치에 Vector3를 더합니다. 즉, x, y, z 각각이 해당하는 숫자만큼 커집니다. 이 풍선은 매 프레임 0.02단위씩 상승하며 x와 z 위치는 그대로 유지됩니다.
void Update()
{
transform.position += new Vector3(0, 0.02f, 0);
}f는 이미 알고 있는 C#의 float 접미사입니다. Unity는 float를 사용하며, 0.02만 쓰면 double이 됩니다. 초당 60프레임일 때 풍선은 1초마다 0.02 x 60 = 1.2단위씩 상승합니다.
챌린지
쉬움빨간 자동차를 앞으로 움직이세요.
Update()에서+=를 사용해new Vector3(0, 0, 0.05f)를transform.position에 더하세요.- x와 y는
0으로 유지하세요. 자동차는 z축을 따라서만 움직입니다.
‘플레이’를 누르세요. 자동차가 카메라에서 멀어집니다. 그런 다음 ‘확인’을 누르세요.
직접 해보기
using UnityEngine;
public class CarMover : MonoBehaviour
{
void Update()
{
// 여기서 자동차를 z축을 따라 앞으로 이동시키세요
}
}
Unity 스크립팅 기초의 모든 레슨
직접 연습해 보세요: Unity 플레이그라운드