Version: 2022.3

CommandBuffer.GetTemporaryRTArray

切换到手册
public void GetTemporaryRTArray (int nameID, int width, int height, int slices, int depthBuffer, FilterMode filter, RenderTextureFormat format, RenderTextureReadWrite readWrite, int antiAliasing, bool enableRandomWrite);

参数

nameID 此纹理的着色器属性名称。
width 像素宽度,或为 -1,表示“摄像机像素宽度”。
height 像素高度,或为 -1,表示“摄像机像素高度”。
slices 纹理阵列中的切片数。
depthBuffer 深度缓冲区位(0、16 或 24)。
filter 纹理过滤模式(默认为 Point)。
format 渲染纹理的格式(默认为 ARGB32)。
readWrite 颜色空间转换模式。
antiAliasing 抗锯齿(默认为无抗锯齿)。
enableRandomWrite 是否启用对纹理的随机写入访问(默认为 false)。

描述

添加“获取临时渲染纹理阵列”命令。

可使用给定参数创建临时渲染纹理阵列,并使用 nameID 将其设置为全局着色器属性。使用 Shader.PropertyToID 创建整数名称。

使用 ReleaseTemporaryRT 并传递相同的 nameID 来释放临时渲染纹理数组。未显式释放的所有临时纹理都将在摄像机完成渲染后或在 Graphics.ExecuteCommandBuffer 完成后被删除。

在获取临时渲染纹理阵列后,可将其设置为活动 (SetRenderTarget),或对其执行 blit 操作 (Blit)。在命令缓冲区执行期间,不必显式保留活动的渲染目标(当前的渲染目标将被保存并在之后恢复)。

另请参阅:ReleaseTemporaryRTSetRenderTargetBlit