Shader "Custom/FixedFunction" {
Properties{
//自身颜色
_Color("Main Color",color) = (1,1,1,1)
//暗部颜色
_Ambient("Ambient",color)=(0.3,0.3,0.3,0.3)
//高光颜色
_Specular("Specular",color)=(1,1,1,1)
//高光区域范围
_Shininess("Shininess",range(0,8)) = 4
//自发光
_Emission("Emission",color)=(1,1,1,1)
}
SubShader {
pass {
material{
diffuse[_Color]
ambient[_Ambient]
specular[_Specular]
shininess[_Shininess]
emission[_Emission]
}
//开启光照模型
lighting on
//开启高光分离
separatespecular on
}
}
}
FixedFunctionShaderTransparent
Shader "Custom/FixedFunction2" {
Properties{
//自身颜色
_Color("Main Color",color) = (1,1,1,1)
//暗部颜色
_Ambient("Ambient",color) = (0.3,0.3,0.3,0.3)
//高光颜色
_Specular("Specular",color) = (1,1,1,1)
//高光区域范围
_Shininess("Shininess",range(0,8)) = 4
//自发光
_Emission("Emission",color) = (1,1,1,1)
//纹理属性
_MainTex("MainTex",2D) = ""{}
//第二张纹理属性
_SecondTex("SecondTex",2D) = ""{}
//不通过纹理Alpha来控制透明度
_Constant("ConstanColor",color)=(1,1,1,0.3)
}
SubShader{
//标签来设置渲染队列顺序
Tags{"Queue"="Transparent"} //透明
pass {
Blend SrcAlpha OneMinusSrcAlpha //Alpha blending
material{
diffuse[_Color]
ambient[_Ambient]
specular[_Specular]
shininess[_Shininess]
emission[_Emission]
}
//开启光照模型
lighting on
//开启高光分离
separatespecular on
//设置纹理属性
settexture[_MainTex]
{
combine texture * primary double //primary代表先前计算的顶点光照的颜色
}
settexture[_SecondTex]
{
constantColor[_Constant]
combine texture * previous double,texture * constant //previous代表之前所有计算的光照颜色
}
}
}
}
Shader "Custom/FixedFunction" {
Properties{
//自身颜色
_Color("Main Color",color) = (1,1,1,1)
//暗部颜色
_Ambient("Ambient",color)=(0.3,0.3,0.3,0.3)
//高光颜色
_Specular("Specular",color)=(1,1,1,1)
//高光区域范围
_Shininess("Shininess",range(0,8)) = 4
//自发光
_Emission("Emission",color)=(1,1,1,1)
}
SubShader {
pass {
material{
diffuse[_Color]
ambient[_Ambient]
specular[_Specular]
shininess[_Shininess]
emission[_Emission]
}
//开启光照模型
lighting on
//开启高光分离
separatespecular on
}
}
}
FixedFunctionShaderTransparent
Shader "Custom/FixedFunction2" {
Properties{
//自身颜色
_Color("Main Color",color) = (1,1,1,1)
//暗部颜色
_Ambient("Ambient",color) = (0.3,0.3,0.3,0.3)
//高光颜色
_Specular("Specular",color) = (1,1,1,1)
//高光区域范围
_Shininess("Shininess",range(0,8)) = 4
//自发光
_Emission("Emission",color) = (1,1,1,1)
//纹理属性
_MainTex("MainTex",2D) = ""{}
//第二张纹理属性
_SecondTex("SecondTex",2D) = ""{}
//不通过纹理Alpha来控制透明度
_Constant("ConstanColor",color)=(1,1,1,0.3)
}
SubShader{
//标签来设置渲染队列顺序
Tags{"Queue"="Transparent"} //透明
pass {
Blend SrcAlpha OneMinusSrcAlpha //Alpha blending
material{
diffuse[_Color]
ambient[_Ambient]
specular[_Specular]
shininess[_Shininess]
emission[_Emission]
}
//开启光照模型
lighting on
//开启高光分离
separatespecular on
//设置纹理属性
settexture[_MainTex]
{
combine texture * primary double //primary代表先前计算的顶点光照的颜色
}
settexture[_SecondTex]
{
constantColor[_Constant]
combine texture * previous double,texture * constant //previous代表之前所有计算的光照颜色
}
}
}
}