2

シューティング ゲームのサーバーはどのようにタイミングを処理できますか。

または、それらのほとんどで、プレーヤーが毎秒行うすべての詳細を確認し、両方のプレーヤーがクライアントでまったく同じ動きを見ますか? ゲームサーバーはどのようにしてこれらの動きをすべてのクライアント (プレーヤー) にまったく同時に送信することができますか?

4

2 に答える 2

4

彼らはそれらをまったく同時に見ることはありません。

サーバーはショットがヒットしたかどうかを判断し、クライアントに更新を送信します。次に、クライアントは弾丸、血などを描画します。

そこにはタイミング ループがありますが、すべてのイベントが同期している必要はありません。これが、プレイヤーが高レイテンシーの下で飛び回るのを見る理由です。

彼らの観点からは、クライアントはスムーズに実行されていますが、待ち時間が原因で、クライアントは十分な速さで更新されていません。

于 2010-08-22T21:48:53.607 に答える
1

ほとんどのパケットは、すべてが途切れ途切れに見えるほど大きな遅延で送信されます。クライアントが表示するものはすべて、パケットが同時に来ているように見せるために、遅延補正 (発射体、プレーヤーなどがフレーム間にある場所を予測する) を行います。

于 2010-08-22T21:52:20.063 に答える