WEB ブラウザーを用いたコンカレント対戦型ゲームの実装と評価 環境情報学部 3 年: 高橋俊成 (seibe) 所属: Arch 親: sora 1 はじめに ル。スマホ、タブレット。NUI (五感と親和性の高 2014 年 10 月、ついに W3C によって HTML5 が い UI)の普及で、操作体験に劇的な変化。WEB 標 勧告された。WEB 標準は大きく変貌を遂げ、WEB 準技術も例外でなく、HTML5 の策定で、WEB ア アプリケーションを構築するフォーマットとなり、 プリを構築するための多様な入力や通信方式を備 多様な入力や通信方式を備えた。既にあらゆる えるフォーマットへと変貌した。 WEB サービスは HTML5 に対応し、またモバイル アプリケーションも HTML5 によって構築された ものが数多く存在している。しかしながら、未だに 殆どのオンラインゲーム(特にアクションやスポ 4 既存研究 コンカレント対戦型ゲームの構築においては、 しばしば次の 3 つが問題とされる。 ーツ等、コンカレント対戦型のゲーム)は WEB ブ * 応答性 ラウザーではなく、専用クライアントソフトウェ * 整合性 アを利用している。これは、応答性や整合性、公平 * 公平性 性など、オンラインゲーム特有の厳しい実装要件 応答性とは、プレイヤーの操作がゲーム進行に反 が理由と考えられる。筆者は、HTML5 やその周辺 映される早さをさす。応答性が高いほど、プレイヤ 技術によって、専用クライアントやプラグインに ーの操作がゲームに即座に反映される。人間は、自 頼らずとも高度なオンラインゲームが構築可能な 分で意図した動作であれば 10~20 ミリ秒弱のレ 環境が整ったと考える。そこで本研究では、現在の ベルで、その他の動作でも 100 ミリ秒のレベルで WEB 標準技術のみで、コンカレント対戦に耐えう 動きを見分けることができるとされる [1]。このた る応答性、整合性、公平性が実現可能であるかどう め、コンカレント対戦のような高い応答性が求め かを確認すべく、実際にゲームを実装する。 られるゲームでは、プレイヤー自身の操作に対し ては 60fps(16 ミリ秒以下)の応答性が、その他の要 2 定義 素については 10fps(100 ミリ秒以下)の応答性が求 コンカレント対戦を、 「各プレイヤーが同時並行 められる。応答性を下げる原因として、描画遅延や 的(コンカレント)に操作する」対戦方式と定義す 入力遅延、クライアント間の通信遅延が挙げられ る。一般的にリアルタイム制と呼ばれる対戦方式 る。 と同義だが、リアルタイム=実時間だと語弊が生 応答性を上げる工夫として、Ajax 通信や P2P 通 じるので、この言い回しとした。ターン制のような 信、事前ダウンロード、キャッシュ、座標情報の相 「各プレイヤーに一定の順序でターンが回り、タ 補予測、対戦相手の地理的マッチングなどが存在 ーンプレイヤーが操作する」対戦方式と対になる。 する。 整合性とは、各ゲームクライアントにおいて、そ 3 研究背景 HTML5 の策定。マウス、物理キー、タッチパネ のデータが間違いなく同期されていることをさす。 整合性が低いと、ゲームクライアントによってゲ ーム進行や表示に差異が生じ、ゲームの公平性を 期する。 崩し、最悪の場合ゲームの進行そのものが不可能 ゲームの進行管理はクライアント側で行う。 になる。整合性を下げる原因として、クライアント サーバーは通信の仲介だけで、通信内容のチェッ 間の通信遅延が挙げられる。整合性を上げる工夫 クは行わない。 として、座標情報の相補予測などが存在する。 公平性とは、各プレイヤー間での認知、判断、操 作の平等さをさす。応答性や整合性が低いと、一方 6 実装と評価 実装した Web アプリケーションでの対戦と、リ のプレイヤーの認知、判断材料が不利になったり、 アルなトランプカードを用いて対戦した場合とで 操作が思い通りに反映されなかったり等の現象を プレイ内容を比較し、コンカレントな対戦が成立 発生させる。 しているかどうかを検証する。評価に用いる測定 また、プレイヤー同士で異なる操作がほぼ同時に 項目として、以下を検討している。 発生した場合、データの不整合を防ぐためにどち * 通信遅延 らかの操作結果を破棄せざるを得なくなるが、審 * 描画遅延 判処理によっては公平性が損なわれる。 * 一定時間当たりのアクション数 公平性を下げる原因として、描画遅延や入力遅延、 * プレイ時間全体に占めるコンカレントな操作 クライアント間の通信遅延、ゲームサーバーの審 の割合 判処理のチューニング不足が挙げられる。 など。 公平性を上げる工夫として、調停役の設置、方式選 択の原則(プレイヤーの満足感が多くなる方向で 選択をする)などが存在する。 これらは全て重要な指標ではあるが、そもそも 共有する情報の取り扱い(表示や操作)によってプ 7 今後の計画 クライアントのバグ修正、ゲームサーバーの実 装、RPC の改善に取り組む。コンカレント対戦を 実現する共有情報の抽出と反映に全力を注ぐ。 レイヤーの体験は大きく変化する。実際にコンカ レント対戦型ゲームを実装し、検証を繰り返すこ 8 参考文献 とで、成立条件をリストアップする。 [1] 中嶋謙互, “オンラインゲームを支える技術: 壮大なプレイ空間の舞台裏,” 技術評論社, 2011. 5 設計 [2] 河野義広, 宮田昌廣, 塙大, 米倉達広, “Dead スピードは、場のカードと隣り合ったカード Reckoning を用いたリアルタイム Web ゲームの 次々と出していき、相手よりも早く自分の手札を 設 計 と 評 価 ,” 電 子 情 報 通 信 学 会 論 文 誌 D, なくすことを目的とする 2 人対戦ゲーム。瞬間的 vol.J91-D, no.12, pp.2833-2843, 2008. な判断力と体力を必要とするコンカレントな対戦 [3] 笹本綾子, 米倉達広, “遅延を予測したリアル ルールでありながら、トランプカードというシン タイムネットワーク対戦ゲームの試作,” 2001 プルな仕組みで遊べる(≒実装が比較的容易)とい 年電子情報通信学会総合大会講演論文集 基礎・ う点を評価した。性能と実装難度のバランスから、 境界, 電子情報通信学会, 2001. C/S 型(リフレクト型)を採用する。Web アプリケ ーションとして実装。共有情報を WebSocket で同
© Copyright 2024 ExpyDoc