Freigeben über


D3DXTessellateRectPatch-Funktion

Tesseliert einen rechteckigen Oberflächenfleck höherer Ordnung in ein Dreiecksgitter.

Syntax

HRESULT D3DXTessellateRectPatch(
  _In_          LPDIRECT3DVERTEXBUFFER9 pVB,
  _In_    const FLOAT                   *pNumSegs,
  _In_    const D3DVERTEXELEMENT9       *pInDecl,
  _In_    const D3DRECTPATCH_INFO       *pRectPatchInfo,
  _Inout_       LPD3DXMESH              pMesh
);

Parameter

pVB [in]

Typ: LPDIRECT3DVERTEXBUFFER9

Vertexpuffer, der die Patchdaten enthält.

pNumSegs [in]

Typ: const FLOAT*

Zeiger auf ein Array von vier Gleitkommawerten, die die Anzahl der Segmente angeben, in die jeder Rand des Rechtecks geteilt werden soll, wenn er geteselliert wird. Siehe D3DRECTPATCH_INFO.

pInDecl [in]

Typ: const D3DVERTEXELEMENT9*

Vertexdeklarationsstruktur, die die Vertexdaten definiert. Siehe D3DVERTEXELEMENT9.

pRectPatchInfo [in]

Typ: const D3DRECTPATCH_INFO*

Beschreibt einen rechteckigen Patch. Siehe D3DRECTPATCH_INFO.

pMesh [in, out]

Typ: LPD3DXMESH

Zeiger auf das erstellte Gitter. Siehe ID3DXMesh.

Rückgabewert

Typ: HRESULT

Wenn die Funktion erfolgreich ist, wird der Rückgabewert D3D_OK. Wenn die Funktion fehlschlägt, kann der Rückgabewert einer der folgenden Sein: D3DERR_INVALIDCALL, E_OUTOFMEMORY.

Bemerkungen

Verwenden Sie D3DXRectPatchSize , um die Anzahl der Ausgabevertices und Indizes abzurufen, die die Tessellationsfunktion benötigt.

Anforderungen

Anforderung Wert
Header
D3DX9Mesh.h
Bibliothek
D3dx9.lib

Weitere Informationen

Gitterfunktionen

D3DXTessellateTriPatch