真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

如何使用canvas實現(xiàn)骨骼動畫

這篇文章主要介紹了如何使用canvas實現(xiàn)骨骼動畫,具有一定借鑒價值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。

成都創(chuàng)新互聯(lián)是一家專業(yè)提供開陽企業(yè)網(wǎng)站建設(shè),專注與成都網(wǎng)站建設(shè)、網(wǎng)站設(shè)計H5場景定制、小程序制作等業(yè)務(wù)。10年已為開陽眾多企業(yè)、政府機(jī)構(gòu)等服務(wù)。創(chuàng)新互聯(lián)專業(yè)網(wǎng)站制作公司優(yōu)惠進(jìn)行中。

在開始之前,先來了解一下AlloyStick

官方介紹說AlloyStick 是采用HTML5技術(shù)開發(fā)的一個骨骼動畫引擎,可以用于HTML5動畫開發(fā)、HTML5游戲開發(fā);AlloyStick 主要由骨骼動畫引擎和骨骼動畫編輯器兩部分組成,骨骼動畫編輯器提供強(qiáng)大的骨骼動畫編輯功能,通過設(shè)置動畫關(guān)鍵幀,依靠強(qiáng)大的自動補(bǔ)間和骨骼關(guān)系,就可以制作出逼真、生動的Canvas骨骼動畫,可以暢快的運行在PC、手機(jī)、平板等設(shè)備里。嗯,說的很輕松又很有吸引力

所謂的骨骼動畫從字面意思來說就是通過骨骼去繪制的動畫,那么這里的骨骼是長什么樣呢?

如何使用canvas實現(xiàn)骨骼動畫

沒錯,就是長這樣的,也算是符合預(yù)想的吧,畢竟人家有和很強(qiáng)大的自動補(bǔ)間功能,可以聯(lián)想一下每一部分都用很光滑的方式連接起來,有點像PS的羽化吧

既然是很強(qiáng)大的一個功能,肯定有人家自己獨特的優(yōu)勢

  1. 動畫更加的逼真,這是肯定的啊

  2. 圖片占用的空間很小,這也能看出來,這個人只有頭,手和腿三部分組成

  3. 過渡動畫自動補(bǔ)間,讓動作更加靈活

  4. 骨骼可控

  5. 骨骼事件幀,動畫直行待某個動作或某個幀,觸發(fā)自定義事件行為

  6. 動作數(shù)據(jù)繼承,多角色可用一套動畫數(shù)據(jù)

  7. 可結(jié)合屋里引擎

  8. 結(jié)合精靈圖動畫制作混合動畫

下面來開始小demo

一個骨骼動畫主要由3部分組成:骨骼數(shù)據(jù)、蒙皮數(shù)據(jù)、動畫數(shù)據(jù),有了這三部分?jǐn)?shù)據(jù),就可以由AlloyStick渲染出生動的骨骼動畫了。這三部分?jǐn)?shù)據(jù)當(dāng)然不需要手動生成,只需要在編輯器中操作,即可自動生成。生成數(shù)據(jù)后,就可以向下面這樣調(diào)用執(zhí)行骨骼動畫了,第一步引入alloysk.js,再加入資源resource.js。其中注意的是蒙皮png是以img標(biāo)簽引入,當(dāng)然也可js的方式加載。resource.js里面包括蒙皮數(shù)據(jù),骨骼關(guān)系數(shù)據(jù),和所有動作數(shù)據(jù)包括動畫名字和參數(shù)。第二步,根據(jù)資源文件new出舞臺對象Stage和角色對象Armature,Stage對象管理Armature對象。playTo方法時核心方法,讓角色播放不同動作動畫,你可以增加事件去切換不同動作。最后啟動舞臺stage.start().

// 第一步 還是要先搭建canvas
抱歉,你的瀏覽器不支持canvas,建議你使用Chrome瀏覽器
// 第二步 以圖片形式或者js方式引入蒙皮資源
// 第三步 引入alloysk.js和resource.js
// 第四步 準(zhǔn)備工作
var canvas = document.getElementById('canvas')
var textureImg = document.getElementById('xiaoxiaoImg')
var scene = new alloyge.Scene(canvas.getContext('2d'))
var player = new alloysk.Armature('xiaoxiao',textureImg)
// 第五步 制作動畫
// 動作快慢 參數(shù):動作狀態(tài),速度,初始速度,是否一直執(zhí)行,這里還可以設(shè)置其他動作,比如翻滾 roll
// 更新了幾個動作狀態(tài):run 奔跑  roll 翻滾  simpleHit 右手扔?xùn)|西   secondHit  右手打拳
 //  jump_kick  側(cè)踢 comeon 挑釁   relax 放松  soap 撿肥皂
player.playTo('run',50,15,true);
// 動畫位置
player.setPos(300,300); 

player.setEaseType(true);		
scene.addObj(player);
 // 啟動FPS監(jiān)聽器 (輔助功能 非必須)
alloyge.monitorFPS(scene);
// 開始場景里的動畫,并且可以傳入callback循環(huán)調(diào)用
// 最后一步 執(zhí)行動畫
scene.start(); 
// 效果就是下面這樣奔跑的少年啦,原諒我還沒開通做gif動畫的大門……

如何使用canvas實現(xiàn)骨骼動畫

感謝你能夠認(rèn)真閱讀完這篇文章,希望小編分享的“如何使用canvas實現(xiàn)骨骼動畫”這篇文章對大家有幫助,同時也希望大家多多支持創(chuàng)新互聯(lián),關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,更多相關(guān)知識等著你來學(xué)習(xí)!


當(dāng)前文章:如何使用canvas實現(xiàn)骨骼動畫
文章鏈接:http://weahome.cn/article/jijsgj.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部