求问怎么用代码控制spine动画的骨骼旋转?

求问怎么用代码控制spine动画的骨骼旋转?就像cs游戏里那样,人物举着枪,向上向下指,跟随鼠标旋转那种,是美术做,还是我用代码控制骨骼?我网上找不到对应的示例代码。求大佬解惑。

1赞

大佬们求助

没人啊

let oNode = this._testSkeleton.findBone(“bet”);
this.testLabel.node.roration = -oNode.rotation;
这个是我写的一个label节点根据spine动画抖动而抖动; 在update里面实现的!

“bet” 是spine动画的名称

findBone这个是哪里的api,没找到额

sp.Skeleton 里的

@property(sp.Skeleton)
test:sp.Skeleton = null;

this.test.findBone("");

这样并没有反应诶

let test = cc.find(“betNode”);
let s = test.getComponent(sp.Skeleton);
let t = s.findBone(“bet”);
t.scaleY = -1;

亲测有效!

我工作的电脑只有局域网 不能传文件没办法截图给你看, 但是这个findBone 亲测有效!

findBone() 描述的是通过名称查找bone 所以你的spine动画 bone名称和动画资源的名称可能不一样!

确实可以设置了,但是现在如果正在播放某一个动画的话,我对属性的设置又没用了。。。如果没动画执行,就是可以用的

能获取到Spine动画中某一骨骼在世界中的旋转角度么?:grin:

skeleton.setAnimation(0, ‘idle’,true);
let bone = skeleton.findBone(“xuanzhuan”)
skeleton.data.rotation = 90;

这样播放动画的时候就能旋转。大概是因为播放动画的时候要读取导出的数据。所以会还原你设置的

1赞