xcode - 如何使用 b2PolygonShape 顶点创建静态体

标签 xcode cocos2d-iphone box2d box2d-iphone

我似乎无法在我的 Box2D Cocos2D 项目中创建带顶点的 b2PolygonShape。我没有收到任何错误,但屏幕上没有显示任何内容。

如何让具有 b2PolygonShape 顶点的静态物体工作?

我想将它与这样设置的列表一起使用:

b2Vec2 verts[] = {
        b2Vec2(-194.5f / PTM_RATIO, 83.0f / PTM_RATIO),
        b2Vec2(-118.5f / PTM_RATIO, 65.0f / PTM_RATIO),
        b2Vec2(-77.5f / PTM_RATIO, 2.0f / PTM_RATIO),
        b2Vec2(3.5f / PTM_RATIO, -59.0f / PTM_RATIO),
        b2Vec2(62.5f / PTM_RATIO, -61.0f / PTM_RATIO),
        b2Vec2(108.5f / PTM_RATIO, -63.0f / PTM_RATIO),
        b2Vec2(138.5f / PTM_RATIO, -41.0f / PTM_RATIO),
        b2Vec2(169.5f / PTM_RATIO, 11.0f / PTM_RATIO),
        b2Vec2(184.5f / PTM_RATIO, 49.0f / PTM_RATIO),
        b2Vec2(218.5f / PTM_RATIO, 51.0f / PTM_RATIO),
        b2Vec2(219.5f / PTM_RATIO, -89.0f / PTM_RATIO),
        b2Vec2(-174.5f / PTM_RATIO, -88.0f / PTM_RATIO)
};

最佳答案

下一步将指定要塑造的顶点

     b2PolygonShape shape;
        int num = 4;
        b2Vec2 vertices[] = {
                    b2Vec2(10.5f / PTM_RATIO, 10.6f / PTM_RATIO),
                    b2Vec2(11.8f / PTM_RATIO, 18.1f / PTM_RATIO),
                    b2Vec2(-11.9f / PTM_RATIO, 18.3f / PTM_RATIO),
                    b2Vec2(-10.5f / PTM_RATIO, 10.8f / PTM_RATIO)
                };
        shape.Set(vertices, num);

b2FixtureDef fixtureDef; fixtureDef.shape = &shape;

关于xcode - 如何使用 b2PolygonShape 顶点创建静态体,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4361420/

相关文章:

ios - cocos2d v3.0 中 CCLabelTTF 的构造函数

iphone - 没有 cocos2D 的 xcode iphone 粒子

java - 将多个 Sprite 作为一个旋转(围绕同一原点)

physics - 使用Box2D模拟 "Newton'万有引力定律

swift - Swift Xcode 中的 MSAL 集成 B2C AD 在点击授权后出现错误“无法获取 token ”

objective-c - 在 Interface Builder 中未选中 "Title Bar"的 NSPanel 不会出现

ios - 适合屏幕 iOS 上的所有对象

arrays - 如何在 iOS Swift 的 didselect 方法中重新排列单元格?

ios - Sprite 未从场景 iOS 中移除

c++ - 处理无法实例化自身的对象的最佳方法?