Unity 6.3
0 онлайн 90 гостей 3 в системе
Вход

CommandBuffer.DrawMeshInstanced

Declaration

public void DrawMeshInstanced(Mesh mesh, int submeshIndex, Material material, int shaderPass, Matrix4x4[] matrices, int count, MaterialPropertyBlock properties);
public void DrawMeshInstanced(Mesh mesh, int submeshIndex, Material material, int shaderPass, Matrix4x4[] matrices, int count);
public void DrawMeshInstanced(Mesh mesh, int submeshIndex, Material material, int shaderPass, Matrix4x4[] matrices);

Параметры

Параметр Описание
сетка Mesh для рисования.
submeshIndex Какое подмножество меши рисовать. Это относится только к сетям, которые состоят из нескольких материалов.
материал Material использовать.
shaderPass Какой проход шейдера использовать, или -1, который отображает все проходы.
матрицы Массив матриц преобразования объектов.
Количество Число экземпляров для рисования.
свойства Дополнительные свойства Материала, применяемые к Материалу непосредственно перед рисованием этой сетки. См. MaterialPropertyBlock.

Описание

Добавляет команду "рисовать сетку с инстанционированием".

Сетка будет нарисована только один раз, она не будет освещаться по пикселям и не будет получать тени в реальном времени.

Команда не сразу же завершится неудачей и вызовет исключение, если Material.enableInstancing является false, но она будет регистрировать ошибку и пропускать рендеринг каждый раз, когда команда выполняется, если такое условие будет обнаружено.

InvalidOperationException будет вызвано, если текущая платформа не поддерживает это API (i.e. если GPU инстанционирование недоступно). См. SystemInfo.supportsInstancing.

Дополнительные ресурсы: ,DrawMesh,, ,Graphics.DrawMeshInstanced,, ,MaterialPropertyBlock,.