D3DHAL_DP2OPERATION-Enumeration (d3dhal.h)

Der D3DHAL_DP2OPERATION aufgezählten Typ gibt den Vorgang D3dDrawPrimitives2 im bCommand-Member der D3DHAL_DP2COMMAND-Struktur an. Die Enumeratoren von D3DHAL_DP2OPERATION können entweder primitive Rendering- oder nichtprimitive Renderingvorgänge angeben. Die Enumeratoren von D3DHAL_DP2OPERATION können auch angeben, dass der Treiber Antworten auf zuvor ausgegebene Abfragen zurückgegeben hat.

Syntax

typedef enum _D3DHAL_DP2OPERATION {
  D3DDP2OP_POINTS,
  D3DDP2OP_INDEXEDLINELIST,
  D3DDP2OP_INDEXEDTRIANGLELIST,
  D3DDP2OP_RENDERSTATE,
  D3DDP2OP_LINELIST,
  D3DDP2OP_LINESTRIP,
  D3DDP2OP_INDEXEDLINESTRIP,
  D3DDP2OP_TRIANGLELIST,
  D3DDP2OP_TRIANGLESTRIP,
  D3DDP2OP_INDEXEDTRIANGLESTRIP,
  D3DDP2OP_TRIANGLEFAN,
  D3DDP2OP_INDEXEDTRIANGLEFAN,
  D3DDP2OP_TRIANGLEFAN_IMM,
  D3DDP2OP_LINELIST_IMM,
  D3DDP2OP_TEXTURESTAGESTATE,
  D3DDP2OP_INDEXEDTRIANGLELIST2,
  D3DDP2OP_INDEXEDLINELIST2,
  D3DDP2OP_VIEWPORTINFO,
  D3DDP2OP_WINFO,
  D3DDP2OP_SETPALETTE,
  D3DDP2OP_UPDATEPALETTE,
  D3DDP2OP_ZRANGE,
  D3DDP2OP_SETMATERIAL,
  D3DDP2OP_SETLIGHT,
  D3DDP2OP_CREATELIGHT,
  D3DDP2OP_SETTRANSFORM,
  D3DDP2OP_TEXBLT,
  D3DDP2OP_STATESET,
  D3DDP2OP_SETPRIORITY,
  D3DDP2OP_SETRENDERTARGET,
  D3DDP2OP_CLEAR,
  D3DDP2OP_SETTEXLOD,
  D3DDP2OP_SETCLIPPLANE,
  D3DDP2OP_CREATEVERTEXSHADER,
  D3DDP2OP_DELETEVERTEXSHADER,
  D3DDP2OP_SETVERTEXSHADER,
  D3DDP2OP_SETVERTEXSHADERCONST,
  D3DDP2OP_SETSTREAMSOURCE,
  D3DDP2OP_SETSTREAMSOURCEUM,
  D3DDP2OP_SETINDICES,
  D3DDP2OP_DRAWPRIMITIVE,
  D3DDP2OP_DRAWINDEXEDPRIMITIVE,
  D3DDP2OP_CREATEPIXELSHADER,
  D3DDP2OP_DELETEPIXELSHADER,
  D3DDP2OP_SETPIXELSHADER,
  D3DDP2OP_SETPIXELSHADERCONST,
  D3DDP2OP_CLIPPEDTRIANGLEFAN,
  D3DDP2OP_DRAWPRIMITIVE2,
  D3DDP2OP_DRAWINDEXEDPRIMITIVE2,
  D3DDP2OP_DRAWRECTPATCH,
  D3DDP2OP_DRAWTRIPATCH,
  D3DDP2OP_VOLUMEBLT,
  D3DDP2OP_BUFFERBLT,
  D3DDP2OP_MULTIPLYTRANSFORM,
  D3DDP2OP_ADDDIRTYRECT,
  D3DDP2OP_ADDDIRTYBOX,
  D3DDP2OP_CREATEVERTEXSHADERDECL,
  D3DDP2OP_DELETEVERTEXSHADERDECL,
  D3DDP2OP_SETVERTEXSHADERDECL,
  D3DDP2OP_CREATEVERTEXSHADERFUNC,
  D3DDP2OP_DELETEVERTEXSHADERFUNC,
  D3DDP2OP_SETVERTEXSHADERFUNC,
  D3DDP2OP_SETVERTEXSHADERCONSTI,
  D3DDP2OP_SETSCISSORRECT,
  D3DDP2OP_SETSTREAMSOURCE2,
  D3DDP2OP_BLT,
  D3DDP2OP_COLORFILL,
  D3DDP2OP_SETVERTEXSHADERCONSTB,
  D3DDP2OP_CREATEQUERY,
  D3DDP2OP_SETRENDERTARGET2,
  D3DDP2OP_SETDEPTHSTENCIL,
  D3DDP2OP_RESPONSECONTINUE,
  D3DDP2OP_RESPONSEQUERY,
  D3DDP2OP_GENERATEMIPSUBLEVELS,
  D3DDP2OP_DELETEQUERY,
  D3DDP2OP_ISSUEQUERY,
  D3DDP2OP_SETPIXELSHADERCONSTI,
  D3DDP2OP_SETPIXELSHADERCONSTB,
  D3DDP2OP_SETSTREAMSOURCEFREQ,
  D3DDP2OP_SURFACEBLT,
  D3DDP2OP_SETCONVOLUTIONKERNELMONO,
  D3DDP2OP_COMPOSERECTS
} D3DHAL_DP2OPERATION;

