структура D3DHAL_DP2INDEXEDLINESTRIP (d3dhal.h)
D3DHAL_DP2INDEXEDLINESTRIP анализируется из буфера команд с помощью обратного вызова D3dDrawPrimitives2, когда член bCommandструктуры D3DHAL_DP2COMMAND имеет значение D3DDP2OP_INDEXEDLINESTRIP и используется для отрисовки последовательности сегментов соединенных строк с помощью индексов вершин.
Синтаксис
typedef struct _D3DHAL_DP2INDEXEDLINESTRIP {
WORD wV[2];
} D3DHAL_DP2INDEXEDLINESTRIP, *LPD3DHAL_DP2INDEXEDLINESTRIP;
Члены
wV[2]
Указывает индексы в буфере вершин, из которых драйвер получает координатные данные для вершин, составляющих полосу линий.
Хотя в этом элементе достаточно места для хранения двух индексов, этот массив индексов следует рассматривать как массив переменных размеров с элементами (wPrimitiveCount+ 1). (wPrimitiveCount является членом структуры D3DHAL_DP2COMMAND.)
Комментарии
Индексированные полосы линий, отображаемые с буферами вершин, задаются с помощью D3DHAL_DP2INDEXEDLINESTRIP. Число обрабатываемых сегментов строк определяется членом wPrimitiveCount D3DHAL_DP2COMMAND. Последовательность отрисовываемых сегментов строк: (wV[0], wV[1]), (wV[1], wV[2]), (wV[2], wV[3]), ..., (wVStart[wPrimitiveCount -1], wVStart[wPrimitiveCount]).
D3dDrawPrimitives2 должен обрабатывать (wPrimitiveCount+1) индексы из буфера команд, фактически обрабатывая структуры wPrimitiveCount D3DHAL_DP2INDEXEDLINESTRIP. Значение wPrimitiveCount указывается в структуре D3DHAL_DP2COMMAND.
Структура D3DHAL_DP2STARTVERTEX сразу же следует за командой в буфере команд. Индексы буфера вершин относительно смещения буфера вершин, заданного членом dwVertexOffset структуры D3DHAL_DRAWPRIMITIVES2DATA , а также базовое смещение, полученное из элемента wVStart структуры D3DHAL_DP2STARTVERTEX.
На следующем рисунке показана часть примера буфера команд, содержащего команду D3DDP2OP_INDEXEDLINESTRIP, смещение D3DHAL_DP2STARTVERTEX и список D3DHAL_DP2INDEXEDLINESTRIP структур. Драйвер должен обработать четыре вершины из буфера вершин, отрисовав три сегмента соединенных линий, определенных (v[8], v[4]), (v[4], v[7]), (v[7], v[6]).
Требования
Требование | Значение |
---|---|
Заголовок | d3dhal.h (включая D3dhal.h) |
См. также раздел
D3DDP2OP_INDEXEDLINESTRIP