관리 메뉴

기억을 위한 기록들

DXD9 프레임(FPS) 출력하기 본문

그래픽스(Graphics)/DIRECT

DXD9 프레임(FPS) 출력하기

에드윈H 2020. 3. 23. 15:36

 

LPDIRECT3DDEVICE9 m_pd3dDevice;

LPD3DXFONT m_pFont;

 

//한번만 실행-폰트 생성 위치 크기 글꼴 등
D3DXCreateFont(m_pd3dDevice, 50, 0, FW_NORMAL, 1, false, DEFAULT_CHARSET,
OUT_DEFAULT_PRECIS, DEFAULT_QUALITY, 0, "System", &m_pFont);

 

 

 

//RENDER 영역

char fps_string[100];
RECT rt = { 10,10,0,0 };
sprintf_s(fps_string, "FPS : %d", m_nFPS);
m_pFont->DrawText(NULL, fps_string, -1, &rt, DT_NOCLIP, D3DXCOLOR(1.0f, 1.0f, 0.0f, 1.0f));

 

 

 

//UPDATE 영역

DWORD dwCurTime = GetTickCount();
static DWORD dwOldTime = GetTickCount();
static DWORD dwAccumulateTime = 0; //누적 경과 시간

m_dwElapsedTime = dwCurTime - dwOldTime;//프레임 경과 시간
dwOldTime = dwCurTime;

dwAccumulateTime += m_dwElapsedTime;//누적

if (dwAccumulateTime >= 1000) //1초경과 

{
    dwAccumulateTime = 0;
    m_nFPS = m_nFPSCount;
    m_nFPSCount = 0;
}

 

 

결과물