Microsoft DirectX 8.1 (C++) |
Sets the clip status.
HRESULT SetClipStatus( CONST D3DCLIPSTATUS8* pClipStatus );
If the method succeeds, the return value is D3D_OK.
D3DERR_INVALIDCALL if one of the arguments is invalid.
When clipping is enabled during vertex processing (by ProcessVertices, DrawPrimitive, or other drawing functions), Microsoft® Direct3D® computes a clip code for every vertex. The clip code is a combination of D3DCS_* bits. When a vertex is outside a particular clipping plane, the corresponding bit is set in the clipping code. Direct3D maintains the clip status using D3DClipStatus8, which has ClipUnion and ClipIntersection members. ClipUnion is a bitwise "OR" of all vertex clip codes and ClipIntersection is a bitwise "AND" of all vertex clip codes. Initial values are zero for ClipUnion and 0xFFFFFFFF for ClipIntersection. When D3DRS_CLIPPING is set to FALSE, ClipUnion and ClipIntersection are set to zero. Direct3D updates the clip status during drawing calls. To compute clip status for a particular object, set ClipUnion and ClipIntersection to their initial value and continue drawing.
Clip status is not updated by DrawRectPatch and DrawTriPatch because there is no software emulation for them.
Header: Declared in D3d8.h.
Import Library: Use D3d8.lib.