【问题标题】:Cocos2d Time based Animation and Frame based Animation confusion ?Cocos2d Time based Animation 和 Frame based Animation 混淆?
【发布时间】:2012-06-12 18:45:08
【问题描述】:

Cocos2d-android - 我有一个有 5 帧的动画,它们是近距离裁剪的图像。现在我希望 Sprite 做动画以及在 X 方向上移动。即我有一个正在奔跑的玩家被障碍物撞倒。

gameOverAnimation =CCSprite.sprite("gmovr")
gameOverAnimation.setAnchorPoint(0, 0);
gameOverAnimation.setPosition(340.0f, 200.0f);
addChild(gameOverAnimation,10);
CCIntervalAction action1 = CCAnimate.action(mEndAnimation, false); 
action1.setDuration(1.0f);
CCIntervalAction delay = CCDelayTime.action(0.68f);
CCMoveBy actionBy = CCMoveBy.action(1.0f, CGPoint.ccp(-340,0)); 
CCIntervalAction seq1 = CCSpawn.actions(action1,actionBy);
//CCSpawn spawn = CCSpawn.actions(action1, actionBy);
                CCSequence sequence1 = CCSequence.actions(seq1,CCCallFuncN.action(this,"gameOver"));
                gameOverAnimation.runAction(sequence1);

请解释一下基于帧的动画和基于时间的动画之间的正确区别。我想做基于时间的动画

【问题讨论】:

    标签: cocos2d-iphone


    【解决方案1】:

    在基于帧的动画下是什么意思? cocos2d引擎中几乎所有的动作都分为2组。即时和间歇动作。即时动作是连续动作。使用帧的 CCAnimate 动作是 CCActionInterval 的子类,因此它是“基于时间”的动作

    【讨论】:

    • Morion 我对 Cocos2d 很陌生。我是一名应用程序程序员,但刚刚考虑转向游戏,所以在学习阶段.. 在阅读动画时,我发现有两种动画类型。所以我想知道 cocos2d 动画是如何工作的。感谢您的详细解释,但我仍然对 CCInterval 和 CCMoveto 之间的区别感到困惑?如果我执行 CCInterval a = CCMoveto.actions ,我的意思是两者有什么区别?会和 CCMoveto a = CCMoveto.actions 一样吗??
    • CCMoveTo 只是 CCActionInterval 的子类。创建后你不需要知道,你使用什么动作。如果您将调用runAction 方法,那么操作声明的方式(我的意思是CCMoveTo、CCRotateBy 或其他)没有任何区别。对于编译器来说,知道参数只是 CCAction 类的某个子类就足够了,因为在运行时动作具有相同的接口。
    • 非常感谢 Morion...感谢您清除我的概念
    猜你喜欢
    • 1970-01-01
    • 2022-12-01
    • 2020-06-12
    • 1970-01-01
    • 2018-05-16
    • 1970-01-01
    • 1970-01-01
    • 2019-05-26
    • 2023-01-12
    相关资源
    最近更新 更多