0

在 cocos2dx 中使用脊椎动画时遇到问题。这是代码

 skeletonNode = new CCSkeletonAnimation("Snake.json", "Snake.atlas");
   skeletonNode->setAnimation("Walk", true);
   skeletonNode->setScale(1.0);
   skeletonNode->setSlotsToSetupPose();
    CCSize windowSize = CCDirector::sharedDirector()->getWinSize();
    skeletonNode->setPosition(ccp(windowSize.width / 2, windowSize.height/2));
    addChild(skeletonNode);
    skeletonNode->release();

现在,当我使用添加动画方法进行更改时,一秒钟,它在更改动画时闪烁。在添加新动画之前我也尝试过清除动画,但同样的问题。

这就是我改变动画的方式

skeletonNode->setSlotsToSetupPose();
skeletonNode->addAnimation("Sleep", true);    

我不明白为什么它会闪烁。请帮我。

4

1 回答 1

1

当您将新动画添加到当前帧时,它无法同步。最后一帧。
所以你应该混合动画而不是添加一个新的动画,即

skeletonAnimation->setMix("animation_1", "animation_2", duration);    
于 2015-10-12T07:19:08.073 回答