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

RenderPipelineManager.beginContextRendering

Описание

Делегат, который можно использовать для вызова пользовательского кода в начале RenderPipeline.Render.

Когда Unity вызывает RenderPipeline.BeginContextRendering в начале RenderPipeline.Render, выполняет методы из списка вызовов этого делегата.

В универсальном конвейере рендеринга (URP) и конвейере рендеринга высокого разрешения (HDRP) Unity автоматически вызывает RenderPipeline.BeginContextRendering. Если вы пишете собственный Scriptable Render Pipeline, вы должны сами вызвать этот метод. Эта функция несовместима со встроенным конвейером рендеринга.

Этот делегат работает так же, как RenderPipelineManager.beginFrameRendering, за исключением того, что эта версия не вызывает выделения кучи.

В следующем примере кода показано, как добавить метод в список вызовов этого делегата, а затем удалить его.

using UnityEngine; using UnityEngine.Rendering; using System.Collections.Generic; public class ExampleClass : MonoBehaviour { void Start() { RenderPipelineManager.beginContextRendering += OnBeginContextRendering; } void OnBeginContextRendering(ScriptableRenderContext context, List<Camera> cameras) { // Put the code that you want to execute at the start of RenderPipeline.Render here } void OnDestroy() { RenderPipelineManager.beginContextRendering -= OnBeginContextRendering; } }

Смотрите так же: RenderPipeline.BeginContextRendering, RenderPipelineManager.endContextRendering, Unity Manual: Scriptable Render Pipeline

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