[Unity] 유니티의 업데이트 함수들
본문 로딩 중...
댓글 0
댓글을 작성하려면 로그인이 필요합니다.
아직 댓글이 없습니다. 첫 번째 댓글을 작성해보세요!
게임 로직, 상호작용, 애니메이션, 카메라 포지션 트래킹 등 다양한 상황에서 사용할 수 있는 업데이트 함수들이 존재한다.일반적으로 Update 함수에 대부분의 작업을 수행하지만, 상황에 따라 적절한 함수를 선택하는 것이 중요하다.
매 프레임마다 실행되는 기본 업데이트 함수
Update는 프레임마다 한 번 호출됩니다. 프레임 업데이트를 위한 주요 작업 함수이다.
고정된 시간 간격으로 업데이트 되는 함수
모든 물리 계산 및 업데이트는 FixedUpdate후 즉시 실행된다.
Update가 전부 끝난 후 실행되는 함수
LateUpdate는 Update가 끝난 후 프레임당 한 번 호출된다.
using UnityEngine;
public class UpdateOrderTest : MonoBehaviour
{
private void FixedUpdate()
{
if (Time.frameCount > 3) return;
Debug.Log($"[Frame {Time.frameCount}] 1. FixedUpdate");
}
private void Update()
{
if (Time.frameCount > 3) return;
Debug.Log($"[Frame {Time.frameCount}] 2. Update");
}
private void LateUpdate()
{
if (Time.frameCount > 3) return;
Debug.Log($"[Frame {Time.frameCount}] 3. LateUpdate");
}
}
각 Update마다 Time.frameCount를 통해 시작 후 3프레임 까지 누적 프레임 수를 로그로 찍었다

위는 실행 결과고 LateUpdate는 Update뒤에 바로 실행되는 것을 확인할 수 있다.
재미있는 점은 FixedUpdate가 Frame3에서 4번 호출됐는데
Update가 실행되기 전까지 밀린 물리 연산이 한꺼번에 처리된 것이다.