当前位置: 首页 > news >正文

凤凰军事网新闻最新消息seo策略有哪些

凤凰军事网新闻最新消息,seo策略有哪些,一千元做网站,专业电商网站开发FairyGUI中给组件更换Shader,最简单的方式就是找到组件中的Shader字段进行赋值。需要注意的是,对于自定的shader效果需要将目标图片进行单独发布,也就是一个目标图片占用一张图集。(应该会有更好的解决办法,但目前还是…

FairyGUI中给组件更换Shader,最简单的方式就是找到组件中的Shader字段进行赋值。需要注意的是,对于自定的shader效果需要将目标图片进行单独发布,也就是一个目标图片占用一张图集。(应该会有更好的解决办法,但目前还是就先这样子)

本篇文章中的Shader源码来自于对官方的“FairyGUI/Image”修改,修改部分的源码来自于网络。

示例:加载Shader

代码中加载自定义Shader:

local logoImg = this.GetChild("n2").asImage
logoImg.shader = "FairyGUI/Image-Light"

一:扫光Shader

// Upgrade NOTE: replaced '_Object2World' with 'unity_ObjectToWorld'
// Upgrade NOTE: replaced 'mul(UNITY_MATRIX_MVP,*)' with 'UnityObjectToClipPos(*)'
Shader "FairyGUI/Image-Light"
{Properties{_MainTex ("Base (RGB), Alpha (A)", 2D) = "black" {}_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_ColorMask ("Color Mask", Float) = 15_BlendSrcFactor ("Blend SrcFactor", Float) = 5_BlendDstFactor ("Blend DstFactor", Float) = 10[Header(Light)]//扫光时间_LightTime("Light Time", Float) = 1//扫光厚度_LightThick("Light Thick", Float) = 0.2//循环时间_LightInterval("Light Interval", Float) = 2//扫光角度_LightAngle("Light Angle", int) = 60//亮度_Brightness("Light Brightness",float) = 1//扫光颜色_LightColor ("Light Color", Color) = (1,1,1,1)}SubShader{LOD 100Tags{"Queue" = "Transparent""IgnoreProjector" = "True""RenderType" = "Transparent"}Stencil{Ref [_Stencil]Comp [_StencilComp]Pass [_StencilOp]ReadMask [_StencilReadMask]WriteMask [_StencilWriteMask]}Cull OffLighting OffZWrite OffFog{Mode Off}Blend [_BlendSrcFactor] [_BlendDstFactor], One OneColorMask [_ColorMask]Pass{CGPROGRAM#pragma multi_compile NOT_COMBINED COMBINED#pragma multi_compile NOT_GRAYED GRAYED COLOR_FILTER#pragma multi_compile NOT_CLIPPED CLIPPED SOFT_CLIPPED ALPHA_MASK#pragma vertex vert#pragma fragment frag#include "UnityCG.cginc"struct appdata_t{float4 vertex : POSITION;fixed4 color : COLOR;float4 texcoord : TEXCOORD0;};struct v2f{float4 vertex : SV_POSITION;fixed4 color : COLOR;float4 texcoord : TEXCOORD0;#ifdef CLIPPEDfloat2 clipPos : TEXCOORD1;#endif#ifdef SOFT_CLIPPEDfloat2 clipPos : TEXCOORD1;#endif};sampler2D _MainTex;half _LightTime;float _LightThick;float _LightInterval;int _LightAngle;float _Brightness;float4 _LightColor;#ifdef COMBINEDsampler2D _AlphaTex;#endifCBUFFER_START(UnityPerMaterial)#ifdef CLIPPEDfloat4 _ClipBox = float4(-2, -2, 0, 0);#endif#ifdef SOFT_CLIPPEDfloat4 _ClipBox = float4(-2, -2, 0, 0);float4 _ClipSoftness = float4(0, 0, 0, 0);#endifCBUFFER_END#ifdef COLOR_FILTERfloat4x4 _ColorMatrix;float4 _ColorOffset;float _ColorOption = 0;#endifv2f vert(appdata_t v){v2f o;o.vertex = UnityObjectToClipPos(v.vertex);o.texcoord = v.texcoord;#if !defined(UNITY_COLORSPACE_GAMMA) && (UNITY_VERSION >= 550)o.color.rgb = GammaToLinearSpace(v.color.rgb);o.color.a = v.color.a;#elseo.color = v.color;#endif#ifdef CLIPPEDo.clipPos = mul(unity_ObjectToWorld, v.vertex).xy * _ClipBox.zw + _ClipBox.xy;#endif#ifdef SOFT_CLIPPEDo.clipPos = mul(unity_ObjectToWorld, v.vertex).xy * _ClipBox.zw + _ClipBox.xy;#endifreturn o;}fixed4 frag(v2f i) : SV_Target{fixed4 col = tex2D(_MainTex, i.texcoord.xy / i.texcoord.w) * i.color;//扫光代码来源 https://blog.csdn.net/u014621871/article/details/122685044//光照的流逝时间fixed currentTimePassed = fmod(_Time.y, _LightTime + _LightInterval);fixed x = currentTimePassed / _LightTime;//倾斜角 1°≈0.0174444float angleInRad = 0.0174444 * _LightAngle;fixed tanX = tan(angleInRad);x += (x - 1) / tanX;fixed x1 = i.texcoord.y / tanX + x;fixed x2 = x1 + _LightThick;if (i.texcoord.x > x1 && i.texcoord.x < x2){//差值计算,根据与中心的距离的比例来计算亮度float xMid = 0.5 * (x1 + x2);fixed dis = 1 - abs(i.texcoord.x - xMid) * 2 / _LightThick;half colorA = col.a;//扫光的颜色*强度+默认颜色输出col += col + _LightColor * (_Brightness * dis);col.a = colorA;}#ifdef COMBINEDcol.a *= tex2D(_AlphaTex, i.texcoord.xy / i.texcoord.w).g;#endif#ifdef GRAYEDfixed grey = dot(col.rgb, fixed3(0.299, 0.587, 0.114));col.rgb = fixed3(grey, grey, grey);#endif#ifdef SOFT_CLIPPEDfloat2 factor = float2(0,0);if(i.clipPos.x<0)factor.x = (1.0-abs(i.clipPos.x)) * _ClipSoftness.x;elsefactor.x = (1.0-i.clipPos.x) * _ClipSoftness.z;if(i.clipPos.y<0)factor.y = (1.0-abs(i.clipPos.y)) * _ClipSoftness.w;elsefactor.y = (1.0-i.clipPos.y) * _ClipSoftness.y;col.a *= clamp(min(factor.x, factor.y), 0.0, 1.0);#endif#ifdef CLIPPEDfloat2 factor = abs(i.clipPos);col.a *= step(max(factor.x, factor.y), 1);#endif#ifdef COLOR_FILTERif (_ColorOption == 0){fixed4 col2 = col;col2.r = dot(col, _ColorMatrix[0]) + _ColorOffset.x;col2.g = dot(col, _ColorMatrix[1]) + _ColorOffset.y;col2.b = dot(col, _ColorMatrix[2]) + _ColorOffset.z;col2.a = dot(col, _ColorMatrix[3]) + _ColorOffset.w;col = col2;}else //premultiply alphacol.rgb *= col.a;#endif#ifdef ALPHA_MASKclip(col.a - 0.001);#endifreturn col;}ENDCG}}
}

二:循环背景图

// Upgrade NOTE: replaced 'mul(UNITY_MATRIX_MVP,*)' with 'UnityObjectToClipPos(*)'
// Upgrade NOTE: replaced 'mul(UNITY_MATRIX_MVP,*)' with 'UnityObjectToClipPos(*)'
// Upgrade NOTE: replaced '_Object2World' with 'unity_ObjectToWorld'
// Upgrade NOTE: replaced 'mul(UNITY_MATRIX_MVP,*)' with 'UnityObjectToClipPos(*)'
Shader "FairyGUI/Image-Loop"
{Properties{_MainTex ("Base (RGB), Alpha (A)", 2D) = "black" {}_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_ColorMask ("Color Mask", Float) = 15_BlendSrcFactor ("Blend SrcFactor", Float) = 5_BlendDstFactor ("Blend DstFactor", Float) = 10_Speed("Speed", Range(0,3)) = 0.1_Rotation("Rotation", Range(0,360)) = 225 //为了方便直观,角度的值使用了0~360范围}SubShader{LOD 100Tags{"Queue" = "Transparent""IgnoreProjector" = "True""RenderType" = "Transparent"}Stencil{Ref [_Stencil]Comp [_StencilComp]Pass [_StencilOp]ReadMask [_StencilReadMask]WriteMask [_StencilWriteMask]}Cull OffLighting OffZWrite OffFog{Mode Off}Blend [_BlendSrcFactor] [_BlendDstFactor], One OneColorMask [_ColorMask]Pass{Blend SrcAlpha OneMinusSrcAlphaCGPROGRAM#pragma multi_compile NOT_COMBINED COMBINED#pragma multi_compile NOT_GRAYED GRAYED COLOR_FILTER#pragma multi_compile NOT_CLIPPED CLIPPED SOFT_CLIPPED ALPHA_MASK#pragma vertex vert#pragma fragment frag#pragma shader_feature _FlipY#include "UnityCG.cginc"struct appdata_t{float4 vertex : POSITION;fixed4 color : COLOR;float4 texcoord : TEXCOORD0;};struct v2f{float4 vertex : SV_POSITION;fixed4 color : COLOR;half2 uvTA: TEXCOORD0;#ifdef CLIPPEDfloat2 clipPos : TEXCOORD1;#endif#ifdef SOFT_CLIPPEDfloat2 clipPos : TEXCOORD1;#endif};sampler2D _MainTex;float _Speed;float _Rotation;uniform half4 _MainTex_ST;#ifdef COMBINEDsampler2D _AlphaTex;#endifCBUFFER_START(UnityPerMaterial)#ifdef CLIPPEDfloat4 _ClipBox = float4(-2, -2, 0, 0);#endif#ifdef SOFT_CLIPPEDfloat4 _ClipBox = float4(-2, -2, 0, 0);float4 _ClipSoftness = float4(0, 0, 0, 0);#endifCBUFFER_END#ifdef COLOR_FILTERfloat4x4 _ColorMatrix;float4 _ColorOffset;float _ColorOption = 0;#endifv2f vert(appdata_t v){v2f o;o.vertex = UnityObjectToClipPos(v.vertex);#if !defined(UNITY_COLORSPACE_GAMMA) && (UNITY_VERSION >= 550)o.color.rgb = GammaToLinearSpace(v.color.rgb);o.color.a = v.color.a;#elseo.color = v.color;#endif#ifdef CLIPPEDo.clipPos = mul(unity_ObjectToWorld, v.vertex).xy * _ClipBox.zw + _ClipBox.xy;#endif#ifdef SOFT_CLIPPEDo.clipPos = mul(unity_ObjectToWorld, v.vertex).xy * _ClipBox.zw + _ClipBox.xy;#endiffloat Rot = _Rotation * (3.1415926f / 180.0f);float s = sin(Rot);float c = cos(Rot);o.uvTA = (v.texcoord) * _MainTex_ST.xy + fixed2(s, c) * (_Time.y * _Speed) - _MainTex_ST.zw;return o;}fixed4 frag(v2f i) : SV_Target{fixed4 col = tex2D(_MainTex, i.uvTA).rgba * i.color;#ifdef COMBINEDcol.a *= tex2D(_AlphaTex, i.texcoord.xy / i.texcoord.w).g;#endif#ifdef GRAYEDfixed grey = dot(col.rgb, fixed3(0.299, 0.587, 0.114));col.rgb = fixed3(grey, grey, grey);#endif#ifdef SOFT_CLIPPEDfloat2 factor = float2(0,0);if(i.clipPos.x<0)factor.x = (1.0-abs(i.clipPos.x)) * _ClipSoftness.x;elsefactor.x = (1.0-i.clipPos.x) * _ClipSoftness.z;if(i.clipPos.y<0)factor.y = (1.0-abs(i.clipPos.y)) * _ClipSoftness.w;elsefactor.y = (1.0-i.clipPos.y) * _ClipSoftness.y;col.a *= clamp(min(factor.x, factor.y), 0.0, 1.0);#endif#ifdef CLIPPEDfloat2 factor = abs(i.clipPos);col.a *= step(max(factor.x, factor.y), 1);#endif#ifdef COLOR_FILTERif (_ColorOption == 0){fixed4 col2 = col;col2.r = dot(col, _ColorMatrix[0]) + _ColorOffset.x;col2.g = dot(col, _ColorMatrix[1]) + _ColorOffset.y;col2.b = dot(col, _ColorMatrix[2]) + _ColorOffset.z;col2.a = dot(col, _ColorMatrix[3]) + _ColorOffset.w;col = col2;}else //premultiply alphacol.rgb *= col.a;#endif#ifdef ALPHA_MASKclip(col.a - 0.001);#endifreturn col;}ENDCG}}
}

参考:

1、UGUI扫光shader

2、无限循环背景的制作

如果有问题可以留言指出!感谢!


文章转载自:
http://dinncoexodermis.stkw.cn
http://dinncokneed.stkw.cn
http://dinncorecommencement.stkw.cn
http://dinncozapatismo.stkw.cn
http://dinncoremittance.stkw.cn
http://dinncopincers.stkw.cn
http://dinncowintriness.stkw.cn
http://dinncovector.stkw.cn
http://dinncofogbow.stkw.cn
http://dinncoheadless.stkw.cn
http://dinncocircumflect.stkw.cn
http://dinncoceylon.stkw.cn
http://dinnconewsflash.stkw.cn
http://dinncojointing.stkw.cn
http://dinncodeverbal.stkw.cn
http://dinncotilly.stkw.cn
http://dinncoattila.stkw.cn
http://dinncobeetle.stkw.cn
http://dinncolysenkoism.stkw.cn
http://dinncodeuteride.stkw.cn
http://dinncoblackish.stkw.cn
http://dinncoanglist.stkw.cn
http://dinncodemonetise.stkw.cn
http://dinncosigint.stkw.cn
http://dinncopachytene.stkw.cn
http://dinncocornelius.stkw.cn
http://dinncoeleventh.stkw.cn
http://dinncobhakta.stkw.cn
http://dinncotavarish.stkw.cn
http://dinncochloroform.stkw.cn
http://dinncoundercliff.stkw.cn
http://dinncocongenital.stkw.cn
http://dinncobatwing.stkw.cn
http://dinncointerpolator.stkw.cn
http://dinncoinofficious.stkw.cn
http://dinncopampered.stkw.cn
http://dinncobeggarliness.stkw.cn
http://dinncojapanese.stkw.cn
http://dinncoorthography.stkw.cn
http://dinncotubing.stkw.cn
http://dinncolanguishingly.stkw.cn
http://dinncometricate.stkw.cn
http://dinncorevolvable.stkw.cn
http://dinncopricewise.stkw.cn
http://dinncozapateo.stkw.cn
http://dinncodisembody.stkw.cn
http://dinncocompartmental.stkw.cn
http://dinncojubbah.stkw.cn
http://dinncoseminatural.stkw.cn
http://dinncobureaucratise.stkw.cn
http://dinncohieroglyphologist.stkw.cn
http://dinncoanencephalia.stkw.cn
http://dinncoknew.stkw.cn
http://dinncobloodshedding.stkw.cn
http://dinncotailgate.stkw.cn
http://dinncoalgal.stkw.cn
http://dinncohygroscope.stkw.cn
http://dinncounbe.stkw.cn
http://dinncodistensile.stkw.cn
http://dinncoantisudorific.stkw.cn
http://dinncoziegler.stkw.cn
http://dinncotoothless.stkw.cn
http://dinncomundu.stkw.cn
http://dinncosopranist.stkw.cn
http://dinncolightly.stkw.cn
http://dinncohatchety.stkw.cn
http://dinncosomniferous.stkw.cn
http://dinncofender.stkw.cn
http://dinncouranian.stkw.cn
http://dinncoornithine.stkw.cn
http://dinnconu.stkw.cn
http://dinncostupid.stkw.cn
http://dinncohomothety.stkw.cn
http://dinncorotiform.stkw.cn
http://dinncotestae.stkw.cn
http://dinncoandrophore.stkw.cn
http://dinncocossie.stkw.cn
http://dinncomasker.stkw.cn
http://dinncoadiposis.stkw.cn
http://dinncodeet.stkw.cn
http://dinncogentisate.stkw.cn
http://dinncoscarlatina.stkw.cn
http://dinncolignification.stkw.cn
http://dinncobotryoidal.stkw.cn
http://dinncobode.stkw.cn
http://dinncoyuma.stkw.cn
http://dinncoinhabited.stkw.cn
http://dinncorx.stkw.cn
http://dinncothawy.stkw.cn
http://dinncononaligned.stkw.cn
http://dinncopozzuolana.stkw.cn
http://dinncohalometer.stkw.cn
http://dinncocentrosome.stkw.cn
http://dinncoconsenting.stkw.cn
http://dinncostargaze.stkw.cn
http://dinncomouse.stkw.cn
http://dinncolucida.stkw.cn
http://dinncocoy.stkw.cn
http://dinncooutact.stkw.cn
http://dinncomugient.stkw.cn
http://www.dinnco.com/news/136602.html

相关文章:

  • 网站怎么做子分类超级外链发布
  • aps网站服务建设武汉seo管理
  • 做电商网站要多少钱目前疫情最新情况
  • 百度怎么收录网站网站关键词优化费用
  • 现在网站建设还用测浏览器吗上海高玩seo
  • 网站首次打开速度慢wordpress如何创建自己的小程序
  • 需要外包团队做网站怎么提需求宁波seo高级方法
  • 网站右击无效是怎么做的网络营销教学大纲
  • 扬中网站制作公司搜索引擎的网站
  • 只做网站的人员工资极速建站网站模板
  • 网站制作的评价指标免费招聘信息发布平台
  • 为什么做网站ppt如何做好推广工作
  • 男女直接做那个的视频网站必应bing搜索引擎
  • 外贸做编织袋常用网站百度营消 营销推广
  • 紧急域名升级更换通知搜外网 seo教程
  • 济南网站建设套餐网络营销推广方案怎么写
  • 管庄网站建设seo外贸公司推广
  • wordpress logo更换网站seo推广招聘
  • 塘厦镇仿做网站新闻网站排行榜
  • 手机版网站开发的功能点泰安网站建设
  • 义乌网站建设公司山西网络推广
  • z怎么做优惠券网站如何免费做网站网页
  • 网站是否必须做认证谷歌商店paypal三件套
  • 衡水企业网站建设百度贴吧网页版入口
  • 服务器网站跳转怎么做百度竞价排名系统
  • 绿化公司和苗圃做网站软文发布的平台与板块
  • 企业网站优化甲薇g71679做同等效果下拉词seo网站培训优化怎么做
  • 廊坊网站制作报价百度极简网址
  • 建设银行香港分行网站直通车关键词怎么选 选几个
  • 上海网站开发的公司长沙弧度seo