Руководство API скрипты

ScriptableRenderContext

структура в UnityEngine.Rendering / Реализовано в: UnityEngine.CoreModule

Описание

Определяет команды состояния и рисования, которые используют пользовательские конвейеры рендеринга.

Когда вы определяете пользовательский RenderPipeline, вы используете ScriptableRenderContext для планирования и отправки обновлений состояния и команд рисования в GPU.

Реализация метода RenderPipeline.Renderобычно отбирает объекты, которые конвейеру рендеринга не нужно отображать для каждой камеры (см. CullingResults), а затем выполняет серию вызовов ScriptableRenderContext.DrawRenderers, смешанных с ScriptableRenderContext.ExecuteCommandBuffer. . Эти вызовы настраивают глобальные свойства шейдера, изменяют цели рендеринга, отправляют вычислительные шейдеры и выполняют другие задачи рендеринга. Чтобы фактически выполнить цикл рендеринга, вызовите ScriptableRenderContext.Submit.

Смотрите так же: RenderPipeline.

Публичные Методы

BeginRenderPass Планирует начало нового прохода рендеринга. В каждый момент времени может быть активен только один проход рендеринга.
BeginScopedRenderPass Планирует начало нового прохода рендеринга. Если вы называете это оператором использования, Unity автоматически вызывает EndRenderPass при выходе из блока использования. В каждый момент времени может быть активен только один проход рендеринга.
BeginScopedSubPass Планирует начало нового вспомогательного прохода в проходе рендеринга. Если вы вызываете это в операторе использования, Unity автоматически выполняет EndSubPass при выходе из блока использования. Проходы рендеринга никогда не могут быть автономными, они всегда должны содержать хотя бы один подпроход. В каждый момент времени может быть активен только один дополнительный проход.
BeginSubPass Планирует начало нового вспомогательного прохода в проходе рендеринга. Проходы рендеринга никогда не могут быть автономными, они всегда должны содержать хотя бы один подпроход. В каждый момент времени может быть активен только один дополнительный проход.
Cull Выполняет отбраковку на основе параметров ScriptableCullingParameters, обычно получаемых от камеры, визуализируемой в данный момент. .
DrawGizmos Планирует отрисовку подмножества Gizmos (до или после постобработки) для данной камеры.
DrawRenderers Планирует отрисовку набора видимых объектов и при необходимости переопределяет состояние рендеринга графического процессора.
DrawShadows Планирует отрисовку отбрасывателей теней для одного источника света.
DrawSkybox Планирует отрисовку скайбокса.
DrawUIOverlay Рисует наложение пользовательского интерфейса.
DrawWireOverlay Планирует отрисовку наложения каркаса для данной камеры просмотра сцены.
EndRenderPass Планирует окончание текущего активного прохода рендеринга.
EndSubPass Планирует окончание текущего активного вспомогательного прохода.
ExecuteCommandBuffer Планирует выполнение пользовательского графического командного буфера.
ExecuteCommandBufferAsync Планирует выполнение командного буфера в очереди асинхронных вычислений. ComputeQueueType, который вы передаете, определяет порядок очереди.
InvokeOnRenderObjectCallback Планирует вызов обратного вызова OnRenderObject для сценариев MonoBehaviour.
SetupCameraProperties Планирует настройку глобальных переменных шейдера для конкретных камер. .
StartMultiEye Планирует подробное начало стереорендеринга в ScriptableRenderContext.
StereoEndRender Уведомление по расписанию о завершении стереорендеринга на одном кадре .
StopMultiEye Планирует остановку стереорендеринга в ScriptableRenderContext.
Submit Отправляет все запланированные команды в цикл рендеринга для выполнения.

Статические Методы

EmitGeometryForCamera Выдает геометрию пользовательского интерфейса для рендеринга для указанной камеры .
EmitWorldGeometryForSceneView Выдает геометрию пользовательского интерфейса в представление сцены для рендеринга.
Вы можете отблагодарить автора, за перевод документации на русский язык. Донат
API скрипты 2021.3