Идея состоит в том, чтобы генерировать вершину и индексный буфер для рисования сферы.
Сфера будет иметь следующие свойства: < /strong>
a) Radius 1
b) Center будет будет мировым центром (0,0, 0,0, 0). Подразделение. Управление тем, как генерируются грибные вершины/индексы.
(a) и (b) также позволит мне масштабировать и переводить основную сферу внутри вершин. />
Код: Выделить всё
D3D12_INPUT_ELEMENT_DESC inputLayoutElement[] =
{
{ "POSITION", 0, DXGI_FORMAT_R32G32B32_FLOAT, 0, 0, D3D12_INPUT_CLASSIFICATION_PER_VERTEX_DATA, 0 },
};
Код: Выделить всё
commandList->SetPipelineState(m_PSO);
commandList->SetGraphicsRootSignature(m_rootSignature);
commandList->IASetPrimitiveTopology(D3D_PRIMITIVE_TOPOLOGY_TRIANGLELIST);
commandList->IASetVertexBuffers(0, 1, &m_vertexBuffer); // Vertex buffer here
commandList->IASetIndexBuffer(&m_indexBuffer);// Index buffer here
commandList->DrawIndexedInstanced(m_indexCount, 1, 0, 0, 0);
1) Vertex buffer is created using an array of vertices:
Код: Выделить всё
std::vector
Код: Выделить всё
std::vector
Подробнее здесь: https://stackoverflow.com/questions/796 ... directx-12