私は初心者のゲーム開発者で、マルチプレイヤーゲームについて研究しています。私は常にある程度の待ち時間があることを観察しました、プレイヤーは常に過去のアクションから更新を取得します。しかし、レイテンシを処理する推測航法のようなテクニックがあります。動きを予測してスムーズに動きます。しかし、ジャンプ、歩行停止などのアクションを同期させるにはどうすればよいでしょうか。
クライアントAが動いていて、100m /秒の速度で10.2時間に100mにいて、この情報を送信したとします。クライアントBはこの情報を少し後で受け取り、10.4にします。クライアントBでは、予測を使用して、クライアントAを120mに配置できます。しかし、クライアントが10.3で110mでジャンプしたとしたらどうでしょう。それを予測することはできません。予測を使用しているため、クライアントAの過去のジャンプを示すことはできません。
ジャンプアクションをまったく送信しないことで、この問題に対処できます。しかし、私のゲームにプレーヤーが転んで死ぬ可能性があるいくつかの空白がある場合はどうでしょうか。したがって、ジャンプアクションを同期しない場合、他のプレーヤーは1人のプレーヤーが走っていることを観察し、その後彼は無効になり、画面に表示されて視覚的なエンゲージメントを破壊します。
ジャンプは単なる例であり、予測が機能しない多くのシナリオがあるかもしれません。だから、どうやってそれらに対処するのですか?そのような例の1つは、Awesomenautsのようなマルチプレイヤーオンラインバトルアリーナゲームです。