ID3DX10Mesh::Optimize-Methode
Generiert ein neues Gitter mit neu angeordneten Flächen und Scheitelpunkten, um die Zeichnungsleistung zu optimieren.
Syntax
HRESULT Optimize(
[in] UINT Flags,
[in] UINT *pFaceRemap,
[out] LPD3D10BLOB *ppVertexRemap
);
Parameter
-
Flaggen [in]
-
Typ: UINT
Gibt den Typ der auszuführenden Optimierung an. Dieser Parameter kann auf eine Kombination aus einem oder mehreren Flags von D3DXMESHOPT und D3DXMESH festgelegt werden (außer D3DXMESH_32BIT, D3DXMESH_IB_WRITEONLY und D3DXMESH_WRITEONLY).
-
pFaceRemap [in]
-
Typ: UINT*
Ein Array von UINTs, eines pro Gesicht, das das ursprüngliche Gittergesicht identifiziert, das jedem Gesicht im optimierten Gitter entspricht. Wenn der für dieses Argument angegebene Wert NULL ist, werden keine Gesichtserkennungsdaten zurückgegeben.
-
ppVertexRemap [out]
-
Typ: LPD3D10BLOB*
Adresse eines Zeigers auf eine ID3D10Blob-Schnittstelle, die ein DWORD für jeden Scheitelpunkt enthält, der angibt, wie die neuen Scheitelpunkte den alten Scheitelpunkten zugeordnet werden. Diese Neuzuordnung ist nützlich, wenn Sie externe Daten basierend auf der neuen Vertexzuordnung ändern müssen.
Rückgabewert
Typ: HRESULT
Der Rückgabewert ist einer der In Direct3D 10-Rückgabecodes aufgeführten Werte.
Bemerkungen
Diese Methode generiert ein neues Gitter. Vor dem Ausführen von Optimize muss eine Anwendung einen Adjacencypuffer generieren, indem ID3DX10Mesh::GenerateAdjacencyAndPointReps aufgerufen wird. Der Adjacency-Puffer enthält Adjacency-Daten, z. B. eine Liste von Kanten und die Gesichter, die nebeneinander liegen.
Diese Methode ist der ID3DX10Mesh::CloneMesh-Methode sehr ähnlich, mit der Ausnahme, dass sie eine Optimierung durchführen kann, während der neue Klon des Gitternetzes generiert wird. Das Ausgabegitter erbt alle Erstellungsparameter des Eingabegitters.
Anforderungen
Anforderung | Wert |
---|---|
Header |
|
Bibliothek |
|
Siehe auch