Cocos2d:禁用CCSprite的旋转显示

时间:2013-11-07 06:55:47

标签: ios cocos2d-iphone chipmunk

我正在创建一个这样的精灵:

CatSprite *aCat = [CatSprite spriteWithFile:@"Icon-Small.png"];

// add sprite to CCLayer
[self addChild:aCat];
// and then define the body and shape
cpBody *body = cpBodyNew(10.0f, cpMomentForPoly(1000.0f, num, verts, CGPointZero));

body->p = ccp(x, y);
cpSpaceAddBody(space, body);
cpShape* shape = cpPolyShapeNew(body, num, verts, CGPointZero);
shape->e = 0.5f; shape->u = 1.0f;
shape->data = aCat;
cpSpaceAddShape(space, shape);

我在花栗鼠空间中对身体应用物理和约束。我想要的是禁用身体旋转的显示,换句话说,当身体旋转我希望精灵保持0度。有什么想法吗?

谢谢

2 个答案:

答案 0 :(得分:0)

您还可以完全禁用身体旋转,将惯性设置为INFINITY,例如cpBodyNew(10.0f, INFINITY);

答案 1 :(得分:0)

所以你不可避免地会将身体的旋转复制到精灵。除非您使用Cocos2D v3的发布日前alpha预览版,否则CCSprites和cpBodies实际上不会一起工作,除非您编写将sprite与主体同步的代码。只是不要复制该精灵的旋转。