国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 系統 > Android > 正文

OpenGL Shader實例分析(3)等待標識效果

2019-10-21 21:24:59
字體:
來源:轉載
供稿:網友

本文實例為大家分享了OpenGL Shader實例,等待標識,不過效率估計不是很高。結果如下:

OpenGL,Shader,等待標識

代碼:

Shader "stalendp/waitIcons" {   CGINCLUDE      #include "UnityCG.cginc"       #pragma target 3.0    struct v2f {     float4 pos:SV_POSITION;     float2 uv : TEXCOORD0;    };      v2f vert(appdata_base v) {     v2f o;    o.pos = mul (UNITY_MATRIX_MVP, v.vertex);    o.uv = v.texcoord.xy;    return o;    }      fixed calcDot(fixed a, fixed ca, fixed2 uv) {   a /= 57.295779513;   ca /= 57.295779513;   fixed tt = 180/57.295779513;   uv = (fixed2(cos(a), sin(a)) * 0.2+ uv)*10;   fixed adit = tt*2*step(tt, a-ca);   fixed r = 1-step(ca + adit, a);   r *= lerp(0.2, -1, saturate((ca-a+adit)/25))*2;   return smoothstep(r-0.2, r, length(uv.xy));  }    fixed4 frag(v2f input) : COLOR0 {     float2 uv = input.uv.xy - float2(0.5);    float rx = fmod(uv.x, 0.4);    float ry = fmod(uv.y, 0.4);    float mx = step(0.4, abs(uv.x));    float my = step(0.4, abs(uv.y));    float alpha = 1- mx*my*step(0.1, length(half2(rx,ry)));    alpha*=0.9;       fixed4 foreColor = fixed4(1);   fixed4 bgColor = fixed4(fixed3(0.4),alpha);   fixed4 result = bgColor;      fixed ca = fmod(_Time.y, 2)*180;    bgColor = lerp(foreColor, bgColor, calcDot(0, ca, uv)); bgColor = lerp(foreColor, bgColor, calcDot(30, ca, uv)); bgColor = lerp(foreColor, bgColor, calcDot(60, ca, uv)); bgColor = lerp(foreColor, bgColor, calcDot(90, ca, uv)); bgColor = lerp(foreColor, bgColor, calcDot(120, ca, uv)); bgColor = lerp(foreColor, bgColor, calcDot(150, ca, uv)); bgColor = lerp(foreColor, bgColor, calcDot(180, ca, uv)); bgColor = lerp(foreColor, bgColor, calcDot(210, ca, uv)); bgColor = lerp(foreColor, bgColor, calcDot(240, ca, uv)); bgColor = lerp(foreColor, bgColor, calcDot(270, ca, uv)); bgColor = lerp(foreColor, bgColor, calcDot(300, ca, uv)); bgColor = lerp(foreColor, bgColor, calcDot(330, ca, uv));      return bgColor;   }   ENDCG     SubShader {    LOD 200   Tags {"Queue" = "Transparent"}   ZWrite Off   Blend SrcAlpha OneMinusSrcAlpha    Pass {     CGPROGRAM       #pragma vertex vert     #pragma fragment frag     #pragma fragmentoption ARB_precision_hint_fastest        ENDCG    }     }    FallBack Off  } 

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持VEVB武林網。


注:相關教程知識閱讀請移步到Android開發頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 汶上县| 伊金霍洛旗| 盘锦市| 丰原市| 桓仁| 武宁县| 浦县| 郑州市| 孟津县| 遵化市| 财经| 新郑市| 古田县| 顺昌县| 晋中市| 昌黎县| 揭东县| 宁化县| 石景山区| 江孜县| 波密县| 兴和县| 康定县| 敦化市| 甘谷县| 望奎县| 大冶市| 平远县| 仁怀市| 潮州市| 文成县| 大洼县| 留坝县| 招远市| 漠河县| 绥宁县| 六盘水市| 旅游| 宝山区| 旅游| 宜州市|