2013-11-15 3 views
2

언어는 C#입니다. 문제점 : 매우 높은 프레임 속도로 실행되는 게임의 경과 된 마이크로 초를 계산해야합니다. 문제는 너무 빨라서 스톱워치가 항상 1 밀리 초 미만의 0을 반환한다는 것입니다. 내 질문을 해결하기 위해 구글을 사용했지만 다른 사람들은 항상 이런 짓을 : 밀리 초는 항상 0이기 때문에 먹힐하지정확한 경과 시간은 어떻게 계산합니까?

밀리 초 * 1000

...

+2

1 백만 FPS 게임을보고 싶습니다. D – Aybe

+0

Stopwatch에는 'Miliseconds'속성이 없으며 ['ElapsedMilliseconds'] (http://msdn.microsoft.com/en-us/)가 있습니다. library/system.diagnostics.stopwatch.elapsedmilliseconds % 28v = vs.110 % 29.aspx) 속성에서 스톱워치 또는 DateTime을 스톱워치로 사용하고 있습니까? –

+0

프레임 속도가 모니터 재생 빈도 (일반적으로 약 60Hz 또는 17ms)를 초과하는 경우 속도를 늦추지 않는 이유는 무엇입니까? –

답변

2

사용 Ticks을.

자세한 기사

그들을 사용하는 방법에 여기에서 찾을 수 있습니다 : http://msdn.microsoft.com/en-us/library/system.diagnostics.stopwatch.elapsedticks%28v=vs.110%29.aspx

편집

또는 팀 S. 제안으로, 두 번째에서 일어나는 프레임 수를 셀 수.

+0

답변 해 주셔서 감사합니다.하지만 내 컴퓨터가 얼마나 똑딱/초인지는 어떻게 알 수 있습니까? – user2997725

+0

@ user2997725 기사를 읽으면 '빈도'에서 알 수 있습니다. – gleng

+1

기사 읽기 : '빈도'속성이 있습니다. –

관련 문제