Cocos2d iphone cocos2d项目中的两个时间步骤

Cocos2d iphone cocos2d项目中的两个时间步骤,cocos2d-iphone,box2d,Cocos2d Iphone,Box2d,我试图更新两个不同B2Body的位置,但它们需要采用两种不同的更新方法才能工作。然而,当我试图在第一个方法运行时调用第二个方法时,我的所有身体都会移动到不合适的位置。我几乎可以肯定这是因为有两个类似于\u world->Step的代码块(dt、velocityIterations、positionIterations)在我的项目中。有没有办法确保这两段代码是针对不同的B2Body而不是整个世界的?创建另一个b2world会干扰我在两个不同物体之间的碰撞检测吗?你不能步骤在world级别工作。原因

我试图更新两个不同B2Body的位置,但它们需要采用两种不同的更新方法才能工作。然而,当我试图在第一个方法运行时调用第二个方法时,我的所有身体都会移动到不合适的位置。我几乎可以肯定这是因为有两个类似于
\u world->Step的代码块(dt、velocityIterations、positionIterations)在我的项目中。有没有办法确保这两段代码是针对不同的B2Body而不是整个世界的?创建另一个b2world会干扰我在两个不同物体之间的碰撞检测吗?

你不能<代码>步骤
world
级别工作。原因是你身体的运动可能会影响其他身体,这是全世界的责任


另外,当
步骤
正在运行时,调用
步骤
看起来也很奇怪。这毫无意义

为什么不在主更新周期中调用
\u world->Step
?谢谢!这实际上是因为我施加了重力,所以在阶跃函数(第二个?)中,所有的物体都会慢慢向下移动。您仍然提供了帮助,因为如果我移动其中一个step函数,我可以将其应用于所有B2Body。@eeveeayen:您可以将body设置为非活动状态,它将在模拟中被忽略。(
body->SetActive(false
))