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

RenderQueue

перечисление

Описание

Порядок, в котором Unity отображает объекты.

Это перечисление задаёт начало каждого диапазона значений очереди рендеринга. отображение значения очереди материала - целое число в диапазоне [0;5000], которое определяет порядок, в котором Unity отображает объект. Unity отображает материалы с более низкими значениями очереди отображения раньше, чем материалы с более высокими значениями.

Весь диапазон значений очереди рендеринга разделён на секции, и каждая секция представлена элементом этого перечисления. Используйте ту секцию очереди рендеринга, которая соответствует типу объекта. Например, непрозрачная геометрия должна попадать в Geometry очереди, в то время как прозрачная геометрия должна находиться в Transparent Это гарантирует, что Unity отображает прозрачные объекты после непрозрачных объектов.

Объекты, использующие значение очереди рендеринга в диапазоне [0; 2500], сортируются во время рендеринга на основе Camera.opaqueSortMode (обычно в порядке от верхнего к нижнему), в то время как объекты, использующие значение очереди рендеринга в диапазоне [2501; 5000], сортируются по Camera.transparencySortMode Это поведение обеспечивает, что Unity отображает непрозрачные объекты эффективно и отображает прозрачные объекты без артефактов сортировки.

Дополнительные ресурсы: Material.renderQueue, Shader.renderQueue.

// To use this script, attach it to a GameObject with a mesh renderer.

using UnityEngine; using UnityEngine.Rendering;

// This example sets the render queue value of an object based on settings selected in the Inspector. // The queue setting selects the base render queue and queueOffset adds a small offset to it.

[RequireComponent(typeof(MeshRenderer))] public class RenderQueueAssigner : MonoBehaviour { public RenderQueue queue = RenderQueue.Geometry; // Base queue [Range(-20, 20)] public int queueOffset = 0; // Small offset to control order of objects on the same queue

private Material material;

private void Start() { material = GetComponent<Renderer>().material; }

void Update() { material.renderQueue = (int)queue + queueOffset; } }

Свойства

Свойство Описание
BackgroundЭта очередь рендеринга отображается перед всеми остальными. Это значение соответствует очереди рендеринга 1000.
GeometryГеометрия — это предопределенная очередь отображения, которую Unity использует для непрозрачной геометрии.
AlphaTestГеометрия, прошедшая альфа-тестирование, использует эту очередь. Это значение соответствует очереди рендеринга 2450.
GeometryLastПоследняя очередь отображения, которая рассматривается как непрозрачная. Это значение соответствует очереди отображения 2500.
TransparentЭта очередь рендеринга отображается после Geometry и AlphaTest, в порядке от верхнего к нижнему. Это значение соответствует очереди рендеринга 3000.
OverlayЭта очередь рендеринга предназначена для эффектов наложения и рендируется последней. Это значение соответствует очереди рендеринга 4000.