총알이 1 프레임당 1m를 간다고 가정했을 때
10 FPS인 A 컴퓨터가 1초에 10m를 움직일 때 20 FPS인 B 컴퓨터는 20m를 움직이게 되므로 싱크가 맞지 않게 된다.
컴퓨터 성능에 따라 달라지는 현상들을 막기 위해서
Time.DeltaTime은 10FPS 이면 1초에 10 프레임이니까 1/10(10분의 1) 0.1초이고, 20 FPS 이면 1초에 20 프레임이니까 1/20(20분의 1) 0.05초가 된다.
detlaTime을 적용하면
10 FPS 컴퓨터에서 1 프레임당 1m 이동하는 총알이 1초에 1m 이동(10 프레임 * 1m * 0.1)하고
20 FPS 컴퓨터에서 1 프레임당 2m 이동하는 총알이 1초에 1m 이동(20 프레임 * 1m * 0.05)하게 된다.
A컴퓨터는 1초에 10m 이동하였고 B컴퓨터는 1초에 20m를 이동하였지만 DeltaTime을 곱해줌으로써 각각의 컴퓨터 성능이 달라도 동일한 수치를 구할 수 있다.
'게임개발 > 유니티 엔진' 카테고리의 다른 글
Game Object 파괴시 null 처리 (0) | 2024.03.15 |
---|---|
네비게이션 시스템 (0) | 2024.03.10 |
Coroutine(코루틴) (0) | 2024.03.07 |
오브젝트 풀링(Object Pooling) (0) | 2024.03.06 |
UI 이벤트 시스템 (0) | 2024.03.04 |