UnityShader3 流光效果

2021-06-29 05:55:20 字數 1145 閱讀 5913

首先直接上效果圖:

動態的效果就是一條光線橫掃著圖示。

要製作流光效果,一般要用一張底圖,一張流光圖(流光圖中的非光線部分最好是黑色的)。以下是本次使用的流光圖:

好了現在我們來分析一下如何實現流光效果。

1.通過對效果圖的分析,我們發現底圖並沒有發生變化,變的只是流光圖(位置在不斷改變),因此,我們要去改變流光圖的uv。

2.從效果圖來看,發生變化的是rgb值,又因為流光圖中的非光線部分是黑色的(rgb值為0,這點很重要),所以最終的輸出就是兩圖的rgb值之和。

3.流光紋理的wrap mode必須是repeat。

**如下:

shader "custom/flow" 

_flowtex("流光圖 (a)", 2d) = "white" {}

_scrollxspeed("橫向速度", range(0, 10)) = 2

_scrollyspeed("豎向速度", range(0, 10)) = 0

_scrolldirection("方向", range(-1, 1)) = -1

_flowcolor("流光顏色",color) = (1,1,1,1)

} subshader

lod 200

cgprogram

#pragma su***ce surf lambert

sampler2d _maintex;

sampler2d _flowtex;

fixed _scrollxspeed;

fixed _scrollyspeed;

fixed _scrolldirection;

float4 _flowcolor;

struct input ;

void surf(input in, inout su***ceoutput o)

endcg

} fallback "diffuse"

}

這是unitypackage:

UnityShader3實現轉圈與冷卻效果

參考鏈結 opengl shader例項分析 3 等待標識效果 一.轉圈效果 效果圖 如何實現乙個圓繞中心點運動呢?原理很簡單,就是隨著時間的流逝,起始邊固定,而另一條邊不斷地移動,弧度從0到2 pi,只需求出移動邊與圓邊的交點,然後畫圓即可。至於這個交點,因為圓心的uv為 0.5,0.5 所以交點...

UnityShader3 光暈效果

3d 2d 一 3d光暈 效果圖 其實3d光暈,就是邊緣光的乙個變種而已。如果你想把這個shader應用到人物 模型上,需要修改一下法線擠出的值,或者乾脆就不要法線擠出,直接削減模型邊緣。shader custom glow edgecolor edgecolor color 1,0,0,1 edg...

UnityShader3 波浪效果

效果圖 1.首先,實現格仔背景圖 shader custom curve subshader struct v2f 格仔背景 2.在中間新增一條直線 shader custom curve subshader struct v2f 格仔背景 3.直線變曲線 shader custom curve s...