は最大60fpsとなっており、60fpsにおいては平均8ミリ秒のレイテンシが発生します。また、ローカルゲームにおいてはフレームレートが低いゲームほど、プレイヤーの入力から画面が更新されるまでに発生するレイテンシが増加。多くのゲームは60fpsよりも低いフレームレートで描画されているため、その分遅延も大きくなります。
オンラインゲームはフレームレートの問題だけでなく、クライアントとサーバー間で通信処理が発生するため、ローカルゲームよりもレイテンシはさらに大きくなります。ジョーンズ氏はオンラインゲームにおけるレイテンシ対策を理解するため、簡易なデモを作成しました。ジョーンズ氏が作成したデモはオンラインゲームにおけるクライアントとサーバーの状態を再現し、シミュレーションでレイテンシを確認できるというもので、GitHubでソースコードが公開されています。ジョーンズ氏のデモで実装されているのは「クライアントがサーバーにコマンドを送信し、サーバーがクライアントから得たデータを基に画面の描画データをクライアントに送信する」というシンプルなオンラインゲームのネットワークモデルです。例えば「キャラクターを前進させる」というアクションをサーバーに送信すると、クライアント側がゲーム画面に実際のキャラクターの動きを描画するまでにクライアントとサーバー間でデータを1往復させる必要があります。クライアントもサーバーも、tが0のときにゲームを開始します。プレイヤーが「前進」のコマンドを押したので、クライアントはサーバーに「mo
ジョーンズ氏によると、複数のオンラインゲームではプレイヤーからのコマンドを受信してそのまま描画結果を返すのではなく、プレイヤーが取った行動から、次にプレイヤーが取るであろう行動を予測した描画結果をクライアント側が画面に表示しているとのこと。例えば、「キャラクターを前進させる」という動作でのレイテンシを隠す設計は以下の通り。tが2のとき、クライアントはさらに一歩前進した動作を予測し画面に描画します。 クライアントは、サーバーから本来のオンライン上での描画データをtが3のときに受信。サーバーから受け取ったデータがクライアントのシミュレーションと一致するかどうかチェックします。なお、一致しなかった場合は、クライアントは描画をやり直す必要があります。
日本 最新ニュース, 日本 見出し
Similar News:他のニュース ソースから収集した、これに似たニュース記事を読むこともできます。