如何在cocos2d-X3.3中实现物体的物理连接?

如何在cocos2d-X3.3中实现物体的物理连接?,cocos2d-x,box2d,cocos2d-x-3.0,chipmunk,Cocos2d X,Box2d,Cocos2d X 3.0,Chipmunk,如何在cocos2d-X3.3中将这两个(汽车和车轮)连接为一个物理实体? 如何将这个联合体加入物理世界 Sprite *car=Sprite::create("abc.png"); car->setPosition(100,400); car->setScale(1.5, 1.5); this->addChild(car); PhysicsBody *car_body=PhysicsBody::create(); car->setPhysicsBody(car_body

如何在cocos2d-X3.3中将这两个(汽车和车轮)连接为一个物理实体? 如何将这个联合体加入物理世界

Sprite *car=Sprite::create("abc.png");
car->setPosition(100,400);
car->setScale(1.5, 1.5);
this->addChild(car);
PhysicsBody *car_body=PhysicsBody::create();
car->setPhysicsBody(car_body);
car_body->setGravityEnable(false);

Sprite *wheel=Sprite::create("abc.png");
wheel->setPosition(40,350);
this->addChild(wheel);

PhysicsBody *wheel_bd=PhysicsBody::create(); 
wheel_bd=PhysicsBody::createCircle(69.0/64.0);
wheel->setPhysicsBody(wheel_bd);
wheel_bd->setGravityEnable(false);
PhysicsJoint *co =PhysicsJointGroove::construct(wheel->getPhysicsBody(),
car->getPhysicsBody(),Vec2(80,250),Vec2(160,250),Vec2(1.0,1.0));
scene->getPhysicsWorld()->addJoint(co); //this line creating error into my code.

我怀疑这个错误是因为你的车身没有任何形状,试着给你的车身添加一个形状,这样做 编辑:-

在上面的代码中,你的汽车物理体将有一个精灵的边界框 这里也有一点浪费:-

         PhysicsBody *wheel_bd = PhysicsBody::create(); 
         wheel_bd=PhysicsBody::createCircle(69.0/64.0);
你应该这样做:-

         PhysicsBody *wheel_bd = PhysicsBody::create();
         wheel_bd ->addShape(PhysicsShapeCircle::create(69.0/64.0));

因为世界是空的,你们必须通过SCENETHAK把世界传递到这个层,你们兄弟…我是物理编程新手。我怎样才能把世界传递到这个层?上面的物体连接正确吗?是的……你说的对……但我有一个问题,那就是如何将图像分配给车轮和汽车??就像你在上面的代码中所做的那样,它会起作用,我给你的是使用集成物理创建物理体的正确方法,你代码的其余部分对我来说很好……我如何连接这三个物理体(wheel1、wheel2和Car_body)在cocos2d-xV3.3rc0中?我想通过扩展CCSprite创建一个自定义的Car类,在该类中,我将添加三个实体及其各自的Sprite(Car_body、Car_hood、Car_cabinet),并相应地定位它们,这将给我一个很好的汽车形状,我也可以通过添加更多的组件来修改我的汽车,我还将运行一个更新方法,该方法将用汽车主体更新所有汽车部件(引擎盖、橱柜等)。
         PhysicsBody *wheel_bd = PhysicsBody::create();
         wheel_bd ->addShape(PhysicsShapeCircle::create(69.0/64.0));