D3DCLIPSTATUS9-Struktur
Beschreibt den aktuellen Clipstatus.
Syntax
typedef struct D3DCLIPSTATUS9 {
DWORD ClipUnion;
DWORD ClipIntersection;
} D3DCLIPSTATUS9, *LPD3DCLIPSTATUS9;
Member
-
Clipunion
-
Typ: DWORD
-
Ausschneiden von Union-Flags, die den aktuellen Clipstatus beschreiben. Dieser Member kann eines oder mehrere der folgenden Flags sein:
Wert Bedeutung - D3DCS _ ALL
Kombination aller Clipflags. - D3DCS _ LEFT
Alle Scheitelpunkte werden von der linken Ebene des Anzeige-Frustums abgeschnitten. - D3DCS _ RIGHT
Alle Scheitelpunkte werden von der rechten Ebene des Anzeige-Frustums abgeschnitten. - D3DCS _ TOP
Alle Scheitelpunkte werden von der oberen Ebene des Anzeige-Frustums abgeschnitten. - D3DCS _ BOTTOM
Alle Scheitelpunkte werden von der unteren Ebene des Anzeige-Frustums abgeschnitten. - D3DCS _ FRONT
Alle Scheitelpunkte werden von der vorderen Ebene des Anzeige-Frustums abgeschnitten. - D3DCS _ BACK
Alle Scheitelpunkte werden von der Hintergrundebene des Anzeige-Frustums abgeschnitten. - D3DCS _ PLANE0
Anwendungsdefinierte Clippingebenen. - D3DCS _ PLANE1
Anwendungsdefinierte Clippingebenen. - D3DCS _ PLANE2
Anwendungsdefinierte Clippingebenen. - D3DCS _ PLANE3
Anwendungsdefinierte Clippingebenen. - D3DCS _ PLANE4
Anwendungsdefinierte Clippingebenen. - D3DCS _ PLANE5
Anwendungsdefinierte Clippingebenen. -
ClipIntersection
-
Typ: DWORD
-
Schnittmengenflags, die den aktuellen Clipstatus beschreiben. Dieser Member kann die gleichen Flags wie ClipUnion annehmen.
Hinweise
Wenn clipping während der Vertexverarbeitung aktiviert ist (durch ProcessVertices, DrawPrimitiveoder andere Zeichnungsfunktionen), berechnet Direct3D einen Clipcode für jeden Scheitelpunkt. Der Clipcode ist eine Kombination aus D3DCS-Bits. _ * Wenn sich ein Scheitelpunkt außerhalb einer bestimmten Clippingebene befindet, wird das entsprechende Bit im Clippingcode festgelegt. Direct3D verwaltet den Clipstatus mithilfe von D3DCLIPSTATUS9, das ClipUnion- und ClipIntersection-Member enthält. ClipUnion ist ein bitweises OR aller Scheitelpunkt-Clipcodes, und ClipIntersection ist ein bitweises AND aller Scheitelpunkt-Clipcodes. Die Anfangswerte sind 0 (null) für ClipUnion und 0xFFFFFFFF für ClipIntersection. Wenn D3DRS _ CLIPPING auf FALSE festgelegt ist, werden ClipUnion und ClipIntersection auf 0 (null) festgelegt. Direct3D aktualisiert den Clipstatus während Zeichnungsaufrufen. Um den Clipstatus für ein bestimmtes Objekt zu berechnen, legen Sie ClipUnion und ClipIntersection auf ihren Anfangswert fest, und fahren Sie mit dem Zeichnen fort.
Der Clipstatus wird von DrawRectPatch und DrawTriPatch nicht aktualisiert, da dafür keine Softwareemulation vorhanden ist.
Anforderungen
| Anforderung | Wert |
|---|---|
| Header |
|