box2d

    0热度

    1回答

    我想用矢量创建正弦波(因为我使用的是box2d)。 到目前为止,我有(在void draw()) Vec2 mov2 = new Vec2(sin(angle)*scalar,0); for (int j = 0; j <= 10; j++) { bridge.particles.get(j).body.setLinearVelocity(mov2); } 其中bridge是p

    0热度

    2回答

    我正在写一个精灵,以恒速运动的身体。因此,它是这样的时间步长: const v = body.getLinearVelocity(); v.normalize(); body.setLinearVelocity(v * speed); 然后,我要听的mouseClicked事件和精灵将相应地移动到新的方向。 这是我在的mouseClicked事件处理程序正在做的: const point

    0热度

    1回答

    我在box2d世界中有一系列物体。这些机构被链接在一起。我想在按下鼠标时沿着身体创建一个正弦波。我只希望这个波发生一次,它应该以相同的幅度沿着身体的长度继续,直到它结束,然后停止,直到再次按下鼠标。 目前,我有这样的: float angle = 0.0; float scalar = 1.2; float speed = 0.01; void mousePressed() { f

    0热度

    1回答

    我有本地服务器运行在box2d在零重力nodejs。和客户端使用cocos2d-x。当我从客户端发出一些移动数据时,服务器会获取这些移动数据并将其应用到对象。问题是关于碰撞。当强制应用于动态对象(玩家)时,对象在零重力世界与另一个名为B(球)的动态对象发生碰撞。 B对象在碰撞后不会漂浮。只需少量单位移动并突然停止。 (我试过设置线性衰减到0,它仍然突然停止。) 服务器端代码: World.js v

    0热度

    1回答

    我刚刚开始使用box2d,我试图让一个火箭(现在是矩形)飞行,它只是在游戏开始时垂直站立,我想从矩形的底部,因为这是发动机的位置,也是矩形面对的方向。 我试着这样做 body.applyLinearImpulse(getUserData().getBoosterLinearImpulse(), new Vector2(body.getWorldCenter().x, body.getWorldCe

    0热度

    1回答

    我想绘制一个身体,这是一个盒子的纹理。 如何将身体的坐标转换为屏幕坐标? 我知道另一种方式是与camera.unproject(pos),这是类似的吗? 我看到很多使用常量的人,例如WORLD_TO_SCREEN = 32,但我目前在我的游戏中没有这样的常量。这是一个问题,我现在怎么实现?因为使用这些因素的人似乎可以轻松地将世界转换为屏幕位置。我现在有一个摄像头和一个ExtendViewport

    0热度

    1回答

    我想弄清楚如何正确使用body.applytorque(float torque, boolean wake)方法在一个质心的身体,以加速它的角速度。我想应用角度加速度,以每平方秒的度数。 根据libGDX文档,torque参数使用牛顿米。要设置它,我将使用公式:对身体 = I α where :torque[N-m], I:mass moment of inertia, α:accelerat

    0热度

    1回答

    我想在屏幕的角落创建用于控制游戏的按钮。 它用于创建皮肤,将该皮肤添加到new ImageButton(skin),并将该按钮的大小和位置设置为所需的值。我现在使用box2d,如果我现在将按钮的大小设置为(1, 1)高度是正确的,但宽度总是大约2/3的屏幕,无论我改变它。 我尝试使用一个表,这样做: table = new Table(); table.setFillParent(tru

    0热度

    1回答

    我正在使用Box2D开发一个使用LibGDX的游戏。我是新手,所以我一直关注Brent Aureli的教程,他在其中创建了一个实现ContactListener的class,以检测所有碰撞并根据联系进行切换。 我认为这有点过分,因为我不想检测所有的碰撞,但只有少数人在特定的机构。 是否有一种方法只能在特定的实体中实现ContactListener?如果没有,是否有更好的方法来更有效地解决冲突?

    0热度

    2回答

    我有一个问题涉及基于对角线计算速度x和y。一个三角形。检查下图 在这种情况下,我知道每一个角落的所有的角度,我知道它始终是600 我已经开始寻找和整个正弦定理来了,我认为我应该使用这个,但我无法弄清楚如何在Java中使用它。 任何帮助,非常感谢。 这是我得到了什么至今 Vector2 pos = mBall.getPosition(); double angleA = Math.ata