(57)【要約】【課題】タッチスクリーンを備えるコンピュータにおいて、対戦相手となるゲームキャラクタとの間で、ボールなどを打球させる等の操作を受け付けてゲームを進行させるスポーツゲームにおいて、ゲームキャラクタを移動させるためのユーザの入力操作をいっそう容易にしつつゲームプログラムの興趣性をいっそう向上させる技術を提供する。【解決手段】情報処理装置は、タッチスクリーン１３０に対するドラッグ操作を受け付けている場合に、ドラッグ操作のタッチ開始位置とタッチ継続位置とにより定まる方向にゲームキャラクタ１３４を移動させる。情報処理装置は、タップ操作またはフリック操作のいずれかによりゲームキャラクタ１３４にスイング動作を行わせ、スイング領域の範囲内にあるときは対象物１３８を打球するように相手側に打ち返し、スイング領域の範囲外にあるときは対象物１３８の打ち返しに空振りさせて対象物１３８を移動させる。【選択図】図７
2017209573.tif 000002
【特許請求の範囲】
【請求項１】
ゲームプログラムであって、
前記ゲームプログラムは、タッチ操作による入力操作を受け付けるタッチスクリーンと、プロセッサと、メモリとを備えるコンピュータにおいて実行されるものであり、前記入力操作を受け付けることによりユーザが操作するゲームキャラクタと、前記ゲームキャラクタと対戦する相手側ゲームキャラクタとの間で、対象物を交互に打ち返すスポーツゲームにかかるものであり、
前記ゲームプログラムは、前記プロセッサに、
前記タッチスクリーンに対するドラッグ操作を受け付けている場合に、前記ドラッグ操作における前記タッチ操作の開始位置と、前記タッチ操作が継続している位置との位置関係により定まる方向に基づいて、前記ゲームキャラクタを移動させるステップと、
前記タッチスクリーンに対するタップ操作またはフリック操作の少なくともいずれかの入力操作を受け付けた場合に、前記ゲームキャラクタにスイング動作を行わせるステップと、
前記スイング動作を行わせるための前記入力操作を受け付けた場合に、前記対象物が、前記ゲームキャラクタの周囲に設定されるスイング領域に含まれるときは、前記対象物を前記スイング動作により前記相手側ゲームキャラクタに向けて打ち返すよう前記対象物を移動させ、前記対象物が、前記スイング領域の範囲外にあるときは、前記ゲームキャラクタが前記対象物の打ち返しに空振りするよう前記対象物を移動させるステップとを実行させる、ゲームプログラム。
【請求項２】
前記ゲームプログラムは、仮想空間内に前記ゲームキャラクタ、前記相手側ゲームキャラクタおよび前記対象物を少なくとも配置し、前記ゲームキャラクタおよび前記相手側ゲームキャラクタを、前記仮想空間内に配置されるフィールド面において移動させることで前記対象物を交互に打ち返すものであり、前記仮想空間内の仮想カメラの配置に応じた画面を前記タッチスクリーンに表示させるものであり、
前記対象物を移動させるステップは、前記スイング動作を行わせるための前記入力操作を受け付けた場合に、前記対象物が、前記ゲームキャラクタおよび前記相手側ゲームキャラクタが配置される前記フィールド面から一定距離以内の高さにある場合に、前記対象物が前記スイング領域に含まれるときに、前記相手側ゲームキャラクタに向けて打ち返すよう前記対象物を移動させ、前記対象物が、前記フィールド面から一定距離以上の高さにある場合に、前記ゲームキャラクタが前記対象物の打ち返しに空振りするよう前記対象物を移動させることを含む、請求項１に記載のゲームプログラム。
【請求項３】
前記対象物を移動させるステップは、前記対象物が、前記スイング領域の範囲外にあるときに、前記対象物と前記スイング領域との距離が一定以上である場合は、前記ゲームキャラクタに第１のスイング動作を行わせ、前記対象物と前記スイング領域との距離が一定以下である場合は、前記ゲームキャラクタに、前記第１のスイング動作と異なる第２のスイング動作を行わせることを含む、請求項１または２に記載のゲームプログラム。
【請求項４】
前記ゲームキャラクタを移動させるステップは、前記ゲームキャラクタに前記第１のスイング動作を行わせている過程において前記ドラッグ操作を検出した場合に、前記ゲームキャラクタが前記第１のスイング動作を完了させるか否かにかかわらず前記ゲームキャラクタを前記ドラッグ操作の前記位置関係により定まる方向に基づいて移動させ、
前記ゲームキャラクタに前記第２のスイング動作を行わせている過程において前記ドラッグ操作を検出した場合に、前記ゲームキャラクタが前記第２のスイング動作を終えるまで前記ドラッグ操作の前記位置関係により定まる方向に基づく移動を待機させることを含む、請求項３に記載のゲームプログラム。
【請求項５】
前記スイング動作を行わせるステップは、前記ゲームキャラクタに前記第１のスイング動作を行わせている過程において前記タップ操作または前記フリック操作の少なくともいずれかの入力操作を受け付けた場合に、前記ゲームキャラクタが前記第１のスイング動作を完了させるか否かにかかわらず前記ゲームキャラクタに前記タップ操作または前記フリック操作の少なくともいずれかの入力操作を受け付けることによる前記スイング動作を行わせ、
前記ゲームキャラクタに前記第２のスイング動作を行わせている過程においては、前記ゲームキャラクタが前記第２のスイング動作を完了するまで前記タップ操作または前記フリック操作の少なくともいずれかの入力操作によるスイング動作を無効化することを含む、請求項３または４に記載のゲームプログラム。
【請求項６】
前記ゲームプログラムは、仮想空間内に前記ゲームキャラクタ、前記相手側ゲームキャラクタおよび前記対象物を少なくとも配置し、前記ゲームキャラクタおよび前記相手側ゲームキャラクタを、前記仮想空間内に配置されるフィールド面において移動させることで前記対象物を交互に打ち返すものであり、前記仮想空間内の仮想カメラの配置に応じた画面を前記タッチスクリーンに表示させるものであり、
前記対象物を移動させるステップは、前記相手側キャラクタが打ち返す前記対象物の前記フィールド面への落下点が、前記スポーツゲームにおける前記フィールド面の前記対象物が着弾可能な有効領域の領域外である場合に、当該領域外に着弾した前記対象物が前記スイング領域の範囲内にあるか否かにかかわらず、前記スイング動作を行わせるための前記入力操作を受け付けたときに前記ゲームキャラクタが前記対象物の打ち返しに空振りするよう前記対象物を移動させることを含む、請求項１から５のいずれか１項に記載のゲームプログラム。
【請求項７】
前記スイング動作を行わせるステップは、
前記スポーツゲームのプレイ開始が、前記相手側ゲームキャラクタによる前記対象物への打撃によりなされる場合に、前記相手側ゲームキャラクタが前記対象物への打撃を行うまで、前記タップ操作または前記フリック操作を受け付けたとしても前記ゲームキャラクタに前記スイング動作を行わせず、前記相手側ゲームキャラクタが前記対象物への打撃を行うことで前記スポーツゲームがプレイ開始となると、前記タップ操作または前記フリック操作による前記スイング動作を行わせることを含む、請求項１に記載のゲームプログラム。
【請求項８】
前記対象物を移動させるステップは、前記対象物が、前記スイング領域に含まれるときであって、前記ゲームキャラクタの正面の一領域に設定される近距離エリアにあるときに前記スイング動作のための前記入力操作を受け付けた場合には、前記対象物が前記スイング領域に含まれ、前記近距離エリアの範囲外にあるときに前記スイング動作のための前記入力操作を受け付けた場合と比較してユーザに不利な態様で前記対象物を打ち返すよう前記対象物を移動させることを含む、請求項１に記載のゲームプログラム。
【請求項９】
前記ゲームプログラムは、さらに、前記プロセッサに、
前記ゲームキャラクタの周囲に、前記スイング領域の広さを示す画像を前記ゲームキャラクタと関連付けて前記タッチスクリーンへ表示させるステップを実行させる、請求項１から請求項８のいずれか１項に記載のゲームプログラム。
【請求項１０】
タッチスクリーンを備えるコンピュータが、入力操作を受け付けることによりユーザが操作するゲームキャラクタと、前記ゲームキャラクタと対戦する相手側ゲームキャラクタとの間で、対象物を交互に打ち返すスポーツゲームを実行する方法であって、
前記方法は、前記コンピュータが、
前記タッチスクリーンに対するドラッグ操作を受け付けている場合に、前記ドラッグ操作における前記タッチ操作の開始位置と、前記タッチ操作が継続している位置との位置関係により定まる方向に基づいて、前記ゲームキャラクタを移動させるステップと、
前記コンピュータが、前記タッチスクリーンに対するタップ操作またはフリック操作の少なくともいずれかの入力操作を受け付けた場合に、前記ゲームキャラクタにスイング動作を行わせるステップと、
前記コンピュータが、前記スイング動作を行わせるための前記入力操作を受け付けた場合に、前記対象物が、前記ゲームキャラクタの周囲に設定されるスイング領域に含まれるときは、前記対象物を前記スイング動作により前記相手側ゲームキャラクタに向けて打ち返すよう前記対象物を移動させ、前記対象物が、前記スイング領域の範囲外にあるときは、前記ゲームキャラクタが前記対象物の打ち返しに空振りするよう前記対象物を移動させるステップとを実行する、方法。
【請求項１１】
タッチ操作による入力操作を受け付けるタッチスクリーンと、制御部と、記憶部とを備える情報処理装置であって、
前記記憶部は、前記入力操作を受け付けることによりユーザが操作するゲームキャラクタと、前記ゲームキャラクタと対戦する相手側ゲームキャラクタとの間で、対象物を交互に打ち返すスポーツゲームのゲームプログラムを記憶するように構成されており、
前記制御部は、
前記タッチスクリーンに対するドラッグ操作を受け付けている場合に、前記ドラッグ操作における前記タッチ操作の開始位置と、前記タッチ操作が継続している位置との位置関係により定まる方向に基づいて、前記ゲームキャラクタを移動させるキャラクタ移動制御部と、
前記タッチスクリーンに対するタップ操作またはフリック操作の少なくともいずれかの入力操作を受け付けた場合に、前記ゲームキャラクタにスイング動作を行わせるキャラクタ動作制御部と、
前記スイング動作を行わせるための前記入力操作を受け付けた場合に、前記対象物が、前記ゲームキャラクタの周囲に設定されるスイング領域に含まれるときは、前記対象物を前記スイング動作により前記相手側ゲームキャラクタに向けて打ち返すよう前記対象物を移動させ、前記対象物が、前記スイング領域の範囲外にあるときは、前記ゲームキャラクタが前記対象物の打ち返しに空振りするよう前記対象物を移動させる対象物移動制御部とを含む、情報処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、タッチ操作による入力操作を受け付けてゲームを進行させるゲームプログラムの技術に関し、特に、ゲームキャラクタを操作して、ゲームキャラクタを移動させつつ、対戦相手となるゲームキャラクタとの間で、ボールなどの対象物を打球させる等の操作を受け付けてゲームを進行させるスポーツゲームの技術に関する。
【背景技術】
【０００２】
仮想空間内にゲームキャラクタを表示させてゲームを進行させるゲームプログラムが、様々な事業者によって提供されている。例えば、テニス、卓球、バドミントン、バレーボールなどのスポーツを題材としたスポーツゲームが提供されている。
【０００３】
スポーツゲームは、コンピュータで実行されることにより、例えば、仮想空間内にゲームキャラクタおよび対戦相手となるキャラクタを配置させ、仮想空間内に仮想カメラを配置して、仮想カメラの撮影範囲の画像をディスプレイに表示することでゲームを進行させる。ユーザは、例えば、仮想空間内のゲームキャラクタを操作して、ゲームキャラクタを移動させつつ、対戦相手となるキャラクタとの間で、ボールなどの対象物を打球させる等の操作を行うことでゲームを進行させることができる。
【０００４】
特開２０１３−３９２３２号公報（特許文献１）には、タッチスクリーン機能を備えたゲーム装置におけるユーザインターフェースを制御するための技術が記載されている。特許文献１には、具体的には、タッチパネル上で、ゲーム画面のある位置をタッチ操作によって指し示すことで、当該位置をキャラクタの移動先として設定する場合に、ゲームの進行状況に基づくゲーム画面の構成によっては、ユーザが本来タッチ操作すべき位置がゲーム画面の外側に位置してしまい、タッチ操作で移動先を設定することができないという課題を解決する技術が記載されている。
【０００５】
特許文献１には、テニスゲームにおいて、ゲーム装置が、（１）プレイヤキャラクタを移動させるため、ドラッグ操作を受け付けることで、ユーザがタッチパネル上で移動させる指の動きに追随させてプレイヤキャラクタを移動させること、（２）プレイヤキャラクタを移動させるため、コートを含むプレイエリア上の所定の地点へのタップ操作を受け付けることで、プレイヤキャラクタの移動目標位置を設定すること、（３）ユーザから、ボールオブジェクトを打ち返すためのフリック操作を受け付けること、（４）ゲーム画面の外側に移動目標位置があったとしても、プレイヤキャラクタを移動させるためのフリック操作をユーザから受け付けることで、フリック操作の形態に応じて、任意の地点を移動目標位置として設定すること、が記載されている。特許文献１によると、このようにゲーム装置が構成されることで、ユーザは、タッチスクリーン上に表示されるゲーム画面の構成にとらわれず、プレイヤキャラクタの移動目標位置がゲーム画面の外にある場合であっても、直感的なタッチ操作により、当該移動目標位置を設定することができる。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２０１３−３９２３２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
特許文献１の技術によると、プレイヤキャラクタがボールオブジェクトをショットするためのスイング動作をフリック操作により受け付けることとしている。特許文献１の技術において、スイング動作が可能でないとゲーム装置が判断する場合、プレイヤキャラクタを移動させる処理を行い、スイング動作が可能であると判断する場合、プレイヤキャラクタのスイング動作を制御することとしている。そのため、フリック操作時にゲームキャラクタがボールオブジェクトを打球し損なう（空振り）ことがなく、緊張感をもったゲーム展開になりにくい可能性がある。
【０００８】
本開示は、タッチスクリーンを備えるコンピュータにおいて、対戦相手となるゲームキャラクタとの間で、ボールなどの対象物を打球させる等の操作を受け付けてゲームを進行させるスポーツゲームにかかるゲームプログラムを実行する場合に、ゲームキャラクタを移動させるためのユーザの入力操作をいっそう容易にしつつ、ゲームに対する興趣性をいっそう向上させる技術を提供することを目的とする。
【課題を解決するための手段】
【０００９】
本開示に示す一実施形態によれば、タッチ操作による入力操作を受け付けるタッチスクリーンと、プロセッサと、メモリとを備えるコンピュータにおいて実行されるゲームプログラムが提供される。ゲームプログラムは、プロセッサに、タッチスクリーンに対するドラッグ操作を受け付けている場合に、ドラッグ操作におけるタッチ操作の開始位置と、タッチ操作が継続している位置との位置関係により定まる方向に基づいて、ゲームキャラクタを移動させるステップと、タッチスクリーンに対するタップ操作またはフリック操作の少なくともいずれかの入力操作を受け付けた場合に、ゲームキャラクタにスイング動作を行わせるステップと、スイング動作を行わせるための入力操作を受け付けた場合に、対象物が、ゲームキャラクタの周囲に設定されるスイング領域に含まれるときは、対象物をスイング動作により相手側ゲームキャラクタに向けて打ち返すよう対象物を移動させ、対象物が、スイング領域の範囲外にあるときは、ゲームキャラクタが対象物の打ち返しに空振りするよう対象物を移動させるステップとを実行させる。
【００１０】
別の実施形態によると、タッチスクリーンを備えるコンピュータが、入力操作を受け付けることによりユーザが操作するゲームキャラクタと、ゲームキャラクタと対戦する相手側ゲームキャラクタとの間で、対象物を交互に打ち返すスポーツゲームを実行する方法が提供される。方法は、コンピュータが、タッチスクリーンに対するドラッグ操作を受け付けている場合に、ドラッグ操作におけるタッチ操作の開始位置と、タッチ操作が継続している位置との位置関係により定まる方向に基づいて、ゲームキャラクタを移動させるステップと、タッチスクリーンに対するタップ操作またはフリック操作の少なくともいずれかの入力操作を受け付けた場合に、ゲームキャラクタにスイング動作を行わせるステップと、スイング動作を行わせるための入力操作を受け付けた場合に、対象物が、ゲームキャラクタの周囲に設定されるスイング領域に含まれるときは、対象物をスイング動作により相手側ゲームキャラクタに向けて打ち返すよう対象物を移動させ、対象物が、スイング領域の範囲外にあるときは、ゲームキャラクタが対象物の打ち返しに空振りするよう対象物を移動させるステップとを実行することを含む。
【００１１】
別の実施形態によると、タッチ操作による入力操作を受け付けるタッチスクリーンを備える情報処理装置が提供される。情報処理装置は、記憶部と、制御部とを備える。記憶部は、入力操作を受け付けることによりユーザが操作するゲームキャラクタと、ゲームキャラクタと対戦する相手側ゲームキャラクタとの間で、対象物を交互に打ち返すスポーツゲームのゲームプログラムを記憶するように構成されている。制御部は、タッチスクリーンに対するドラッグ操作を受け付けている場合に、ドラッグ操作におけるタッチ操作の開始位置と、タッチ操作が継続している位置との位置関係により定まる方向に基づいて、ゲームキャラクタを移動させるキャラクタ移動制御部と、タッチスクリーンに対するタップ操作またはフリック操作の少なくともいずれかの入力操作を受け付けた場合に、ゲームキャラクタにスイング動作を行わせるキャラクタ動作制御部と、スイング動作を行わせるための入力操作を受け付けた場合に、対象物が、ゲームキャラクタの周囲に設定されるスイング領域に含まれるときは、対象物をスイング動作により相手側ゲームキャラクタに向けて打ち返すよう対象物を移動させ、対象物が、スイング領域の範囲外にあるときは、ゲームキャラクタが対象物の打ち返しに空振りするよう対象物を移動させる対象物移動制御部とを含む。
【発明の効果】
【００１２】
一実施形態によると、タッチスクリーンを備えるコンピュータにおいて、タッチスクリーンに表示されるゲームキャラクタを移動させるためのユーザの入力操作をいっそう容易にしつつ、ゲームに対する興趣性をいっそう向上させることができる。
【図面の簡単な説明】
【００１３】
【図１】実施の形態のゲーム配信システム１の構成を示す図である。
【図２】携帯端末１０の構成を示すブロック図である。
【図３】サーバ２０の機能的な構成を示すブロック図である。
【図４】移動操作検出部１９３が、ユーザの入力操作に応じてゲームキャラクタを移動させる方向を検出する処理を示す図である。
【図５】仮想空間内に配置されるフィールド面Ｆを示す図である。
【図６】ゲームキャラクタの周囲に設定される、対象物１３８を打球可能な範囲を示す図である。
【図７】ユーザの入力操作に応じて、ゲームキャラクタ１３４の移動およびスイング動作を行う場合の画面の表示例を示す図である。
【図８】ユーザの入力操作に応じて、ゲームキャラクタ１３４がスイング動作を行う場合およびスイング動作をキャンセルしてさらに動作を行う場合の画面の表示例を示す図である。
【図９】制御部１９０が、対象物１３８を打ち返すためのタップ操作またはフリック操作を受け付けた場合に、ゲームキャラクタ１３４にスイング動作を行わせて対象物１３８の移動を制御する処理を示すフローチャートである。
【図１０】実施の形態２におけるスイング領域を示す図である。
【発明を実施するための形態】
【００１４】
以下、図面を参照しつつ、本発明の実施の形態について説明する。以下の説明では、同一の部品には同一の符号を付してある。それらの名称および機能も同じである。したがって、それらについての詳細な説明は繰り返さない。
【００１５】
＜実施の形態１＞
本実施形態において、ユーザは、例えばスマートフォンなどの、タッチスクリーンを搭載した情報処理装置を操作して、ゲームサーバと、スマートフォンとの間でゲームに関するデータを送受信しながらゲームを進行させる。ゲームは、ユーザが一人でプレイするシングルプレイと、ユーザが他のユーザとともにプレイするマルチプレイとに対応する。
【００１６】
図１は、実施の形態のゲーム配信システム１の構成を示す図である。図１に示すように、ゲーム配信システム１は、ユーザが使用する情報処理装置と、サーバ２０とを含み、これらの装置がネットワーク８０によって互いに通信可能に接続されている。
【００１７】
図１の例では、ユーザが使用する情報処理装置として、携帯端末１０Ａ、携帯端末１０Ｂおよび携帯端末１０Ｃ（以下、携帯端末１０Ａ、１０Ｂ、１０Ｃなどの携帯端末を総称して「携帯端末１０」と記載することもある）など複数の携帯端末を示している。携帯端末１０Ａと携帯端末１０Ｂとは、無線基地局８１と通信することにより、ネットワーク８０と接続する。携帯端末１０Ｃは、家屋などの施設に設置される無線ルータ８２と通信することにより、ネットワーク８０と接続する。携帯端末１０は、タッチスクリーンを備える端末であり、例えば、スマートフォン、ファブレット、タブレットなどである。
【００１８】
携帯端末１０は、ゲームプログラムを実行することにより、ゲームプログラムに応じたゲームをプレイする環境をユーザに対して提供する。携帯端末１０は、例えば、アプリ等を配信するプラットフォームを介してゲームプログラムをインストールする。携帯端末１０は、携帯端末１０にインストールされたゲームプログラム、または、予めプリインストールされているゲームプログラムを実行することで、ユーザによるゲームのプレイを可能とする。携帯端末１０は、ゲームプログラムを読み込んで実行することにより、携帯端末１０と、サーバ２０とを通信接続して、ゲームの進行に応じてゲームに関連するデータを携帯端末１０とサーバ２０との間で送受信する。
【００１９】
サーバ２０は、ゲームのプレイに必要なデータを、適宜、携帯端末１０へ送信することで、携帯端末１０でのゲームのプレイを進行させる。サーバ２０は、ゲームをプレイする各ユーザの、ゲームに関連する各種データを管理する。サーバ２０は、携帯端末１０と通信し、各ユーザのゲームの進行に応じて、画像、音声、テキストデータその他のデータを携帯端末１０へ送信する。
【００２０】
例えば、サーバ２０は、各ユーザがゲームのストーリーを進行させた進行状況、ゲーム内に登場するゲームキャラクタのうち各ユーザが使用可能なゲームキャラクタの情報、ゲームキャラクタの能力を示すパラメータ、ゲームキャラクタが使用する道具の性能を示すパラメータその他の各種データを管理する。また、サーバ２０は、ゲームの運営者がユーザに対してキャンペーン、ゲームの進行における不具合の発生、不具合の解消その他のゲームの運営に関連する情報等をユーザに通知する処理を行う。
【００２１】
ゲームプログラムは、ユーザがゲームをプレイするモードとして、一人のユーザがプレイする場合（シングルプレイ）と、複数人のユーザが協同してプレイする場合（マルチプレイ）とに対応している。例えば、ゲーム配信システム１において、サーバ２０が、マルチプレイに参加するユーザを特定して各ユーザの各携帯端末１０と通信すること等により、マルチプレイでゲームをプレイする環境を各ユーザに提供する。
【００２２】
ゲーム配信システム１は、マルチプレイに対応することにより、例えば、テニスゲームであれば、各ユーザでチームを結成してダブルスの試合を行うことを可能とする。また、ゲーム配信システム１は、サッカーゲームであれば、各ユーザが同一のサッカーチームのメンバーとなって試合を行うことを可能とする。また、ゲーム配信システム１は、アクションゲームであれば、各ユーザでチームを結成して、クエストモードなど比較的強力なキャラクタと対戦するゲームモードを複数のユーザがプレイすることを可能とする。また、ゲーム配信システム１は、マルチプレイに対応することにより、ユーザ同士が対戦することを可能とする。
【００２３】
＜構成＞
サーバ２０のハードウェアの構成を説明する。サーバ２０は、通信ＩＦ（Interface）２２と、入出力ＩＦ２３と、メモリ２５と、ストレージ２６と、プロセッサ２９とを備え、これらが通信バスを介して互いに接続する。
【００２４】
通信ＩＦ２２は、例えばＬＡＮ（Local  Area  Network）規格など各種の通信規格に対応しており、携帯端末１０など外部の通信機器との間でデータを送受信するためのインタフェースとして機能する。
【００２５】
入出力ＩＦ２３は、サーバ２０への情報の入力を受け付けるとともに、サーバ２０の外部へ情報を出力するためのインタフェースとして機能する。入出力ＩＦ２３は、マウス、キーボード等の情報入力機器の接続を受け付ける入力受付部と、画像等を表示するためのディスプレイ等の情報出力機器の接続を受け付ける出力部とを含む。
【００２６】
メモリ２５は、処理に使用されるデータ等を記憶するための記憶装置である。メモリ２５は、例えば、プロセッサ２９が処理を行う際に一時的に使用するための作業領域をプロセッサ２９に提供する。メモリ２５は、ＲＯＭ（Read  Only  Memory）、ＲＡＭ（Random  Access  Memory）等の記憶装置を含んで構成されている。
【００２７】
ストレージ２６は、プロセッサ２９が読み込んで実行するための各種プログラム及びデータを記憶するための記憶装置である。ストレージ２６が記憶する情報は、ゲームプログラム、ゲームプログラムに関連する情報、ゲームプログラムをプレイするユーザの情報その他の情報を含む。ストレージ２６は、ＨＤＤ（Hard  Disk  Drive）、フラッシュメモリ等の記憶装置を含んで構成されている。
【００２８】
プロセッサ２９は、ストレージ２６に記憶されるプログラム等を読み込んで実行することにより、サーバ２０の動作を制御する。プロセッサ２９は、例えば、ＣＰＵ（Central  Processing  Unit）、ＭＰＵ（Micro  Processing  Unit）、ＧＰＵ（Graphics  Processing  Unit）等を含んで構成される。
【００２９】
図２は、携帯端末１０の構成を示すブロック図である。図２を参照して、携帯端末１０は、アンテナ１１０と、無線通信ＩＦ１２０と、タッチスクリーン１３０と、入出力ＩＦ１４０と、記憶部１５０と、音声処理部１６０と、マイク１７０と、スピーカ１８０と、制御部１９０とを含む。
【００３０】
アンテナ１１０は、携帯端末１０が発する信号を電波として空間へ放射する。また、アンテナ１１０は、空間から電波を受信して受信信号を無線通信ＩＦ１２０へ与える。
【００３１】
無線通信ＩＦ１２０は、携帯端末１０が他の通信機器と通信するため、アンテナ１１０等を介して信号を送受信するための変復調処理などを行う。無線通信ＩＦ１２０は、チューナー、高周波回路などを含む無線通信用の通信モジュールであり、携帯端末１０が送受信する無線信号の変復調や周波数変換を行い、受信信号を制御部１９０へ与える。
【００３２】
タッチスクリーン１３０は、ユーザからの入力を受け付けて、ユーザに対し情報をディスプレイ１３２に出力する。タッチスクリーン１３０は、ユーザの入力操作を受け付けるための部材（タッチパネル１３１）を含む。また、タッチスクリーン１３０は、メニュー画面や、ゲームの進行を画面に表示するための部材（ディスプレイ１３２）を含む。タッチパネル１３１は、例えば静電容量方式のものを用いることによって、ユーザの指などが接近したことを検出する。ディスプレイ１３２は、例えばＬＣＤ（Liquid  Crystal  Display）、有機ＥＬ（electroluminescence）その他の表示装置によって実現される。
【００３３】
入出力ＩＦ１４０は、携帯端末１０への情報の入力を受け付けるとともに、携帯端末１０の外部へ情報を出力するためのインタフェースとして機能する。
【００３４】
記憶部１５０は、フラッシュメモリ、ＲＡＭ（Random  Access  Memory）等により構成され、携帯端末１０が使用するプログラム、および、携帯端末１０がサーバ２０から受信する各種データ等を記憶する。
【００３５】
音声処理部１６０は、音声信号の変復調を行う。音声処理部１６０は、マイク１７０から与えられる信号を変調して、変調後の信号を制御部１９０へ与える。また、音声処理部１６０は、音声信号をスピーカ１８０へ与える。音声処理部１６０は、例えば、音声処理用のプロセッサによって実現される。マイク１７０は、音声信号の入力を受け付けて制御部１９０へ出力するための音声入力部として機能する。スピーカ１８０は、音声信号を、携帯端末１０の外部へ出力するための音声出力部として機能する。
【００３６】
制御部１９０は、記憶部１５０に記憶されるプログラムを読み込んで実行することにより、携帯端末１０の動作を制御する。制御部１９０は、例えば、アプリケーションプロセッサによって実現される。
【００３７】
携帯端末１０がゲームプログラム１５１を実行する処理について、より詳細に説明する。ある局面において、記憶部１５０は、ゲームプログラム１５１と、ゲーム情報１５２と、ユーザ情報１５３とを記憶する。携帯端末１０は、例えば、サーバ２０からゲームプログラムをダウンロードして記憶部１５０に記憶させる。また、携帯端末１０は、ゲームの進行に伴いサーバ２０と通信することで、ゲーム情報１５２およびユーザ情報１５３等の各種のデータをサーバ２０と送受信する。
【００３８】
ゲームプログラム１５１は、携帯端末１０においてゲームを進行させるためのプログラムである。ゲーム情報１５２は、ゲームプログラム１５１が参照する各種のデータを含む。ゲーム情報１５２は、例えば、ゲームにおいて仮想空間に配置するオブジェクトの情報、オブジェクトに対応付けられた効果の情報（ゲームキャラクタに設定されるスキルの情報などを含む）などを含む。ユーザ情報１５３は、ゲームをプレイするユーザについての情報を含む。ユーザ情報１５３は、例えば、ゲームをプレイする携帯端末１０のユーザを識別する情報、マルチプレイ時に協同してゲームをプレイする他のユーザを識別する情報その他の情報を含む。
【００３９】
制御部１９０は、ゲームプログラム１５１を読み込んで実行することにより、入力操作受付部１９１と、ゲーム進行処理部１９２と、移動操作検出部１９３と、カメラ配置制御部１９４と、オブジェクト制御部１９５と、表示制御部１９６と、の各機能を発揮する。
【００４０】
入力操作受付部１９１は、タッチスクリーン１３０の出力に基づいて、ユーザの入力操作を受け付ける。具体的には、入力操作受付部１９１は、ユーザの指などがタッチパネル１３１に接近したことを、タッチスクリーン１３０を構成する面の横軸および縦軸からなる座標系の座標として検出する。
【００４１】
入力操作受付部１９１は、タッチスクリーン１３０に対するユーザの操作を判別する。入力操作受付部１９１は、例えば、（１）「接近操作」、（２）「リリース操作」、（３）「タップ操作」、（４）「ダブルタップ操作」、（５）「長押し操作（ロングタッチ操作）」、（６）「ドラッグ操作（スワイプ操作）」、（７）「ムーブ操作」、（８）「フリック操作」、その他のユーザの操作を判別する。入力操作受付部１９１が判別するユーザの操作は、上記に限られない。例えば、タッチパネル１３１が、ユーザがタッチパネル１３１に対して押下する圧力の大きさを検出可能な機構を有する場合、入力操作受付部１９１は、ユーザが押下した圧力の大きさを判別する。また、制御部１９０は、タッチスクリーン１３０へのユーザの指などの接近を検出している状態を、「タッチオン状態」と判別する。制御部１９０は、タッチスクリーン１３０へのユーザの指などの接近を検出しない状態を、「タッチオフ状態」と判別する。制御部１９０は、タッチスクリーン１３０が逐次出力するユーザの指などの接近位置を示す座標を、「タッチナウ」の座標として受け付ける。
【００４２】
ここで、（１）「接近操作」とは、ユーザが指などをタッチスクリーン１３０に接近させる操作である。タッチスクリーン１３０は、ユーザの指などが接近したこと（ユーザの指などがタッチスクリーン１３０に接触したことを含む）をタッチパネル１３１により検出し、検出したタッチスクリーン１３０の座標に応じた信号を制御部１９０へ出力する。制御部１９０は、タッチスクリーン１３０へのユーザの指などの接近を検出しない状態から、接近を検出したときに、状態が「タッチオン状態」になったと判別する。
【００４３】
（２）「リリース操作」とは、ユーザがタッチスクリーン１３０に指などを接近させることで操作する状態を止める操作である。入力操作受付部１９１は、例えば、ユーザが指などをタッチスクリーン１３０に接触させている状態から、指を離す操作をしたときに、ユーザの操作を「リリース操作」と判別する。制御部１９０は、タッチスクリーン１３０へのユーザの指などの接近を検出している状態から、接近を検出しない状態になったときに、状態が「タッチオン状態」から「タッチオフ状態」になったと判別する。
【００４４】
（３）「タップ操作」とは、ユーザがタッチスクリーン１３０に対して指などを接近させる接近操作をした後に、接近操作をした位置でリリース操作を行うことである。入力操作受付部１９１は、接近操作が検出されない状態（ユーザの指などがタッチパネル１３１から離れており、タッチパネル１３１がユーザの指などの接近を検出していない状態）から、タッチスクリーン１３０の出力に基づいて、ユーザの指などが接近したことを検出した場合に、その検出した座標を「初期タッチ位置」として保持する。入力操作受付部１９１は、初期タッチ位置の座標と、リリース操作をする直前に（タッチオフ状態が検出される直前に）タッチスクリーン１３０により検出されている座標とがほぼ同一である場合（接近操作が検出された座標から一定範囲内の座標においてリリース操作にかかる座標が検出された場合）に、ユーザの操作を「タップ操作」と判別する。
【００４５】
（４）「ダブルタップ操作」とは、ユーザがタップ操作を一定時間内に２回行う操作である。入力操作受付部１９１は、例えば、ユーザの操作をタップ操作と判別してから一定時間内に、タップ操作にかかる座標で再びタップ操作を判別した場合に、ユーザの操作を「ダブルタップ操作」と判別する。
【００４６】
（５）「長押し操作」とは、ユーザがタッチスクリーン１３０を押し続ける操作である。タッチスクリーン１３０は、ユーザの操作を検出して接近操作を判別してから、接近操作が検出された座標において接近操作が継続している時間が一定時間を超えた場合に、ユーザの操作を「長押し操作」（「長押し操作」を、「ロングタッチ操作」と称することもある）と判別する。
【００４７】
（６）「ドラッグ操作」とは、ユーザがタッチスクリーン１３０に指などを接近させた接近状態を維持したまま、指をスライドさせる操作である。
【００４８】
（７）「ムーブ操作」とは、ユーザがタッチスクリーン１３０において、接近操作を維持しつつ、タッチスクリーン１３０に指などを接近させている位置を移動させてリリース操作を行う一連の操作をいう。
【００４９】
（８）「フリック操作」は、ユーザがムーブ操作を予め定められた時間よりも短い時間で行う操作をいう。フリック操作は、ユーザがタッチスクリーン１３０で指を弾くような操作である。制御部１９０は、例えば、ユーザがムーブ操作を行う時間と比較するための複数の閾値を保持し、ユーザがタッチスクリーン１３０において指などを接近させている位置を一定距離移動させるまでの時間が第１の閾値よりも短い場合（比較的素早く指を弾く場合）は、フリック操作が「強フリック」であると判定し、第１の閾値よりも大きく第２の閾値（第２の閾値を、第１の閾値よりも大きく設定する）よりも小さい場合に、フリック操作が「弱フリック」であると判定することとしてもよい。
【００５０】
ゲーム進行処理部１９２は、ユーザの操作に応じて、各種のプログラムを呼び出す等によりゲームを進行させる処理を行う。例えば、ゲーム進行処理部１９２は、サーバ２０と通信し、ゲームの進行に応じてサーバ２０へデータを送信する処理、サーバ２０からゲームに関連するデータを受信する処理、ゲームの進行に応じてユーザに報酬を付与する処理、時間の経過を計測する処理その他の処理を行う。
【００５１】
移動操作検出部１９３は、タッチスクリーン１３０に対するユーザの入力操作に基づいて、ゲームに登場するキャラクタ（以下、「ゲームキャラクタ」と称することもある）を移動させる入力操作の操作内容を検出する。例えば、ゲームプログラム１５１がスポーツゲームである場合、移動操作検出部１９３は、ユーザの入力操作に基づいて、ゲームキャラクタを移動させる方向を検出する。このように、移動操作検出部１９３は、ユーザがゲームキャラクタの移動方向を指定する入力操作を受け付ける。
【００５２】
具体的には、移動操作検出部１９３は、タッチスクリーン１３０からユーザの指が離れた状態から、ユーザが指をタッチスクリーン１３０に接近させて、入力操作受付部１９１がタッチパネル１３１にユーザの指が接近したことを検出した座標を初期タッチ位置として、ユーザがドラッグ操作を行った場合に、初期タッチ位置の座標とタッチスクリーン１３０の検出結果とに基づいて、ゲームキャラクタの移動方向を検出する。移動操作検出部１９３の詳細な処理は、後述する。
【００５３】
カメラ配置制御部１９４は、仮想空間に配置される各オブジェクトを、どのようにユーザに見せるかを決定する。具体的には、カメラ配置制御部１９４は、制御部１９０がゲームプログラム１５１を読み込んで実行することで生成される仮想空間において、仮想カメラの配置（カメラワーク）を制御する。制御部１９０は、仮想空間における仮想カメラの撮影画像をディスプレイ１３２に表示することで、ユーザに対しゲームのプレイ環境を提供する。
【００５４】
オブジェクト制御部１９５は、携帯端末１０がゲームプログラム１５１を実行することにより進行されるゲームに登場する各種オブジェクト、および、入力操作受付部１９１が受け付けたユーザの操作内容に基づいて生成される各種オブジェクト（例えば、ＧＵＩ（Graphical  User  Interface）画面など）の生成、変形、移動などの処理を制御する。オブジェクト制御部１９５は、例えば、ユーザがゲームキャラクタを移動させるためのタッチスクリーン１３０に対する入力操作に基づいて、ゲームキャラクタの移動方向を示すオブジェクトを生成し、生成したオブジェクトを変形する。
【００５５】
表示制御部１９６は、仮想カメラのカメラワークに従った画像をディスプレイ１３２に出力する。表示制御部１９６は、仮想空間内における仮想カメラの配置に応じて、ディスプレイ１３２の表示内容を決定し、決定した表示内容に従う画像、テキスト等の各種の情報をディスプレイ１３２に出力する。
【００５６】
図３は、サーバ２０の機能的な構成を示すブロック図である。図３を参照して、サーバ２０の詳細な構成を説明する。サーバ２０は、プログラムに従って動作することにより、通信部２２０と、記憶部２５０と、制御部２９０としての機能を発揮する。
【００５７】
通信部２２０は、サーバ２０が携帯端末１０などの外部の通信機器と通信するためのインタフェースとして機能する。
【００５８】
記憶部２５０は、携帯端末１０においてユーザがゲームを進行させるための各種プログラムおよびデータを記憶する。ある局面において、記憶部２５０は、ゲームプログラム２５１と、ゲーム情報２５２と、ユーザ情報２５３とを記憶する。
【００５９】
ゲームプログラム２５１は、サーバ２０が携帯端末１０と通信して、携帯端末１０においてゲームを進行させるためのプログラムである。ゲームプログラム２５１は、ゲームを進行させるための各種データであるゲーム情報２５２およびユーザ情報２５３等を参照して、ユーザの入力操作に応じてゲームを進行させる。ゲームプログラム２５１は、制御部２９０に実行されることにより、携帯端末１０とデータを送受信する処理、携帯端末１０のユーザが行った操作内容に応じてゲームを進行させる処理、ゲームをプレイするユーザの情報を更新する処理その他の処理をサーバ２０に行わせる。
【００６０】
ゲーム情報２５２は、ゲームプログラム２５１が参照する各種のデータを含む。ゲーム情報２５２は、オブジェクト管理テーブル２５２Ａと、パッシブスキル管理テーブル２５２Ｂと、アクティブスキル管理テーブル２５２Ｃとを含む。
【００６１】
オブジェクト管理テーブル２５２Ａは、ゲームの仮想空間内に配置されるオブジェクトの設定を示す。携帯端末１０は、ゲームプログラム１５１を実行することにより、仮想空間内に配置されるオブジェクトを、仮想空間内に配置される仮想カメラによって撮影した画像をディスプレイ１３２に表示することでゲームを進行させる。
【００６２】
ここで、オブジェクトとしては、例えば、ユーザが操作するゲームキャラクタを示すオブジェクト、ゲームキャラクタが装着する装着対象物を示すオブジェクトなど様々なものがある。制御部１９０は、ユーザがタッチスクリーン１３０に対して予め定められた入力操作を行うこと、ゲームの進行に伴い一定の条件を満たすこと、その他の様々な事象の発生を契機として、オブジェクトに対応付けられた処理を行う。
【００６３】
例えば、あるオブジェクトに対してユーザがタッチスクリーン１３０に対して接近操作を行うことで、制御部１９０は、オブジェクトを、ユーザによって選択された状態とする。また、例えば、制御部１９０は、ユーザによるドラッグ操作を受け付けることで、ユーザが移動対象とするオブジェクトを、ユーザの入力操作に応じて移動させる等の処理を行う。また、例えば、制御部１９０は、ユーザがオブジェクトに対して行うタッチ操作を受け付けることで、ユーザに対し、ゲームを有利に進めるための報酬を付与する等の処理を行う。
【００６４】
パッシブスキル管理テーブル２５２Ｂは、オブジェクトを識別する情報と、オブジェクトに対応付けられたパッシブスキルの情報とが対応付けられている。ここで、パッシブスキルとは、例えば、ゲームにおいて予め定められた条件が満たされたときに発動され、ユーザがゲームを有利に進行させることができるものである。例えば、パッシブスキルが発動した場合に、ゲームキャラクタの移動速度が向上する等の、ゲームを有利に進行させられる効果を発揮させる。
【００６５】
アクティブスキル管理テーブル２５２Ｃは、オブジェクトを識別する情報と、オブジェクトに対応付けられたアクティブスキルの情報とが対応付けられている。ここで、アクティブスキルとは、例えば、ゲームにおいて予め定められた条件が満たされたときに発動可能な状態となり、ユーザから、スキルを発動させるための入力操作を受け付けることにより、ユーザがゲームを有利に進行させることができるものである。
【００６６】
ユーザ情報２５３は、ゲームをプレイするユーザについての情報である。ユーザ情報２５３は、ユーザ管理テーブル２５３Ａを含む。ユーザ管理テーブル２５３Ａは、各ユーザを識別する情報と、ユーザがゲームを進行させた度合いを示す情報と、ユーザがゲーム内で保有するアイテム、ゲームキャラクタ、ゲームキャラクタが使用する装着物等の情報その他の情報を含む。
【００６７】
制御部２９０は、記憶部２５０に記憶されるゲームプログラム２５１を実行することにより、送受信部２９１、サーバ処理部２９２、データ管理部２９３、マッチング部２９４、計測部２９５としての機能を発揮する。
【００６８】
送受信部２９１は、ゲームプログラム１５１を実行する携帯端末１０から、各種情報を受信し、携帯端末１０に対し、各種情報を送信する。携帯端末１０とサーバ２０とは、ユーザに関連付けられるオブジェクトを仮想空間に配置する要求、オブジェクトを削除する要求、オブジェクトを移動させる要求、ユーザが獲得する報酬に応じて各種パラメータを更新する要求、ゲームを進行させるための画像、音声その他のデータ、サーバ２０から携帯端末１０へ送信される通知などの情報を送受信する。
【００６９】
サーバ処理部２９２は、サーバ２０全体の動作を制御し、各種のプログラムを呼び出す等によりゲームの進行に必要な処理を行う。サーバ処理部２９２は、例えば、携帯端末１０から受信した情報に基づいて、ゲーム情報２５２、ユーザ情報２５３などのデータを更新し、携帯端末１０に各種データを送信することでゲームを進行させる。
【００７０】
データ管理部２９３は、サーバ処理部２９２の処理結果に従って、記憶部２５０に記憶される各種データを更新する処理、データベースにレコードを追加／更新／削除する処理などを行う。
【００７１】
マッチング部２９４は、複数のユーザを関連付けるための一連の処理を行う。マッチング部２９４は、例えば、ユーザがマルチプレイを行うための入力操作を行った場合に、ゲームを協同してプレイさせるユーザ同士を関連付ける処理などを行う。
【００７２】
計測部２９５は、時間を計測する処理を行う。計測部２９５は、例えば、仮想空間に配置される各オブジェクトについて時間の経過を計測する。また、計測部２９５は、ゲームが進行している時間を計測する。サーバ２０は、携帯端末１０から、携帯端末１０においてゲームプログラム１５１を実行して計測される各種の計測結果の情報を受信し、受信した情報と、計測部２９５の計測結果とを照合することで、携帯端末１０とサーバ２０とで、各種の時間に関する情報を同期させる。
【００７３】
＜実施の形態１の構成のまとめ＞
以上のように、実施の形態のゲーム配信システム１の構成を説明してきた。本実施形態において、ゲームプログラム１５１は、例えばスポーツゲームであり、仮想空間内の仮想カメラの配置に応じた画面をタッチスクリーン１３０に表示させることでゲームを進行させる。
【００７４】
例えば、ゲームプログラム１５１がスポーツゲームである場合、ゲーム進行処理部１９２は、ユーザの操作に応じてストーリーを進行させ、画像、テキストなどディスプレイ１３２に表示するデータを決定する処理、スポーツの対戦相手の選択をユーザから受け付ける処理、ユーザの操作に応じてスポーツの試合を進める処理などの基本的な処理を行う。
【００７５】
例えば、ゲームプログラム１５１がスポーツゲームである場合、カメラ配置制御部１９４は、スポーツの試合を行うための仮想空間における仮想カメラの配置個所および撮影軸の方向を、スポーツの試合の進展に応じて、逐次、決定する。カメラ配置制御部１９４は、仮想カメラのカメラワークを制御する。カメラ配置制御部１９４の詳細な処理は、後述する。
【００７６】
＜動作＞
図面を参照して、実施の形態のゲーム配信システム１を構成する各装置の動作を説明する。
【００７７】
図４は、移動操作検出部１９３が、ユーザの入力操作に応じてゲームキャラクタを移動させる方向を検出する処理を示す図である。移動操作検出部１９３は、ユーザがタッチスクリーン１３０を押していない状態から、指などをタッチパネル１３１に接近させてタッチスクリーン１３０を押した位置（初期タッチ位置）を起点と設定する。入力操作受付部１９１は、ユーザの操作をドラッグ操作と判別している場合に、起点となる座標と、タッチスクリーン１３０がユーザの指などの接近を検出している座標とに基づいて、ゲームキャラクタを移動させる方向を検出する。
【００７８】
図４の状態（Ａ）は、タッチスクリーン１３０からユーザの指が離れた状態から、ユーザが指をタッチスクリーン１３０に接近させた状態を示す。入力操作受付部１９１は、ユーザの指がタッチパネル１３１に接近したことを検出し、検出した座標を初期タッチ位置としてメモリに保持する。
【００７９】
図４の例では、メモリが保持する初期タッチ位置の座標を、初期タッチ位置座標１５５として示す。入力操作受付部１９１は、タッチスクリーン１３０の検出結果（ユーザの指がタッチスクリーン１３０に接近している座標、および、ユーザの指がタッチスクリーン１３０に接近していることを検出していないこと（検出結果「ｎｕｌｌ」）、タッチオフ状態）を、一定フレーム分、バッファメモリ１５３に格納する。バッファメモリ１５３は、タッチスクリーン１３０における検出結果を、各フレームについて一定フレーム分（図３の例では、メモリ領域ｆｐ〔０〕〜メモリ領域ｆｐ〔１０〕までの１１フレーム分）、格納することができる。バッファメモリ１５３は、例えばリングバッファとして実現することができるが、これに限られない。
【００８０】
状態（Ａ）の例では、ユーザがタッチスクリーン１３０を押した位置（タッチオン座標）を、押下位置３０Ａ（タッチスクリーン１３０の座標（ｘ０，ｙ０））として示す。
【００８１】
図４の状態（Ｂ）は、ユーザがタッチスクリーン１３０に対してドラッグ操作を行って、タッチスクリーン１３０に対する押下位置を、押下位置３０Ａから押下位置３０Ｂ（タッチスクリーン１３０の座標（ｘ９，ｙ９））まで１０フレーム（メモリ領域ｆｐ〔０〕〜メモリ領域ｆｐ〔９〕までの１０フレーム分）で移動させたことを示す。入力操作受付部１９１は、タッチスクリーン１３０の検出結果をバッファメモリ１５３に格納し、バッファメモリ１５３に保持される値を参照して、タッチスクリーン１３０に対するユーザの操作をドラッグ操作と判別する。
【００８２】
図４の状態（Ｃ）は、ユーザがタッチスクリーン１３０を押している位置を、押下位置３０Ｂから押下位置３０Ｃ（タッチスクリーン１３０の座標（ｘ１４，ｙ１４））まで、５フレーム（メモリ領域ｆｐ〔１０〕、ｆｐ〔０〕、ｆｐ〔１〕、ｆｐ〔２〕、ｆｐ〔３〕の５フレーム分）で移動させたことを示す。
【００８３】
図４の状態（Ｄ）は、移動操作検出部１９３が、状態（Ｂ）および状態（Ｃ）のそれぞれにおいて、ユーザがゲームキャラクタを移動させる方向を指定する入力操作の検出結果を示す。移動操作検出部１９３は、バッファメモリ１５３において、タッチスクリーン１３０が検出する押下位置の座標を書き込む対象となるメモリ領域がいずれであるかを示す情報（バッファメモリ１５３の書き込み位置）を管理している。
【００８４】
状態（Ｂ）において、タッチナウの座標を、座標（ｘ９、ｙ９）とする。移動操作検出部１９３は、入力操作受付部１９１の判別結果に基づいて、ユーザがドラッグ操作を行ったことを検出する。移動操作検出部１９３は、初期タッチ位置の座標３１Ａ（タッチオンの座標）を起点として、座標３１Ａ（タッチオンの座標）と座標３１Ｂ（タッチナウの座標）とによって規定されるベクトル３２Ｂ（（ｙ９−ｙ０）／（ｘ９−ｘ０））を、ゲームキャラクタを移動させる方向として検出する。
【００８５】
状態（Ｃ）において、タッチナウの座標を、座標（ｘ１４、ｙ１４）とする。移動操作検出部１９３は、入力操作受付部１９１の判別結果に基づいて、ユーザがドラッグ操作を行ったことを検出する。移動操作検出部１９３は、初期タッチ位置の座標３１Ａ（タッチオンの座標）を起点として、座標３１Ａ（タッチオンの座標）と座標３１Ｃ（タッチナウの座標）とによって規定されるベクトル３１Ｃ（（ｙ１４−ｙ０）／（ｘ１４−ｘ０））を、ゲームキャラクタを移動させる方向として検出する。
【００８６】
＜ゲームキャラクタを移動させるための画面表示例＞
図５から図８を参照して、オブジェクト制御部１９５が、移動操作検出部１９３の検出結果に基づいて、オブジェクトとしてのゲームキャラクタを移動させる画面例を詳しく説明する。
【００８７】
例えば、ゲームプログラム１５１は、仮想空間内において、ゲームキャラクタが、対象物を交互に打ち返すスポーツゲームにかかるものであり、具体的にはテニスゲームである。ゲームプログラム１５１は、入力操作を受け付けることにより、ゲームのプレイヤであるユーザが操作するゲームキャラクタと、ゲームキャラクタと対戦する相手側キャラクタとの間で、テニスボールを交互に打ち返す動作を行わせてゲームを進行させる。例えば、タッチスクリーンで入力操作を受け付ける場合、ゲームキャラクタを移動させる操作と、ゲームキャラクタにボールを打球させる操作とを、ともにタッチスクリーンで受け付ける。例えば、ユーザは、タッチスクリーンに対し、ドラッグ操作を行うことで、ドラッグ操作におけるタッチ開始位置とタッチ操作が継続している位置との位置関係により定まる方向へゲームキャラクタを移動させる。ゲームキャラクタにスイング動作を行わせるため、ユーザは、ドラッグ操作においてタッチスクリーンへの接触を継続している指をいったんタッチスクリーンから離して、タップ操作またはフリック操作を行う。現実のテニスにおいても、テニスボールに対して打球する位置へ移動したうえで、スイングのタイミングを図って打球することがよく行われている。
【００８８】
カメラ配置制御部１９４は、ユーザが操作するゲームキャラクタを、例えば画面の中央付近に位置するように、ユーザの入力操作によるゲームキャラクタの移動にあわせて仮想カメラを移動させる。また、シングルスとは異なり、ダブルスのように、２人が一組のチームとなって、チーム同士が対戦する場合、複数のゲームキャラクタがそれぞれ対象物をラケットで対戦相手のチームに打ち返すことなどによりゲームを進行させるので、各ゲームキャラクタをユーザが容易に視認できるように、試合に参加する全てのゲームキャラクタがディスプレイ１３２に表示されるよう仮想カメラを配置することとしている。
【００８９】
図５は、仮想空間内に配置されるフィールド面Ｆを示す図である。図５に示すように、ゲームプログラム１５１を実行する制御部１９０は、仮想空間内に、ゲームキャラクタ（ユーザが操作する対象のゲームキャラクタ１３４及び対戦相手となるゲームキャラクタ１３６）および対象物１３８を少なくとも配置する処理を行う。
【００９０】
図５の例では、仮想空間内のｘｙｚ座標軸において、ｘｙ平面に平行にフィールド面Ｆを配置する。フィールド面Ｆは、テニスコートを模した面である。制御部１９０は、移動操作検出部１９３によって検出されるゲームキャラクタの移動方向に従って、ゲームキャラクタ１３４を、仮想空間内に配置されるフィールド面Ｆにおいて移動させる。また、制御部１９０は、ゲームの進行に応じて、ゲームキャラクタ１３６をフィールド面Ｆにおいて移動させる。仮想空間内のｚ軸は、フィールド面Ｆに対する高さ方向を示す。制御部１９０は、各ゲームキャラクタが体操物１３８を打球するスイング動作を行うことで、オブジェクトとしての対象物１３８を、例えば物理演算の結果に基づいてフィールド面Ｆを地面としてｚ軸方向に重力が働いているものとして移動させる。
【００９１】
ここで、ｚ軸方向において、フィールド面Ｆからの高さに関する閾値１８１Ｈがゲームプログラム１５１において設定されている。例えば、ゲームキャラクタのそれぞれに、閾値１８１Ｈが設定されていることとしてもよい。この閾値１８１Ｈは、ゲームキャラクタが対象物を打球できる高さの上限値を示す。例えば、制御部１９０は、対象物１３８の位置が、ｘｙ平面上の座標としてはゲームキャラクタ１３４の周囲にあるとしても、閾値１８１Ｈを超えて高い位置にある場合は、ゲームキャラクタ１３４にスイング動作を行わせたとしても、対象物１３８の位置が高すぎるとして当該対象物１３８の打球に空振りするようにゲームを進行させる。一方、制御部１９０は、対象物１３８の位置が、平面上の座標としては、ゲームキャラクタ１３４の周囲に設定されるスイング領域の範囲内であり、閾値１８１Ｈよりも低い位置にある場合は、ゲームキャラクタ１３４にスイング動作を行わせた場合に、ゲームキャラクタ１３４が対象物１３８を打球可能であるようにゲームを進行させる。
【００９２】
このように構成されることで、ゲームプログラム１５１は、ユーザに対し、より対戦相手となるゲームキャラクタ１３６から打たれる対象物１３８の弾道を見極めて、対象物１３８の落下点がフィールド面Ｆのいずれであるかをもユーザに意識させつつゲームを進行させることができ、対象物１３８に対するゲームキャラクタ１３４の位置取りと打球のタイミングによってゲームにおける有利不利が定まることを示唆することができる。そのためゲームの興趣性がいっそう向上する。
【００９３】
図６は、ゲームキャラクタの周囲に設定される、対象物１３８を打球可能な範囲を示す図である。
【００９４】
図６の状態（Ａ）は、スイング領域と、ディスプレイ１３５に表示される打球範囲画像１４７とを示す図である。状態（Ｂ）は、仮想カメラの配置に従ってタッチスクリーン１３０に表示されるゲームキャラクタ１３４および打球範囲画像１４７を示す図である。状態（Ｃ）は、ユーザが対象物１３８を打球するための入力操作を行った場合に、ゲームキャラクタ１３４に関連付けられる（ゲームキャラクタ１３４が利き手の設定に応じて保持する）ラケットが移動する軌跡を示す。
【００９５】
状態（Ａ）の例では、図面の上側を、ゲームキャラクタ１３４と対戦するゲームキャラクタ１３６が配置されるものとしてスイング領域（第１のスイング領域１４９Ａおよび第２のスイング領域１４９Ｂ）を示している。スイング領域は、ゲームキャラクタ１３４が対象物１３８を打球することができる領域である。制御部１９０は、ユーザがタッチスクリーン１３０に対するタップ操作またはフリック操作の少なくともいずれかの入力操作を受け付けた場合に、ゲームキャラクタ１３４に、ゲームキャラクタ１３６から打たれる対象物１３８を打球するためのスイング動作を行わせる。制御部１９０は、スイング動作を行わせるための入力操作（タップ操作またはフリック操作の少なくともいずれか）を受け付けた場合に、対象物１３８が、ゲームキャラクタ１３４の周囲に設定されるスイング領域に含まれるときは、対象物１３８をスイング動作によりゲームキャラクタ１３６に向けて打ち返すよう対象物１３８をゲームキャラクタ１３６が配置されるコートに向けて飛翔させるように移動させる。制御部１９０は、スイング動作を行わせるための入力操作を受け付けた場合に、対象物１３８がスイング領域の範囲外にあるときは、ゲームキャラクタ１３４が対象物１３８の打ち返しに空振りするよう動作させ、対象物１３８を移動させる。
【００９６】
状態（Ａ）に示すように、ゲームキャラクタ１３４の周囲に、第１のスイング領域１４９Ａと、第２のスイング領域１４９Ｂとが設定されている。本実施形態のテニスゲームにおいては、打球範囲画像１４７の外側でゲームキャラクタ１３４が対象物１３８を打球する場合よりも、打球範囲画像１４７の内側で対象物１３８を打球するほうが、よりよい打球を対戦相手（ゲームキャラクタ１３６）に打ち返せるものとしている。
【００９７】
状態（Ａ）の例では、ゲームキャラクタ１３４の位置を中心とした矩形の領域を、スイング領域（第１のスイング領域および第２のスイング領域）として設定しているが、スイング領域の形状は矩形に限らず円形、楕円形その他の形状であってもよく、また、ゲームキャラクタ１３４の位置を中心とすることに限られない。制御部１９０は、ゲームキャラクタ１３４の周囲に、ユーザに対し、スイング領域の大きさを視認させるための打球範囲画像１４７をディスプレイ１３２に表示させる。このように、ゲームキャラクタ１３４の位置を中心とした場合に、第１のスイング領域１４９Ａは、第２のスイング領域１４９Ｂよりも内側に設定されている。このように、第２のスイング領域１４９Ｂは、第１のスイング領域１４９Ａよりも広い領域が設定されている。
【００９８】
また、ゲームキャラクタ１３４の前方に、スイングキャンセル可能領域１６１が設定されている。状態（Ａ）の例では、スイングキャンセル可能領域１６１は、縦方向（対戦相手のゲームキャラクタ１３６が配置される方向）の長さを、横方向の長さよりも大きく設定し、横方向の長さを、打球範囲画像１４７の横幅とほぼ一致させた長さと設定しているが、これに限られない。
【００９９】
スイングキャンセル可能領域１６１は、スイング領域の範囲外の領域（ゲームキャラクタ１３４が対象物１３８を打球できない領域）を含む。制御部１９０は、スイング動作を行わせるための入力操作を受け付けた場合に、対象物１３８が、スイングキャンセル可能領域１６１にあるときは、ゲームキャラクタ１３４に通常のスイング動作を行わせ、ゲームキャラクタ１３４が当該スイング動作を行っている過程においてゲームキャラクタ１３４を移動させるためのドラッグ操作またはゲームキャラクタ１３４にスイング動作をさせるためのタップ操作またはフリック操作を受け付けた場合に、スイング動作を完了させることなくこれら入力操作に対応した動作をゲームキャラクタ１３４に行わせる。ユーザは、このように入力操作を行うことで、例えば、ゲームキャラクタ１３４に、スイング動作の途中で、スイング動作の残りをキャンセルさせつつ移動させること、スイング動作の残りをキャンセルさせつつ再度スイング動作を行わせることができる。
【０１００】
制御部１９０は、スイング動作を行わせるための入力操作を受け付けた場合に、対象物１３８が、スイングキャンセル可能領域１６１の範囲外にある場合は、ゲームキャラクタ１３４に、ゲームキャラクタ１３４がよろめきつつ空振りするスイング動作を行わせる。このスイング動作が完了するまで、制御部１９０は、ゲームキャラクタ１３４を移動させるためのドラッグ操作、ゲームキャラクタ１３４にスイング動作をさせるためのタップ操作またはフリック操作を受け付けていたとしても、この「よろめきつつ空振りするスイング動作」を終えるまで、ゲームキャラクタ１３４を移動させる動作またはゲームキャラクタ１３４のスイング動作を待機させる。
【０１０１】
このように、対象物１３８がスイングキャンセル可能領域１６１の範囲内にある場合と範囲外にある場合とを比較すると、範囲外にある場合にスイング動作を行うことで、ユーザがゲームキャラクタ１３４に対し、移動またはスイング動作をさせるための入力操作ができない時間が増加する（よろめきつつ空振りするスイング動作をゲームキャラクタ１３４が終えるまで、ゲームキャラクタ１３４を移動等させることができない）。そのため、対象物１３８に対するゲームキャラクタ１３４の位置取りを、ゲームキャラクタ１３４の正面付近に対象物１３８を位置づけることがユーザにとって有利なことをユーザに示唆することができ、ゲームの興趣性が向上する。
【０１０２】
状態（Ｃ）において、ゲームキャラクタ１３４の利き手は右手と設定されており、フォアによるスイング動作を行っているものとする。状態（Ｃ）に示すように、スイング動作をすることで、ラケットの位置が、ラケット１４８Ａ〜ラケット１４８Ｅの位置までゲームキャラクタ１３４の位置を中心に移動する。なお、ゲームキャラクタ１３４が、バックハンドによるスイング動作を行うことができるように構成されている。制御部１９０は、例えば、オブジェクトとしてのラケットを、ラケット１４８Ａ〜１４８Ｅのように、ユーザの入力操作に応じて移動させ、当該オブジェクトとしてのラケットと、オブジェクトとしての対象物１３８とが衝突したときに、衝突したタイミングに応じて、対象物１３８において予め定められていた動作（相手側となるゲームキャラクタ１３６のコートへと対象物１３８を移動させる動作）を行わせることとしてもよい。
【０１０３】
このように、ゲームキャラクタ１３４の位置に基づいて、オブジェクトとしてのラケットを、打球範囲画像１４７の範囲内で移動させることで、ユーザに対し、打球範囲画像１４７の範囲内に対象物１３８を収めるようドラッグ操作による移動操作を入力させつつ、タップ操作またはフリック操作によってスイング動作を行わせるよう促すことができる。このように、ユーザに対し、相手側のゲームキャラクタ１３６から打たれる対象物１３８の軌跡を視認させつつ、対象物１３８の移動の軌跡を推測させて、ゲームキャラクタ１３４を移動させる操作およびタイミングに応じてスイング動作をさせるための入力操作をするよう促すことができ、ゲームの興趣性をいっそう高めることができる。
【０１０４】
図７は、ユーザの入力操作に応じて、ゲームキャラクタ１３４の移動およびスイング動作を行う場合の画面の表示例を示す図である。
【０１０５】
図７の状態（Ａ）は、ユーザがタッチスクリーン１３０に対してドラッグ操作を行うための起点となる位置（初期タッチ位置）に対して指を接近させた状態（押下位置３０Ｅ）を示す。状態（Ａ）に示すように、タッチスクリーン１３０を縦長にした状態で入力操作を受け付けるよう、仮想空間内の仮想カメラにより撮影される画面をタッチスクリーン１３０に表示する。このように、制御部１９０は、ユーザが入力操作を行って動作させるゲームキャラクタ１３４がタッチスクリーン１３０の手前側に配置され、対戦相手となるゲームキャラクタ１３６がタッチスクリーン１３０の奥側に配置されるように、仮想カメラの撮影画像をディスプレイ１３２に表示する。状態（Ａ）に示すように、制御部１９０は、タッチスクリーン１３０の手前側の辺からの一定領域１３９を空けて、ゲームキャラクタ１３４を表示する。こうすることで、タッチスクリーン１３０の手前側の辺からの一定領域１３９において、ユーザがゲームキャラクタ１３４を操作するために入力操作を行う領域が確保されるため、入力操作がいっそう容易となる。
【０１０６】
状態（Ｂ）は、状態（Ａ）に示す状態から、ユーザがタッチスクリーン１３０においてドラッグ操作を行うことで、ドラッグ操作の起点となった位置（押下位置３０Ｅ）と、ドラッグ操作が継続している位置（押下位置３０Ｆ）との位置関係に基づく方向にゲームキャラクタ１３４を移動させた状態を示す。制御部１９０は、ゲームキャラクタ１３４が移動する方向を示すＵＩ画像１８７を、タッチスクリーン１３０に表示する。状態（Ｂ）の例では、制御部１９０は、ＵＩ画像１８７として、ドラッグ操作の起点となった位置から、ドラッグ操作が継続している位置へと向かうように、円形状のオブジェクトを変形させた画像をタッチスクリーン１３０に表示する。こうすることで、ユーザに対し、ドラッグ操作の起点と、ドラッグ操作が継続している位置との位置関係に応じて定まるゲームキャラクタ１３４の移動方向を提示することができ、ユーザは、ドラッグ操作の起点を視認しつつ、ゲームキャラクタ１３４の移動方向を、ドラッグ操作が継続している位置を移動させることで入力することができる。このように、ゲームキャラクタ１３４を移動させる方向を示す入力操作をドラッグ操作で受け付けているため、ユーザがゲームキャラクタ１３４を移動させたい位置が仮想空間のいずれであっても、ユーザは、ゲームキャラクタ１３４を容易に移動させることができ、ゲームの興趣性がいっそう向上する。
【０１０７】
状態（Ｃ）は、相手側のゲームキャラクタ１３６から打たれる対象物１３８が第１のスイング領域１４９Ａにあるときに、ユーザがフリック操作（指をタッチスクリーン１３０に接触させてから押下位置３０Ｇまで移動させて、タッチスクリーン１３０から指を離す）を行ってゲームキャラクタ１３６にスイング動作を行わせて、対象物１３８を相手側のゲームキャラクタ１３６のコートへとゲームキャラクタ１３４が打ち返している状態を示す。このように、ゲームキャラクタ１３４の周囲の打球範囲画像１４７の範囲内において対象物１３８をユーザが打ち返したときは、ゲームキャラクタ１３４が姿勢を崩さずスイング動作をしたようにユーザに提示する。
【０１０８】
状態（Ｄ）は、相手側のゲームキャラクタ１３６から打たれる対象物１３８が第１のスイング領域１４９Ａの範囲外であって第２のスイング領域１４９Ｂにあるときに、ユーザがフリック操作（指をタッチスクリーン１３０に接触させてから押下位置３０Ｈまで移動させて、タッチスクリーン１３０から指を離す）を行ってゲームキャラクタ１３６にスイング動作を行わせて、対象物１３８を相手側のゲームキャラクタ１３６のコートへとゲームキャラクタ１３４が打ち返している状態を示す。このように、ゲームキャラクタ１３４の周囲の打球範囲画像１４７の範囲外において対象物１３８をユーザが打ち返したときは、ゲームキャラクタ１３４が姿勢を崩しつつスイング動作をしたようにユーザに提示する。
【０１０９】
状態（Ｃ）と状態（Ｄ）とを比較すると、いずれも、対象物１３８をゲームキャラクタ１３４が相手側のゲームキャラクタ１３６のコートへと打ち返している。しかし、状態（Ｄ）の例では、ゲームキャラクタ１３４が姿勢を崩しつつ打ち返している。そのため、打球範囲画像１４７の外周の境界付近に対象物１３８が位置している場合にユーザがスイング動作を行うことが、打球範囲画像１４７の内側に対象物１３８が位置している場合にスイング動作を行うことよりも不利であることをユーザに示唆することができる。こうすることで、相手側ゲームキャラクタ１３６から打たれる対象物１３８を、よりより位置でタイミングを計って打球するようユーザの入力操作を促すことができ、ゲームの興趣性をいっそう向上させることができる。
【０１１０】
図８は、ユーザの入力操作に応じて、ゲームキャラクタ１３４がスイング動作を行う場合およびスイング動作をキャンセルしてさらに動作を行う場合の画面の表示例を示す図である。
【０１１１】
状態（Ａ）は、相手側のゲームキャラクタ１３６から打たれる対象物１３８が第２のスイング領域１４９Ｂの範囲外で、スイングキャンセル可能領域１６１の範囲外でもある場合に、ユーザからフリック操作（ユーザが指をタッチスクリーン１３０に接触させてから押下位置３０Ｌまで移動させて指をタッチスクリーン１３０から離す）の入力を受け付けてゲームキャラクタ１３４にスイング動作を行わせた状態を示す。この状態では、スイング動作が行わせているときに対象物１３８が第２のスイング領域１４９Ｂの範囲外であるために、ゲームキャラクタ１３４が対象物１３８の打ち返しに空振りし、対象物１３８がユーザ側のコートに打ち込まれている。制御部１９０は、このときにゲームキャラクタ１３４が大きく姿勢を崩してスイング動作を行うようタッチスクリーン１３０に表示する。
【０１１２】
こうすることで、図７の状態（Ｃ）および状態（Ｄ）の例と比較して、ゲームキャラクタ１３４がいっそう不利な状態であることをユーザに示唆している。これにより、相手側ゲームキャラクタ１３６から打たれる対象物１３８を、よりより位置でタイミングを計って打球するようユーザの入力操作を促すことができ、ゲームの興趣性をいっそう向上させることができる。
【０１１３】
状態（Ｂ）は、相手側のゲームキャラクタ１３６から打たれる対象物１３８がスイングキャンセル可能領域１６１に含まれる場合に、制御部１９０がユーザからスイング動作を行うための入力操作（ユーザが指をタッチスクリーン１３０に接触させてから押下位置３０Ｍまで移動させて指をタッチスクリーン１３０から離す）を受け付けた状態を示す。このとき、対象物１３８は、第２のスイング領域１４９Ｂの範囲外に位置している。そのため、ゲームキャラクタ１３４は、スイング動作を行うが対象物１３８の打ち返しに空振りする。状態（Ｂ）の例は、ゲームキャラクタ１３４がスイング動作を完了させるまでの過程の状態（スイング中）を示す。
【０１１４】
状態（Ｃ）は、状態（Ｂ）において、制御部１９０が、ユーザから、新たにスイング動作を行うためのフリック操作（ユーザが指をタッチスクリーン１３０に接触させてから押下位置３０Ｎまで移動させて指をタッチスクリーン１３０から離す）を受け付けた状態を示す。状態（Ｃ）において、制御部１９０は、状態（Ｂ）でスイング動作の過程の状態にあるゲームキャラクタ１３４のスイング動作を、途中でキャンセルして新たにフリック操作に基づくスイング動作を行わせる。
【０１１５】
状態（Ｄ）は、状態（Ｂ）において、制御部１９０が、ユーザから、新たにゲームキャラクタ１３４を移動させるためのドラッグ操作を受け付けた状態（ドラッグ操作を開始した位置と、ドラッグ操作を継続している押下位置３０Ｐとの位置関係に基づく方向へゲームキャラクタ１３４を移動させている状態）を示す。
【０１１６】
こうすることで、ゲームキャラクタ１３４にスイング動作を行わせた位置が、対象物１３８を打ち返すのに適していない位置であったとしても、対象物１３８がスイングキャンセル可能領域１６１に含まれている場合は、ゲームキャラクタ１３４がスイング動作をしている過程であっても、ユーザに対し、直ちにゲームキャラクタ１３４にスイング動作または移動をさせる入力操作を受付可能な環境を提供することができ、ユーザの操作性が向上する。特に、ユーザ同士がマルチプレイにより対戦する場合は、ゲームキャラクタ１３４がスイング動作を行ったことを、対戦相手のユーザに視認させることで、対象物１３８の打球のタイミングを対戦相手に把握させにくくすることができ、打球のタイミングに応じた駆け引きをより豊かにすることができるため、ゲームの興趣性をいっそう向上させることができる。
【０１１７】
また、スイングキャンセル可能領域１６１を、ゲームキャラクタ１３４の周囲の打球範囲画像１４７の横幅にあわせて縦長方向に長く設定することで、ユーザに対し、対象物１３８をゲームキャラクタ１３４の正面側に位置付けるようゲームキャラクタ１３４を移動させることを促すことができる。これにより、相手側のゲームキャラクタ１３６から打たれる対象物１３８の軌道をいち早く見極めてゲームキャラクタ１３４の移動を早く開始することで有利になることをユーザに示唆することができる。特に、対戦プレイにおけるユーザの力量を早期に向上させるようユーザに促すことができ、ゲームの興趣性をいっそう向上させることができる。
【０１１８】
＜処理の流れ＞
図９は、制御部１９０が、対象物１３８を打ち返すためのタップ操作またはフリック操作を受け付けた場合に、ゲームキャラクタ１３４にスイング動作を行わせて対象物１３８の移動を制御する処理を示すフローチャートである。制御部１９０は、スイング動作のための入力操作（タップ操作またはフリック操作）を受け付けると、図９に示す処理を行って、対象物１３８の移動を制御する。
【０１１９】
ステップＳ９０１において、制御部１９０は、スイング動作のための入力操作を受け付けたときの、フィールド面Ｆにおける対象物１３８のｘｙ平面における位置およびｚ軸方向の高さの情報を取得する。
【０１２０】
ステップＳ９０３において、制御部１９０は、ゲームキャラクタ１３４の位置と、ゲームキャラクタ１３４に設定されるスイング領域（第１のスイング領域１４９Ａおよび第２のスイング領域１４９Ｂ）と、対象物１３８の位置の情報（フィールド面Ｆにおける対象物１３８のｘｙ平面の座標）とに基づいて、対象物１３８（テニスボール）が、スイング領域に含まれるか否かを判断する。制御部１９０は、対象物１３８がスイング領域に含まれる場合は（ステップＳ９０３においてＹＥＳ）、ステップＳ９０５の処理を行い、そうでない場合は（ステップＳ９０３においてＮＯ）、ステップＳ９１５の処理を行う。
【０１２１】
ステップＳ９０５において、制御部１９０は、対象物１３８の高さと、閾値とを比較することにより、対象物１３８の高さが、フィールド面から一定距離以内の高さであるか否か（ゲームキャラクタ１３４が打球可能な高さであるか）を判断する。対象物１３８の高さがフィールド面から一定虚位以内の高さである場合（ステップＳ９０５においてＹＥＳ）、制御部１９０は、ステップＳ９０７の処理を行い、そうでない場合（ステップＳ９０５においてＮＯ）、ステップＳ９１５の処理を行う。
【０１２２】
ステップＳ９０７において、制御部１９０は、スイング領域の内側（第１のスイング領域１４９Ａの範囲内）に対象物１３８があるか否かを判断し、第１のスイング領域１４９Ａの内側に対象物１３８がある場合（ステップＳ９０７においてＹＥＳ）、ステップＳ９０９の処理を行い、そうでない場合（ステップＳ９０７においてＮＯ）、ステップＳ９１１の処理を行う。
【０１２３】
ステップ９０９において、制御部１９０は、ゲームキャラクタ１３４に通常のスイング動作（図７の状態（Ｃ））を行わせて、対象物１３８の着弾点を演算し、演算結果に応じて対象物１３８を相手側のゲームキャラクタ１３６へ向けて打ち返すよう対象物１３８を移動させる。
【０１２４】
ステップＳ９１１において、制御部１９０は、ゲームキャラクタ１３４に、ゲームキャラクタ１３４がよろめきつつ（姿勢を崩しつつ）打球するスイング動作（図７の状態（Ｄ））を行わせて、対象物１３８の着弾点を演算子、演算結果に応じて対象物１３８を相手側のゲームキャラクタ１３６へ向けて打ち返すよう対象物１３８を移動させる。
【０１２５】
ステップＳ９１３において、制御部１９０は、対象物１３８が一定以上の高さにあるためにゲームキャラクタ１３４が打球に空振りするようスイング動作を行わせて対象物１３８を移動させる。
【０１２６】
ステップＳ９１５において、制御部１９０は、対象物１３８が、ゲームキャラクタ１３４の前方に設定されるスイングキャンセル領域１６１に位置しているか否かを判断し、対象物１３８がスイングキャンセル領域１６１に位置している場合に（ステップＳ９１５においてＹＥＳ）、ステップＳ９１７の処理を行い、そうでない場合（ステップＳ９１５においてＮＯ）、ステップＳ９１９の処理を行う。
【０１２７】
ステップＳ９１７において、制御部１９０は、ゲームキャラクタ１３４に通常のスイング動作を行わせ（図８の状態（Ｂ））、スイング動作中において、ゲームキャラクタ１３４を移動させるためのドラッグ操作またはゲームキャラクタ１３４に対象物１３８を打球させるためのタップ操作またはフリック操作の入力を受け付ける。
【０１２８】
ステップＳ９１９において、制御部１９０は、ゲームキャラクタ１３４がよろめきつつ（姿勢を崩しつつ）打球に空振りするスイング動作を行わせ（図８の状態（Ａ））て、対象物１３８を移動させる。
【０１２９】
＜実施の形態２＞
次に、別の実施の形態のゲーム配信システム１について説明する。
実施の形態２では、ゲームキャラクタ１３４が対象物１３８を打球する場合に、打球範囲画像１４７の中心部に近い位置での打球がユーザにとって、有利に働かないことをユーザに示唆する。
【０１３０】
図１０は、実施の形態２におけるスイング領域を示す図である。
図１０の状態（Ａ）は、第１のスイング領域１４９Ａの範囲内に含まれる、近距離エリア１４９Ｃと、好打球エリア１４９Ｒと、好打球エリア１４９Ｌとを示す図である。
【０１３１】
状態（Ｂ）は、ゲームキャラクタ１３４の正面に、相手側のゲームキャラクタ１３６から打たれる対象物１３８が接近している状態を示す。
【０１３２】
状態（Ｃ）は、ゲームキャラクタ１３４の正面において対象物１３８を打球する入力操作をユーザが行った場合に、対象物１３８に対する打球位置がゲームキャラクタ１３４に近すぎることをユーザに通知するためのタッチスクリーン１３０の表示例を示す。
【０１３３】
制御部１９０は、スイング動作をゲームキャラクタ１３４に行わせるための入力操作があった場合に、ゲームキャラクタ１３４の正面の一領域に設定される近距離エリア１４９Ｃに対象物１３８が位置するときは、ユーザにとって不利な位置取りであることを示す通知をタッチスクリーン１３０に表示する。例えば、状態（Ｃ）に示すように、制御部１９０は、ゲームキャラクタ１３４の周囲に、ゲームキャラクタ１３４が対象物１３８を打球するための位置取りを示唆する情報１８５をタッチスクリーン１３０に表示する。このとき、制御部１９０は、対象物１３８を、相手側のゲームキャラクタ１３６にとってスマッシュを打球するための好機を示すよう移動させることとしてもよい。
【０１３４】
また、制御部１９０は、スイング動作をゲームキャラクタ１３４に行わせるための入力操作があった場合に、ゲームキャラクタ１３４の第１のスイング領域１４９Ａの範囲内であって、好打球エリア１４９Ｒまたは好打球エリア１４９Ｌに対象物１３８が位置する場合に、ゲームキャラクタ１３４のスイング動作が良好であることをタッチスクリーン１３０に表示し、相手側のゲームキャラクタ１３６が位置するコートに向けて、対象物１３８を、より高速で移動させることとしてもよい。好打球エリア１４９Ｒおよび好打球エリア１４９Ｌは、例えば、現実にラケットでテニスボールを打球するときに、打球されたテニスボールの弾速が高速となるような打球位置を模して、第１のスイング領域１４９Ａの範囲内に設定してもよい。
【０１３５】
このように構成することで、ユーザに対し、対象物１３８を打ち返すために、打球範囲画像１４７の範囲内に対象物１３８を収めようとゲームキャラクタ１３４を移動させるよう促しつつ、単に打球範囲画像１４７の中心付近で対象物１３８を打球するだけではゲームの進行が有利にならないと示唆することで、より対象物１３８に対するゲームキャラクタ１３４の良好な位置取りに変化を持たせることができ、ゲームの興趣性をいっそう向上させることができる。
また、図１０の状態（Ａ）に示すように、（相手側のゲームキャラクタ１３６が配置される方向を縦方向とした場合に）ゲームキャラクタ１３４の縦方向（前後方向）において近距離エリア１４９Ｃ、好打球エリア１４９Ｒおよび好打球エリア１４９Ｌの位置を近くすることで、対象物１３８を打球するタイミングとしては良好であっても、対象物１３８を打球する位置取りがゲームキャラクタ１３４の正面になるほど打球がユーザにとって不利になるようにすることで、打球のタイミングのみならず打球のための良好な位置取りをもユーザに示唆することができる。
【０１３６】
＜実施の形態３＞
上記実施例の他に、以下のように構成することとしてもよい。
【０１３７】
（１）ゲームプログラム１５１は、仮想空間内にゲームキャラクタ１３４、相手側のゲームキャラクタ１３６、および、対象物１３８を少なくとも配置し、ゲームキャラクタ１３４および相手側のゲームキャラクタ１３６を、仮想空間内に配置されるフィールド面Ｆにおいて移動させることで、対象物１３８を交互に打ち返すものである。
制御部１９０は、相手側のゲームキャラクタ１３６が打ち返す対象物１３８のフィールド面Ｆへの落下点（着弾点）が、テニスゲームにおけるフィールド面Ｆの対象物１３８が着弾可能な有効領域の領域外である場合（アウトである場合）に、当該領域外に着弾した対象物１３８がスイング領域の範囲内にあるか否かにかかわらず、スイング動作を行わせるための入力操作を受け付けたときにゲームキャラクタ１３４が対象物１３８の打ち返しに空振りするよう対象物１３８を移動させる。
【０１３８】
このように、相手側のゲームキャラクタ１３６が打ち返した打球が、フィールド面Ｆにおいて、テニスゲーム上はアウトである領域に着弾した場合は、制御部１９０は、ゲームキャラクタ１３４にスイング動作を行わせていたとしても、当該スイング動作によっては対象物１３８を打ち返さないようにタッチスクリーン１３０に表示する。こうすることで、ユーザに対し、対象物１３８を打球範囲画像１４７の範囲内に収めるようゲームキャラクタ１３４を移動させることに入力操作を注力させつつ、アウトになった対象物１３８については打球しないことで、テニスゲームにおけるラリーが決着したことをユーザに示唆することができる。
【０１３９】
（２）制御部１９０は、テニスゲームとしての試合の開始が、相手側のゲームキャラクタ１３６による対象物１３８への打撃（サーブ動作）によりなされる場合に、相手側のゲームキャラクタ１３６が対象物１３８への打撃（サーブ動作）を行うまで、タップ操作またはフリック操作を受け付けたとしてもゲームキャラクタ１３４にスイング動作を行わせず、相手側のゲームキャラクタ１３６が対象物１３８への打撃（サーブ動作）を行うことでプレイ開始となると、タップ操作またはフリック操作によるスイング動作を行わせることとしてもよい。
【０１４０】
＜変形例＞
上記の実施形態において、打球範囲画像１４７は、ゲームキャラクタ１３４のパラメータに応じて広さが設定されていることとしてもよい。
【０１４１】
上記の実施形態において、打球範囲画像１４７は、ゲームキャラクタ１３４がよろめきつつスイング動作をする場合のように、ユーザにとって不利なスイング動作をしているときに、タッチスクリーン１３０における表示方法を、打球範囲画像１４７の透過度合いを高める、または打球範囲画像１４７の表示をオフにする等の制御をすることとしてもよい。こうすることで、ユーザにとって不利な状態にあることを、打球範囲画像１４７の表示方法を変更することでユーザに示唆することができ、ゲームの興趣性をいっそう向上させることができる。
【０１４２】
相手側のゲームキャラクタ１３６がサーブ動作を行うまでは、ゲームキャラクタ１３４にスイング動作を行わせることは試合の決着には影響を及ぼさないため、このように構成することで、相手側のゲームキャラクタ１３６のサーブ動作による試合の開始をユーザにいっそう意識させることができ、ゲームの興趣性をいっそう向上させることができる。
【０１４３】
以上のように各実施形態のゲーム配信システムを構成する携帯端末１０およびサーバ２０の動作について説明してきたが、携帯端末１０で行われる各処理をサーバ２０で行うこととしてもよいし、サーバ２０で行われる処理を携帯端末１０で行うこととしてもよい。
【０１４４】
例えば、携帯端末１０は、タッチスクリーン１３０に対するユーザの入力操作を受け付けて、受け付けた操作内容をサーバ２０へ送信する。サーバ２０は、ユーザの入力操作を携帯端末１０から受け付けて、ゲームを進行させるための各処理を行い、仮想カメラの配置に基づいて携帯端末１０に表示させるための表示画面を生成し、生成した表示画面を、逐次、携帯端末１０に表示する。このように、ゲームを進行させるための処理の大部分をサーバ２０が担うこととしてもよい。また、ゲームを進行させるための処理の大部分を携帯端末１０が担うこととしてもよい。
【０１４５】
今回開示された実施の形態はすべての点で例示であって制限的なものでないと考えられるべきである。この発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【符号の説明】
【０１４６】
１０  携帯端末、２０  サーバ、２２  通信ＩＦ、２３  入出力ＩＦ、２５  メモリ、２６  ストレージ、２９  プロセッサ、８０  ネットワーク、８１  無線基地局、８２  無線ルータ、１１０  アンテナ、１２０  無線通信ＩＦ、１３０  タッチスクリーン、１３１  タッチパネル、１３２  ディスプレイ、１３４  ゲームキャラクタ、１３６  ゲームキャラクタ、１３８  対象物、１５０  記憶部、１５１  ゲームプログラム、１５３  バッファメモリ、１５５  初期タッチ位置座標、１６０  音声処理部、１７０  マイク、１８０  スピーカ、１８７  ＵＩ画像、１９０  制御部、１９１  入力操作受付部、１９２  ゲーム進行処理部、１９３  移動操作検出部、１９４  カメラ配置制御部、１９５  オブジェクト制御部、１９６  表示制御部、２２０  通信部、２５０  記憶部、２５１  ゲームプログラム、２５２  ゲーム情報、２５３  ユーザ情報、２９０  制御部、２９１  送受信部、２９２  サーバ処理部、２９３  データ管理部、２９４  マッチング部、２９５  計測部。
【図１】
2017209573.tif 000003
【図２】
2017209573.tif 000004
【図３】
2017209573.tif 000005
【図４】
2017209573.tif 000006
【図５】
2017209573.tif 000007
【図６】
2017209573.tif 000008
【図７】
2017209573.tif 000009
【図８】
2017209573.tif 000010
【図９】
2017209573.tif 000011
【図１０】
2017209573.tif 000012