Мои Уведомления
Привет, !
Мой Аккаунт Мои Финансы Мои Подписки Мои Настройки Выход
Руководство API скрипты

2D Сортировка

Обзор

Unity сортирует средства визуализации в соответствии с порядком приоритета, который зависит от их типов и использования. Вы можете указать порядок рендеринга для рендереров через их Очередь рендеринга. Обычно существует две основные очереди: Непрозрачная очередь и Прозрачная очередь. Средства 2D-рендеринга в основном находятся в очереди Transparent и включают компонент Sprite Renderer, который позволяет отображать изображения в виде спрайтов для использования как в 2D, так и в 3D сценах. Подробнее
См. в Словарь
, Tilemap Renderer и типы рендерера форм спрайтов.

Прозрачная сортировка очереди по приоритету

Обработчики 2D-рендеринга в прозрачной очереди обычно следуют указанному ниже порядку приоритетов:

  1. Сортировка слоя и порядок в слое
  2. Указать очередь рендеринга
  3. Расстояние до камеры
  4. Группа сортировки
  5. Материал/шейдер
  6. Разрешение конфликтов возникает, когда несколько обработчиков имеют одинаковые приоритеты сортировки.

Существуют и другие факторы, из-за которых порядок сортировки может отличаться от обычного порядка приоритета. Эти факторы варьируются от проекта к проекту.

Сортировка слоя и порядок в слое

Слой Сортировка и Порядок в слое (в настройках Свойства визуализатора) доступны для всех двухмерных визуализаторов через Инспекторокно Unity, которое отображает информацию о текущем выбранном игровом объекте, активе или настройках проекта, позволяя вам просматривать и редактировать значения. Подробнее
См. в окне Словарь
или через Unity Scripting API. Установите средство визуализации на существующий слой сортировки или создайте новый, чтобы определить его приоритет в рендеринге Процесс отрисовки графики на экран (или текстуры рендеринга). По умолчанию основная камера в Unity отображает изображение на экране. Подробнее
Посмотреть в Словарь
. Измените значение параметра Порядок в слое, чтобы установить приоритет модуля визуализации среди других модулей визуализации в пределах того же слоя сортировки.

Указать очередь рендеринга

Тип очереди рендеринга можно указать в настройках материала или в шейдерепрограмме, которая запускается на ГП. Подробнее
См. в Словарь
своего Материала. Это полезно для группировки и сортировки визуализаторов, которые используют разные материалы. Дополнительные сведения см. в документации по ShaderLab: теги подшейдеров.

Расстояние до камеры

Компонент Камера сортирует средства визуализации на основе настройки Проекция. Два варианта: Перспектива и Орфографика.

Перспектива

В этом режиме расстояние сортировки средства визуализации – это прямое расстояние средства визуализации от камерыкомпонента, который создает изображение определенной точки обзора в вашей сцене. Вывод либо рисуется на экране, либо фиксируется в виде текстуры. Подробнее
См. Словарь
.

Орфографический

Расстояние сортировки средства визуализации — это расстояние между положением средства визуализации и камеры в направлении обзора камеры. Для настройки 2D по умолчанию это вдоль оси (0, 0, 1).

Когда вы устанавливаете для компонента камеры значение Perspective или Orthographic, Unity автоматически устанавливает для камеры TransparencySortMode в соответствии с выбранным режимом. Вы можете установить Режим сортировки с прозрачностью вручную двумя способами:

  • Откройте Настройки проектаОбширный набор настроек, которые позволяют настроить физику, аудио, сеть, Графика, ввод и многие другие области вашего проекта ведут себя. Подробнее
    Посмотрите в Словарь
    и перейдите в Графика, затем в разделе Настройки камеры используйте режим прозрачной сортировки
  • Установите для камеры TransparencySortMode с помощью Scripting API.

Настройки камеры Режим сортировки по прозрачности находятся в категории Графика в разделе Настройки проекта (главное меню: Редактировать > Настройки проекта > Графика). Если для этого параметра задано значение По умолчанию, параметр «Проекция» компонента «Камера» имеет приоритет. Если для этого параметра установлено значение, отличное от По умолчанию, параметр «Проекция» компонента «Камера» остается прежним, но Режим сортировки с прозрачностью камеры меняется на этот параметр.

Дополнительным параметром, доступным в настройках проекта и через Scripting API, является режим сортировки Custom Axis.

Режим сортировки по пользовательской оси

Выберите этот режим, чтобы отсортировать визуализаторы на основе их расстояния вдоль пользовательской оси, заданной в настройках проекта (главное меню: Правка > Настройки проецирования > Графика). > Ось прозрачности). Это обычно используется в проектах с Изометрическими тайловыми картами для правильной сортировки и визуализации тайловых спрайтов на тайловой карте. Дополнительные сведения см. в разделе Создание изометрической карты листов.

Точка сортировки спрайтов

По умолчанию Spriteдвухмерные графические объекты. Если вы привыкли работать в 3D, спрайты — это, по сути, просто стандартные текстуры, но есть специальные приемы комбинирования текстур спрайтов и управления ими для повышения эффективности и удобства во время разработки. Подробнее
См. Словарь
Точка сортировки установлена ​​на ее центр, и Unity измеряет расстояние между положение камеры Transform и центр спрайта, чтобы определить порядок их рендеринга во время сортировки. Альтернативный вариант — установить точку сортировки спрайта в его опорную позицию в мировом пространстве. Выберите параметр Pivot в настройках свойства Sprite Renderer и отредактируйте положение Pivot Sprite в Редакторе спрайтов. .

Группа сортировки

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

Материал/шейдер

Unity сортирует рендереры с одинаковыми настройками материалов вместе для повышения эффективности рендеринга, например, с динамическая пакетная обработкаАвтоматический процесс Unity, который пытается визуализировать несколько сеток, как если бы они были одной сеткой для оптимизации производительности графики. Этот метод преобразует все вершины GameObject на ЦП и группирует множество похожих вершин вместе. Подробнее
См. в Словарь
.

Тай-брейк

Если несколько средств визуализации имеют одинаковый приоритет сортировки, решающим фактором является порядок, в котором Unity размещает средства визуализации в очереди рендеринга. Поскольку это внутренний процесс, который вы не можете контролировать, вам следует использовать параметры сортировки (такие как Сортировка слоев и Группы сортировки), чтобы убедиться, что все средства визуализации имеют различную сортировку. приоритеты.

Вы можете отблагодарить автора, за перевод документации на русский язык. ₽ Спасибо
Руководство Unity 2021.3