【问题标题】:How can I implement "time compression" in box2d physics engine?如何在 box2d 物理引擎中实现“时间压缩”?
【发布时间】:2018-01-31 00:02:39
【问题描述】:

我正在使用物理学在 Andengine 中实现游戏。物理看起来很真实,但游戏感觉缓慢而无聊。如果我想实现一些时间压缩,比如快进或慢动作,有什么方法可以改变物理引擎的时序?

我想这样做的唯一方法是覆盖 PhysicsWorld 的 onUpdate 方法并将经过的秒数乘以一个因子,但我担心会破坏引擎的一些内部计算。

@Override
public void onUpdate(final float pSecondsElapsed) {
    super.onUpdate(pSecondsElapsed * mTimeCompression);
}

【问题讨论】:

    标签: time box2d andengine physics-engine


    【解决方案1】:

    (这可能应该是一个评论,但我还没有足够的代表。)

    我认为您对破坏内部计算的怀疑是正确的 - 请参阅:https://gafferongames.com/post/fix_your_timestep/

    问了一个类似的问题,解决方案涉及多次调用step(在您的情况下似乎是onUpdate),而不是更改时间步本身:Is it possible to fast forward simulation in Box2D

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-10-07
      • 2015-07-01
      • 1970-01-01
      • 2023-03-18
      • 2015-02-27
      • 1970-01-01
      相关资源
      最近更新 更多