(57)【特許請求の範囲】
【請求項１】
タッチスクリーンを備えたゲーム装置のコンピューティングデバイスに実行され、前記ゲーム装置に所定のゲームを実現するプログラムであって、
前記ゲーム装置を、
ユーザによって操作されるプレイヤキャラクタを含む、仮想３次元空間を表現するゲーム画像を生成する画像生成手段、
生成された前記ゲーム画像を前記タッチスクリーンに表示するための制御を行う表示制御手段、
前記タッチスクリーンに対する第１のタッチ操作に基づいて、前記プレイヤキャラクタが移動すべき目標位置を算出し、当該プレイヤキャラクタが当該目標位置に向かって移動するように制御する移動制御手段、
前記プレイヤキャラクタが前記目標位置に向かって移動している場合に、前記第１のタッチ操作後に入力される前記タッチスクリーンに対する第２のタッチ操作に基づいて、ゲーム内オブジェクトに対する前記プレイヤキャラクタの挙動を制御する挙動制御手段、
として機能させるプログラム。
【請求項２】
前記挙動制御手段は、前記第２のタッチ操作のタイミングにおける前記ゲーム内オブジェクトの位置情報、速度情報、前記プレイヤキャラクタの位置情報、前記挙動を行うまでの時間の少なくともいずれかに基づいて、前記挙動を制御する、請求項１記載のプログラム。
【請求項３】
前記挙動制御手段は、前記第２のタッチ操作のタイミングにおける前記ゲーム内オブジェクトの位置情報、速度情報、前記プレイヤキャラクタの位置情報、前記挙動を行うまでの時間の少なくともいずれかに基づいて前記挙動の候補を抽出し、抽出した前記候補から前記第２のタッチ操作に基づいて前記挙動を決定する、請求項２記載のプログラム。
【請求項４】
前記プログラムは、前記ゲーム装置を、
前記第２のタッチ操作及び前記挙動に基づいて、前記ゲーム内オブジェクトの軌道を計算する手段としてさらに機能させる、請求項１乃至３のいずれか１項に記載のプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、コンピュータゲーム装置、コンピュータゲーム装置を制御するための制御方法及びプログラム、並びにプログラムを記録した記録媒体に関し、特に、タッチスクリーン機能を備えたゲーム装置におけるユーザインターフェースを制御するための技術に関する。
【背景技術】
【０００２】
タッチスクリーン（タッチパネル）機能を有するコンピュータゲーム装置やインテリジェントデバイス（以下、単に「ゲーム装置」という。）が知られている。このようなゲーム装置は、タッチスクリーン上に表示されたゲーム画面（ゲーム画像）に対してユーザ（プレイヤ）がタッチ操作することにより、直接的かつインタラクティブに操作をすることを可能にし、これにより、従来の操作ボタンのような入力デバイスとは違った直感的なユーザインターフェース環境をユーザに提供する。
【０００３】
例えば、タッチスクリーン上に表示された、仮想３次元空間を表現するゲーム画像内の特定のオブジェクトをユーザが指で触れることにより、ゲーム装置は、当該オブジェクトの表示位置と当該触れた位置とから、当該オブジェクトが選択されたと判断することができる。また、ユーザが、当該オブジェクトについて、触れた指をタッチスクリーンから離すことなく所定の速度で（通常はゆっくり）移動させることにより、ゲーム装置は、ドラッグ操作であると判断し、例えば、指の軌跡に沿って移動するように、当該オブジェクトの表示を制御することができる。さらに、ゲーム装置は、タッチスクリーン上で指で弾くような動作又は指で素早く拭うような動作（即ち、触れた指を所定の速度以上でそのまま離さずに移動させた後、離す動作）に応じて、ゲーム画面そのもの又は所定のオブジェクトの表示を制御し得る。このような指で弾くような動作又は指で拭うような動作は、一般に、フリック操作乃至はスワイプ操作と呼ばれる。
【０００４】
下記特許文献１は、ユーザが、タッチパネル上で、ゲーム画面内のある範囲を囲む操作によって囲まれた当該範囲内にいる全てのキャラクタを選択し、さらに、当該ゲーム画面のある位置を指し示すことで、当該位置を当該選択した全てのキャラクタの移動先として設定する技術を開示する。
【０００５】
また、下記特許文献２は、第１表示画面に連携した、タッチパネル型の第２表示画面に表示されたプレイヤキャラクタに対してタッチ操作により入力が与えられると、当該入力に応じて第１表示画面に表示されるゲーム画像を変化させる技術を開示する。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００８-１４８８６０号公報
【特許文献２】特開２００５-１９２９８６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
上記のようなタッチスクリーン機能は、ユーザに対してより直感的かつインタラクティブな操作を受け付けることができる点で、操作性が高く、ゲーム装置のユーザインターフェースとして広く採用されている。
【０００８】
しかしながら、ゲームの進行状況に基づくゲーム画面の構成によっては、ユーザが本来タッチ操作すべき位置がゲーム画面の外側に位置してしまうことがある。例えば、仮想カメラから見た仮想３次元空間におけるプレイヤキャラクタをユーザがタッチ操作によって移動目標位置を指定して手前方向（即ち、ゲーム画面での下方向）に移動させようとする場合に、当該プレイヤキャラクタがゲーム画面の下部近傍に位置するように表示されていると、移動目標位置がゲーム画面の外側に位置してしまうことになり、ユーザは、タッチスクリーンを介して意図した操作をゲーム装置に与えることができない。
【０００９】
例えば、図９は、進行中のゲームのあるプレイシーンのゲーム画面である。同図では、プレイヤキャラクタのコートの右側の領域Ａはゲーム画面内に表示されておらず、このままでは、ユーザは、かかる領域内の地点を直接的に指定することができない。
【００１０】
このような場合、ユーザによる何らかの追加の操作に従って仮想カメラを移動させることで、仮想３次元空間を表現するゲーム画面を再構成し、プレイヤキャラクタの移動方向に十分なタッチ操作領域を確保するといった処理が必要になる。しかしながら、特に、スポーツゲームやカーレーシングゲーム、シューティングゲーム、ファイティングゲームのようにリアルタイム性を要求するゲームにおいて、ユーザにゲーム画面の構成を変更する操作を要求させていたのでは、ユーザはゲーム本来の操作に集中することができず、ゲームの興趣性を低下させることになる。
【００１１】
そこで、本発明は、タッチスクリーン上に表示されるゲーム画面の構成にとらわれず、常に、直感的な操作性を実現するゲームを提供することを目的とする。即ち、本発明の目的は、プレイヤキャラクタの移動に際して、移動目標位置がゲーム画面の外にある場合であっても、直感的なタッチ操作により、当該移動目標位置を設定することができるゲームを提供することである。
【００１２】
また、ユーザに連続的な操作を要求することで、プレイヤキャラクタに一連の動作を行わせ、ゲームの興趣性を向上させることがある。例えば、テニスゲームでは、仮想３次元空間内のコート上でプレイヤキャラクタがボールオブジェクトを追いかけて移動し、ショットを打つという一連の動作がゲーム画像として表示される。
【００１３】
そこで、本発明は、さらに、直感的なタッチ操作の組み合わせにより、プレイヤキャラクタに一連の動作を行わせることができるゲームを提供することを目的とする。
【課題を解決するための手段】
【００１４】
上記課題を解決する本発明は、以下の技術的特徴を含んで構成される。
【００１５】
即ち、ある観点に従う本発明は、タッチスクリーンを備えたゲーム装置のコンピューティングデバイスに実行され、前記ゲーム装置に所定のゲームを実現するプログラムであって、前記ゲーム装置を、ユーザによって操作されるプレイヤキャラクタを含む、仮想３次元空間を表現するゲーム画像を生成する画像生成手段、生成された前記ゲーム画像を前記タッチスクリーンに表示するための制御を行う表示制御手段、前記タッチスクリーンに対するタッチ操作を時間サンプリングで検出し、検出した当該タッチ操作に基づく操作アクションを決定する操作アクション決定手段、決定された操作アクションに基づいて、前記仮想３次元空間における前記プレイヤキャラクタの挙動を制御する挙動制御手段、として機能させるプログラムである。前記操作アクション決定手段は、検出した前記タッチ操作が、タッチダウンから所定の速度以上で所定のストローク距離だけ移動する操作である場合に、当該タッチ操作を、所定の移動ベクトルで特定されるフリック操作として決定し、前記挙動制御手段は、決定された前記フリック操作に基づいて、前記プレイヤキャラクタが移動すべき移動目標位置を算出し、前記プレイヤキャラクタが当該移動目標位置に向かって移動するように、前記プレイヤキャラクタの挙動を制御する。
【００１６】
前記画像生成手段は、前記移動目標位置が算出された場合に、前記プレイヤキャラクタの現在位置から当該移動目標位置までターゲットマークが移動するように、ゲーム画像を生成する。
【００１７】
前記挙動制御手段は、前記プレイヤキャラクタが前記ターゲットマークの移動に追随するように、前記プレイヤキャラクタの挙動を制御し、前記画像生成手段は、前記挙動制御手段により制御される前記プレイヤキャラクタの挙動を前記ゲーム画像に表示する。
【００１８】
前記挙動制御手段は、前記ゲームの進行状況に基づいて、前記プレイヤキャラクタを移動させるか否かを判断する。
【００１９】
また、別の観点に従う本発明は、前記プログラムを記憶したコンピュータ読み取り可能な記憶媒体として把握される。
【００２０】
さらに、別の観点に従う本発明は、タッチスクリーンを備えたゲーム装置であって、ユーザによって操作されるプレイヤキャラクタを含む、仮想３次元空間を表現するゲーム画像を生成する画像生成手段と、生成された前記ゲーム画像を前記タッチスクリーンに表示するための制御を行う表示制御手段と、前記タッチスクリーンに対するタッチ操作を時間サンプリングで検出し、検出した当該タッチ操作に基づく操作アクションを決定する操作アクション決定手段と、決定された操作アクションに基づいて、前記仮想３次元空間における前記プレイヤキャラクタの挙動を制御する挙動制御手段と、を備え、前記操作アクション決定手段は、検出した前記タッチ操作が、タッチダウンから所定の速度以上で所定のストローク距離だけ移動する操作である場合に、当該タッチ操作を、所定の移動ベクトルで特定されるフリック操作として決定し、前記挙動制御手段は、決定された前記フリック操作に基づいて、前記プレイヤキャラクタが移動すべき移動目標位置を算出し、前記プレイヤキャラクタが当該移動目標位置に向かって移動するように、前記プレイヤキャラクタの挙動を制御する、ゲーム装置である。
【００２１】
さらにまた、別の観点に従う本発明は、タッチスクリーン及びコンピューティングデバイスを備えたゲーム装置を前記コンピューティングデバイスにより制御するための制御方法である。かかる制御方法は、ユーザによって操作されるプレイヤキャラクタを含む、仮想３次元空間を表現するゲーム画像を生成するステップと、生成された前記ゲーム画像を前記タッチスクリーンに表示するための制御を行うステップと、前記タッチスクリーンに対するタッチ操作を時間サンプリングで検出し、検出した当該タッチ操作に基づく操作アクションを決定するステップと、決定された操作アクションに基づいて、前記仮想３次元空間における前記プレイヤキャラクタの挙動を制御するステップと、を含む。前記操作アクションを決定するステップは、検出した前記タッチ操作が、タッチダウンから所定の速度以上で所定のストローク距離だけ移動する操作である場合に、当該タッチ操作を、所定の移動ベクトルで特定されるフリック操作として決定し、前記挙動を制御するステップは、決定された前記フリック操作に基づいて、前記プレイヤキャラクタが移動すべき移動目標位置を算出し、前記プレイヤキャラクタが当該移動目標位置に向かって移動するように、前記プレイヤキャラクタの挙動を制御する。
【発明の効果】
【００２２】
本発明によれば、タッチスクリーンに表示されるゲーム画面の構成にとらわれず、常に、直感的な操作性を提供するゲームが実現されることになる。
【００２３】
本発明の他の技術的特徴及び作用効果乃至は利点は、添付した図面を参照して説明される以下の実施形態により明らかにされる。
【図面の簡単な説明】
【００２４】
【図１】本発明の一実施形態に係るゲーム装置の外観を示す平面図である。
【図２】本発明の一実施形態に係るゲーム装置の概略ハードウェア構成の一例を示すブロックダイアグラムである。
【図３】本発明の一実施形態に係るゲーム装置のメモリモジュールの内容の一例を示す図である。
【図４】本発明の一実施形態に係るゲーム装置の機能的構成を説明するためのブロックダイアグラムである。
【図５】本発明の一実施形態に係るゲーム装置におけるプレイヤキャラクタの挙動制御処理を説明するためのフローチャートである。
【図６】本発明の一実施形態に係るゲーム装置における操作アクションの決定処理を説明するためのフローチャートである。
【図７】本発明の一実施形態に係るゲーム装置におけるプレイヤキャラクタの移動処理を説明するためのフローチャートである。
【図８】本発明の一実施形態に係るゲーム装置におけるプレイヤキャラクタのスイング処理を説明するためのフローチャートである。
【図９】仮想３次元空間を表現したあるプレイシーンのゲーム画面を示す図である。
【図１０】仮想３次元空間を表現したあるプレイシーンのゲーム画面を示す図である。
【図１１】仮想３次元空間を表現したあるプレイシーンのゲーム画面を示す図である。
【図１２】仮想３次元空間を表現したあるプレイシーンのゲーム画面を示す図である。
【図１３】仮想３次元空間を表現したあるプレイシーンのゲーム画面を示す図である。
【図１４】仮想３次元空間を表現したあるプレイシーンのゲーム画面を示す図である。である。
【発明を実施するための形態】
【００２５】
次に、本発明の実施の形態について、図面を参照しつつ説明する。
【００２６】
図１は、本発明の一実施形態に係るゲーム装置の外観を示す平面図である。同図に示すように、ゲーム装置１００は、筐体１１０によりその外観を略規定されている。本例では、スーパーオーバル形状の筐体が採用され、ユーザが両手で把持しやすい程度の大きさに設計されている。同図には示されていないが、筐体１１０は、その内部に、ゲーム装置１００を統括的に制御するコンピューティングデバイス（制御回路）２１０を収納している。
【００２７】
ゲーム装置１００は、筐体１１０の上面略中央部に配置されたタッチスクリーン２２０（タッチパネル）を備える。タッチスクリーン２２０は、典型的には、ディスプレイ（スクリーン）２２１上に透過性のタッチセンサ２２２を配した、表示及び入力機能を備える装置であり、既存のものを用いることができる。本例のタッチスクリーン２２０は、マルチタッチに対応した有機ＥＬディスプレイであるが、これに限定されるものではない。
【００２８】
筐体１１０の左右両端部、即ち、ユーザが両手で筐体を把持した場合に親指が当接する左右それぞれの位置には複数の操作ボタン２６０が配置されている。本例では、十字ボタン及び丸形ボタンが筐体１１０の左右両側に配置されている。また、左右の操作ボタンセット近傍には、それぞれオーディオ出力ユニット２３０が配置されている。
【００２９】
同図には示されていないが、ゲーム装置１００は、外部記憶媒体にアクセスするための外部メディアユニット２４０を備える。外部記憶媒体は、例えばメモリカードであり、ゲームプログラム及び各種のデータを記録する。メモリカードは、さまざまな規格のメモリカードを採用することができる。外部記憶媒体を着脱するため、ゲーム装置１００の筐体には、メモリカードスロットが設けられる。
【００３０】
また、ゲーム装置１００は、ネットワーク通信を実現する通信ユニット２５０を備えていても良い。ネットワーク通信は、例えば、３ＧやＷｉＦｉといった既存の無線通信規格を採用することができるが、これらに限定されるものではない。
【００３１】
図２は、本発明の一実施形態に係るゲーム装置の概略ハードウェア構成の一例を示すブロックダイアグラムである。同図に示すように、本実施形態のゲーム装置１００は、ゲーム装置１００を統括的に制御するためのコンピューティングデバイス２１０と、ゲームを表現乃至は演出するための画像（例えば、静止画、動画、映像等）を表示し、ユーザのタッチ操作による入力を受け付けるタッチスクリーン２２０と、ゲームを表現乃至は演出するためのサウンド（例えば、音楽、音声、効果音等）をユーザに提供するためのオーディオ出力ユニット２３０と、外部記憶媒体にアクセスするための外部メディアユニット２４０と、サーバコンピュータや他のゲーム装置１００と無線ネットワーク通信を行うための通信ユニット２５０とを備える。ゲーム装置１００はまた、タッチスクリーン２２０によるユーザ入力に代え、またはその入力を補完するための操作ボタン２６０を備える。
【００３２】
コンピューティングデバイス２１０は、各種のプロセッサ及びメモリ等からなる、例えばチップセットを含むコンピュータ回路要素である。本実施形態のコンピューティングデバイス２１０は、例えば、プロセッサコア２１１と、メモリモジュール２１２と、グラフィックスエンジン２１３と、サウンドエンジン２１４と、Ｉ／Ｏコントローラ２１５と、これらを接続するシステムバス２１６とを含んで構成される。また、コンピューティングデバイス２１０は、動画像を高速に処理するためのメディアエンジンを備えていても良い。
【００３３】
プロセッサコア２１１は、コンピューティングデバイスのメインプロセッサとして機能するチップである。ここでは、「プロセッサコア」という用語は、メインプロセッサを意味するプロセッサやＣＰＵ、ＭＰＵ等と同義のものとして扱うことができる。プロセッサコア２１１は、メモリモジュール２１２上に展開されたゲームプログラムを実行し、コンピューティングデバイス２１０に各種の機能を実現させる。言い換えれば、コンピューティングデバイス２１０は、プロセッサコア２１１の制御の下、ゲームプログラムを実行することにより、他のハードウェアユニット／コンポーネントと協働して、ゲーム装置１００上にゲームを実現する。ゲームプログラムは、例えば、プロセッサコア２１１の制御の下で実現されるオペレーティングシステム（ＯＳ）の制御の下で、実行されても良い。プロセッサコア２１１は、シングルコア又はマルチコアのいずれのタイプも採用できる。プロセッサコア２１１は、図示しない複数次のデータキャッシュを含む。また、プロセッサコア２１１は、図示しない浮動小数点プロセッサ（ＦＰＵ）やベクトル浮動小数点プロセッサ（ＶＦＰＵ）等を接続し、これらと協働して、ゲームプログラムを実行するように構成されても良い。
【００３４】
メモリモジュール２１２は、ゲームの実行に必要な各種のプログラム及びデータを記憶する。図３は、本発明の一実施形態に係るゲーム装置１００のメモリモジュール２１２の内容の一例を示す図である。メモリモジュール２１２は、例えば、ＤＲＡＭに代表される揮発性メモリ、マスクＲＯＭに代表される書き換え不能な不揮発性メモリ、及びフラッシュメモリに代表される書き換え可能な不揮発性メモリのいずれか又はこれらの適宜の組み合わせで構成される。揮発性メモリは、典型的には、プロセッサコア２１１のメインメモリに供され、例えば、ゲームプログラム及びゲームデータの一部又は全部を必要に応じて記憶する。不揮発性メモリは、例えば、ＢＩＯＳや、ＯＳプログラム、デバイスドライバ、ゲーム装置１００の制御に必要なシステムデータ、ユーザデータ、グラフィックデータ、プレイ結果データ等を記憶する。不揮発性メモリは、マスクＲＯＭを採用することなく、その全てがフラッシュメモリで構成されても良い。また、メモリモジュール２１２の全てをフラッシュメモリ等の書き換え可能な不揮発性メモリで構成しても良い。ゲーム装置１００のメモリカードスロットに装着された外部記憶媒体もまた、メモリモジュール２１２の一部として供されても良い。
【００３５】
図２に戻り、グラフィックスエンジン２１３は、プロセッサコア２１１の制御の下、各種のグラフィックス処理を行う。グラフィックスエンジン２１３は、典型的には、グラフィックコア２１３１及びグラフィックメモリ２１３２を含んで構成される。グラフィックコア２１３１は、ビデオディスプレイプロセッサ（ＶＤＰ）やグラフィックプロセッシングユニット（ＧＰＵ）と称されることもある。グラフィックコア２１３１は、グラフィックメモリ２１３２に記憶されるグラフィックデータを読み出して、各種のグラフィック処理（例えば、ジオメトリ処理、レンダリング処理、テクスチャマッピング処理等）を行って、画像データを生成する。グラフィックコア２１３１によって生成された画像データは、図示しないビデオインターフェース回路によって所定のビデオ信号に変換され、タッチスクリーン２２０に出力される。
【００３６】
サウンドエンジン２１４は、プロセッサコア２１１の制御の下、サウンドメモリ（図示せず）に記憶されるサウンドデータに対して、適宜、各種のサウンド処理（例えば、エフェクト処理、ミキシング処理等）を施す。サウンドエンジン２１４によって処理されたサウンドデータは、図示しないサウンドインターフェース回路によって所定のオーディオ信号に変換され、オーディオ出力ユニット２３０に出力される。
【００３７】
Ｉ／Ｏコントローラ２１５は、外部のさまざまなユニットとの入出力を制御するためのインターフェース回路である。本例では、Ｉ／Ｏコントローラ２１５には、タッチセンサ２２２、操作ボタン２６０、外部メディアユニット２４０、及び通信ユニット２５０が接続されている。Ｉ／Ｏコントローラ２１５は、接続された各種のユニットから与えられる外部信号をコンピューティングデバイス２１０内の内部データに変換し、また、内部データを各種のユニットに適した外部信号に変換する。
【００３８】
タッチスクリーン２２０は、ディスプレイ（スクリーン）２２１及びこのディスプレイ２２１上に略一致するように形成された透過性のタッチセンサ２２２からなるユーザインターフェースデバイスである。タッチスクリーン２２０は、コンピューティングデバイス２１０の制御の下、ゲーム画像を表示して、ユーザによるインタラクティブなタッチ操作を受け付けることができる。ディスプレイ２２１は、グラフィックスエンジン２１３からのビデオ信号に基づいて、画像（例えば、静止画、動画、映像等）をディスプレイ２２１上に表示する。ディスプレイ２２１は、３Ｄ表示に対応するものでも良い。タッチセンサ２２２は、ユーザによるタッチ操作に応じた操作信号を出力する。ユーザのタッチ操作は、ユーザの指によりなされても良いし、スタイラス等でも良い。タッチセンサ２２２は、例えば、静電容量タイプのものを採用することができるが、これに限定されるものではない。
【００３９】
タッチセンサ２２２から出力された操作信号は、コンピューティングデバイス２１０に入力され、コンピューティングデバイス２１０は、タッチセンサ２２２からの操作信号を検出すると、ゲームに対する操作として解釈し、これに応じた処理が実行される。例えば、コンピューティングデバイス２１０は、タッチセンサ２２２からの操作信号に基づいて、ディスプレイ２２１上の位置情報を算出し、ゲーム画像及び時間情報と相まって、操作アクションを決定するために用いられる。本実施形態のゲーム装置１００は、複数の指（又はスタイラス）によるマルチタッチ操作を受け付けることができるように構成されている。
【００４０】
オーディオ出力ユニット２３０は、ゲームの進行状況に合わせて、ユーザにゲーム音を提供するためのオーディオ出力デバイスである。オーディオ出力ユニット２３０は、サウンドエンジン２１４からのオーディオ信号に基づいて、音（例えば、音声、音楽、効果音等）を発生させる。
【００４１】
外部メディアユニット２４０は、例えばメモリカードの外部記憶媒体にアクセスするためのメディアインターフェースデバイスである。外部記憶媒体は、メモリカードに限られず、ＣＤ−ＲＯＭや、ＣＤ−Ｒ、ＤＶＤ−ＲＯＭ、ＤＶＤ−Ｒ等であっても良い。外部記憶媒体は、例えば、本実施形態のゲームプログラムをゲーム装置１００に供給したり、ユーザデータを保存したりするために用いられる。外部メディアユニット２４０は、装着された外部記憶媒体にアクセスし、データを読み込み、また、書き込みが許可されている場合には、そこに書き込みを行う。
【００４２】
通信ユニット２５０は、ゲーム装置１００が他のゲーム装置やコンピュータと通信を行うための通信ボードであり、例えば、無線ＬＡＮやＢｌｕｅｔｏｏｔｈ（登録商標）、３Ｇ等の通信規格を実現する回路が実装されている。本開示では、通信形態は、無線通信を前提にしているが、有線ＬＡＮ等の有線通信を排除するものではない。
【００４３】
操作ボタン２６０は、典型的には、複数のボタン（キー）で構成されるが、これに限定されるものではない。本例では、十字ボタン及び丸形ボタンからなる、左右それぞれの操作ボタンセットが設けられている。
【００４４】
次に、本実施形態のゲーム装置１００によってユーザに提供されるゲームについて、簡単に説明する。かかるゲームは、ゲーム装置１００が、コンピューティングデバイス２１０の制御の下、ゲームプログラムを実行することにより、実現される。
【００４５】
本例では、ゲーム装置１００が提供するゲームは、テニスゲームであるとする。テニスゲームは、典型的には、ユーザ（プレイヤ）が、プレイヤキャラクタを操作して、コンピュータ（即ち、ゲーム装置１００）が操作する相手プレイヤキャラクタと、ボールオブジェクトを打ち合って、仮想現実のテニスを試合形式でプレイするというものである。本例では、プレイヤが１対１で試合を行うシングルスであるとする。ユーザの仮想現実感を高めるため、典型的には、ディスプレイ２２１に表示されるゲーム画面は、仮想３次元空間を表現したゲーム画像である。プレイ中、仮想カメラの視線方向及び視野領域は制御され、これに応じて、仮想３次元空間を表現するゲーム画像が変化する。通常のテニスの試合と同様に、プレイヤキャラクタは、ボールオブジェクトを打ち返すために、適切な打点位置に入る必要がある。このため、ユーザには、プレイヤキャラクタをより正確に移動させる操作が要求される。
【００４６】
ユーザは、タッチスクリーン２２０に対するタッチ操作（指又はスタイラス等によるタッチ操作。以下、同じ。）により、プレイヤキャラクタを操作して、サーブショットを放ち、また、プレイヤキャラクタを所望の位置まで移動させ、ボールオブジェクトを打ち返すことができる。本例では、移動のためのタッチ操作に続けて、ショットのためのタッチ操作が要求される。ショットの方向や強さ、種類等は、タッチ操作のタイミングや位置、方向、スピード（速度）等といったファクタに基づいて、コンピューティングデバイス２１０によりコンピュータ演算され、決定される。ユーザのタッチ操作による操作アクションは、例えば、タップ操作、ドラッグ操作及びフリック操作がある。コンピューティングデバイス２１０は、必要に応じて、与えられたタッチ操作から操作アクションを決定する。
【００４７】
タップは、ユーザの指がタッチスクリーン２２０に単に触れる動作（タッチダウン）であり、典型的には、タッチダウンの後、リフトアップがなされる（指が離される）。コンピューティングデバイス２１０は、所定時間内にタップ操作した回数により、シングルタップ操作やダブルタップ操作として判別することができる。
【００４８】
ドラッグ操作は、タッチスクリーン２２０上で指を引きずる動作であり、具体的には、タッチダウンした指がそのまま離されずにタッチスクリーン２２０上を所定の速度以下で移動してストロークを形成する動作である。つまり、タップ操作であるか又はドラッグ操作であるかは、タッチダウンした指が２次元的に移動するか否かによって区別することができる。
【００４９】
フリック操作は、指で弾くような動作又は指で素早く拭うような動作であり、具体的には、タッチダウンした指が所定の速度以上で移動しながらリフトアップされる動作である。ドラッグ操作であるか又はフリック操作であるかは、指が所定の速度以上で移動され所定の時間内にリフトアップされるか否かによって区別することができる。
【００５０】
例えば、ユーザは、プレイ中、仮想３次元空間内のコート上のプレイヤキャラクタを移動させるために、コートを含むプレイエリア上の所定の地点をタップ操作する。これにより、プレイヤキャラクタの移動目標位置が設定され、プレイヤキャラクタは当該移動目標位置まで移動する。このとき、プレイヤキャラクタの移動に合わせて仮想カメラの視線方向及び／又は視野領域も制御される。これにより、タッチスクリーン２２０上には、コート上を移動するプレイヤキャラクタを含むゲーム画像が表示されることになる。また、これにより、ユーザは、プレイヤキャラクタを移動させる際、タッチ操作をし続ける必要がなくなる。
【００５１】
ユーザは、プレイヤキャラクタの移動中、別の新たな点をタップ操作して、移動目標位置を変更することもできる。続いて、ユーザは、所望の移動目標位置まで移動したプレイヤキャラクタにショットさせるために、ボールオブジェクトを打ち返したい方向へフリック操作する。これにより、プレイヤキャラクタは、飛んでくるボールオブジェクトを打ち返すことができる。ショットの精確さは、例えば、フリック操作開始のタイミング、方向、速度、ストローク距離等に依存する。また、ユーザは、フリック操作の形態に基づいて、状況に応じたショットの種類（例えば、トップスピン、スライス、ボレー、ロブ及びスマッシュ等）を選択することができる。これにより、ユーザは、プレイヤキャラクタの移動のためのタッチ操作を素早く済ませ、プレイヤキャラクタが所望の移動目標位置まで移動している間に、ショットのためのフリック操作開始のタイミングを見計らったり、ショットの種類に応じたフリック操作のための操作時間を設けたりすることができる。
【００５２】
また、ユーザは、ドラッグ操作により、プレイヤキャラクタを移動させても良い。ドラッグ操作の場合には、ユーザは、移動する指の動きに追随させてプレイヤキャラクタを移動させることができる。所望の移動目標位置まで移動したプレイヤキャラクタに対して、上述のように、ユーザは、ショットの動作を与えることができる。
【００５３】
さらに、ユーザは、フリック操作により、プレイヤキャラクタを移動させることもできる。フリック操作の場合には、ユーザは、フリック操作の形態に応じて、任意の地点を移動目標位置として設定し、プレイヤキャラクタを移動させることができる。本開示により明らかにされるように、ユーザは、フリック操作によりプレイヤキャラクタを移動させる場合、仮想３次元空間内の移動目標地点を直接指定する必要はない。言い換えれば、あるプレイシーンのゲーム画像において、当該ゲーム画像の外に移動目標位置があったとしても、ユーザは、フリック操作を用いて、当該移動目標位置を設定することができる。これにより、当該移動目標位置まで移動するプレイヤキャラクタの動きに合わせて、仮想３次元空間を表現するゲーム画像は変化する。また、これにより、ユーザは、プレイヤキャラクタを移動させる際、タッチ操作をし続ける必要がなくなる。
【００５４】
図４は、本発明の一実施形態に係るゲーム装置１００の機能的構成を説明するためのブロックダイアグラムである。即ち、同図は、コンピューティングデバイス２１０のプロセッサ（即ち、プロセッサコア２１１）がゲームプログラムを実行することにより、他のハードウェア／ソフトウェアと協働して、ゲーム装置１００において実現される各種の機能的手段の構成を示すものであり、同図では、特に、本実施形態のゲームプログラムが実現するゲームに関わる機能的手段を例示している。
【００５５】
同図を参照して、ゲーム制御部４０１は、ゲームプログラムによって実現されるゲームの進行を統括的に制御する機能的手段である。ゲーム制御部４０１は、例えば、テニスゲームであれば、プレイヤキャラクタと相手プレイヤキャラクタとによる仮想現実のテニスの試合が展開されるようにコンピュータ処理を行う。ゲームの進行に必要なデータは、ゲームデータ記憶部４０２に格納されている。ゲーム制御部４０１は、プレイヤキャラクタの移動やその他の動作（例えば、ショット）を制御するプレイヤキャラクタ挙動制御部４０１１を含む。
【００５６】
タッチ操作部４０３は、ユーザによるタッチ操作を受け付け、当該タッチ操作に応じた操作信号をタッチ操作処理部４０６に出力する。表示部４０４は、ゲーム制御部４０１の制御の下、画像生成部４０８から出力される信号に基づくゲーム画像を表示する。タッチ操作部４０３及び表示部４０４は、上述したタッチスクリーン２２０に対応付けることができる。また、オーディオ出力部４０５は、ゲーム制御部４０１の制御の下、オーディオ生成部４０９から出力される信号に基づいて音を発生させる。オーディオ出力部４０５は、図２に示したオーディオ出力ユニット２３０に対応付けることができる。
【００５７】
タッチ操作処理部４０６は、タッチ操作部４０３に対するタッチ操作に応じた操作信号に基づいて、ゲーム装置１００に与えられたタッチ操作の種類（操作アクション）を決定する。本例のタッチ操作処理部４０６は、位置情報取得部４０６１と操作アクション決定部４０６２とを含む。
【００５８】
位置情報取得部４０６１は、タッチ操作部４０３から送られてくる操作信号に基づいて、タッチ操作された位置に関する表示部４０４（ディスプレイ２２１）上の位置情報を取得する。位置情報取得部４０６１は、取得した位置情報を操作アクション決定部４０６２に出力する。
【００５９】
操作アクション決定部４０６２は、位置情報取得部４０６１から送られてくる位置情報及びタイマ４０７から得られる時間情報に基づいて、ユーザによるタッチ操作の種類（操作アクション）を決定する。操作アクションは、例えば、上述したように、タップ操作、ドラッグ操作及びフリック操作がある。
【００６０】
画像生成部４０８は、ゲーム制御部４０１から出力される画像データに基づいて、ゲーム画像を生成し、表示部４０４に出力する機能的手段である。
【００６１】
オーディオ生成部４０９は、ゲーム制御部４０１から出力されるオーディオデータに基づいて、ゲーム音を生成し、オーディオ出力部４０５に出力する。
【００６２】
図５は、本発明の一実施形態に係るゲーム装置１００におけるプレイヤキャラクタの挙動制御処理を説明するためのフローチャートである。以下では、プレイヤキャラクタと相手プレイヤキャラクタとのラリーにおける挙動制御処理について説明している。
【００６３】
同図に示すように、ゲーム装置１００のタッチ操作処理部４０６は、ゲームの進行中、タッチ操作部４０３に対するユーザによるタッチ操作があるか否かを所定の時間間隔で監視する（ＳＴＥＰ５０１）。タッチ操作処理部４０６は、タッチ操作があると判断すると（ＳＴＥＰ５０１のＹｅｓ）、当該タッチ操作に基づいて、タッチ操作の種類、即ち、操作アクションを決定する（ＳＴＥＰ５０２）。タッチ操作は、時間サンプリングで検出され、それに応じた操作信号が出力される。操作アクションの決定処理は、図６を参照して説明される。
【００６４】
続いて、ゲーム制御部４０１は、決定した操作アクション及び進行中のゲームの状況に応じて、プレイヤキャラクタがボールオブジェクトをショットするためにスイング動作が可能であるか否かを判断する（ＳＴＥＰ５０３）。ゲーム制御部４０１は、当該タッチ操作についてスイング動作が可能でないと判断する場合（ＳＴＥＰ５０３のＮｏ）、プレイヤキャラクタを移動させるため、プレイヤキャラクタの移動処理を行う（ＳＴＥＰ５０４）。プレイヤキャラクタの移動処理は、図７を参照して説明される。これに対して、ゲーム制御部４０１は、当該タッチ操作についてスイング動作が可能であると判断する場合（ＳＴＥＰ５０３のＹｅｓ）、プレイヤキャラクタのスイング動作を制御するスイング処理を行う（ＳＴＥＰ５０５）。プレイヤキャラクタのスイング処理は、図８を参照して説明される。
【００６５】
なお、本例では、ゲーム制御部４０１は、ラリー中のユーザによるタッチ操作について、プレイヤキャラクタの移動処理又はスイング処理のいずれかであると判断するように構成されているが、これに限るものでなく、他の動作処理を含む複数の動作処理群の中からいずれかを選択するように構成されても良い。
【００６６】
図６は、本発明の一実施形態に係るゲーム装置１００における操作アクションの決定処理を説明するためのフローチャートである。
【００６７】
即ち、同図に示すように、ゲーム装置１００のゲーム制御部４０１は、タッチ操作部４０３から操作信号を受け付けると、当該操作信号に基づいて、タッチスクリーン２２０上の位置情報を取得する（ＳＴＥＰ６０１）。続いて、ゲーム制御部４０１は、当該タッチ操作が移動しているか否かを判断する（ＳＴＥＰ６０２）。ゲーム制御部４０１は、所定の時間間隔で取得した一連の位置情報に差分がある場合に、タッチ操作が移動していると判断することができる。
【００６８】
ゲーム制御部４０１は、当該タッチ操作が移動していないと判断する場合（ＳＴＥＰ６０２のＮｏ）、現在（最新）の位置情報を出力し（ＳＴＥＰ６０３）、続いて、所定の時間内に指が離れたか否かを判断する（ＳＴＥＰ６０４）。ゲーム制御部４０１は、所定の時間内に指が離れていないと判断する場合には（ＳＴＥＰ６０４のＮｏ）、ＳＴＥＰ６０１に戻る。これに対して、ゲーム制御部４０１は、所定の時間内に指が離れたと判断する場合には（ＳＴＥＰ６０４のＹｅｓ）、当該操作アクションの決定処理を終了する。
【００６９】
一方、ゲーム制御部４０１は、当該タッチ操作が移動していると判断する場合（ＳＴＥＰ６０２のＹｅｓ）、ゲーム制御部４０１は、当該タッチ操作の移動速度を算出する（ＳＴＥＰ６０５）。ゲーム制御部４０１は、所定の時間間隔で取得する一連の位置情報から、移動速度を算出することができる。続いて、ゲーム制御部４０１は、算出した移動速度が所定の速度ｖよりも大きいか否かを判断する（ＳＴＥＰ６０６）。ゲーム制御部４０１は、算出した移動速度が所定の速度ｖ以下であると判断する場合（ＳＴＥＰ６０６のＮｏ）、現在の位置情報を出力する（ＳＴＥＰ６０３）。即ち、本例では、ゲーム制御部４０１は、タッチ操作によるドラッグ操作をタップ操作の連続、又はタップ操作をストローク距離の短いドラッグ操作であるとして処理している。これに対して、ゲーム制御部４０１は、算出した移動速度が所定の速度ｖよりも大きいと判断する場合（ＳＴＥＰ６０６のＹｅｓ）、操作アクションをフリック操作として決定し（ＳＴＥＰ６０７）、移動方向及び移動速度（移動ベクトル）を出力して（ＳＴＥＰ６０８）、処理を終了する。
【００７０】
図７は、本発明の一実施形態に係るゲーム装置１００におけるプレイヤキャラクタの移動処理を説明するためのフローチャートである。
即ち、同図に示すように、ゲーム制御部４０１は、操作アクションがフリック操作であるか否かを判断する（ＳＴＥＰ７０１）。ゲーム制御部４０１は、操作アクションがフリック操作でないと判断する場合（ＳＴＥＰ７０１のＮｏ）、タップ操作又はドラッグ操作であるとみなして、出力された位置情報を目標位置情報に設定し（ＳＴＥＰ７０２）、当該移動目標位置に向けてプレイヤキャラクタが移動するように、ゲーム画像の表示を制御する（ＳＴＥＰ７０３）。
【００７１】
これに対して、ゲーム制御部４０１は、操作アクションがフリック操作であると判断する場合（ＳＴＥＰ７０１のＹｅｓ）、出力された移動方向及び移動速度に基づいて移動目標位置を算出する（ＳＴＥＰ７０４）。ゲーム制御部４０１は、当該移動目標位置に向けてプレイヤキャラクタが移動するように、ゲーム画像の表示を制御する（ＳＴＥＰ７０３）。即ち、本開示では、フリック操作による移動方向及び移動速度といった操作パラメータは、プレイヤキャラクタの移動目標位置を算出するために用いられものであって、プレイヤキャラクタ自身の位置データに直接与えることでプレイヤキャラクタの挙動計算を行うために用いられるのではない。本開示では、プレイヤキャラクタの挙動計算は、算出された移動目標位置に基づいて行われる。
【００７２】
図１０乃至図１４は、フリック操作によるプレイヤキャラクタの移動を説明するためのゲーム画面を示す図である。本例では、あるプレイシーンにおいて、プレイヤキャラクタＰは、コートの後方で打点位置をとることが要求されているとする。このとき、コートの後方の領域の一部は、ゲーム画面の外に位置している（図１０）。
【００７３】
ユーザは、フリック操作をするため、タッチスクリーン上のいずれかの位置を指でタッチし、手前側に素早く動かすタッチ操作を行う。ユーザがタッチした瞬間、ゲーム制御部４０１は、これを検出し、まず、タッチした位置にモーションカーソル（２重の円で表示される）Ｃを表示する（図１０）。
【００７４】
ユーザが指を素早く動かし、タッチスクリーンから離すことにより、ゲーム制御部４０１は、操作アクションがフリック操作であると判断する。ゲーム制御部４０１は、指が離れた位置までモーションカーソルＣを移動表示する。ゲーム制御部４０１は、ボールオブジェクトの位置情報に基づいてショット可能でないと判断し、フリック操作に基づいて算出された移動目標位置までプレイヤキャラクタＰを移動させるための処理に入る。本例では、プレイヤキャラクタＰの移動目標位置までの移動がユーザに直感的に伝わるよう、例えばターゲットマークＭが表示される。ターゲットマークＭは、例えば、仮想的な光彩による表示であるが、これに限られるものではない。即ち、ゲーム制御部４０１は、プレイヤキャラクタの現在位置を光彩で強調表示する（図１１）。
【００７５】
続いて、ゲーム制御部４０１は、フリック操作により算出された移動目標位置まで光彩が移動するよう、ターゲットマークＭの移動を開始させる（図１２）。これに合わせて、ゲーム制御部４０１は、プレイヤキャラクタＰがターゲットマークＭを追随するように、移動を開始させる（図１３）。仮想カメラのアングルに従うゲーム画面の構成によっては、ターゲットマークＭは、一時的に、ゲーム画面の外に消えてしまう場合もある。ゲーム制御部４０１は、プレイヤキャラクタＰの移動に伴って、必要に応じてゲーム画面の構成を変化させ、最終的に、プレイヤキャラクタＰが移動目標位置にあるターゲットマークＭに追いつくように、表示を制御する（図１４）。これにより、ユーザは、次のタッチ操作により、ボールオブジェクトをショットすることができるようになる。
【００７６】
図８は、本発明の一実施形態に係るゲーム装置１００におけるプレイヤキャラクタのスイング処理を説明するためのフローチャートである。当該スイング処理は、図５のＳＴＥＰ５０３においてタッチ操作についてスイング可能であると判断された場合に、実行される。また、本例では、スイング処理は、フリック操作に基づいて実行されるものとする。
【００７７】
即ち、図８に示すように、ゲーム制御部４０１は、フリック操作により得られた移動方向及び移動速度に従って、ショット目標位置を設定する（ＳＴＥＰ８０１）。ショット目標位置は、プレイヤキャラクタがショットによりボールオブジェクトを打ち返そうとする目標位置である。ゲーム制御部４０１は、次に、予め設定されたスイング動作の中から、進行中のゲームの状況で適用可能であるスイング動作の候補を抽出する（ＳＴＥＰ８０２）。スイング動作は、例えば、フォアハンド及びバックハンド並びにこれらから繰り出されるトップスピン、スライス、ボレー、ロブ及びスマッシュ等がある。ゲーム制御部４０１は、ボールオブジェクトに関する位置情報及び速度情報並びにプレイヤキャラクタの位置情報及びショットまでの時間（フレーム数）等を考慮して、適用可能であるスイング動作の候補を抽出する。典型的には、プレイヤキャラクタが打点位置まで早く到達できるほど、抽出されるスイング動作の候補は多くなる。続いて、ゲーム装置１００は、フリック操作のタイミング、移動方向及び移動速度に基づいて、抽出されたスイング動作の候補の中から最適なスイング動作を決定する（ＳＴＥＰ８０３）。そして、ゲーム制御部４０１は、決定されたスイング動作に従って、プレイヤキャラクタがスイングするように、ゲーム画像の表示を制御し、これと相まって、ボールオブジェクトの軌道計算を行いながら、打ち返されたボールオブジェクトの表示を制御する（ＳＴＥＰ８０４）。
【００７８】
なお、本例では説明されていないが、ゲーム装置１００は、プレイヤキャラクタのスイング中に、例えば、ユーザによる操作ボタンからの操作を受け付けて、ショットカーソルを移動させ、ショット目標位置を調整しても良い。
【００７９】
以上のように、本開示によれば、ユーザは、タッチスクリーン上に表示されるゲーム画面の構成にとらわれず、プレイヤキャラクタに対して任意のタッチ操作を与えることができる。特に、あるシーンにおいて、プレイヤキャラクタの移動目標位置がゲーム画面の外にある場合であっても、直感的なタッチ操作により、当該移動目標位置を設定することができるようになる。
【００８０】
また、本開示によれば、直感的なタッチ操作の組み合わせによって、プレイヤキャラクタに一連の動作を行わせることができ、ゲームの興趣性を向上させることができるようになる。
【産業上の利用可能性】
【００８１】
本発明は、タッチスクリーン機能を有するコンピュータゲーム装置及びスマートフォンやタブレット型コンピュータに代表されるインテリジェントデバイスで実行されるゲームプログラムに広く適用することができる。
【符号の説明】
【００８２】
１００…ゲーム装置
１１０…筐体
２１０…コンピューティングデバイス
２２０…タッチスクリーン
２３０…スピーカ
２６０…操作ボタン
４０１…ゲーム制御部
４０２…ゲームデータ記憶部
４０３…タッチ操作部
４０４…表示部
４０５…オーディオ出力部
４０６…タッチ操作処理部
４０６１…位置情報取得部
４０６２…操作アクション決定部
４０７…タイマ
４０８…画像生成部
４０９…オーディオ生成部
【図１】
0005958787.tif 000002
【図２】
0005958787.tif 000003
【図３】
0005958787.tif 000004
【図４】
0005958787.tif 000005
【図５】
0005958787.tif 000006
【図６】
0005958787.tif 000007
【図７】
0005958787.tif 000008
【図８】
0005958787.tif 000009
【図９】
0005958787.tif 000010
【図１０】
0005958787.tif 000011
【図１１】
0005958787.tif 000012
【図１２】
0005958787.tif 000013
【図１３】
0005958787.tif 000014
【図１４】
0005958787.tif 000015