三角形風扇 (Direct3D 9)
三角形風扇與三角形帶類似,不同之處在於所有三角形共用一個頂點,如下圖所示。
三角形風扇的
系統會使用頂點 v2、v3 和 v1 繪製第一個三角形;v3、v4 和 v1 繪製第二個三角形;v4、v5 和 v1 繪製第三個三角形;等等。 啟用平面底紋時,系統會使用第一個頂點的色彩來著色三角形。
下圖描述轉譯的三角形風扇。
轉譯三角形風扇的
下列程式代碼示範如何為此三角形風扇建立頂點。
struct CUSTOMVERTEX
{
float x,y,z;
};
CUSTOMVERTEX Vertices[] =
{
{ 0.0, 0.0, 0.0},
{-5.0, 5.0, 0.0},
{-3.0, 7.0, 0.0},
{ 0.0, 10.0, 0.0},
{ 3.0, 7.0, 0.0},
{ 5.0, 5.0, 0.0},
};
下列程式代碼範例示範如何使用 IDirect3DDevice9::D rawPrimitive,在 Direct3D 9 中轉譯這個三角形風扇。
//
// It is assumed that d3dDevice is a valid
// pointer to a IDirect3DDevice9 interface.
//
d3dDevice->DrawPrimitive( D3DPT_TRIANGLEFAN, 0, 4 );
Direct3D 10 或更新版本中不支援三角形風扇。
相關主題