В Direct3D 11 у меня есть вершина, которая используется для нескольких треугольников. Другими словами, на одну и ту же вершину ссылаются несколько индексов. В моем вершинном шейдере HLSL я хочу знать, какой INDEX обрабатывается. Есть ли способ сделать это? Что-то похожее на семантику HLSL 'SV_VertexID' или 'SV_PrimitiveID', но для текущего индекса?
Для ясности предположим, что буфер индекса: Index [3] = {10,11,12}; SV_VertexID (используя ID3D11DeviceContext :: DrawIndexed ()) вернет 10, 11 и 12. Но я хочу 0, 1, 2.
Счетчик внутри вершинного шейдера, который начинается с 0 и увеличивается при каждом вызове вершинный шейдер также был бы полезен. В каждом кадре этот счетчик должен быть сброшен в 0. Возможно ли это?
Спасибо.