認(rèn)識DoTween插件以及通過UGUI制作血條

文章內(nèi)容:

一、認(rèn)識DoTween插件

二、通過UGUI制作血條的三種方法

認(rèn)識DoTween:

Using DG.Tweening;//引用DoTween插件的命名空間

腳本:

1.DoTween Animation


初始界面


動畫模式菜單


移動動畫模式


旋轉(zhuǎn)動畫模式


縮放動畫模式


沖床位置

2.DoTween Path


類:

1.DOTweenAnimation(補(bǔ)間動畫)

屬性:設(shè)置是否自動銷毀:補(bǔ)間動畫對象.autoKill

更改動畫持續(xù)時間:補(bǔ)間動畫對象.duration

更改動畫的延時播放時間:補(bǔ)間動畫對象.delay

更改動畫的循環(huán)次數(shù):補(bǔ)間動畫對象.loops

更改動畫的循環(huán)類型:補(bǔ)間動畫對象.loopType

方法:向前播放動畫:補(bǔ)間動畫對象.DOPlayForward();

向后播放動畫:補(bǔ)間動畫對象.DOPlayBackwards();

通過ID名稱播放動畫:補(bǔ)間動畫對象.DOPlayById(ID名稱);

2.Tweener

DoTween創(chuàng)建的動畫,默認(rèn)都是Play狀態(tài),而且播放完畢之后會自動銷毀,

但是有很多動畫需要不斷的循環(huán)次數(shù),

所以說按默認(rèn)的話,就需要不斷的創(chuàng)建和銷毀動畫,

這樣就造成了內(nèi)存的消耗和資源的浪費(fèi),我們要避免這種情況。

DoTween為我們提供了一個類,方便我們對動畫的狀態(tài)和屬性進(jìn)行修改,這個類就是Tweener.

方法:

移動:Tweener對象=Transform對象.DOMoveX(X方向移動的距離,持續(xù)播放的時間);

延遲:Tweener對象.SetDelay(延遲播放的時間);

設(shè)置播放(運(yùn)動)方式:Tweener對象.SetEase(Ease.枚舉成員名);

暫停:Tweener對象.Pause();

//可以分開寫,也可以一次寫完

Tweener對象=Transform對象.DOMoveX(距離,持續(xù)時間).SetAutoKill(true或false).SetEase(Ease.枚舉成員名).SetLoops(循環(huán)次數(shù),循環(huán)類型.枚舉成員名);

實(shí)例:通過點(diǎn)擊打開按鈕、關(guān)閉按鈕播放圖片動畫(OnEnable方法、OnDisable方法、Tweener類、Button類,使用標(biāo)志位)

3.Sequence(隊(duì)列)

實(shí)例化一個Sequence:Sequence 對象名= DOTween.Sequence();

方法:

往隊(duì)列中添加動畫:隊(duì)列對象.Append(添加的動畫);

隊(duì)列延時播放動畫:隊(duì)列對象.PrependInterval(延遲時間);

往隊(duì)列中插入動畫:隊(duì)列對象.Insert(插入的位置,插入的動畫);

實(shí)例:制作血條(通過克隆、動態(tài)加載、父子物體、坐標(biāo)轉(zhuǎn)換、顯示隱藏)

方法一:通過靜態(tài)加載:拖游戲?qū)ο蠼o腳本進(jìn)行實(shí)例化;

方法二:通過動態(tài)加載:使用Resources.Load<后面的預(yù)設(shè)體類型對應(yīng)>("預(yù)設(shè)體的路徑") ? //此方法默認(rèn)狀態(tài)下是在Resources目錄下查找預(yù)設(shè)體?。。。?/p>

預(yù)設(shè)體必須在Resources的目錄下才能被找到,否則會報錯!?。?/p>

以上兩種方法,克隆的血條需要單獨(dú)放在另一個畫布(Canvas)中存放;


用Slider制作血條

在調(diào)整血條大小的時候,不要直接調(diào)整血條的寬高,很容易出錯,最好是調(diào)整它的縮放;

畫布的渲染模式選擇攝像機(jī)渲染屏幕空間,方便觀察,可以顯示血條(2D),也可以顯示方塊(3D物體)

方法三:畫布的渲染模式選擇世界空間渲染模式,把畫布也當(dāng)作一個游戲?qū)ο螅謩e把每個畫布作為每個方塊的子物體,并把每個方塊的血條當(dāng)作每個畫布的子物體,通過畫布顯示每個方塊的血條信息,使用LookAt方法寫一個讓帶有血條的父的物體畫布朝向攝像機(jī)的位置

?著作權(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)容

  • Android 自定義View的各種姿勢1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 178,954評論 25 709
  • 年過完啦,告別過年時的燈紅酒綠,快點(diǎn)滾來學(xué)習(xí)啦 看了幾遍 任務(wù)視頻,對要做的東西有一個大致的了解,但有點(diǎn)混亂,看了...
    baiying閱讀 780評論 1 2
  • 坐在這樣的車?yán)铮忠欢淇偢杏X戰(zhàn)戰(zhàn)兢兢的似乎不是她們這種普通人可以坐的。不知是不是車子性能太好,車子里很安靜,連音樂...
    香啡豆閱讀 554評論 2 7
  • border-radius // 圓角 (最多八個值,前四個和后四個中間用“/”線分隔) box-shadow /...
    他在發(fā)呆閱讀 221評論 0 0
  • 別人,沒有你想象的那么善良。
    哎呀呀CN閱讀 220評論 0 0

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