Поделиться через


Метод ID3D11DeviceContext::D rawIndexedInstanced (d3d11.h)

Рисование индексированных экземплярных примитивов.

Синтаксис

void DrawIndexedInstanced(
  [in] UINT IndexCountPerInstance,
  [in] UINT InstanceCount,
  [in] UINT StartIndexLocation,
  [in] INT  BaseVertexLocation,
  [in] UINT StartInstanceLocation
);

Параметры

[in] IndexCountPerInstance

Тип: UINT

Количество индексов, считываемых из буфера индексов для каждого экземпляра.

[in] InstanceCount

Тип: UINT

Число отрисовываемых экземпляров.

[in] StartIndexLocation

Тип: UINT

Расположение первого индекса, считываемого GPU из буфера индекса.

[in] BaseVertexLocation

Тип: INT

Значение, добавляемое к каждому индексу перед считывание вершины из буфера вершин.

[in] StartInstanceLocation

Тип: UINT

Значение, добавляемое к каждому индексу перед чтением данных по экземпляру из буфера вершин.

Возвращаемое значение

None

Remarks

API рисования отправляет работу в конвейер отрисовки.

Instancing может увеличить производительность, повторно используя одну и ту же геометрию для рисования нескольких объектов в сцене. Одним из примеров инстансинга может быть рисование одного и того же объекта с разными положениями и цветами. Для инстансирования требуется несколько буферов вершин: по крайней мере один для данных для каждой вершины и второй буфер для данных экземпляра.

Второй буфер необходим, только если используемый входной макет содержит элементы, использующие D3D11_INPUT_PER_INSTANCE_DATA в качестве буфера классификации входных элементов для данных экземпляра.

Требования

Требование Значение
Целевая платформа Windows
Header d3d11.h
Библиотека D3D11.lib

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

ID3D11DeviceContext