структура 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]).

Рисунок, показывающий буфер с командой D3DDP2OP_INDEXEDLINESTRIP, смещением D3DHAL_DP2STARTVERTEX и списком D3DHAL_DP2INDEXEDLINESTRIP структур

Требования

Требование Значение
Заголовок d3dhal.h (включая D3dhal.h)

См. также раздел

D3DDP2OP_INDEXEDLINESTRIP

D3DHAL_DP2COMMAND

D3DHAL_DP2STARTVERTEX

D3DHAL_DRAWPRIMITIVES2DATA

D3dDrawPrimitives2