структура D3DHAL_DP2INDEXEDTRIANGLEFAN (d3dhal.h)
D3DHAL_DP2INDEXEDTRIANGLEFAN анализируется из буфера команд с помощью обратного вызова D3dDrawPrimitives2, когда член bCommandструктуры D3DHAL_DP2COMMAND имеет значение D3DDP2OP_INDEXEDTRIANGLEFAN и используется для отрисовки последовательности связанных треугольников с помощью индексов вершин. Все треугольники имеют общую вершину.
Синтаксис
typedef struct _D3DHAL_DP2INDEXEDTRIANGLEFAN {
WORD wV[3];
} D3DHAL_DP2INDEXEDTRIANGLEFAN, *LPD3DHAL_DP2INDEXEDTRIANGLEFAN;
Члены
wV[3]
Указывает индексы в буфере вершин, из которых драйвер получает координатные данные для вершин, составляющих вентилятор треугольника.
Хотя в этом элементе достаточно места для трех индексов, этот массив индексов следует рассматривать как массив переменных размеров с элементами (wPrimitiveCount + 2). (wPrimitiveCount является членом структуры D3DHAL_DP2COMMAND.)
Комментарии
D3dDrawPrimitives2 должен обрабатывать (wPrimitiveCount+2) индексы из буфера команд, фактически обрабатывая структуры wPrimitiveCount D3DHAL_DP2INDEXEDTRIANGLEFAN. Значение wPrimitiveCount указывается в структуре D3DHAL_DP2COMMAND.
Драйвер должен обработать в общей сложности (wPrimitiveCount + 2) вершин из буфера вершин, три вершины на треугольник. Последовательность отображаемых треугольников: (wV[1], wV[2], wV[0]), (wV[2], wV[3], wV[0]), (wV[3], wV[4], wV[0]), ..., (wV[wPrimitiveCount], wV[wPrimitiveCount]+1], wV[0]). Обратите внимание, что все треугольники имеют общую вершину, указанную в wV[0].
Структура D3DHAL_DP2STARTVERTEX сразу же следует за командой в буфере команд. Индексы буфера вершин относительно смещения буфера вершин, заданного членом dwVertexOffset структуры D3DHAL_DRAWPRIMITIVES2DATA , а также базовое смещение, полученное из элемента wVStart структуры D3DHAL_DP2STARTVERTEX.
На следующем рисунке показана часть примера буфера команд, содержащего команду D3DDP2OP_INDEXEDTRIANGLEFAN, смещение D3DHAL_DP2STARTVERTEX и логический список D3DHAL_DP2INDEXEDTRIANGLEFAN структур. Драйвер должен обработать пять вершин из буфера вершин, отрисовав вентилятор с тремя треугольниками, определенными (v[4], v[5], v[7]), (v[5], v[6], v[7]), (v[6], v[9], v[7]).
Требования
Требование | Значение |
---|---|
Заголовок | d3dhal.h (включая D3dhal.h) |
См. также раздел
D3DDP2OP_INDEXEDTRIANGLEFAN
Обратная связь
https://aka.ms/ContentUserFeedback.
Ожидается в ближайшее время: в течение 2024 года мы постепенно откажемся от GitHub Issues как механизма обратной связи для контента и заменим его новой системой обратной связи. Дополнительные сведения см. в разделеОтправить и просмотреть отзыв по