NGUI图片变灰Shader修改

NGUI是强大的插件,但是在UI设计中,很多时候设计者把不可点击的按钮或者图片希望用灰白颜色表示,遗憾的NGUI没有直接提供这样的功能,但是可以通过修改NGUI的几个shader达到这样的效果,我们指定一旦把组件的颜色设置为黑色时,就是默认变灰的效果。以下代码是Shader "Unlit/Transparent Colored"的片段函数修改方法。类似的Transparent Colored的其他几个shader也可以如此修改。如果大家还要更好的方案欢迎讨论。 
 fixed4 frag (v2f i) : COLOR 
                    { 
                    fixed4 col; 
                    if(i.color.r < 0.01 && i.color.g < 0.01 && i.color.b < 0.01 ) 
                    { 
                       col = tex2D(_MainTex, i.texcoord); 
                       float grey = dot(col.rgb, float3(0.299, 0.587, 0.114));   
                       col.rgb = float3(grey, grey, grey); 
                     } 
                     else 
                     { 
                       col = tex2D(_MainTex, i.texcoord)* i.color; 
                     } 
                     return col; 
                }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值