▣ 코드 설명
slowMotionScale: 슬로우 모드에서 적용할 시간 비율입니다. 예를 들어 0.5로 설정하면 게임 속도가 절반으로 느려집니다.
defaultTimeScale: 기본 게임 속도입니다. 보통은 1로 설정합니다.
isSlowMotion: 현재 슬로우 모드인지 여부를 저장하는 불리언 변수입니다.
Input.GetKeyDown(KeyCode.Q): Q 키가 눌렸을 때 슬로우 모드를 토글(toggle)합니다.
Time.timeScale: 게임의 시간 속도를 조정하는 핵심 변수입니다. 1은 정상 속도, 0.5는 절반 속도를 의미합니다.
Time.fixedDeltaTime: 물리 계산에서 사용하는 시간 델타 값을 조정하여, 슬로우 모드에서도 물리 연산이 부드럽게 유지되도록 합니다.
▣ Time.fixedDeltaTime은 Unity에서 물리 연산을 처리할 때 사용하는 고정 시간 간격을 제어하는 변수입니다. 게임의 물리적 업데이트(Physics update)는 Update() 함수가 아닌 FixedUpdate() 함수에서 실행되며, Time.fixedDeltaTime은 이 고정된 시간 간격을 의미합니다. 기본값은 0.02초(50 프레임/초)입니다.
즉, Time.fixedDeltaTime은 물리 연산이 얼마나 자주 실행되는지를 결정하는 값입니다. 이 값이 작으면 물리 연산이 자주 실행되고, 크면 덜 자주 실행됩니다. 게임의 프레임 속도와는 별개로 고정된 간격으로 실행됩니다.
https://docs.unity3d.com/ScriptReference/Time-fixedDeltaTime.html
https://docs.unity3d.com/ScriptReference/Time-timeScale.html
'[ Unity ] > - 유니티 실습' 카테고리의 다른 글
유니티 FogEffect (0) | 2024.10.11 |
---|---|
유니티 프로젝트 템플릿 메뉴 (3) | 2024.10.10 |
유니티 Material Tiling (4) | 2024.10.10 |
유니티 AI 상태 코드 (0) | 2024.10.04 |
유니티 3D Weapon Fire(RayCast, 반동, 쉐이크) (4) | 2024.10.03 |
댓글