0

大家好,我正在使用 box 2d 框架在 cocoas2d 中开发应用程序,但不幸的是

我无法将灰色球限制在此处显示的图像的半屏幕区域中我希望该球不要进入屏幕的对面部分

我已经使用 b2Mousejoint 来在屏幕上移动球

b2PrismaticJointDef 限制任何特定轴但
我想限制屏幕的特定矩形区域 我的麻烦图片

4

1 回答 1

0

您可以创建自定义距离关节,这将限制球的全局轴。但是,如果您从不编写自己的物理引擎,那就很难了。

有两种更简单的方法可以实现您想要的。

  1. 在球必须停留的区域周围创建 4 个静态“边界”框。然后将球和盒子放在一个碰撞组中。

在此处输入图像描述

但是,“边框”框的响应不会是即时的。因此,高速球有时会“沉入”盒子中,然后被弹出。

  1. 当球越过所需区域的边界时,您可以在代码中手动更正位置并重置球的速度。但这可能会导致物理模拟不稳定。
于 2011-11-11T07:36:30.563 回答