2

我已经在我的球上应用了重力,它是动态的圆形体。当它到达屏幕底部时,它会离开屏幕。我想为我的物理世界划出界限。

我分别创建了 4 条线和 4 条线体。但是当我尝试注册物理连接器时,它适用于我的箱体和精灵,但不适用于我的线体:(

代码:

Line line_top = new Line(0, 0, CAMERA_WIDTH, 0, this.getVertexBufferObjectManager());
    Line line_left = new Line(0, 0, 0, CAMERA_HEIGHT, this.getVertexBufferObjectManager());
    Line line_right = new Line(CAMERA_WIDTH, 0, CAMERA_WIDTH, CAMERA_HEIGHT, this.getVertexBufferObjectManager());
    Line line_bottom = new Line(0, CAMERA_HEIGHT, CAMERA_WIDTH, CAMERA_HEIGHT, this.getVertexBufferObjectManager());
    line_top.setColor(1, 1, 1); // RGB
    line_left.setColor(1, 1, 1);
    line_right.setColor(1, 1, 1);
    line_bottom.setColor(1, 1, 1);

    Body wall_top = PhysicsFactory.createLineBody(mPhysicsWorld, line_top, FIXTURE_DEF);
    Body wall_left = PhysicsFactory.createLineBody(mPhysicsWorld, line_left, FIXTURE_DEF);
    Body wall_right = PhysicsFactory.createLineBody(mPhysicsWorld, line_right, FIXTURE_DEF);
    Body wall_bottom = PhysicsFactory.createLineBody(mPhysicsWorld, line_bottom, FIXTURE_DEF);

这对我来说很好

mPhysicsWorld.registerPhysicsConnector(new PhysicsConnector(playButtonSprite, BoxBody2, true, true));

但是当我把我的台词作为参数传递时

mPhysicsWorld.registerPhysicsConnector(new PhysicsConnector(line_top, BoxBody, true, true));

它显示了这个错误

The constructor PhysicsConnector(Line, Body, boolean, boolean) is undefined
4

1 回答 1

2

我的游戏中有类似的东西(屏幕边界作为物理对象)。显然,我也遇到了这个问题,PhysicsConnector不接受Line- 所以我Rectangle改用了。您可以创建一个宽度为 1 的矩形,例如,等效的矩形line_top将是:

Rectangle rect_top = new Rectangle(0, 0, CAMERA_WIDTH, 1);
于 2012-12-08T00:19:47.190 回答