일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- stl
- 프로그래머스
- 람다사용정렬
- 알고리즘
- 데이터애셋
- C++최적화
- 델리게이트
- 자료구조
- 정렬
- 크리티컬섹션
- C++
- 언리얼엔진구조체
- enumasByue
- moreeffectiveC++
- dataasset
- UELOG
- 애셋로드
- 약참조
- 람다
- BFS
- 스마트포인터
- map
- UE_LOG
- UML관련
- 선택정렬
- 언리얼가비지컬렉터
- 정렬알고리즘
- UE4 커스텀로그
- 강참조
- unorder_map
- Today
- Total
기억을 위한 기록들
DXD9 프레임(FPS) 출력하기 본문
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;
}