Direct3Dでスクリーン座標を指定して描画する
FVFの頂点座標にD3DFVF_XYZRHWを使う
変換済みの頂点座標的な意味らしい
(FVF例)
struct VERTEX{
D3DXVECTOR4 pos;
D3DCOLOR diffuse;
}
#define VERTEX_FVF ( D3DFVF_XYZRHW | D3DFVF_DIFFUSE )
頂点座標の4番目wには1.0fを入れておけばいいらしい
(描画例)
void drawRect(LPDIRECT3DDEVICE9 pDevice, float x, float y, float width, float height, D3DCOLOR color)
{
D3DXVECTOR4 v4;
VERTEX vertex[4]={
{D3DXVECTOR4(x, y, 0.0f, 1.0f), color},
{D3DXVECTOR4(x + width, y, 0.0f.0f, 1.0f), color},
{D3DXVECTOR4(x, y + height, 0.0f, 1.0f), color},
{D3DXVECTOR4(x + width, y + height, 0.0f, 1.0f), color}
};
m_pD3DDevice->SetFVF(VERTEX_FVF);
m_pD3DDevice->DrawPrimitiveUP(D3DPT_TRIANGLESTRIP, 2, vertex, sizeof(VERTEX));
}
最終更新:2010年10月11日 03:52