Рендирование вывода камеры в текстуру рендеринга в URP
В течение Universal Render Pipeline (URP), a Camera может отображаться на экране или на Текстура рендеринга. Рендирование на экране является по умолчанию и является наиболее распространенным случаем использования, но рендирование на текстуру позволяет создавать такие эффекты, как CCTV мониторы камер.
Если у вас есть Camera, который рендирует текстуру рендеринга, у вас должен быть второй Camera, который затем рендирует эту текстуру рендеринга на экран. В URP все камеры, которые рендируют текстуры рендеринга, выполняют свои циклы рендеринга до всех камер, которые рендируют на экран. Это гарантирует, что текстуры рендеринга готовы для рендеринга на экран. Для получения дополнительной информации о порядке рендеринга Camera в URP, см. Порядок рендеринга и перечеркните.
Рендирование в текстуру рендеринга, которая рендируется на экран
- Создайте в проекте объект Render Texture. Для этого выберите Ассеты > Создать > Рендеринг > Render Texture.
- Создайте GameObject Quad в вашей сцене.
- Создайте материал в вашем Project.
- В Inspector перетащите текстуру рендеринга в поле Base Map материала.
- В представлении Scene перетащите материал на квадрат.
- Создайте камеру в сцене.
- Выберите базу Camera и в Inspector, перетащите текстуру рендеринга на Выходная текстура свойства.
- Создайте другую камеру в вашей сцене.
- Поместите квад в поле зрения новой базы Camera.
Первый Camera теперь рендирует свой вид в текстуру рендеринга. Второй Camera рендирует сцену, включая текстуру рендеринга, на экран.
Вы можете установить цель выхода для камеры в скрипте, установив свойство targetTexture камеры:
myCamera.targetTexture = myRenderTexture;