我是BOX2D的初学者,我发现我不知道如何从特定的sprite创建用户自定义的主体。 所有box2d体形都是与Polygon相关的形状:(
下面我只想使用特定精灵的特定形状,感谢您的帮助。
PhysicsSprite *rightSprite = [PhysicsSprite spriteWithFile:@"mySpecificShape.png"];
[self addChild:rightSprite];
b2BodyDef bodyDef;
bodyDef.type = b2_staticBody;
bodyDef.position = b2Vec2(400/PTM_RATIO, 512/PTM_RATIO);
b2Body * bodyA = world->CreateBody(&bodyDef);
bodyA->SetUserData(rightSprite);
[rightSprite setPhysicsBody:bodyA];
答案 0 :(得分:0)
没有简单的方法可以做到这一点。你必须用简单的形状建立你的身体:多边形,圆形,边缘。
答案 1 :(得分:0)
您可以将此作为外部工具,您可以阅读的工具很少:
Vertex Helper和Physics Editor。
我推荐使用物理编辑器 在这个工具中你加载你的图像,它将形状导出为XML,而不是你可以在你正在使用的引擎中加载它,它将碰撞正确的原因
您可以阅读更多内容并在此处下载: