[求问]如何获得骨骼动画中帧事件回调骨骼的位置?

cocos2dx 3.2 + lua + cocosStudio 1.6

需求:法师在攻击动作的某一帧中发出光球,光球要从法杖顶端射出

已将帧事件绑定在法杖顶端的一个骨骼上,可是获取的position是(0,0)

看了一下美术做的动画,在形体模式下位置是正常的,但是在动画模式下各个骨骼的位置都是(0,0)

通过bone:getWorldInfo().x,bone:getWorldInfo().y 都是nil

请问。。。是哪里设置的不对还是有什么别的办法来实现?

之前发到cocos2dx的讨论区了,没人回,来这里再发一下。。。

在论坛上一通查,发现lua中worldInfo的x,y似乎是有问题啊。。。是nil

版主呢。。。

似乎worldinfo沒有導出到lua,你可以試試這兩個函數:getNodeToWorldTransform getNodeToArmatureTransform

造成问题的原因是BaseData的x,y是public的属性,在c++中bone->getWorldInfo().x可以直接使用,但是lua需要声明函数才可以调用

所以我在BaseData中加了个getPosition的方法,返回Vec2并注册到Lua中,这样就可以直接在Lua中使用getPosition()的方法了

同样的问题