Shader学习笔记(2)Fixed function shader

properties

material

lighting

serrexture

Blend

当前渲染的物体为源,其他物体为目标
制作半透明的物体要关注渲染队列

Shader "Sbin/ff2" {
	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)
		_Shiness("Shininess", range(0,8)) = 4
		_Emission("Emission", color) = (1,1,1,1)
		_MainTex("MainTex", 2D) = "white"{}
		_SecondTex("SecondTex", 2D) = "white"{}
		_Constant("ConstantColor", color) = (1,1,1,0.3)
	}
	SubShader {
		Tags{"Queue" = "Transparent"}//渲染队列
		pass{
			Blend SrcAlpha OneMinusSrcAlpha//alpha混合
			//color(1,0,0,1)
			//color[_Color]
			Material
			{
				diffuse[_Color]//材质漫反射颜色,本身固有的颜色
				ambient[_Ambient]//环境光对物体的影响
				specular[_Specular]//高光颜色
				shininess[_Shiness]//高光范围
				emission[_Emission]//自发光
			}
			Lighting on//启用光照on/off
			SeparateSpecular on//独立的镜面的高光on/off

			SetTexture[_MainTex]
			{
				Combine texture * primary double//合并
				//texture为传进来的贴图,primary为之前计算的顶点光照,double两倍,quad四倍
			}
			SetTexture[_SecondTex]//多张贴图,settexture纹理混合不是无限的显卡有一个混合纹理最大的个数
			{
				//matrix[]可传入矩阵
				ConstantColor[_Constant]
				Combine texture * previous double, texture * constant//合并
				//texture为传进来的贴图,previous当前采样的纹理去计算这个settexture之前所有光照和采样之后的解国,double两倍,quad四倍, 最后一个texture意思时取贴图的alpha通道进行透明
			}
		}
	}
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值