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

Описание

Делегат, который можно использовать для выполнения пользовательского кода до того, как Camera отобразит сцену.

Во встроенном конвейере рендеринга Unity вызывает этот onPreRender до того, как любая камера начнет рендеринг. Чтобы выполнить пользовательский код на этом этапе, создайте обратные вызовы, соответствующие сигнатуре CameraCallback, и добавьте их к этому делегату.

Сведения об аналогичных функциях, применимых только к одной камере и требующих, чтобы ваш скрипт находился на том же игровом объекте, см. в разделе MonoBehaviour.OnPreRender. Аналогичные функции конвейера рендеринга с поддержкой сценариев см. в разделе RenderPipelineManager.

Unity вызывает onPreRender после того, как камера выполнит операцию отбраковки. Это означает, что если вы вносите изменения, влияющие на то, что видит камера, изменения вступят в силу со следующего кадра. Чтобы изменить то, что камера видит в текущем кадре, используйте Camera.onPreCull.

Когда Unity вызывает onPreRender, цель рендеринга камеры и текстуры глубины еще не настроены. Если вам нужен доступ к ним, вы можете выполнить код позже в цикле рендеринга, используя CommandBuffer.

using UnityEngine; public class CameraCallbackExample : MonoBehaviour { // Add your callback to the delegate's invocation list void Start() { Camera.onPreRender += OnPreRenderCallback; } // Unity calls the methods in this delegate's invocation list before rendering any camera void OnPreRenderCallback(Camera cam) { Debug.Log("Camera callback: Camera name is " + cam.name); // Unity calls this for every active Camera. // If you're only interested in a particular Camera, // check whether the Camera is the one you're interested in if (cam == Camera.main) { // Put your custom code here } } // Remove your callback from the delegate's invocation list void OnDestroy() { Camera.onPreRender -= OnPreRenderCallback; } }

Смотрите так же: CameraCallback, Camera.onPreCull, Camera.onPostRender, MonoBehaviour.OnPreRender, CommandBuffer, Extending the Built-in Render Pipeline using CommandBuffers.

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