Metaverse/Unity

deltaTime & fixedDeltaTime

onenewkong 2023. 4. 5. 16:21

deltaTime 용도

: 타겟 디바이스마다 성능 격차로 인해 프레임 수행 시간이 다를 것을 대비해 보정하기 위해 사용됨

  • 전 프레임이 완료되기까지 걸린 시간을 말함
  • 컴퓨터의 성능이 나쁠수록 값이 커짐
  • 한 프레임이 완료되기까지 걸린 시간이 1초면 1, 10초면 10이 됨 

 

 

deltaTime

Time.deltaTime을 통해 참조

: 이전 프레임의 발생 시각과 현재 프레임의 발생 시각 사이의 시간 간격, 즉 이전 프레임의 수행에 걸린 시간 의미

Update() 내에서 시간의 진행에 따른 일정한 기능을 구현하기 위해 Time.deltaTime을 이용해 보정

 

 

 

fixedDeltaTime

Time.fixedDeltaTime을 통해 참조

: 기본적으로 물리 업데이트 발생 주기, 즉 Fixed Time Step 값을 의미

마찬가지로 FixedUpdate() 내에서 Time.fixedDeltaTime을 이용해 보정

 

  • FixedUpdate() 내에서 Time.deltaTime을 참조해도 실제로는 Time.fixedDeltaTime의 값이 참조됨
  • 반대로, Update() 내에서 Time.fixedDeltaTime을 참조하면 그대로 Time.fixedDeltaTime의 값이 참조되니 주의해야 함
  • 타겟 디바이스의 성능에 따른 보정을 위해 deltaTime 사용 시 Update()와 FixedUpdate() 내에서 Time.deltaTime을 똑같이 참조해도 각각 의도에 맞게 사용

'Metaverse > Unity' 카테고리의 다른 글

Object Pool  (0) 2023.05.06
C# / 싱글톤 디자인 패턴  (0) 2023.05.06
Raycast  (0) 2023.04.05
OnCollision & OnTrigger  (0) 2023.04.05
VR / VR 360 Player  (0) 2023.01.10