// 固定管线着色器(固定功能的Shader)
// 针对硬件能执行的基本命令编写的Shader,通过一些列的命令达到对图形着色的目的
// 功能有限,但是速度是最快的,Unity官方号称这种Shader可以在所有的平台上良好运行
// ShaderLab 基本结构
// Shader "name"{
// [Properties] 可以没有
// SubShader 必须有
// [Fallback] 可以没有
// }
Shader "Sbin/ff1" {
Properties{
//变量名 在监视面板显示的名字 类型 = 默认值
_Color("Main Color",Color) = (1,1,1,1)
_Ambient("环境光",Color) = (0.3,0.3,0.3,0.3)
_Specular("高光(镜面反射光)",Color)=(1,1,1,1)
_Shininess("高光强度",Range(0,8)) = 4
_Emission("自发光",Color)=(1,1,1,1)
}
SubShader {
//必须使用pass编写一个渲染通道
pass{
//小括号为固定值 中括号为参数值
// Color(1,0,0,1)
// Color[_Color]
//材质命令块
Material{
//下面是属性
//描述的是材质的漫反射颜色,可以理解为这个物体本身固有的颜色
DIFFUSE[_Color]
//设置环境光
AMBIENT[_Ambient]
//设置高光
SPECULAR[_Specular]
// 浮点值 描述Specular有多强,决定在镜面高光反射过程中被高光反射的部分的区域
SHININESS[_Shininess]
//自发光
emission[_Emission]
}
//启用顶点光照 如果不开启光照,物体的颜色不会被反射,这时不论怎么修改颜色都不会变化
Lighting on
//独立的高光
SeparateSpecular on
}
}
}