¿Es posible en Cocos2d crear una animación de movimiento que iría en una ruta específica?Animación de movimiento Cocos2d en una ruta
Por ejemplo, ¿cómo debo hacer si necesito que un objeto se mueva en un arco o círculo completo?
¡Recuerdos!
¿Es posible en Cocos2d crear una animación de movimiento que iría en una ruta específica?Animación de movimiento Cocos2d en una ruta
Por ejemplo, ¿cómo debo hacer si necesito que un objeto se mueva en un arco o círculo completo?
¡Recuerdos!
Claro que se puede hacer esto usando:
ccBezierConfig bezier;
bezier.controlPoint_1 = ccp(320,0); // control point 1
bezier.controlPoint_2 =ccp(0,0); // control point 2
bezier.endPosition = ccp(endPoint.x,endPoint.y) ;
id bezierForward = [CCBezierTo actionWithDuration:3 bezier:bezier];
[ball runAction:bezierForward];
puede utilizar ccBezier para mover cualquier nodo de curvas:
Ahora Animación parte:
[[CCSpriteFrameCache sharedSpriteFrameCache] addSpriteFramesWithFile:@"eggAnimation.plist"];
spriteSheet = [CCSpriteBatchNode batchNodeWithFile:@"eggAnimation.png"];
[gameBackgroundLayer addChild:spriteSheet];
eggAnimFrames = [NSMutableArray array];
for (int i = 1; i <= 10; i++)
{
[eggAnimFrames addObject:[[CCSpriteFrameCache sharedSpriteFrameCache] spriteFrameByName:[NSString stringWithFormat:@"%d.png", i]]];
}
rotateAnim = [CCAnimation animationWithFrames:eggAnimFrames delay:0.05f];
ball = [CCSprite spriteWithSpriteFrameName:@"1.png"];
ball.position=ccp(160,80);
rotateAction =[CCRepeatForever actionWithAction:[CCAnimate actionWithAnimation:rotateAnim restoreOriginalFrame:YES]];
[spriteSheet addChild:ball];
enlaces de referencia: http://www.raywenderlich.com/1271/how-to-use-animations-and-sprite-sheets-in-cocos2d