spine在unity中實現閃白效果


游戲開發過程中需要游戲對象被攻擊的時候變白,然后有有閃爍的效果。

這其實是兩個效果:

1.變白的效果

要實現這個效果需要修改spine的shader模式。spine導入unity中時默認采用的shader是“Spine/Skeleton”需要將這個模式該為

“Spine/Skeleton Fill”.在這個shader中有一個參數Fill Phase通過代碼動態修改這個參數,就可以實現對象的變白,默認是0就是不白,

如果改成1就是全白,中間值為透明白。下面是關鍵代碼

gameObject.GetComponent<Renderer>().material.SetFloat("_FillPhase", 0.5f);

 

2.閃爍效果

其實閃爍效果可以通過透明來實現,每間隔0.05s實現一次透明,在隔0.05s秒恢復,如此由於人的視覺殘留就會出現閃爍的效果,

關鍵代碼如下:

skeleton.skeleton.SetColor(color);

這個color的alpha通道給為0就是全透明,1就是不透明

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM