u3d:强大的dotween。使用dotween处理延时问题,最最最最简单的办法
dotween僅僅只有300kb左右,但是能實(shí)現(xiàn)很多功能簡(jiǎn)單但是處理起來(lái)麻煩的問(wèn)題
第一:延時(shí)n秒執(zhí)行一個(gè)事件
? ? ?方法一:使用 Invoke(“方法名”,n秒);
? ? ? ? ? ? ? ? 這樣寫(xiě)要定義方法,一個(gè)最簡(jiǎn)單的需要4 5行
? ? 方法二:使用協(xié)程,要另起名,寫(xiě)方法,同樣沒(méi)有個(gè)5 6 7 8行寫(xiě)不下來(lái)
? ? 方法三,用dotween,dotween函數(shù)中提供了一個(gè)方法dotween.to函數(shù),具體執(zhí)行,如下
float timeCount;void Start (){DOTween.To(() => timeCount, a => timeCount = a, 1, 3).OnComplete(() => print("執(zhí)行"));}在原來(lái)的基礎(chǔ)上只是增加了兩行代碼,代碼簡(jiǎn)單清晰,明了,最多把括號(hào)里的“3”改成定時(shí)變量,1可以隨便給個(gè)值
第二:每隔n秒執(zhí)行一下事件
? ? ? 這樣,第一想到的肯定是start()里面放while,update()里面放定時(shí)器或者其他復(fù)雜的東西
? ? 同樣,用dotween.to函數(shù)
Tween t = DOTween.To(() => timeCount, a => timeCount = a, 1, 3).OnStepComplete(() => print("執(zhí)行")).SetLoops(-1);// t.Kill();接上面,主要有兩個(gè)變換,將延時(shí)執(zhí)行變成循環(huán)延時(shí)執(zhí)行?SetLoops(-1)
將OnComplete換成OnStepComplete()這樣就可以每3秒執(zhí)行一次事件了,如果不用循環(huán)執(zhí)行了直接如上屏蔽的代碼? t.kill()即可終止循環(huán)。
?
轉(zhuǎn)載于:https://www.cnblogs.com/zbyglls/p/11174716.html
總結(jié)
以上是生活随笔為你收集整理的u3d:强大的dotween。使用dotween处理延时问题,最最最最简单的办法的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 多地上调工资标准 打工人的福利又好
- 下一篇: 英雄连2重装甲指挥所怎么建