Version: 2023.1

Shader.SetGlobalTexture

切换到手册
public static void SetGlobalTexture (string name, Texture value);
public static void SetGlobalTexture (int nameID, Texture value);
public static void SetGlobalTexture (string name, RenderTexture value, Rendering.RenderTextureSubElement element);
public static void SetGlobalTexture (int nameID, RenderTexture value, Rendering.RenderTextureSubElement element);

参数

nameID 通过 Shader.PropertyToID 检索的属性的名称 ID。
name 属性的名称。
value 要设置的纹理。
element Optional parameter that specifies the type of data to set from the RenderTexture.

描述

为所有着色器设置全局纹理属性。

如果着色器需要全局属性,但材质未定义它们 (例如,如果着色器未在 Properties 代码块中公开它们), 则使用这些属性。

如果有一组全都使用相同“全局”纹理(例如,自定义漫射光照立方体贴图) 的自定义着色器,通常会使用该属性。 然后可以通过脚本设置该全局属性,不必在所有材质中设置 相同纹理。

By specifying a `RenderTextureSubElement`, you can indicate which type of data to set from the RenderTexture. The possible options are: RenderTextureSubElement.Color, RenderTextureSubElement.Depth, and RenderTextureSubElement.Stencil.

另请参阅:SetGlobalColorSetGlobalFloatMaterial class, ShaderLab 文档RenderTextureSubElement