五月天青色头像情侣网名,国产亚洲av片在线观看18女人,黑人巨茎大战俄罗斯美女,扒下她的小内裤打屁股

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

Cocos Creator封裝自己的幀動畫組件播放動畫

2022-03-12 14:06 作者:BYCW丶幻彩  | 我要投稿

前言

在Cocos Creator游戲開發(fā)的過程中我們進行需要使用動畫效果,雖然可以通過動畫編輯器編輯動畫效果,但是有時候用戶想更靈活的控制幀動畫的效果,就需要自己封裝幀動畫組件。

一、幀動畫播放組件

1: creator播放幀動畫需要通過動畫編輯器去制作;

2: 為了方便控制和使用加入幀動畫代碼播放組件;

3: 屬性設(shè)置:

  1. sprite_frames: 幀動畫所用到的所有的幀;

  2. duration: 每幀的時間間隔;

  3. loop: 是否循環(huán)播放;

  4. play_onload: 是否加載組件的時候播放;


4: 接口設(shè)置:

  1. play_once(end_func); // 播放結(jié)束后的回掉函數(shù);

  2. play_loop(); // 循環(huán)播放;


二、幀動畫播放原理

1: 對的時間播放顯示對的圖片:

假設(shè)以三幀動畫為例,時間間隔就是duration,



三、自己封裝幀動畫組件


四、測試封裝的幀動畫組件



勾選PlayOnLoad和去掉的區(qū)別,勾選Loop和去掉的區(qū)別,可以發(fā)現(xiàn)預(yù)加載和循環(huán)播放。如何在代碼中控制?

新建GameMgr.ts掛載到Canvas節(jié)點上****。

1. ?`import FrameAnim from "./FrameAnim";` 3. ?`const {ccclass, property} = cc._decorator;` 4. ?`@ccclass` 5. ?`export default class GameMgr extends cc.Component {` 7. ?` ? ?@property({type: [FrameAnim], tooltip:"幀動畫數(shù)組"})` 8. ?` ? ?anim : Array<FrameAnim> = [];` 9. ?`// onLoad () {}` 11. ?` ? ?endPlay(){` 12. ?` ? ? ? ?console.log("動畫播放完畢??!");` 13. ?` ? ?}` 14. ?` ? ?start () {` 15. ?` ? ? ? ?//this.anim[0].playOnce(this.endPlay);` 16. ?` ? ? ? ?//this.anim[1].playOnce(this.endPlay);` 17. ?` ? ? ? ?//this.anim[0].playOnce(null);` 18. ?` ? ? ? ?//this.anim[1].playOnce(null);` 19. ?` ? ? ? ?//this.anim[0].playLoop();` 20. ?` ? ? ? ?//this.anim[1].playLoop();` 21. ?` ? ? ? ?if(this.anim.length > 1){` 22. ?` ? ? ? ? ? ?this.anim[1].duration = 0.5;` 23. ?` ? ? ? ? ? ?this.anim[1].playOnce(this.endPlay);` 24. ?` ? ? ? ?}` 25. ?` ? ? ? ?if(this.anim.length > 0){` 26. ?` ? ? ? ? ? ?this.anim[0].playLoop();` 27. ?` ? ? ? ?}` 28. ?` ? ?}` 29. ?`}`





更多教學(xué)視頻以及源碼素材

https://www.bycwedu.com/promotion_channels/829468798

Cocos Creator封裝自己的幀動畫組件播放動畫的評論 (共 條)

分享到微博請遵守國家法律
丽江市| 鱼台县| 富源县| 莒南县| 宜兰市| 承德县| 连城县| 青浦区| 闻喜县| 瑞昌市| 南通市| 安泽县| 嘉兴市| 河曲县| 鸡西市| 呼图壁县| 潞城市| 灌云县| 博爱县| 县级市| 佛学| 清苑县| 多伦县| 五常市| 大荔县| 临潭县| 赤城县| 金平| 景泰县| 中卫市| 安岳县| 东兴市| 湘潭市| 高密市| 湟源县| 岑溪市| 资阳市| 潼南县| 宾阳县| 牡丹江市| 鹤山市|