2013-07-16 5 views
3

델타 시간을 사용하여 새 게임을 실행하고 싶지만 델타가 너무 불안정한 것이 문제입니다. 그것이 일반적으로 8-11 마녀 사이에 끼는 의미는 좋지만 때로는 4000과 5000 이상의 숫자를 뱉어냅니다. 그러나 화면은 매 10ms마다 업데이트됩니다 ... 어떻게되는지는 알 수 없습니다.Java2D 불안정한 델타 시간

setEndTime((int) System.nanoTime()/1000000); 
      setDelta(getEndTime() - getStartTime()); 
setStartTime(getEndTime()); 

javas Timer 클래스가 부적절한 것은 사실입니까?

+0

간단한 예제로 문제를 재현 할 수 있습니까? 시간이 갈 때마다 GC가 실행 중인지 확인하기 위해 메모리 소비량을 확인해 보셨습니까? – DannyMo

답변

0

System.nanoTime()은 long을 반환하지만 int로 전송 중입니다. 이것이 원인 일 수 있습니다. longs를 사용하여 시간을 추적하고 그 도움이되는지 확인하십시오.