NGUI中使UITexture变灰的方法

前言

在开发中经常会遇到图片变灰的情况。如下图这样:

变亮的表示可用,变灰的表示不可用。一般这种情况的解决方案就是写一个变灰的Shader。但如果是NGUI的UITexture变灰会比较麻烦一些。那遇到这种需求要如何做呢?

方案

1.首先新建一个变灰的Shader,文件名起为 ==“Unlit - Transparent Colored (Gray).shader”==:
这里只展示部分关键代码,后面会有完整代码下载

fixed4 frag (v2f IN) : COLOR
{
    fixed4 realColor = tex2D(_MainTex, IN.texcoord) * IN.color;
    float grayValue = realColor.r * 0.3 + realColor.g * 

你可能感兴趣的:(Unity3D)