版本: Unity 6 (6000.0)
语言英语
  • C#

ComputeShader.SetTexture

建议更改

成功!

感谢您帮助我们提高 Unity 文档的质量。虽然我们不能接受所有提交,但我们会阅读用户提出的每一个建议更改,并在适用的情况下进行更新。

关闭

提交失败

由于某些原因,您的建议更改无法提交。请<a>稍后再试</a>。感谢您花时间帮助我们提高 Unity 文档的质量。

关闭

取消

切换到手册

声明

public void SetTexture(int kernelIndex, string name, Texture texture);

声明

public void SetTexture(int kernelIndex, int nameID, Texture texture);

声明

public void SetTexture(int kernelIndex, string name, Texture texture, int mipLevel);

声明

public void SetTexture(int kernelIndex, int nameID, Texture texture, int mipLevel);

声明

public void SetTexture(int kernelIndex, string name, RenderTexture texture, int mipLevel, Rendering.RenderTextureSubElement element);

声明

public void SetTexture(int kernelIndex, int nameID, RenderTexture texture, int mipLevel, Rendering.RenderTextureSubElement element);

参数

kernelIndex 设置纹理的内核。请参见 FindKernel.
nameID 属性名称 ID,使用 Shader.PropertyToID 获取。
name 着色器代码中缓冲区变量的名称。
texture 要设置的纹理。
mipLevel 可选的读写纹理的 mipmap 级别。
element 可选参数,指定要从 RenderTexture 设置的数据类型。

描述

设置纹理参数。

此函数可以设置在计算着色器中读取的普通纹理,也可以设置由着色器写入的输出纹理。对于输出纹理,它必须是启用了随机写入标志的 RenderTexture,请参见 RenderTexture.enableRandomWrite.

请注意,除非着色器指定读写(无序访问)纹理,否则会忽略 mipLevel 参数。

缓冲区和纹理按内核设置。使用 FindKernel 通过函数名称查找内核索引。

通过指定 `RenderTextureSubElement`,您可以指示要从 RenderTexture 设置的数据类型。可能的选择是:RenderTextureSubElement.ColorRenderTextureSubElement.DepthRenderTextureSubElement.Stencil.

其他资源:FindKernel,其他资源:SetFloatSetFloatsSetIntSetIntsSetBoolSetBufferSetMatrixSetMatrixArraySetVectorSetVectorArray。、RenderTexture.enableRandomWriteRenderTextureSubElement.