структура 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 (include D3dhal.h)

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

D3DDP2OP_INDEXEDLINESTRIP

D3DHAL_DP2COMMAND

D3DHAL_DP2STARTVERTEX

D3DHAL_DRAWPRIMITIVES2DATA

D3dDrawPrimitives2