ShaderLab:屬性類型及對應Cg變量匹配

 ShaderLab屬性類型:

  • Int
定義語法:number
示例:_Size("Size", Int) = 10

  • Float
定義語法:number
示例:_Size("Size"Float) = 10.1

  • Range(min, max)
定義語法:number
示例:_Size("Size"Range(0.0,10.0)) = 9.1

  • Color
定義語法:(num, num, num, num)
示例:_Color("Color"Color) = (1, 1, 1, 1)

  • Vector
定義語法:(num, num, num, num)
示例:_Position("Position"Vector) = (1, 2, 3, 4)

  • 2D
定義語法:"texture" {}
示例:_MainTex("Sprite Texture"2D) = ""{}

  • Cube
定義語法:"texture" {}
示例:_CubeMap("Cube Map"Cube) = "white"{}

  • 3D
定義語法:"texture" {}
示例:_3D("3D", 3D) = "black"{}

* Unity內置紋理:"white", "black", "gray", "bump"

資料來源:《Unity Shader入门精要》第30頁

属性类型和Cg变量类型匹配关系:

属性:Color, Vector
对应:float4, half4, fixed4

属性:Range, Float
对应:float, half, fixed

属性:2D
对应:sampler2D

属性:Cube
对应:samplerCube

属性:3D
对应:sampler3D

資料來源:《Unity Shader入门精要》第106頁

留言