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 }

 

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

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

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • linux如何添加telnet服务

    linux如何添加telnet服务

    2021年6月30日
    120
  • IntelliJ IDEA 2018.1.5 安装和破解教程[通俗易懂]

    1.首先下载IntelliJIDEA,下载链接:http://www.jetbrains.com/idea/download/#section=windows;记得一定要选择UItimate版!2.下载完成后进行安装。傻瓜式安装(都懂得)。3.安装完成后进行破解。首先下载破解所需要的jar包,下载地址:https://download.csdn.net/download/m0_38075425/…

    2022年4月13日
    102
  • 外链式样式表_引入CSS样式表(书写位置)

    外链式样式表_引入CSS样式表(书写位置)CSS初识CSS(CascadingStyleSheets)美化样式CSS通常称为CSS样式表或层叠样式表(级联样式表),主要用于设置HTML页面中的文本内容(字体、大小、对齐方式等)、图片的外形(宽高、边框样式、边距等)以及版面的布局等外观显示样式。CSS以HTML为基础,提供了丰富的功能,如字体、颜色、背景的控制及整体排版等,而且还可以针对不同的浏览器设置不同的样式。引入CSS样式表(书…

    2022年7月14日
    17
  • Activiti工作流的详细介绍[通俗易懂]

    Activiti工作流的详细介绍[通俗易懂]一、了解工作流1、工作流(Workflow),就是“业务过程的部分或整体在计算机应用环境下的自动化”,它主要解决的是“使在多个参与者之间按照某种预定义的规则传递文档、信息或任务的过程自动进行,从而实现某个预期的业务目标,或者促使此目标的实现。2、工作流管理系统(WorkflowManagementSystem,WfMS)是一个软件系统,它完成工作量的定义和管理,并按照在系统中预先定义好的工作流逻辑进行工作流实例的执行。工作流管理系统不是企业的业务系统,而是为企业的业务系统的运行提供了一个软件的

    2022年10月6日
    2
  • Python中如何定义变量类型_python流程控制的方式类型

    Python中如何定义变量类型_python流程控制的方式类型在python学习过程中会用到许多数据,那为了方便操作,需要把这些数据分别用一个简单的名字代表,方便在接下来的程序中引用。变量就是代表某个数据(值)的名称。python变量赋值如何定义操作注:py

    2022年8月5日
    5
  • 常用滤波器设计之低通滤波器、高通滤波器、带通滤波器、带阻滤波器

    常用滤波器设计之低通滤波器、高通滤波器、带通滤波器、带阻滤波器本文为转载内容,原文地址为点击打开链接。下两个滤波器都是切比雪夫I型数字滤波器,不是巴特沃尔滤波器,请使用者注意!1.低通滤波器使用说明:将下列代码幅值然后以m文件保存,文件名要与函数名相同,这里函数名:lowp。functiony=lowp(x,f1,f3,rp,rs,Fs)%低通滤波%使用注意事项:通带或阻带的截止频率的选取范围是不能超过采样率的一半%即,f1,f3的值都要小于Fs/…

    2022年6月2日
    29

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

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