Объявление
public void DrawMeshInstancedProcedural(Mesh mesh, int submeshIndex, Material material, int shaderPass, int count, MaterialPropertyBlock properties);Параметры
mesh | Сетка для рисования. |
submeshIndex | Какое подмножество сетки рисовать. Это относится только к сеткам, состоящим из нескольких материалов. |
material | Материал для использования. |
shaderPass | Какой проход шейдера использовать, или -1, который отображает все проходы. |
count | Количество отрисовываемых экземпляров. |
properties | Дополнительные свойства материала для применения к материалу непосредственно перед отрисовкой этой сетки. См. MaterialPropertyBlock. |
Описание
Добавить команду "draw mesh with instancing".
Нарисуйте сетку с помощью процедурного создания экземпляров. Это похоже на Graphics.DrawMeshInstancedIndirect, за исключением того, что, когда количество экземпляров известно из сценария, его можно указать напрямую с помощью этого метода, а не через ComputeBuffer. Если Material.enableInstancing равно false, команда регистрирует ошибку и пропускает рендеринг при каждом выполнении команды; команда не сразу завершается ошибкой и не вызывает исключение.
InvalidOperationException будет создано, если текущая платформа не поддерживает этот API (например, если создание экземпляров графического процессора недоступно). См. раздел SystemInfo.supportsInstancing.
Смотрите так же: DrawMesh, Graphics.DrawMeshInstancedProcedural, MaterialPropertyBlock.