Konstanten

 
D3DDP2OP_POINTS
Zeichnet eine Liste von indizierten oder nicht indizierten Punkten. Jede Liste wird durch eine oder mehrere D3DHAL_DP2POINTS-Strukturen angegeben.
D3DDP2OP_INDEXEDLINELIST
Zeichnet eine Liste von Linien, wobei jede Zeile durch ein Vertex-Indizespaar angegeben wird. Die indizierte Zeilenliste wird durch eine oder mehrere D3DHAL_DP2INDEXEDLINELIST-Strukturen angegeben.
D3DDP2OP_INDEXEDTRIANGLELIST
Zeichnet eine Liste von Dreiecken. Jedes Dreieck wird durch drei Indizes im Vertexpuffer angegeben, einen Index pro Dreiecksvertex. Die Dreiecksliste wird durch mindestens eine D3DHAL_DP2INDEXEDTRIANGLELIST Strukturen angegeben.
D3DDP2OP_RENDERSTATE
Gibt eine Änderung des Renderzustands an, die eine Verarbeitung erfordert. Der zu ändernde Renderingzustand wird von mindestens einer D3DHAL_DP2RENDERSTATE-Strukturen angegeben.
D3DDP2OP_LINELIST
Zeichnet eine Liste von Linien. Jede Zeile wird durch ein Scheitelpunktpaar angegeben. Die Scheitelpunkte werden ab einem anfänglich angegebenen Scheitelpunktindex sequenziell verarbeitet. Die Zeilenliste wird durch eine D3DHAL_DP2LINELIST-Struktur angegeben.
D3DDP2OP_LINESTRIP
Zeichnet einen verbundenen Linienstreifen, der durch eine Sequenz von Scheitelpunkten ab einem anfänglich angegebenen Vertexindex definiert wird. Der Linienstreifen wird durch eine D3DHAL_DP2LINESTRIP-Struktur angegeben.
D3DDP2OP_INDEXEDLINESTRIP
Zeichnet einen verbundenen Linienstreifen, der durch eine Sequenz von Vertexindizes definiert wird. Jede Zeile im verbundenen Streifen wird durch eine D3DHAL_DP2INDEXEDLINESTRIP-Struktur angegeben.
D3DDP2OP_TRIANGLELIST
Zeichnet eine Liste von Dreiecken. Jedes Dreieck wird durch drei Scheitelpunkte angegeben, die ab einem anfänglich angegebenen Vertexindex verarbeitet werden. Die Dreiecke werden in sequenzieller Reihenfolge verarbeitet. Die Dreiecksliste wird durch eine D3DHAL_DP2TRIANGLELIST-Struktur angegeben.
D3DDP2OP_TRIANGLESTRIP
Zeichnet einen verbundenen Dreiecksstreifen. Jedes Dreieck wird durch eine Sequenz von Scheitelpunkten angegeben, die bei einem anfänglich angegebenen Vertexindex beginnen. Die drei aktuellen Scheitelpunkte werden verwendet, um jedes Dreieck zu zeichnen. Der Dreiecksstreifen wird durch eine D3DHAL_DP2TRIANGLESTRIP-Struktur angegeben.
D3DDP2OP_INDEXEDTRIANGLESTRIP
Zeichnet einen verbundenen Streifen von Dreiecken, die durch eine Sequenz von Vertexindizes angegeben werden. Die drei aktuellen Vertexindizes werden verwendet, um jedes Dreieck zu zeichnen. Jedes Dreieck im verbundenen Streifen wird durch eine D3DHAL_DP2INDEXEDTRIANGLESTRIP-Struktur angegeben.
D3DDP2OP_TRIANGLEFAN
Zeichnet einen Dreieckslüfter. Der Lüfter wird durch eine Sequenz von Scheitelpunkten angegeben, die bei einem anfänglich angegebenen Scheitelpunktindex beginnen. Der Dreieckslüflümer wird durch eine D3DHAL_DP2TRIANGLEFAN-Struktur angegeben.
D3DDP2OP_INDEXEDTRIANGLEFAN
Zeichnet einen Dreieckslüfter. Der Dreieckslüfer wird durch eine Sequenz von Vertexindizes angegeben. Jedes Dreieck im Lüfter wird durch eine D3DHAL_DP2INDEXEDTRIANGLEFAN-Struktur angegeben.
D3DDP2OP_TRIANGLEFAN_IMM
Zeichnet einen Dreieckslüfter. Der Lüfter wird durch eine Sequenz von Scheitelpunkten angegeben, die im Befehlsstream gespeichert sind (unmittelbare Daten). Das wPrimitiveCount-Element der D3DHAL_DP2COMMAND-Struktur gibt die Anzahl der zu rendernden Dreiecke an. Typ und Größe der Scheitelpunkte werden vom dwVertexType-Element der D3DHAL_DRAWPRIMITIVES2DATA-Struktur angegeben.
D3DDP2OP_LINELIST_IMM
Zeichnet eine Reihe von Linien. Jede Zeile wird durch ein Paar von Scheitelpunkten angegeben, die im Befehlsstream (unmittelbare Daten) gespeichert sind. Das wPrimitiveCount-Element der D3DHAL_DP2COMMAND-Struktur gibt an, wie viele Scheitelpunktepaare folgen. Typ und Größe der Scheitelpunkte werden durch das dwVertexType-Element der D3DHAL_DRAWPRIMITIVES2DATA-Struktur bestimmt.
D3DDP2OP_TEXTURESTAGESTATE
Gibt eine Änderung des Texturrenderungszustands an, die eine Verarbeitung erfordert. Der zu ändernde Renderzustand wird von mindestens einer D3DHAL_DP2TEXTURESTAGESTATE-Strukturen angegeben. Der Wert im TSState-Member gibt den zu aktualisierenden Texturzustand an.
D3DDP2OP_INDEXEDTRIANGLELIST2
Zeichnet eine Liste von Dreiecken. Jedes Dreieck wird durch drei Indizes im Vertexpuffer angegeben, einen Index pro Dreiecksvertex. Die Dreiecksliste wird durch mindestens eine D3DHAL_DP2INDEXEDTRIANGLELIST2-Strukturen angegeben.
D3DDP2OP_INDEXEDLINELIST2
Zeichnet eine Liste von Linien. Jede Zeile wird durch ein Vertex-Indizespaar angegeben, wobei jeder Offset vom Anfang des Vertexpuffers um einen festen Betrag festgelegt wird. Die indizierte Zeilenliste wird durch eine oder mehrere D3DHAL_DP2INDEXEDLINELIST-Strukturen angegeben.
D3DDP2OP_VIEWPORTINFO
Gibt das Abschneiderechteck an, das für das Ausschneiden von Guard-Band-fähigen Treibern verwendet wird. Das Abschneiderechteck (d. h. das Anzeigerechteck) wird durch die D3DHAL_DP2VIEWPORTINFO-Struktur angegeben.
D3DDP2OP_WINFO
Gibt den w-Bereich für den w-Puffer an. Dieser Bereich wird von mindestens einer D3DHAL_DP2WINFO-Strukturen angegeben.
D3DDP2OP_SETPALETTE
Gibt an, dass die Palette für eine Textur festgelegt wird. Siehe D3DHAL_DP2SETPALETTE.
D3DDP2OP_UPDATEPALETTE
Gibt an, dass eine Texturpalette aktualisiert werden soll. Siehe D3DHAL_DP2UPDATEPALETTE.
D3DDP2OP_ZRANGE
Gibt den Bereich der z-Werte an. Siehe D3DHAL_DP2ZRANGE.
D3DDP2OP_SETMATERIAL
Legt die Eigenschaften für ein Material fest. D3DHAL_DP2SETMATERIAL ist eine D3DMATERIAL7-Struktur (in der DirectX SDK-Dokumentation beschrieben), die zum Festlegen der Materialeigenschaften verwendet wird.
D3DDP2OP_SETLIGHT
Gibt an, dass ein Licht festgelegt wird. Siehe D3DHAL_DP2SETLIGHT.
D3DDP2OP_CREATELIGHT
Erzeugt ein Licht. Siehe D3DHAL_DP2CREATELIGHT.
D3DDP2OP_SETTRANSFORM
Richtet eine Transformation ein. Siehe D3DHAL_DP2SETTRANSFORM.
D3DDP2OP_TEXBLT
Gibt einen BLT-Vorgang von einer Quelltextur zu einer Zieltextur an. Es wird als effizientere Alternative zum DirectDraw DdBlt DDI verwendet. Sie wird von mindestens einer D3DHAL_DP2TEXBLT-Strukturen angegeben. Da Direct3D-Treiber den gesamten Zustand beibehalten, der für eine Blt-Ausführung erforderlich ist (z. B. Texturhandles und Mischmodi), kann ein Blt nur mit den Informationen im D3DDP2OP_TEXBLT Opcode erreicht werden. Dieses neue Token signalisiert dem Treiber, dass eine Textur aus dem Systemspeicher in den lokalen oder nicht lokalen Videospeicher übertragen werden muss.
D3DDP2OP_STATESET
Gibt einen auszuführenden Zustandssatzvorgang an. Siehe D3DHAL_DP2STATESET.
D3DDP2OP_SETPRIORITY
Legt die Priorität einer verwalteten Textur fest. Siehe D3DHAL_DP2SETPRIORITY.
D3DDP2OP_SETRENDERTARGET
Legt das Renderziel fest. Direct3D-Treiber müssen auf diesen Opcode genauso reagieren wie beim älteren SetRenderTarget-Rückruf . Siehe D3DHAL_DP2SETRENDERTARGET.
D3DDP2OP_CLEAR
Gibt einen eindeutigen Vorgang an. Ersetzt die Rückrufe Clear und Clear2 . Siehe D3DHAL_DP2CLEAR.
D3DDP2OP_SETTEXLOD
Gibt an, dass der Detailgrad (LOD) für MIP-Karten festgelegt wird. Siehe D3DHAL_DP2SETTEXLOD.
D3DDP2OP_SETCLIPPLANE
Gibt an, dass eine benutzerdefinierte Clipebene verwendet wird. Siehe D3DHAL_DP2SETCLIPPLANE.
D3DDP2OP_CREATEVERTEXSHADER
D3DDP2OP_DELETEVERTEXSHADER
D3DDP2OP_SETVERTEXSHADER
D3DDP2OP_SETVERTEXSHADERCONST
D3DDP2OP_SETSTREAMSOURCE
D3DDP2OP_SETSTREAMSOURCEUM
D3DDP2OP_SETINDICES
D3DDP2OP_DRAWPRIMITIVE
D3DDP2OP_DRAWINDEXEDPRIMITIVE
D3DDP2OP_CREATEPIXELSHADER
D3DDP2OP_DELETEPIXELSHADER
D3DDP2OP_SETPIXELSHADER
D3DDP2OP_SETPIXELSHADERCONST
D3DDP2OP_CLIPPEDTRIANGLEFAN
Nur DirectX 8.0 und höhere Versionen. Dieses Token wird an den Treiber gesendet, um transformierte, abgeschnittene Dreiecksfächer zu zeichnen. Dieses Token ist ein Ersatz für die DirectX 7.0-Token, die Inlinevertices im Befehlsstream verwendet haben. Die Dreiecklüsser werden durch eine oder mehrere D3DHAL_CLIPPEDTRIANGLEFAN-Strukturen angegeben.
D3DDP2OP_DRAWPRIMITIVE2
D3DDP2OP_DRAWINDEXEDPRIMITIVE2
D3DDP2OP_DRAWRECTPATCH
D3DDP2OP_DRAWTRIPATCH
D3DDP2OP_VOLUMEBLT
Unterstützt das optimale Kopieren und Aktualisieren von Volumetexturen. Dieses Token ähnelt dem vorhandenen D3DDP2OP_TEXBLT, das Texturen kopiert und aktualisiert, wurde jedoch erweitert, um das Kopieren von Teilvolumen (Box) anstelle einfacher Rechtecke zu unterstützen.
D3DDP2OP_BUFFERBLT
D3DDP2OP_MULTIPLYTRANSFORM
Nur DirectX 8.0 und höhere Versionen. Multipliziert eine aktuelle Transformation. Weitere Informationen finden Sie unter D3DHAL_DP2MULTIPLYTRANSFORM.
D3DDP2OP_ADDDIRTYRECT
D3DDP2OP_ADDDIRTYBOX
D3DDP2OP_CREATEVERTEXSHADERDECL
D3DDP2OP_DELETEVERTEXSHADERDECL
D3DDP2OP_SETVERTEXSHADERDECL
D3DDP2OP_CREATEVERTEXSHADERFUNC
D3DDP2OP_DELETEVERTEXSHADERFUNC
D3DDP2OP_SETVERTEXSHADERFUNC
D3DDP2OP_SETVERTEXSHADERCONSTI
D3DDP2OP_SETSCISSORRECT
D3DDP2OP_SETSTREAMSOURCE2
D3DDP2OP_BLT
D3DDP2OP_COLORFILL
D3DDP2OP_SETVERTEXSHADERCONSTB
D3DDP2OP_CREATEQUERY
D3DDP2OP_SETRENDERTARGET2
D3DDP2OP_SETDEPTHSTENCIL
D3DDP2OP_RESPONSECONTINUE
D3DDP2OP_RESPONSEQUERY
D3DDP2OP_GENERATEMIPSUBLEVELS
D3DDP2OP_DELETEQUERY
D3DDP2OP_ISSUEQUERY
D3DDP2OP_SETPIXELSHADERCONSTI
D3DDP2OP_SETPIXELSHADERCONSTB
D3DDP2OP_SETSTREAMSOURCEFREQ
D3DDP2OP_SURFACEBLT
D3DDP2OP_SETCONVOLUTIONKERNELMONO
D3DDP2OP_COMPOSERECTS

Hinweise

Beachten Sie, dass die D3DNTDP2OP_XXX-Enumeratoren als Typ definiert sind, der intern in der Datei Dx95type.h des Windows Driver Kit (WDK) als D3DDP2OP_XXX definiert ist. Beides ist für Windows 2000- und höher-Implementierungen gültig, aber nur das kürzere Formular kann unter Windows 98/Me verwendet werden.

Der D3DNTHAL_DP2OPERATION aufgezählten Typ ist der Typ, der als D3DHAL_DP2OPERATION aufgezählten Typ in der Datei Dx95type.h definiert ist. Der spätere (kürzere) Aufzählungstyp wird hier aus Gründen der Übersichtlichkeit verwendet. Beides ist für Windows 2000- und höher-Implementierungen gültig, aber nur das kürzere Formular kann unter Windows 98/Me verwendet werden.

Anforderungen

Anforderung Wert
Header d3dhal.h (include D3dhal.h)