unity中如何实现UGUI遮罩流光特效

这篇文章给大家分享的是有关unity中如何实现UGUI遮罩流光特效的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。

下面是核心shader:

Shader "UI/Unlit/Flowlight"{  Properties  {    [PerRendererData] _MainTex("Sprite Texture", 2D) = "white" {}    _Color("Tint", Color) = (1, 1, 1, 1)    [MaterialToggle] _OffSet("OffSet", float) = 0    [MaterialToggle] PixelSnap("Pixel snap", float) = 0
   /* Flowlight */    _FlowlightMaskTex("Mask Texture", 2D) = "white" {}    _FlowlightTex("Add Move Texture", 2D) = "white" {}    _FlowlightColor("Flowlight Color", Color) = (0, 0, 0, 1)    _Power("Power", float) = 1    _SpeedX("SpeedX", float) = 1    _SpeedY("SpeedY", float) = 0    /* --------- */
   /* UI */    _StencilComp("Stencil Comparison", Float) = 8    _Stencil("Stencil ID", Float) = 0    _StencilOp("Stencil Operation", Float) = 0    _StencilWriteMask("Stencil Write Mask", Float) = 255    _StencilReadMask("Stencil Read Mask", Float) = 255    /* -- */  }
 SubShader  {    Tags    {      "Queue" = "Transparent"      "IgnoreProjector" = "True"      "RenderType" = "Transparent"      "PreviewType" = "Plane"      "CanUseSpriteAtlas" = "True"    }
   Cull Off    Lighting Off    ZWrite Off    Blend One OneMinusSrcAlpha
   /* UI */    Stencil    {      Ref[_Stencil]      Comp[_StencilComp]      Pass[_StencilOp]      ReadMask[_StencilReadMask]      WriteMask[_StencilWriteMask]    }    /* -- */  Pass  {    CGPROGRAM#pragma vertex vert#pragma fragment frag#pragma multi_compile _ PIXELSNAP_ON#include "UnityCG.cginc"
 struct appdata_t  {    float4 vertex : POSITION;    float4 color : COLOR;    float2 texcoord : TEXCOORD0;  };
 struct v2f  {    float4 vertex : SV_POSITION;    fixed4 color : COLOR;    half2 texcoord : TEXCOORD0;
   /* Flowlight */    half2 texflowlight : TEXCOORD1;    /* --------- */  };
 fixed4 _Color;
 /* Flowlight */  fixed4 _FlowlightColor;  float _Power;  sampler2D _FlowlightTex;  fixed4 _FlowlightTex_ST;  sampler2D _FlowlightMaskTex;  fixed4 _FlowlightMaskTex_ST;  fixed _SpeedX;  fixed _SpeedY;  fixed x = 0;  float _OffSet;  /* --------- */  v2f vert(appdata_t IN)  {    v2f OUT;    OUT.vertex = mul(UNITY_MATRIX_MVP, IN.vertex);    OUT.texcoord = IN.texcoord;    /* Flowlight */    OUT.texflowlight = TRANSFORM_TEX(IN.texcoord, _FlowlightTex);    OUT.texflowlight.x += _Time * _SpeedX;    OUT.texflowlight.y += _Time * _SpeedY;    OUT.color = IN.color * _Color;#ifdef PIXELSNAP_ON    OUT.vertex = UnityPixelSnap(OUT.vertex);#endif    return OUT;  }
 sampler2D _MainTex;
 fixed4 frag(v2f IN) : SV_Target  {    fixed4 c = tex2D(_MainTex, IN.texcoord)*IN.color;    fixed4 cmask = tex2D(_FlowlightMaskTex, IN.texcoord);  if (cmask.a != 0)  {    /* Flowlight */    fixed4 cadd = tex2D(_FlowlightTex, IN.texflowlight) * _Power;    cadd.rgb *= c.rgb;    c.rgb += cadd.rgb;  }  c.rgb *= c.a;  /* --------- */
 return c;  }    ENDCG  }  }}

感谢各位的阅读!关于“unity中如何实现UGUI遮罩流光特效”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!

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

相关推荐


这篇文章主要介绍了Unity游戏开发中外观模式是什么意思,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家...
这篇文章主要介绍Unity中地面检测方案的示例分析,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!1.普通射线在角色坐标(一般是脚底)...
这篇文章主要介绍了Unity游戏开发中如何消除不想要的黄色警告,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带...
这篇文章主要介绍了Unity中有多少种渲染队列,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解
这篇文章主要介绍Unity中如何实现Texture,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!了解Texture2D 如上图,Texture2D是一张
小编给大家分享一下Unity中DOTS要实现的特点有哪些,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让...
这篇文章给大家分享的是有关unity中如何实现UGUI遮罩流光特效的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。下面是核心shader:Sh...
这篇文章主要为大家展示了“Unity中如何实现3D坐标转换UGUI坐标”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下...
这篇文章主要介绍了Unity游戏开发中设计模式的示例分析,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家...
这篇文章主要介绍了Unity中如何实现仿真丝袜渲染,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了...
这篇文章给大家分享的是有关Unity插件OVRLipSync有什么用的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。项目需要接入对话口型动...
这篇文章主要介绍了Unity性能优化之DrawCall的示例分析,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家...
这篇文章给大家分享的是有关Unity给力插件之Final IK怎么用的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。这插件有什么用:一般游...
这篇文章给大家分享的是有关Unity中如何内嵌网页插件UniWebView的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。一、常见Unity中内...
小编给大家分享一下Unity如何做流体物理的几个轮子,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让...
小编给大家分享一下Unity中Lod和Occlusion Culling的示例分析,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收...
这篇文章将为大家详细讲解有关Unity中LineRenderer与TrailRenderer有什么用,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获...
这篇文章主要介绍了Unity中coroutine问题的示例分析,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起...
这篇文章将为大家详细讲解有关unity中spine怎么用,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。骨骼动画首先我们来看到...
这篇文章主要为大家展示了“Unity Shader后处理中如何实现简单均值模糊”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学...