Háromszög ventilátorok (Direct3D 9)
A háromszögventilátor hasonló egy háromszögcsíkhoz, azzal a kivételrel, hogy az összes háromszög egy csúcsponton osztozik, ahogy az alábbi ábrán is látható.
A rendszer v2, v3 és v1 csúcsokat használ az első háromszög rajzolásához; v3, v4 és v1 a második háromszög rajzolásához; v4, v5 és v1 a harmadik háromszög rajzolásához; és így tovább. Ha engedélyezve van a lapos árnyékolás, a rendszer az első csúcspont színével árnyékolja a háromszöget.
Az alábbi ábra egy renderelt háromszögventilátort ábrázol.
Az alábbi kód bemutatja, hogyan hozhat létre csúcspontokat ehhez a háromszögventilátorhoz.
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},
};
Az alábbi kód példája bemutatja, hogyan jelenítheti meg ezt a háromszögventilátort a Direct3D 9-ben IDirect3DDevice9::D rawPrimitivehasználatával.
//
// It is assumed that d3dDevice is a valid
// pointer to a IDirect3DDevice9 interface.
//
d3dDevice->DrawPrimitive( D3DPT_TRIANGLEFAN, 0, 4 );
A Háromszög ventilátorok nem támogatottak a Direct3D 10-ben vagy újabb verzióiban.
Kapcsolódó témakörök