TimeManager

김태훈·2024년 1월 8일
0

Win32API

목록 보기
6/24
post-custom-banner

DT(Deleta Time)

초당 100을 이동하고 싶다면

frame 횟수가 초당 100이라고 할때
프레임마다 1/100만큼을 이동한다면
1초후 100 이동

정리

1초에 가고싶은 거리를 초당 프레임의 횟수만큼 나눠서간다면
1초뒤 가고싶은 거리만큼 이동한다

이동량*(1/초당 프레임 횟수)

(1/초당 프레임 횟수)=한 프레임에 걸리는 시간
=DT(Delta Time)


QueryPerformanceCounter(&m_llCurCount);
	//프레임과 프레임 사이 카운팅 / 초당 카운팅  
	m_dDT = (double)(m_llCurCount.QuadPart - m_llPrevCount.QuadPart) 
    		/ (double)m_llFrequency.QuadPart;
	m_llPrevCount = m_llCurCount;

FPS

초당 프레임 횟수


++m_iCallCount;//프레임 횟수 카운팅 변수

	m_dAcc += m_dDT;//프로그램 실행 시간

	if (m_dAcc >= 1.)//초당 프레임 횟수 FPS구하기 
	{
		m_iFPS = m_iCallCount;
		m_dAcc = 0;
		m_iCallCount = 0;
		wchar_t szBuffer[255] = {};
		swprintf_s(szBuffer, L"FPS: %d, DT:%f", m_iFPS, m_dDT);
		SetWindowText(CCore::GetInst()->GetMainHwnd(), szBuffer);

	}
profile
복습을 위한 핵심 내용 및 모작
post-custom-banner

0개의 댓글