IDirect3DDevice9::D rawIndexedPrimitive-Methode (d3d9.h)
Rendert basierend auf der Indizierung das angegebene geometrische Grundelement in ein Array von Scheitelpunkten.
Syntax
HRESULT DrawIndexedPrimitive(
[in] D3DPRIMITIVETYPE unnamedParam1,
[in] INT BaseVertexIndex,
[in] UINT MinVertexIndex,
[in] UINT NumVertices,
[in] UINT startIndex,
[in] UINT primCount
);
Parameter
[in] unnamedParam1
Typ: D3DPRIMITIVETYPE
Member des aufgezählten D3DPRIMITIVETYPE-Typs , der den zu rendernden Primitiventyp beschreibt. D3DPT_POINTLIST wird mit dieser Methode nicht unterstützt. Siehe Hinweise.
[in] BaseVertexIndex
Typ: INT
Offset vom Anfang des Scheitelpunktpuffers bis zum ersten Scheitelpunkt. Siehe Szenario 4.
[in] MinVertexIndex
Typ: UINT
Minimaler Scheitelpunktindex für Scheitelpunkte, die während dieses Aufrufs verwendet werden. Dies ist ein nullbasierter Index relativ zu BaseVertexIndex.
[in] NumVertices
Typ: UINT
Anzahl der Scheitelpunkte, die während dieses Aufrufs verwendet werden. Der erste Scheitelpunkt befindet sich im Index: BaseVertexIndex + MinIndex.
[in] startIndex
Typ: UINT
Index des ersten Indexes, der beim Zugriff auf den Vertexpuffer verwendet werden soll. Beginnend bei StartIndex, um Scheitelpunkte aus dem Vertexpuffer zu indizieren.
[in] primCount
Typ: UINT
Anzahl der zu rendernden Primitiven. Die Anzahl der verwendeten Scheitelpunkte ist eine Funktion der primitiven Anzahl und des primitiven Typs. Die maximal zulässige Anzahl von Primitiven wird durch Überprüfen des MaxPrimitiveCount-Members der D3DCAPS9-Struktur bestimmt.
Rückgabewert
Typ: HRESULT
Wenn die Methode erfolgreich ist, wird der Rückgabewert D3D_OK. Wenn die Methode fehlschlägt, kann der Rückgabewert wie folgt aussehen: D3DERR_INVALIDCALL.
Hinweise
Diese Methode zeichnet indizierte Primitive aus dem aktuellen Satz von Dateneingabedatenströmen. MinIndex und alle Indizes im Indexstream sind relativ zum BaseVertexIndex.
Die Parameter MinIndex und NumVertices geben den Bereich der Vertexindizes an, die für jeden IDirect3DDevice9::D rawIndexedPrimitive-Aufruf verwendet werden. Diese werden verwendet, um die Vertexverarbeitung von indizierten Primitiven zu optimieren, indem ein sequenzieller Bereich von Scheitelpunkten vor der Indizierung in diese Scheitelpunkte verarbeitet wird. Sie ist ungültig für alle Indizes, die während dieses Aufrufs verwendet werden, um auf alle Scheitelpunkte außerhalb dieses Bereichs zu verweisen.
IDirect3DDevice9::D rawIndexedPrimitive schlägt fehl, wenn kein Indexarray festgelegt ist.
Das D3DPT_POINTLIST Member des aufgezählten D3DPRIMITIVETYPE-Typs wird nicht unterstützt und ist kein gültiger Typ für diese Methode.
Wenn Sie eine Legacyanwendung in Direct3D 9 konvertieren, müssen Sie entweder einen Aufruf von IDirect3DDevice9::SetFVF hinzufügen, um die feste Funktionspipeline zu verwenden, oder IDirect3DDevice9::SetVertexDeclaration , um einen Vertex-Shader zu verwenden, bevor Sie Draw-Aufrufe tätigen.
Anforderungen
Zielplattform | Windows |
Kopfzeile | d3d9.h (einschließlich D3D9.h) |
Bibliothek | D3D9.lib |
Weitere Informationen
IDirect3DDevice9::D rawPrimitive