D3DSTATUS

The D3DSTATUS structure describes the current status of the execute buffer. This structure is part of the D3DEXECUTEDATA structure and is used with the D3DOP_SETSTATUS opcode in the D3DOPCODE enumerated type.

typedef struct _D3DSTATUS { 
    DWORD   dwFlags; 
    DWORD   dwStatus; 
    D3DRECT drExtent; 
} D3DSTATUS, *LPD3DSTATUS; 
 

Members

dwFlags
One of the following flags, specifying whether the status, the extents, or both are being set:
D3DSETSTATUS_STATUS
Set the status.
D3DSETSTATUS_EXTENTS
Set the extents specified in the drExtent member.
D3DSETSTATUS_ALL
Set both the status and the extents.

dwStatus
Clipping flags. This member can be one or more of the following flags:

Combination and General Flags
D3DSTATUS_CLIPINTERSECTION
Combination of all CLIPINTERSECTION flags.
D3DSTATUS_CLIPUNIONALL
Combination of all CLIPUNION flags.
D3DSTATUS_DEFAULT
Combination of D3DSTATUS_CLIPINTERSECTION and D3DSTATUS_ZNOTVISIBLE flags. This value is the default.
D3DSTATUS_ZNOTVISIBLE

Clip Intersection Flags
D3DSTATUS_CLIPINTERSECTIONBACK
Logical AND of the clip flags for the vertices compared to the back clipping plane of the viewing frustum.
D3DSTATUS_CLIPINTERSECTIONBOTTOM
Logical AND of the clip flags for the vertices compared to the bottom of the viewing frustum.
D3DSTATUS_CLIPINTERSECTIONFRONT
Logical AND of the clip flags for the vertices compared to the front clipping plane of the viewing frustum.
D3DSTATUS_CLIPINTERSECTIONGEN0 through D3DSTATUS_CLIPINTERSECTIONGEN5
Logical AND of the clip flags for application-defined clipping planes.
D3DSTATUS_CLIPINTERSECTIONLEFT
Logical AND of the clip flags for the vertices compared to the left side of the viewing frustum.
D3DSTATUS_CLIPINTERSECTIONRIGHT
Logical AND of the clip flags for the vertices compared to the right side of the viewing frustum.
D3DSTATUS_CLIPINTERSECTIONTOP
Logical AND of the clip flags for the vertices compared to the top of the viewing frustum.

Clip Union Flags
D3DSTATUS_CLIPUNIONBACK
Equal to D3DCLIP_BACK.
D3DSTATUS_CLIPUNIONBOTTOM
Equal to D3DCLIP_BOTTOM.
D3DSTATUS_CLIPUNIONFRONT
Equal to D3DCLIP_FRONT.
D3DSTATUS_CLIPUNIONGEN0 through D3DSTATUS_CLIPUNIONGEN5
Equal to D3DCLIP_GEN0 through D3DCLIP_GEN5.
D3DSTATUS_CLIPUNIONLEFT
Equal to D3DCLIP_LEFT.
D3DSTATUS_CLIPUNIONRIGHT
Equal to D3DCLIP_RIGHT.
D3DSTATUS_CLIPUNIONTOP
Equal to D3DCLIP_TOP.

Basic Clipping Flags
D3DCLIP_BACK
All vertices are clipped by the back plane of the viewing frustum.
D3DCLIP_BOTTOM
All vertices are clipped by the bottom plane of the viewing frustum.
D3DCLIP_FRONT
All vertices are clipped by the front plane of the viewing frustum.
D3DCLIP_LEFT
All vertices are clipped by the left plane of the viewing frustum.
D3DCLIP_RIGHT
All vertices are clipped by the right plane of the viewing frustum.
D3DCLIP_TOP
All vertices are clipped by the top plane of the viewing frustum.
D3DCLIP_GEN0 through D3DCLIP_GEN5
Application-defined clipping planes.

drExtent
A D3DRECT structure that defines a bounding box for all the relevant vertices. For example, the structure might define the area containing the output of the D3DOP_PROCESSVERTICES opcode, assuming the D3DPROCESSVERTICES_UPDATEEXTENTS flag is set in the D3DPROCESSVERTICES structure.

Remarks

The status is a rolling status and is updated during each execution. The bounding box in the drExtent member can grow with each execution, but it does not shrink; it can be reset only by using the D3DOP_SETSTATUS opcode.

QuickInfo

  Windows NT: Use version 4.0 or later.
  Windows: Use Windows 95 or later. Available as a redistributable for Windows 95.
  Windows CE: Unsupported.
  Header: Declared in d3dtypes.h.

See Also

D3DEXECUTEDATA, D3DOPCODE, D3DRECT