Freigeben über


Vertexdatenströme (Direct3D 9)

Die Renderingschnittstellen für Direct3D bestehen aus Methoden, die Grundtypen aus Vertexdaten rendern, die in einem oder mehreren Datenpuffern gespeichert sind. Vertexdaten bestehen aus Vertexelementen, die kombiniert werden, um Vertexkomponenten zu bilden. Vertexelemente, die kleinste Einheit eines Scheitelpunkts, stellen Entitäten wie Position, Normal oder Farbe dar.

Vertexkomponenten sind ein oder mehrere Vertexelemente, die zusammenhängend (pro Vertex interleaviert) in einem einzelnen Speicherpuffer gespeichert sind. Ein vollständiger Scheitelpunkt besteht aus einer oder mehreren Komponenten, wobei sich jede Komponente in einem separaten Speicherpuffer befindet. Zum Rendern eines Grundtyps werden mehrere Vertexkomponenten gelesen und zusammengestellt, sodass vollständige Scheitelpunkte für die Vertexverarbeitung verfügbar sind. Das folgende Diagramm zeigt den Prozess des Renderns von Grundtypen mit Vertexkomponenten.

Diagramm des Prozesses zum Rendern von Grundtypen mithilfe von Vertexkomponenten

Das Rendern von Grundtypen besteht aus zwei Schritten. Richten Sie zunächst einen oder mehrere Scheitelpunktkomponentenströme ein; Rufen Sie zweitens eine IDirect3DDevice9::D rawPrimitive-Methode auf, um aus diesen Datenströmen zu rendern. Die Identifizierung von Vertexelementen innerhalb dieser Komponentendatenströme wird durch den Vertex-Shader angegeben.

Die IDirect3DDevice9::D rawPrimitive- Methoden geben einen Offset in den Vertexdatenströmen an, sodass eine beliebige zusammenhängende Teilmenge der Grundtypen innerhalb einer Gruppe von Vertexdaten mit jedem Draw-Aufruf gerendert werden kann. Auf diese Weise können Sie den Geräterenderingzustand zwischen Gruppen von Grundtypen ändern, die aus denselben Vertexpuffern gerendert werden.

Sowohl indizierte als auch nicht indizierte Zeichenmethoden werden unterstützt. Weitere Informationen finden Sie unter Rendern aus Vertex- und Indexpuffern (Direct3D 9).

Rendern von Grundtypen