ug图改变颜色_unity改变image透明度

ug图改变颜色_unity改变image透明度UGUI图片将其他颜色去除,显示灰色图片本例适用于UGUI一般项目中会有一些图标,当你拥有该图标显示为彩色图标,一般项目中最占资源的就是图片,不允许添加一张彩色图片,一张灰色图片,必须通过一些方法将彩色图标的颜色去掉,获取图标的灰色值。UGUI自带了一个Shader,Sprites/Default,默认给了一个添加该Shader的材质球 1Shader”U

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺
UGUI 图片将其他颜色去除,显示灰色图片

本例适用于 UGUI

一般项目中会有一些图标,当你拥有该图标显示为彩色图标,一般项目中最占资源的就是图片,不允许添加一张彩色图片,一张灰色图片,必须通过一些方法将彩色图标的颜色去掉,获取图标的灰色值。

UGUI 自带了一个Shader, Sprites/Default, 默认给了一个添加该Shader 的材质球

 

 1 Shader "UISprites/DefaultGray"  2 {  3  Properties  4  {  5 [PerRendererData] _MainTex ("Sprite Texture", 2D) = "white" {}  6 _Color ("Tint", Color) = (1,1,1,1)  7 [MaterialToggle] PixelSnap ("Pixel snap", Float) = 0  8  9 //---Add--- 10 // Change the brightness of the Sprite 11 _GrayScale ("GrayScale", Float) = 1 12 //---Add--- 13  } 14 15  SubShader 16  { 17  Tags 18  { 19 "Queue"="Transparent" 20 "IgnoreProjector"="True" 21 "RenderType"="Transparent" 22 "PreviewType"="Plane" 23 "CanUseSpriteAtlas"="True" 24  } 25 26  Cull Off 27  Lighting Off 28  ZWrite Off 29  Blend One OneMinusSrcAlpha 30 31  Pass 32  { 33  CGPROGRAM 34 #pragma vertex vert 35 #pragma fragment frag 36 #pragma multi_compile _ PIXELSNAP_ON 37 #include "UnityCG.cginc" 38 39 struct appdata_t 40  { 41  float4 vertex : POSITION; 42  float4 color : COLOR; 43  float2 texcoord : TEXCOORD0; 44  }; 45 46 struct v2f 47  { 48  float4 vertex : SV_POSITION; 49  fixed4 color : COLOR; 50  half2 texcoord : TEXCOORD0; 51  }; 52 53  fixed4 _Color; 54 55  v2f vert(appdata_t IN) 56  { 57  v2f OUT; 58 OUT.vertex = mul(UNITY_MATRIX_MVP, IN.vertex); 59 OUT.texcoord = IN.texcoord; 60 OUT.color = IN.color * _Color; 61  #ifdef PIXELSNAP_ON 62 OUT.vertex = UnityPixelSnap (OUT.vertex); 63 #endif 64 65 return OUT; 66  } 67 68  sampler2D _MainTex; 69 float _GrayScale; 70 71  fixed4 frag(v2f IN) : SV_Target 72  { 73 fixed4 c = tex2D(_MainTex, IN.texcoord) * IN.color; 74 75 //---Add-- 76 float cc = (c.r * 0.299 + c.g * 0.518 + c.b * 0.184); 77 cc *= _GrayScale; 78 c.r = c.g = c.b = cc; 79 //---Add-- 80 81 c.rgb *= c.a; 82 return c; 83  } 84  ENDCG 85  } 86  } 87 }

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/194159.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • PCL点云处理算法汇总(C++长期更新版)

    PCL点云处理算法汇总(C++长期更新版)PCL学习目录

  • Java下载文件的几种方式「建议收藏」

    Java下载文件的几种方式「建议收藏」1.以流的方式下载.publicHttpServletResponsedownload(Stringpath,HttpServletResponseresponse){try{//path是指欲下载的文件的路径。Filefile=newFile(path);//取得文件名…

  • leetcode 通配符匹配_匹配任意一个字符的通配符是

    leetcode 通配符匹配_匹配任意一个字符的通配符是给定一个字符串 (s) 和一个字符模式 § ,实现一个支持 ‘?’ 和 ‘*’ 的通配符匹配。‘?’ 可以匹配任何单个字符。‘*’ 可以匹配任意字符串(包括空字符串)。两个字符串完全匹配才算匹配成功。说明:s 可能为空,且只包含从 a-z 的小写字母。p 可能为空,且只包含从 a-z 的小写字母,以及字符 ? 和 *。示例 1:输入:s = “aa”p = “a”输出: false解释: “a” 无法匹配 “aa” 整个字符串。示例 2:输入:s = “aa”p = “*

  • 空间回归与地理加权_地理加权显著性

    空间回归与地理加权_地理加权显著性本来这一章准备直接写(照抄)ArcGIS的帮助文档,写地理加权回归工具的使用……,然后就直接结束地理加权回归的,但是近来收到不少同学的邮件,很多都是掉在了当年虾神挖出的大坑里面,比如写了方法,没有列出公式,又比如写了公式木有推导过程(……作为高数战五渣的虾神,推导这种事,他认识我,我不认识他……)所以这次写GWR的时候,尽量少挖点坑,把该写的东西都写完,一者为了以后路过的同学少掉点坑,二者

  • 动态令牌_创建安全令牌

    动态令牌_创建安全令牌1、OTP、HOTP、TOTP简介1.1、OTPOne-TimePassword简写,表示一次性密码。1.2、HOTPHMAC-basedOne-TimePassword简写,表示基于HMAC算法加密的一次性密码。是事件同步,通过某一特定的事件次序及相同的种子值作为输入,通过HASH算法运算出一致的密码。1.3、TOTPTime-basedOne-Ti…

    2022年10月25日
  • 1.插槽slot基本使用「建议收藏」

    1.插槽slot基本使用「建议收藏」<body><divid="app"><cpn></cpn><cpn><bstyle="c

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号