Share via


D3DBASISTYPE-Enumeration

Definiert den Basistyp einer High-Order-Patchoberfläche.

Syntax

typedef enum D3DBASISTYPE { 
  D3DBASIS_BEZIER       = 0,
  D3DBASIS_BSPLINE      = 1,
  D3DBASIS_CATMULL_ROM  = 2,
  D3DBASIS_FORCE_DWORD  = 0x7fffffff
} D3DBASISTYPE, *LPD3DBASISTYPE;

Konstanten

D3DBASIS_BEZIER

Eingabevertices werden als eine Reihe von Bézier-Patches behandelt. Die Anzahl der angegebenen Scheitelpunkte muss durch 4 teilbar sein. Teile des Gitternetzes, die über dieses Kriterium hinausgehen, werden nicht gerendert. Die vollständige Kontinuität zwischen Teilpatches im Inneren der Oberfläche, die von jedem Aufruf gerendert wird, wird vorausgesetzt. Nur die Scheitelpunkte an den Ecken jedes Teilpatches liegen garantiert auf der resultierenden Oberfläche.

D3DBASIS_BSPLINE

Eingabevertices werden als Kontrollpunkte einer B-spline-Oberfläche behandelt. Die Anzahl der gerenderten Blenden ist zwei kleiner als die Anzahl der Blenden in diese Richtung. Im Allgemeinen enthält die generierte Oberfläche nicht die angegebenen Steuerelementvertices.

D3DBASIS_CATMULL_ROM

Eine interpolierende Basis definiert die Oberfläche, sodass die Oberfläche alle angegebenen Eingabevertices durchläuft. In DirectX 8 wurde dies D3DBASIS_INTERPOLATE.

D3DBASIS_FORCE_DWORD

Erzwingt, dass diese Enumeration in eine Größe von 32 Bits kompiliert wird. Ohne diesen Wert erlauben einige Compiler es dieser Enumeration, eine andere Größe als 32 Bits zu kompilieren. Dieser Wert wird nicht verwendet.

Bemerkungen

Die Elemente von D3DBASISTYPE geben die Formulierung an, die bei der Auswertung des Primitivs der hochgeordneten Patchoberfläche während der Tessellation verwendet werden soll.

Anforderungen

Anforderung Wert
Header
D3D9Types.h

Weitere Informationen

Direct3D-Enumerationen

D3DRECTPATCH_INFO

D3DTRIPATCH_INFO