3

過去に何かが起こったことを Bullet に伝えて、この情報を取得し、内部補間を調整して現在の変化を示すことはできますか? 1 ~ 5 秒以上前に戻る必要はありません。5 秒というのは非常にまれなケースです。より現実的には、1.5 ~ 2.5 秒の間でほとんどの変更が発生します。

過去の特定の時間におけるオブジェクトの位置、回転、および速度を照会する機能も必要ですが、これは簡単に実現できます。

このすべての背後にある理由は、特にネットワーク化された環境で、2 つの物理シミュレーションの同期を容易にするためです。

常にリアルタイムでシミュレーションを実行しているサーバーは、位置、回転、速度の更新を定期的にクライアント シミュレーションに送信します。これらの更新は、ネットワーク遅延のためにクライアント シミュレーションの観点から「過去に」クライアントに到達するため、過去に更新されたオブジェクトの値を照会して、それらが異なるかどうかを確認する必要があり、それらが異なる場合は変更する必要があります。過去のこれらの値も必要です。次のシミュレーション ステップでは、弾丸はこれらの過去の変更を考慮に入れ、それに応じてオブジェクトを更新します。

この能力は弾丸に存在しますか、それとも何らかの方法でエミュレートする必要がありますか? エミュレーションが必要な場合、誰かがこの「巻き戻しと再生」機能を開始するための正しい方向に私を向けることができますか?

「巻き戻しと再生」に慣れていない場合、この記事では、独自の物理ライブラリを作成しようとしている人のために、実装の背後にある理論について詳しく説明します。http://gafferongames.com/game-physics/n ... d-physics/

4

0 に答える 0