Unity3D/C#
2020. 10. 14.
시스템 시간을 이용한 프레임 영향이 없는 타이머(Timer) 스크립트
타이머를 만들다 보면, 프로그램이 일시 정지가 됐을 때 의도적으로 타이머도 정지하는 경우가 있는가 하면, 프로그램이 멈추거나 프레임이 느려지더라도 영향을 받지 않고 실제 시간을 반영하고 싶을 때가 있습니다. 이런 경우 단순히 time.deltaTime을 이용하거나 유니티 플레이 타임인 time.Time을 이용하는 것으로 구현하는 것은 거의 불가능합니다. 프로그램이 멈추더라도 항상 시간은 계산되고 있는 하드웨어의 시스템적인 요소를 이용해야 합니다. 유니티는 System이라는 namespace에 접근하고 DateTime이라는 struct에 접근해서 시간 관련 함수나 변수에 접근할 수 있습니다. 우리는 이러한 고유의 System 시간을 이용해서 구현을 할 것입니다. 현재 날짜와 시간을 Second로 표시하는 ..