IPrimitiveRenderer
Description
- Extended by
- 
PrimitiveRenderer abstract 
Base interface for classes that provide methods for drawing graphic primitives (both indexed and non-indexed) and for dispatching general-purpose computational work.
- See also
Public / Methods
DrawBuffer
Draws indexed primitives indirectly from the current draw buffer (see Buffer).
This method returns silently if Buffer is null or if CanDrawBuffer returns false.
DrawIndices
Draws indexed primitives.
The vertex indices of the primitive are stored in an IIndexBuffer object, the vertices are stored in a IVertexBuffer object. The application is responsible for setting the proper render states.
Exactly indexCount in indices will read from the index buffer, starting at the buffer index firstIndex in (not ! byte offset).
DrawIndicesInstanced
Draws indexed primitives.
The vertex indices of the primitive are stored in an IIndexBuffer object, the vertices and instances are stored in a IVertexBuffer object. The application is responsible for setting the proper render states.
Exactly indexCount in indices will read from the index buffer, starting at the buffer index firstIndex in (not ! byte offset).
DrawVertices
Draws primitives.
The vertices are stored in a IVertexBuffer object. The application is responsible for setting the proper render states.
DrawVerticesInstanced
Draws primitives with instancing.
The vertices and instances are stored in a IVertexBuffer object. The application is responsible for setting the proper render states.
Public / Attributes
Buffer
The buffer to use for drawing primitives indirectly.
The buffer is a packed array of the following structure, where each element represents an indexed and instanced draw call:
struct DrawBuffer       // Byte size 20
{
  uint32 indexCount;    // Byte offset 0
  uint32 instanceCount; // Byte offset 4
  uint32 firstIndex;    // Byte offset 8
  int32  zeroVertex;    // Byte offset 12
  uint32 firstInstance; // Byte offset 16
}
CanRestartPrimitive
Can primitives be restarted by inserting a special index (~0) into the stream?
Patches
Specifies the patch size to use for subsequent draw calls (hardware tessellation).
Defaults to 0.
Type
Specifies the primitive type to use for subsequent draw calls (regular primitives).
If Patches is greater than zero, the primitive type is ignored. Defaults to Primitive.PointList.