我有一批精灵被添加到场景中。这些精灵的位置偏离了批处理的位置,因此我可以围绕批处理节点的点旋转它们。
当我将 B2Body 附加到这些精灵中的任何一个时,就会出现问题,它们在屏幕上的位置会发生变化。
balloon1 = [CCSprite spriteWithSpriteFrameName:@"1.png"];
balloon1.position = ccp(30,30);
balloon1.tag = 10;
//balloon1.anchorPoint = ccp(1.1,0.7);
[spriteNode addChild:balloon1];
b2BodyDef balloonBodyDef;
balloonBodyDef.type = b2_dynamicBody;
balloonBodyDef.position.Set((160 + balloon1.position.y)/PTM_RATIO, (240 - balloon1.position.x)/PTM_RATIO);
balloonBodyDef.userData = balloon1;
b2Body *balloonBody = world->CreateBody(&balloonBodyDef);
b2PolygonShape balloon;
balloon.SetAsBox((balloon1.contentSize.width/PTM_RATIO/2),
(balloon1.contentSize.height/PTM_RATIO/2));
// Create shape definition and add to body
b2FixtureDef laserGunShapeDef;
laserGunShapeDef.shape = &laser;
//laserGunShapeDef.density = 0.0f;
//laserGunShapeDef.friction = 10.0f;
//laserGunShapeDef.restitution = 0.0f;
b2Fixture *balloonFixture = balloonBody->CreateFixture(&laserGunShapeDef);
如果我将气球添加为文件中的精灵,这可以正常工作,但是当它按照上述方式完成时,气球会移出屏幕。
任何想法,将不胜感激。