次の方法で共有


三角形ファン (Direct3D 9)

次の図に示すように、三角形ファンは三角形ストリップに似ていますが、すべての三角形が 1 つの頂点を共有している点が異なります。

三角形ファン図

システムは頂点 v2、v3、v1 を使用して最初の三角形を描画します。2番目の三角形を描画するv3、v4、およびv1。3 番目の三角形を描画する 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 以降では、三角形ファンはサポートされていません。

プリミティブ