属性放在Properties块里面
Properties{ //名字("显示的名字",类型)=默认值 _Color("Color",Color) = (r,g,b,a) _Vector("Vector",Vector) = (1,2,3,4) _Int("Int",Int) = 100 _Float("Float",Float) = 3.6 _Range("Range",Range(1,10)) = 6 _2D("Texture",2D) = "white"{} _Cube("Cube",Cube) = "white"{} _3D("Texture3",3D) = "white"{} }
纹理2、3D的默认值"white"{}指的是不指定图片时,默认整个纹理为白色
Shader "[路径/../]名字"{ }
在Unity中就可以在Material的Shader通过路径来找到这个名字,指定用这个Shader来渲染。(名字可以和文件名不一样)
使用的是ShaderLab编写的Unity中的Shader
表面着色器 Surface Shader
顶点/片元着色器 Vertex/fragment Shader
固定函数着色器 Fixed Function Shader
可以认为表面着色器是顶点(片元)着色器的封装,固定函数着色器是以前老硬件不支持才使用的,一般不用理。