201804242255->Unity中shader的Properties

Shader "Dajia/MyTestShader"//这里声明着色器的路径 分别是Shader "路径"{  }
{
Properties//属性区域声明了着色器的起始部分,这里声明的属性将序列化显示在inspetor界面里边
{
/*

声明属性需要一行一个属性,下边声明的是一个texture2d字段

在属性"white" {} 后边的{}对中具体可以加入默认的rgba颜色值

*/
_MainTex ("这里是第一个贴图字段", 2D) = "white" {}

_Tex2 ("这里是第二个贴图字段", 2D) = "gray"{}

_Color("这里是一个颜色字段",Color) = (0,0,0,1)

//如果声明一个浮点数的话则不需要f,为什么?不需要问为什么,this is order
_Float("这里是一个浮点数字段" , Float) = 0.0

//当然,unity也提供了范围限定的浮点数样式,默认超出限定范围
_Float2("这里是一个范围浮点数",Range(0,1)) = 1.0

_Int("这里是一个整数字段",Int) = 1

/*

因为图形渲染需要用到各种复杂的数据,所以这里的向量统一传入的是一个4维的向量

*/
_Vector("这里是一个向量字段",Vector) = (1,1,1,1)

//有时我们会在3维空间里传入平面做相应的操作,默认值跟texture一样
_Rect("这里是一张平面图",Rect) = "white"{}

//立方体贴图
_Cube("这里是一张立方体贴图",Cube) = "white"{}
}
FallBack "Diffuse"
/*

fallback可以看作是拾遗函数,如果上边一些参数没有设置的话,unity就会去FallBack里边去找相应的渲染模式

'Diffuse'代表如果上边没有设置的话则按照Diffuse模式来渲染

*/

}


发布了101 篇原创文章 · 获赞 1 · 访问量 2万+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章