[Unity] Coroutine과 TimeScale

a-a·2024년 6월 4일

알쓸신잡

목록 보기
2/26

다양한 게임 장르에서 게임 일시 중지가 필요하다.
설정 창을 연다거나, 많은 이유에서 게임은 중지될 수 있다.

이때 사용하는 방법이 다양하게 있지만 TimeScale이다.

TimeScale은 DeltaTime에 영향을 주는 변수이다.
따라서, 어떤 물체에 DeltaTime이 곱해진 경우, 단순히 TimeScale만 0으로 바꿔준다면 게임을 멈출 수 있다.

다만, DeltaTime을 사용은 하지만 TimeScale에 영향을 받지 않고 싶은 경우가 있다.
UI 연출이라던가, 효과라던가 등등

이 글을 포스팅하는 이유는
코루틴의 WaitForSeconds 등등 프레임을 체크하는 함수가 TimeScale에 실시간으로 영향을 받아 대기 시간이 줄어들고 늘어나는 것을 몰랐다.

profile
"게임 개발자가 되고 싶어요."를 이뤄버린 주니어 0년차

0개의 댓글