unity - time 관련 함수
반응형
1. 시간 계산 방법
void Update ()
{
_playTime = Time.time;
_days = (_playTime/86400) % 365; // 24hour * 60m * 60sec
_hours = (_playTime/3600) % 24;
_minutes = (_playTime/60) % 60;
_seconds = (_playTime%60);
_fractions = (_playTime*10) % 10;
print ("M:"+_minutes +" S:"+_seconds + " F:"+_fractions);
} 2. GUI를 사용한 시간 출력
void OnGUI()
{
GUILayout.Label("PlayTime " + _playTime);
GUILayout.Label("Minutes " + _minutes.ToString("f0"));
GUILayout.Label("Seconds " + _seconds.ToString("f0"));
GUILayout.Label("PlayTime " + _fractions.ToString("f0"));
}
3. 경과 시간 재기.
4. 레벨 로드 타임.
_fromLoadTime = Time.timeSinceLevelLoad;
5. time 속도
3. 경과 시간 재기.
void Update ()
{
if(_timeActive)
{
_playTime = Time.time;
}
if(Input.GetKey("1"))
{
_startTime = Time.time;
}
_fromStartTime = Time.time - _startTime;
}
_fromLoadTime = Time.timeSinceLevelLoad;
5. time 속도
Time.timeScale=0.1f; 10배 느리게
Time.timeScale=1.0f; 정상 속도로.
6. 시간 멈춤, 재생.
if(_timeActive)
Time.timeScale=1.0f; 정상 속도로.
6. 시간 멈춤, 재생.
if(_timeActive)
{
_playTime = Time.time;
}
if(Input.GetKeyDown("3"))
{
_stopTime = Time.time;
_timeActive = false;
}
if(Input.GetKeyUp("5"))
{
_continueTime = Time.time - _playTime;
_timeActive = true;
}
7. time reset
if(Input.GetKeyDown("6"))
7. time reset
if(Input.GetKeyDown("6"))
{
_playTime = 0;
_stopTime = 0;
_timeActive = false;
}
8. count down
if(_timeActive)
8. count down
if(_timeActive)
{
_playTime = _countDownDelay - Time.time + _countDownAmount;
}
if(Input.GetKeyDown("7"))
{
_countDownDelay = Time.time;
_timeActive = true;
}
if(_playTime <0)
{
_timeActive = false;
}
9. 실제 시간 얻어오기.
time.TimeScale로 시간을 멈추더라도 실제 시간값을 얻어오는 방법이 있다.
_actualTime = Time.realtimeSinceStartup;
9. 실제 시간 얻어오기.
time.TimeScale로 시간을 멈추더라도 실제 시간값을 얻어오는 방법이 있다.
_actualTime = Time.realtimeSinceStartup;
'Unity > Unity Study' 카테고리의 다른 글
Unity - Character Controller (0) | 2013.11.03 |
---|---|
unity - time 출력 (0) | 2013.10.30 |
unity 2d sprite animation (0) | 2013.10.29 |
자동 폴더 만들기. (0) | 2013.10.20 |
Unity Script Debug 방법 (0) | 2013.03.27 |
TAGS.