骨骼動畫換裝

2021-07-03 02:35:58 字數 1147 閱讀 3397

之前看過好多有關骨骼動畫換裝的文章,雖然給予很大幫助,然而自己也是費了很大勁,最終也是自己解決了問題,我把自己的解決方式分享出來,希望對你有所幫助:

void

changearmaturebone

(cocostudio

::armature

*armature

,const

char

*bonename

,cocos2d

::node

*node)

bone

*pbone

=armature

->

getbone

(bonename);

intcurrentindex

=pbone

->

getdisplaymanager

()->

getcurrentdisplayindex

();

decorativedisplay

*pdis

=pbone

->

getdisplaymanager

()->

getdecorativedisplaybyindex

(currentindex);

cocos2d

::node

*pdisnode

=pdis

->

getdisplay

();

node

->

setanchorpoint

(pdisnode

->

getanchorpoint

());

pbone

->

adddisplay

(node

,currentindex);

//pbone->changedisplaywithindex( currentindex , true ); }

要注意的是,這個是分離出來的乙個骨骼動畫換裝的方法,其中第乙個引數是你要換的骨骼動畫的原動畫,第二個引數是要換的骨骼動畫的名字,第三個引數是要替換的資源,不過要注意的第三個引數要以skin的物件的形式建立(skin是sprite的子類)。

希望對大家有用,閒下來沒事突然想吧之前的經驗拿出來分享下,勿噴。

骨骼動畫換裝的例項

骨骼動畫換裝的例項轉乙個骨骼動畫換裝的例項你參考一下。一 我們直接在cocos2d x自帶的hellocpp的工程中新增 即可.我們在初始化中新增如下 cpp ccsize szwin ccdirector shareddirector getvisiblesize ccarmaturedatama...

laya龍骨換裝 LayaAir之骨骼動畫 基礎

layaair可以是用dragonbone和spine生成的骨骼動畫檔案,但是需要將他們的動畫檔案進行轉化,轉化後的檔案才能夠被layaair識別.而無論是dragonbone還是spine都不是layaair官方工具,轉化的安全和相容性有些問題,這是乙個坑.到目前為止此轉化有2個問題 對版本的支援...

骨骼動畫公式

本節你將回顧一些骨骼動畫用到的概念和數學公式。乙個骨骼動畫是由許多關鍵幀組成的,每個關鍵幀儲存了乙個bone的配置 朝向和位置 和bone對應的時間。在每個時間間隔,你使用乙個或多個關鍵幀改變bone的配置。圖11 7展示了一張如圖11 3中的骨骼的動畫,當left shoulder bone的朝向...