D3DFont

프로그래밍 2010. 7. 21. 06:18


m_pd3dDevice->BeginScene();

 

폰트 객체 선언

ID3DXFont*   m_pFont;

ID3DXSprite*  m_pTextSprite;

 

폰트 생성

D3DXCreateFont( m_pd3dDevice, Height, Width, Weight, 1, FALSE, DEFAULT_CHARSET,
     OUT_DEFAULT_PRECIS, DEFAULT_QUALITY, DEFAULT_PITCH | FF_DONTCARE,
     pFontName, &m_pFont );

 

스프라이트 객체 생성

D3DXCreateSprite( m_pd3dDevice, &m_pTextSprite );

 

스프라이트에 그리기 시작

if( m_pTextSprite )
  m_pTextSprite->Begin( D3DXSPRITE_ALPHABLEND | D3DXSPRITE_SORT_TEXTURE );

 

RECT rtPos = { 0, 0, 0, 0};

 

폰트 그리기

m_pFont->DrawText( m_pTextSprite, L"폰트내용", -1,
                             &rtPos, DT_NOCLIP, m_vecFont2D[i]->color );

 

스프라이트 그리기 종료

m_pTextSprite->End();

 

m_pd3dDevice->EndScene();

 

2005년 이후 SDK의 경우 DrawText의 첫번째 인자로 스프라이트 클래스 포인터를 받음으로써

2D화면 좌표로의 변환 없이 텍스트를 출력할 수 있다.