cocos creator (1) ——幀動畫

幀動畫

整體流程

幀動畫,就是通過一系列圖片定義動畫表現的動畫形式,首先我們需要動畫運行所需的所有幀。

這些幀通常以一張大圖的形式(如下)給出,并不附帶任何位置信息。

image

所以我們首先要將圖片處理成帶位置信息的大圖形式,以便能夠被cocos creator所用。

其次要創建一個承載動畫的節點,并綁定Animation組件。

編輯動畫,包括運行速度,幀事件,運行模式(順序、循環...)。

預覽。

動畫資源制作

分離圖片

  • 使用shoeBox將素材圖中的各個元素扣出來,分離成一個個單獨的圖片。將源圖片直接拖入如下位置即可,shoeBox默認的輸出目錄跟源文件目錄相同。
image

打包整合圖片

  • 使用TexturePacker將分離的圖片合成一張大的雪碧圖,附帶.plist文件。將Texture的輸出路徑直接放在cocos creator工程目錄下的/assets/texture
image
  • 將打包出來的plist和雪碧圖資源導入到cocos creator編輯器中,如下圖所示
image

節點/組件

新建用于承載動畫的節點

  • 在節點中添加sprite組件,用于放置節點默認顯示的一幀畫面。將第一幀圖拖進去。因為我們的一幀圖是從圖集中扣出來的(前面我們用TexturePacker合成了一張大圖),所以這里Sprite的Altas屬性就是我們的圖集。
image
  • 在節點中添加animation組件,用于定義動畫的具體行為

    • 在animation組件中一個Default Clip屬性,這代表這個節點默認展示的動畫。類型為cc.AnimationClip,每個cc.AnimationClip都有個name屬性,用于區分不同的動畫。
    • 還有一個clips屬性,是個數組。也就是Animation組件可以使這個節點擁有多個動畫。比如說角色的跑、跳、蹲等動作。有多少個動作,這個數組就有多長。可以認為cc.Animationcc.AninationClip的合集。
    image

創建/編輯動畫

新建動畫資源

動畫資源就對應于之前animation組件的cc.AnimationClip類型的屬性。在資源管理器中新建Animation資源。定義好動畫資源后,就可以直接把這個資源拖到對應的屬性Default clip上去。(如上圖)

編輯動畫

在層級管理器中選中動畫節點,在動畫編輯器中就可以對動畫進行編輯了。

在動畫編輯器中點擊編輯按鈕。在下面的屬性列表中新建動畫需要改變的屬性。因為我們是幀動畫,所以自然要改變的就是cc.Sprite.SpriteFrame屬性了。

選中動畫所需的幀拖到該屬性的右邊去。點擊播放按鈕,即可看到動畫效果。

可以在動畫編輯器的右下角修改動畫的采樣率和速度,以改變動畫的幀變化速度。

保存動畫。

image

選中選中節點,Animation組件下的Play on Load屬性,即可在瀏覽器或者模擬器中查看動畫效果。

腳本控制

onLoad () {
    var animation = this.getComponent(cc.Animation)
    animation.play('name-of-animationClip') // 直接播放動畫
    // 動態加載動畫
    cc.loader.loadRes('animation/name-of-animation-resource-file', cc.AnimationClip, function (err, dynamicAnimationClip) {
        // 先將動態加載的clip放入animation中
        animation.addClip(dynamicAnimationClip)
        animation.run('dynamic-animation-clip-name')
    })
}
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • 1、通過CocoaPods安裝項目名稱項目信息 AFNetworking網絡請求組件 FMDB本地數據庫組件 SD...
    陽明AGI閱讀 16,008評論 3 119
  • 1 CALayer IOS SDK詳解之CALayer(一) http://doc.okbase.net/Hell...
    Kevin_Junbaozi閱讀 5,192評論 3 23
  • 你有沒有在充滿霧氣的鏡子或玻璃上寫過一個人的名字,然后匆忙擦掉。我寫過,但沒有擦掉,而是看著水珠滑落成心形,所以懷...
    靚妞李小胖閱讀 903評論 2 4
  • 【一段故事】出自一部動畫片 一個小和尚放風箏,怎么放也放不起來,小和尚的師伯看到了,罵道:愚笨,沒有風,這風箏終究...
    Cuiry閱讀 596評論 0 4
  • 看到即將畢業的 一對戀人,那么并排坐著,各自專注各自的事情。燈光柔和情誼深深。沒有繁雜瑣碎,沒有手忙腳亂,沒有一地...
    依蓮竹風閱讀 761評論 0 0