Freigeben über


IDirect3DDevice9::SetClipPlane-Methode (d3d9helper.h)

Legt die Koeffizienten einer benutzerdefinierten Clippingebene für das Gerät fest.

Syntax

HRESULT SetClipPlane(
  [in] DWORD       Index,
  [in] const float *pPlane
);

Parameter

[in] Index

Typ: DWORD

Index der Clippingebene, für die die Ebenengleichungskoeffizienten festgelegt werden sollen.

[in] pPlane

Typ: const float*

Zeiger auf eine Adresse eines Vier-Element-Arrays von Werten, die die festzulegenden Clippingebenenkoeffizienten in Form der allgemeinen Ebenengleichung darstellen. Siehe Hinweise.

Rückgabewert

Typ: HRESULT

Wenn die Methode erfolgreich ist, wird der Rückgabewert D3D_OK. Wenn die Methode fehlschlägt, wird der Rückgabewert D3DERR_INVALIDCALL. Dieser Fehler gibt an, dass der Wert in Index den vom Gerät unterstützten maximalen Clippingebenenindex überschreitet oder dass das Array bei pPlane nicht groß genug ist, um vier Gleitkommawerte zu enthalten.

Hinweise

Die Koeffizienten, die diese Methode festlegt, haben die Form der allgemeinen Ebenengleichung. Wenn die Werte im Array bei pPlane mit A, B, C und D in der Reihenfolge bezeichnet würden, in der sie im Array angezeigt werden, würden sie in die allgemeine Ebenengleichung passen, sodass Ax + By + Cz + Dw = 0. Ein Punkt mit homogenen Koordinaten (x, y, z, w) ist im Halbraum der Ebene sichtbar, wenn Ax + By + Cz + Dw >= 0. Punkte, die hinter der Clippingebene vorhanden sind, werden von der Szene abgeschnitten.

Wenn die Pipeline für feste Funktionen verwendet wird, wird davon ausgegangen, dass sich die Ebenengleichungen im Weltraum befinden. Wenn die programmierbare Pipeline verwendet wird, wird davon ausgegangen, dass sich die Ebenengleichungen im Clippingbereich befinden (der gleiche Raum wie Ausgabevertices).

Mit dieser Methode wird die festgelegte Gleichung der Clippingebene nicht aktiviert. Um eine Beschneidungsebene zu aktivieren, legen Sie das entsprechende Bit im DWORD-Wert fest, der auf den D3DRS_CLIPPLANEENABLE Renderzustand angewendet wird.

Anforderungen

Anforderung Wert
Zielplattform Windows
Kopfzeile d3d9helper.h (include D3D9.h)
Bibliothek D3D9.lib

Weitere Informationen

IDirect3DDevice9

IDirect3DDevice9::GetClipPlane