Freigeben über


IDirect3DDevice9::D rawIndexedPrimitiveUP-Methode (d3d9.h)

Rendert den angegebenen geometrischen Grundtyp mit Daten, die von einem Benutzerspeicherzeiger angegeben werden.

Syntax

HRESULT DrawIndexedPrimitiveUP(
  [in] D3DPRIMITIVETYPE PrimitiveType,
  [in] UINT             MinVertexIndex,
  [in] UINT             NumVertices,
  [in] UINT             PrimitiveCount,
  [in] const void       *pIndexData,
  [in] D3DFORMAT        IndexDataFormat,
  [in] const void       *pVertexStreamZeroData,
  [in] UINT             VertexStreamZeroStride
);

Parameter

[in] PrimitiveType

Typ: D3DPRIMITIVETYPE

Member des D3DPRIMITIVETYPE aufgezählten Typs, der den Zu rendernden Primitiventyp beschreibt.

[in] MinVertexIndex

Typ: UINT

Minimaler Scheitelpunktindex. Dies ist ein nullbasierter Index.

[in] NumVertices

Typ: UINT

Anzahl der Scheitelpunkte, die während dieses Aufrufs verwendet werden. Der erste Scheitelpunkt befindet sich im Index: MinVertexIndex.

[in] PrimitiveCount

Typ: UINT

Anzahl der zu rendernden Primitiven. Die maximal zulässige Anzahl von Primitiven wird durch Überprüfen des MaxPrimitiveCount-Members der D3DCAPS9-Struktur bestimmt (die Anzahl der Indizes ist eine Funktion der primitiven Anzahl und des primitiven Typs).

[in] pIndexData

Typ: const void*

Benutzerspeicherzeiger auf die Indexdaten.

[in] IndexDataFormat

Typ: D3DFORMAT

Member des D3DFORMAT aufgezählten Typs, der das Format der Indexdaten beschreibt. Die gültigen Einstellungen sind entweder:

[in] pVertexStreamZeroData

Typ: const void*

Benutzerspeicherzeiger auf die Scheitelpunktdaten. Die Scheitelpunktdaten müssen sich in Stream 0 enthalten.

[in] VertexStreamZeroStride

Typ: UINT

Die Anzahl der Datenbytes für jeden Scheitelpunkt. Dieser Wert ist möglicherweise nicht 0.

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 ist für die Verwendung in Anwendungen vorgesehen, die ihre Vertexdaten nicht in Vertexpuffern speichern können. Diese Methode unterstützt nur einen einzelnen Vertexstream, der als Stream 0 deklariert werden muss.

Nach einem beliebigen IDirect3DDevice9::D rawIndexedPrimitiveUP-Aufruf werden die Stream 0-Einstellungen, auf die von IDirect3DDevice9::GetStreamSource verwiesen wird, auf NULL festgelegt. Außerdem ist die Indexpuffereinstellung für IDirect3DDevice9::SetIndices auf NULL festgelegt.

Die an IDirect3DDevice9::D rawIndexedPrimitiveUP übergebenen Scheitelpunktdaten müssen nach dem Aufruf nicht beibehalten werden. Direct3D schließt den Zugriff auf diese Daten ab, bevor der Aufruf zurückgegeben wird.

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

Anforderung Wert
Zielplattform Windows
Kopfzeile d3d9.h (einschließlich D3D9.h)
Bibliothek D3D9.lib

Weitere Informationen

IDirect3DDevice9

IDirect3DDevice9::D rawPrimitive

Rendering aus Vertex- und Indexpuffern (Direct3D 9)