次の方法で共有


三角形ファン

三角形ファン

三角形ファンとは、すべての三角形が 1 つの頂点を共有するという点を除いては、三角形ストリップに類似したものである。これを次の図に示す。

三角形ファン

システムでは、頂点 v2、v3、v1 を使用して最初の三角形を、v3、v4、v1 を使用して 2 番目の三角形を、v4、v5、v1 を使用して 3 番目の三角形を、という手順で描画していく。フラット シェーディングが有効な場合、三角形は最初の頂点の色でシェーディングされる。

次の図は、レンダリングされる三角形ファンを示している。

レンダリングされた三角形ファン

次のコードは、三角形ファンに対して頂点を作成する方法を示している。

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::DrawPrimitive を使って、三角形ファンをレンダリングする方法を示している。

//
// It is assumed that d3dDevice is a valid
// pointer to a IDirect3DDevice9 interface.
//
d3dDevice->DrawPrimitive( D3DPT_TRIANGLEFAN, 0, 4 );