标签:
在CG/HLSL中访问着色器属性
Shader在Properties块中访问材质属性。如果你想在一个着色程序中访问一些属性,你需要声明一个Cg/HLSL具有相同的名称和一个匹配的类型的变量。
例如这些材质属性:
_MyColor ("Some Color", Color) = (1,1,1,1) _MyVector ("Some Vector", Vector) = (0,0,0,0) _MyFloat ("My float", Float) = 0.5 _MyTexture ("Texture", 2D) = "white" {} _MyCubemap ("Cubemap", CUBE) = "" {}
宣布在Cg / HLSL代码访问
fixed4 _MyColor; float4 _MyVector; float _MyFloat; sampler2D _MyTexture; samplerCUBE _MyCubemap;
Cg / HLSL也可以接受uniform关键字
uniform float4 _MyColor;
参数类型在ShaderLab中是这样映射到CG/HLSL中的:
Color和Vector属性映射到float4,half4或fixed4变量
Range和Float属性映射到float,half或者fixed变量
Texture属性映射到sampler2D 变量 给常规的2D纹理。Cubemaps映射到samplerCUBE。3D纹理映射到sampler3D。
标签:
原文地址:http://www.cnblogs.com/OrangeZhang/p/5016883.html