Quantcast
Channel: GameDev.net
Viewing all articles
Browse latest Browse all 17560

Offsetting DrawIndexedInstanced() using StartIndexLocation, BaseVertexLocation, StartInstanceLocation

$
0
0

 Hi, I use the following layout within my code and use DrawIndexedInstanced() to render multiple objects.  Everything works fine !

CONST D3D11_INPUT_ELEMENT_DESC vertexLayoutDesc[] =
{
  // Vertex buffer slot 0.
  { "POSITION", 0, DXGI_FORMAT_R32G32B32A32_FLOAT, 0, 0,                            D3D11_INPUT_PER_VERTEX_DATA,   INSTANCE_DATA_STEP_RATE_0 }, // vertexPosition
  { "TEXCOORD", 0, DXGI_FORMAT_R32_FLOAT,          0, D3D11_APPEND_ALIGNED_ELEMENT, D3D11_INPUT_PER_VERTEX_DATA,   INSTANCE_DATA_STEP_RATE_0 }, // vertexNumber
  // slot 1, 2 and 3.
  { "COLOR",    0, DXGI_FORMAT_R32G32B32A32_FLOAT, 1, D3D11_APPEND_ALIGNED_ELEMENT, D3D11_INPUT_PER_INSTANCE_DATA, INSTANCE_DATA_STEP_RATE_1 }, // bitColor Color
  { "TEXCOORD", 1, DXGI_FORMAT_R32G32B32A32_FLOAT, 2, D3D11_APPEND_ALIGNED_ELEMENT, D3D11_INPUT_PER_INSTANCE_DATA, INSTANCE_DATA_STEP_RATE_1 }, // bitSize Widths
  { "TEXCOORD", 2, DXGI_FORMAT_R32G32B32_FLOAT,    3, D3D11_APPEND_ALIGNED_ELEMENT, D3D11_INPUT_PER_INSTANCE_DATA, INSTANCE_DATA_STEP_RATE_1 }, // bitOffset Offsets
  // slot 4.
  { "TEXCOORD",  3, DXGI_FORMAT_R32G32B32_FLOAT,    4, D3D11_APPEND_ALIGNED_ELEMENT, D3D11_INPUT_PER_INSTANCE_DATA, (UINT)instanceCount },      // XMFLOAT3 VoxelPositions::_position.  An XMFLOAT4 W could have been used as a *single* orientation {angle}
  { "WORLDVIEW …

Viewing all articles
Browse latest Browse all 17560

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>