Объявление
public static void SetRenderTarget(RenderTexture rt, int mipLevel = 0, CubemapFace face = CubemapFace.Unknown, int depthSlice = 0);public static void SetRenderTarget(RenderBuffer[] colorBuffers, RenderBuffer depthBuffer);
public static void SetRenderTarget(RenderBuffer colorBuffer, RenderBuffer depthBuffer, int mipLevel = 0, CubemapFace face = CubemapFace.Unknown, int depthSlice = 0);
public static void SetRenderTarget(RenderTargetSetup setup);
Параметры
rt | RenderTexture для установки в качестве активной цели рендеринга. |
mipLevel | Уровень мипмаппинга для рендеринга (используйте 0, если он не мипмапирован). |
face | Грань кубической карты для рендеринга (используйте Unknown, если не кубическая карта). |
depthSlice | Срез глубины для рендеринга (используйте 0, если цель рендеринга не 3D или 2DArray). |
colorBuffer | Буфер цвета для рендеринга. |
depthBuffer | Буфер глубины для рендеринга. |
colorBuffers | Цветовые буферы для рендеринга (для нескольких эффектов рендеринга). |
setup | Полная информация о настройках цели рендеринга. |
Описание
Устанавливает текущую цель рендеринга.
Эта функция устанавливает, какая комбинация RenderTexture или RenderBuffer будет визуализирована следующей. Используйте его при реализации пользовательских алгоритмов рендеринга, когда вам нужно вручную преобразовать что-либо в текстуру рендеринга.
Варианты с аргументами mipLevel и face позволяют выполнять рендеринг на определенном уровне MIP-карты текстуры рендеринга или на определенной грани кубической карты RenderTexture. Варианты с depthSlice позволяют выполнять рендеринг в определенный фрагмент текстуры рендеринга 3D или 2DArray.
Вызов функции с массивом colorBuffers позволяет использовать методы, использующие множественные цели рендеринга (MRT), когда фрагментный шейдер может выводить более одного конечного цвета.
Вызов SetRenderTarget только с аргументом RenderTexture аналогичен настройке свойства RenderTexture.active.
Обратите внимание, что в линейном цветовом пространстве важно правильно установить состояние преобразования цвета sRGB<->Linear. В зависимости от того, что было обработано ранее, текущее состояние может отличаться от ожидаемого. Вы должны установить GL.sRGBWrite по мере необходимости, прежде чем выполнять SetRenderTarget или любой другой ручной рендеринг.
Смотрите так же: RenderTexture, Graphics.activeColorBuffer, Graphics.activeDepthBuffer, SystemInfo.supportedRenderTargetCount.