链接:http://blog.sina.com.cn/s/blog_471132920101d5of.html
Fixed function shader简介:
例一:显示单一颜色
下面我们来看第一个例子,显示单一颜色,注释写得挺详细了,照着格式写即可。
//根Shader
Shader "Custom/1_1color" {
// 属性
Properties {
//定义一个颜色
_Color ("Main Color", Color) = (1,.5,.5,1)
}
// 子shader
SubShader {
Pass {
Material {
//显示该颜色
Diffuse [_Color]
}
//打开光照开关,即接受光照
Lighting On
}
}
}
Shader "Custom/1_2show1texture" {
Properties {
_MainTex ("Base (RGB)", 2D) = "white" {}
_Color("Main color",Color) = (1,1,1,1)
}
SubShader {
Pass
{
Material
{
Diffuse[_Color]
}
Lighting on
SetTexture[_MainTex]
{
//combine color部分,alpha部分
// 材质 * 顶点颜色
Combine texture * primary,texture * constant
}
}
}
}
Shader "Custom/1_3merge2texture" {
Properties {
_MainTex ("Base (RGB)", 2D) = "white" {}
_MainTex2 ("Tex2 (RGB)", 2D) = "white" {}
_Color("Main color",Color) = (1,1,1,1)
}
SubShader {
Pass
{
Material
{
Diffuse[_Color]
}
Lighting on
SetTexture[_MainTex]
{
// 第一张材质 * 顶点颜色
Combine texture * primary
}
SetTexture[_MainTex2]
{
// 第二张材质 * 之前累积(这里即第一张材质)
Combine texture * previous
}
}
}
}