Unity와 IMU 센서를 연결해 특정 구역에서 특정 구역까지 걸리는 시간을 체크하고자 합니다.
// 동작 1
long eventPrevTime = DateTime.UtcNow.Ticks / TimeSpan.TicksPerMillisecond;
// 1 sec = 10,000,000 ticks
// 동작 2
long curTime = DateTime.UtcNow.Ticks / TimeSpan.TicksPerMillisecond;
if (curTime - eventPrevTime >= 5000)
{
//Debug.Log("######################## 초기화 ###########################");
}
- UtcNow : To Universal Time (협정 세계시)
- Tick
- 1 s = 1000 ms
- 1 ms = 10,000 ticks
- 따라서, 1 sec = 10,000,000 ticks
Ticks를 사용하면 더욱 정밀한 시간차를 구할 수 있습니다.
- / TimeSpan.TicksPerMillisecond : / (Tick / ms)
TimeSpan.TicksPerMillisecond 로 나눠 주면 단위가 Ticks → ms 로 바꿔주는 역할을 합니다.
ex) 50,000 ticks = 5ms
(50,000 tick / 1) / (1 tick / ms) = 5ms
위 코드에서 실행 전 에는 eventPrevTime를, 실행 후에는 curTime을 실행시켜서
두 이벤트 사이의 정밀한 시간차를 구할 수 있습니다.
'C# & Unity' 카테고리의 다른 글
[C# / Unity] Unity의 'Quaternion.Euler' C# 코드로 만들기 (2) | 2022.09.23 |
---|