PFND3DDDI_DRAWINDEXEDPRIMITIVE2 callback function

The DrawIndexedPrimitive2 function draws indexed primitives that the Microsoft Direct3D runtime has transformed the index data in.

Syntax

PFND3DDDI_DRAWINDEXEDPRIMITIVE2 Pfnd3dddiDrawindexedprimitive2;

HRESULT Pfnd3dddiDrawindexedprimitive2(
  HANDLE hDevice,
  const D3DDDIARG_DRAWINDEXEDPRIMITIVE2 *Arg2,
  UINT Arg3,
  const VOID *Arg4,
  const UINT *Arg5
)
{...}

Parameters

hDevice

A handle to the display device (graphics context).

Arg2

pData [in]

A pointer to a D3DDDIARG_DRAWINDEXEDPRIMITIVE2 structure that describes the primitive to draw.

Arg3

dwIndicesSize [in]

The size, in bytes, of indexes in the buffer that pIndexBuffer points to. This size is 2 or 4 bytes.

Arg4

pIndexBuffer [in]

A pointer to a buffer of index data to be drawn.

Arg5

pFlagBuffer [in, optional]

A pointer to a 32-bit value that contains triangle-edge flags, which are used only during line-fill mode. The first three bits (0/1/2) of the 32-bit value specify how the three edges of the corresponding triangle are rendered. If a bit is set to 1, its associated triangle edge is rendered; otherwise, the edge is not rendered.

If the pointer is NULL, the user-mode display driver should use its fast path to draw primitives.

Return Value

DrawIndexedPrimitive2 returns S_OK or an appropriate error result if the primitive is not successfully drawn.

Remarks

Stream zero contains transform indices and is the only stream that should be accessed.

When the Microsoft Direct3D runtime specifies triangle-edge flags in the value that the pFlagBuffer parameter points to, the runtime also specifies to draw only one triangle (that is, the runtime specifies the D3DPT_TRIANGLELIST value in the PrimitiveType member and 0x00000001 in the PrimitiveCount member of the D3DDDIARG_DRAWINDEXEDPRIMITIVE2 structure that the pData parameter points to).

Requirements

   
Minimum supported client Available in Windows Vista and later versions of the Windows operating systems.
Target Platform Desktop
Header d3dumddi.h (include D3dumddi.h)

See Also

D3DDDIARG_DRAWINDEXEDPRIMITIVE2

D3DDDI_DEVICEFUNCS

DrawIndexedPrimitive