Shader案例篇—點(diǎn)擊屏幕波紋漣漪效果 (轉(zhuǎn))

一、前言

又是一個好久沒有更新了,還是因?yàn)樘?,生活茍且云云,?dāng)然有好的東西還是需要拿出來和大家分享一下的。

使用的是.5.0版本,慣例,先上效果圖,如圖所示:該效果是響應(yīng)每一次鼠標(biāo)點(diǎn)擊時候,在鼠標(biāo)的點(diǎn)擊的位置處產(chǎn)生一個顏色隨機(jī)的

二、實(shí)現(xiàn)方法

1、重點(diǎn)的Shader部分:

首先,是最難的顏色轉(zhuǎn)換函數(shù),代碼:

樹上的cat,如果您要查看本帖隱藏內(nèi)容請回復(fù)

2、創(chuàng)建波紋預(yù)設(shè)體

有了Shader之后,創(chuàng)建該Shader的材質(zhì)球,我一般都會直接選中該Shader,然后右鍵創(chuàng)建材質(zhì),這個材質(zhì)就直接賦值了這個Shader,并且命名也會和該Shader的名字相關(guān)。創(chuàng)建完材質(zhì)之后,創(chuàng)建一個空物體,并且給這個空物體添加Sprite Renderer屬性。將下面的貼圖給Sprite Renderer的Sprite。

編寫該預(yù)設(shè)體的控制腳本,代碼如下:

//轉(zhuǎn)換顏色的方法

fixed3 shift_col(fixed3 RGB, half3 shift)

{

fixed3 RESULT = fixed3(RGB);

floatVSU = shift.z*shift.y*cos(shift.x*3.14159265 / 180);

floatVSW = shift.z*shift.y*sin(shift.x*3.14159265 / 180);

RESULT.x = (.299*shift.z + .701*VSU + .168*VSW)*RGB.x

+ (.587*shift.z - .587*VSU + .330*VSW)*RGB.y

+ (.114*shift.z - .114*VSU - .497*VSW)*RGB.z;

RESULT.y = (.299*shift.z - .299*VSU - .328*VSW)*RGB.x

+ (.587*shift.z + .413*VSU + .035*VSW)*RGB.y

+ (.114*shift.z - .114*VSU + .292*VSW)*RGB.z;

RESULT.z = (.299*shift.z - .3*VSU + 1.25*VSW)*RGB.x

+ (.587*shift.z - .588*VSU - 1.05*VSW)*RGB.y

+ (.114*shift.z + .886*VSU - .203*VSW)*RGB.z;

returnRESULT;

}

3、最后寫一個總控腳本

控制預(yù)設(shè)體點(diǎn)擊創(chuàng)建,代碼如下:

[C#]純文本查看復(fù)制代碼

Properties

{

[PerRendererData] _MainTex("Sprite Texture", 2D) ="white"{}

[HideInInspector]_StartTime("StartTime", Float) = 0

_AnimationTime("AnimationTime", Range(0.1, 10.0)) = 1.5

_Width("Width", Range(0.1, 3.0)) = 0.3

_StartWidth("StartWidth", Range(0, 1.0)) = 0.3

[Toggle] _isAlpha("isAlpha",Float) = 1

[Toggle] _isColorShift("isColorShift",Float) = 1

[MaterialToggle] PixelSnap("Pixel snap", Float) = 1

}


轉(zhuǎn)自:http://www.manew.com/thread-106798-1-1.html

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容