D3DOPCODE
The D3DOPCODE enumerated type contains the opcodes for execute buffer.
typedef enum _D3DOPCODE {
D3DOP_POINT = 1,
D3DOP_LINE = 2,
D3DOP_TRIANGLE = 3,
D3DOP_MATRIXLOAD = 4,
D3DOP_MATRIXMULTIPLY = 5,
D3DOP_STATETRANSFORM = 6,
D3DOP_STATELIGHT = 7,
D3DOP_STATERENDER = 8,
D3DOP_PROCESSVERTICES = 9,
D3DOP_TEXTURELOAD = 10,
D3DOP_EXIT = 11,
D3DOP_BRANCHFORWARD = 12,
D3DOP_SPAN = 13,
D3DOP_SETSTATUS = 14,
D3DOP_FORCE_DWORD = 0x7fffffff,
} D3DOPCODE;
Members
- D3DOP_POINT
- Sends a point to the renderer. Operand data is described by the D3DPOINT structure.
- D3DOP_LINE
- Sends a line to the renderer. Operand data is described by the D3DLINE structure.
- D3DOP_TRIANGLE
- Sends a triangle to the renderer. Operand data is described by the D3DTRIANGLE structure.
- D3DOP_MATRIXLOAD
- Triggers a data transfer in the rendering engine. Operand data is described by the D3DMATRIXLOAD structure.
- D3DOP_MATRIXMULTIPLY
- Triggers a data transfer in the rendering engine. Operand data is described by the D3DMATRIXMULTIPLY structure.
- D3DOP_STATETRANSFORM
- Sets the value of internal state variables in the rendering engine for the transformation module. Operand data is a variable token and the new value. The token identifies the internal state variable, and the new value is the value to which that variable should be set. For more information about these variables, see the D3DSTATE structure and the D3DTRANSFORMSTATETYPE enumerated type.
- D3DOP_STATELIGHT
- Sets the value of internal state variables in the rendering engine for the lighting module. Operand data is a variable token and the new value. The token identifies the internal state variable, and the new value is the value to which that variable should be set. For more information about these variables, see the D3DSTATE structure and the D3DLIGHTSTATETYPE enumerated type.
- D3DOP_STATERENDER
- Sets the value of internal state variables in the rendering engine for the rendering module. Operand data is a variable token and the new value. The token identifies the internal state variable, and the new value is the value to which that variable should be set. For more information about these variables, see the D3DSTATE structure and the D3DRENDERSTATETYPE enumerated type.
- D3DOP_PROCESSVERTICES
- Sets both lighting and transformations for vertices. Operand data is described by the D3DPROCESSVERTICES structure.
- D3DOP_TEXTURELOAD
- Triggers a data transfer in the rendering engine. Operand data is described by the D3DTEXTURELOAD structure.
- D3DOP_EXIT
- Signals that the end of the list has been reached.
- D3DOP_BRANCHFORWARD
- Enables a branching mechanism within the execute buffer. For more information, see the D3DBRANCH structure.
- D3DOP_SPAN
- This opcode is obsolete and is silently ignored. Spans a list of points with the same y value. For more information, see the D3DSPAN structure.
- D3DOP_SETSTATUS
- Resets the status of the execute buffer. For more information, see the D3DSTATUS structure.
- D3DOP_FORCE_DWORD
- Forces this enumerated type to be 32 bits in size.
Remarks
An execute buffer has two parts: an array of vertices (each typically with position, normal vector, and texture coordinates) and an array of opcode/operand groups. One opcode can have several operands following it; the system simply performs the relevant operation on each operand.
Windows NT/2000: Requires Windows NT 4.0 SP3 or later.
Windows 95/98: Requires Windows 95 or later. Available as a redistributable for Windows 95.
Header: Declared in d3dtypes.h.
See Also
D3DINSTRUCTION