Graphics.DrawProceduralNow
Declaration
public static void DrawProceduralNow(MeshTopology topology, int vertexCount, int instanceCount);Параметры
| Параметр | Описание |
|---|---|
| топология | Топология процедурной геометрии. |
| vertexCount | Количество вершин для отображения. |
| instanceCount | Количество экземпляров для отображения. |
Описание
Чертает процедурную геометрию на GPU.
DrawProceduralNow выполняет вызов отрисовки на GPU. Если шейдеру требуются вершинные буферы, то в зависимости от платформы происходит одно из двух: — если вершинный буфер объявлен, но компилятор может его оптимизировать, обычный шейдер может использовать вершинные буферы, но не вершинные индексы (DrawProcedural); — если компилятор не может оптимизировать объявление вершинного буфера, вызов отрисовки будет преобразован в обычный вызов отрисовки меша с эмулированными вершинными буферами.
Последняя опция имеет накладные расходы на производительность, поэтому рекомендуется не объявлять вершинные входы в шейдерах при использовании DrawProceduralNow. Это в основном полезно на Модель шейдера 4.5 аппаратного уровня, где шейдеры могут читать произвольные данные ComputeBuffer — буферы.
Обратите внимание, что этот вызов выполняется немедленно, подобно Graphics.DrawMeshNow. Используется текущая цель рендеринга, матрицы преобразований и пропуск шейдера.
Существует также аналогичная функциональность в CommandBuffers, см. CommandBuffer.DrawProcedural.
Дополнительные ресурсы: Graphics.DrawProceduralIndirectNow, SystemInfo.supportsInstancing.
Declaration
public static void DrawProceduralNow(MeshTopology topology, GraphicsBuffer indexBuffer, int indexCount, int instanceCount);Параметры
| Параметр | Описание |
|---|---|
| топология | Топология процедурной геометрии. |
| indexCount | Количество индексов для отображения. |
| instanceCount | Количество экземпляров для отображения. |
| indexBuffer | Буфер индекса, используемый для представления вершин в GPU. |
Описание
Чертает процедурную геометрию на GPU.
DrawProceduralNow выполняет вызов отрисовки на GPU без вершинного буфера. В основном это полезно на Shader Model 4.5 уровне оборудования, где шейдеры могут читать произвольные данные из ComputeBuffer буферов.
Обратите внимание, что этот вызов выполняется немедленно, подобно Graphics.DrawMeshNow. Он использует текущее задание рендеринга, матрицы преобразования и проход шейдера.
Аналогичная функциональность есть и в CommandBuffers, см. CommandBuffer.DrawProcedural.
Дополнительные ресурсы: Graphics.DrawProceduralIndirectNow, SystemInfo.supportsInstancing.