shader库

#ifndef MY_CGING
#define MY_CGING


//兰伯特
float Lambert1 (float3 n,float3 l){
       float Dot1 = dot(n,l); 
       float lambert = max(0.0,Dot1);  
       return lambert;
} 

  
//半兰伯特
float HalfLambert1 (float3 l,float3 n){
       float halfLambert= (dot(l,n)*0.5+0.5);
       return halfLambert;
}


//phong
float Phong1 (float3 v,float3 n,float3 l,float _SpecularPower){
       float3 vRDir = reflect( -v, n );
       float Phong = pow(dot(l,vRDir),_SpecularPower);
       return Phong;
}


//顶光,侧光,底光
float3 threeColAmbient (float3 n,float3 _Up, float3 _Side,float3 _Down){
       float uMask = max(0.0,n.g);                        
       float dMask = max(0.0,-n.g); 
       float sMask = 1-uMask-dMask;  
       float3 envcol =   _Up   * uMask+
                         _Side * sMask+ 
                         _Down * dMask;
       return envcol;
}


#endif

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值