DragonBones / DesignPanel

DragonBones DesignPanel
MIT License
163 stars 91 forks source link

v3.01 Hit Area 的建議 #22

Closed januswow closed 9 years ago

januswow commented 9 years ago

目前嘗試用3.01做導出之後發現,hit area(rectangle)是隸屬於skeleton(armature), 我的建議是:能否將hit area改成隸屬於animation,且擁有timeline(frames),讓碰撞範圍可以隨著動作演出而不斷做變化。

下面提兩個案例做參考:

案例一: 我有3個動作,各自需要不同形狀的碰撞範圍,以現行的設計來說… 我就會需要建立3個碰撞範圍圖層,並且在動作播放時特別去找到對應的碰撞範圍來做碰撞偵測 比較不直覺,但還能接受。

案例二: 我今天有一個動作, 在1~5幀的時候角色是蹲下的,所以碰撞範圍需要比較小 在6~20幀是站起來,而且還會動,所以碰撞範圍理應要跟著動作演出不斷地在變化, 但以目前的hit area設計來說,是很難實現這點。

我所想像的數據格式是這樣(我是美術人員)

--某個動作 --某個碰撞範圍 --這個碰撞範圍會隨著frame做變化 --動作演出的timeline *那rectangle跟原本一樣是可以擁有多個
akdcl commented 9 years ago

AreaData 属于Armature和bone,你的这种动态hitArea需求,可以考虑使用一个不可见Bone内部加AreaData,通过调节Bone的transform来达到修改AreaData的目的,将该bone的transform和AreaData的transform叠加,即可得到最终的AreaData的transform

januswow commented 9 years ago

@akdcl 了解,聰明的作法,不過能原生支援的話還是最好了。感謝~