(58)【調査した分野】(Int.Cl.,DB名)
【発明を実施するための形態】
【0020】
[1.ゲーム装置のハードウェア構成]
以下、本発明の実施形態の一例について図面に基づき詳細に説明する。本発明の実施形態に係るゲーム装置は、例えば、家庭用ゲーム機(据置型ゲーム機)、携帯ゲーム機、携帯電話機(スマートフォン)、携帯情報端末又はパーソナルコンピュータ等によって実現される。ここでは、実施形態に係るゲーム装置が家庭用ゲーム機によって実現される場合について説明する。
【0021】
図1は、本発明の実施形態に係るゲーム装置のハードウェア構成を示す図である。
図1に示すゲーム装置10は、家庭用ゲーム機11、表示部32、音声出力部34、及び光ディスク36(情報記憶媒体)を含む。
【0022】
表示部32及び音声出力部34は、家庭用ゲーム機11に接続される。表示部32は、例えば、家庭用テレビ受像機又は液晶ディスプレイなどである。音声出力部34は、例えば、家庭用テレビ受像機に内蔵されたスピーカ又はヘッドホンなどである。
【0023】
家庭用ゲーム機11は、公知のコンピュータゲームシステムである。家庭用ゲーム機11は、バス12、制御部14、主記憶16、画像処理部18、入出力処理部20、音声処理部22、光ディスク再生部24、ハードディスク26、通信インタフェース28、及びコントローラ30を含む。
【0024】
制御部14は、一又は複数の制御部(例えば、CPU等)を含む。制御部14は、図示しないROMに格納されるオペレーティングシステムや、光ディスク36から読み出されるプログラムに基づいて、家庭用ゲーム機11の各部を制御する処理等を実行する。
【0025】
主記憶16は、例えば、RAMを含む。光ディスク36から読み出されたプログラム及びデータは、主記憶16に書き込まれる。主記憶16は、制御部14の作業用メモリとしても用いられる。バス12は、アドレス及びデータを家庭用ゲーム機11の各部でやり取りするためのものである。
【0026】
画像処理部18は、VRAMを含む。画像処理部18は、制御部14から供給される画像データに基づいてVRAM上にゲーム画面を描画する。VRAM上に描画されたゲーム画面は、ビデオ信号に変換されて所定のタイミングで表示部32に出力される。
【0027】
入出力処理部20は、制御部14が、音声処理部22、光ディスク再生部24、ハードディスク26、通信インタフェース28、及びコントローラ30にアクセスするためのインタフェースである。
【0028】
音声処理部22は、サウンドバッファを含む。音声処理部22は、光ディスク36からサウンドバッファに読み出された音声データを、音声出力部34から出力する。
【0029】
通信インタフェース28は、インターネットなどの通信ネットワークに、家庭用ゲーム機11を有線又は無線接続するためのインタフェースである。
【0030】
光ディスク再生部24は、光ディスク36に記録されたプログラムやデータを読み取る。本実施形態においては、プログラムやデータを家庭用ゲーム機11に供給するために、光ディスク36が用いられる場合を説明するが、メモリカード等の他の情報記憶媒体が用いられて、プログラムやデータが家庭用ゲーム機11に対して供給されるようにしてもよい。他にも例えば、通信ネットワークを介して遠隔地からプログラムやデータが家庭用ゲーム機11に供給されるようにしてもよい。
【0031】
ハードディスク26は、一般的なハードディスク装置(補助記憶装置)である。なお、本実施形態において光ディスク36に記憶されるものとして説明するプログラムやデータは、ハードディスク26に記憶されていてもよい。
【0032】
コントローラ30は、ユーザによる各種ゲーム操作を受け付けるための操作手段である。家庭用ゲーム機11には、一又は複数のコントローラ30が有線又は無線接続される。入出力処理部20は、一定周期毎(例えば、1/60秒毎)にコントローラ30の各操作部材の状態をスキャンする。このスキャン結果を表す操作信号は、バス12を介して制御部14にされる。制御部14は、操作信号に基づいてユーザのゲーム操作を判定する。
【0033】
図2は、コントローラ30の一例を示す図である。
図2において、X軸は、コントローラ30の長軸方向(左右方向)に対応し、Y軸は、コントローラ30の短軸方向(上下方向)に対応しており、X軸とY軸とは直交している。以降、X軸正方向を右方向といい、X軸負方向を左方向という。また、Y軸正方向を上方向といい、Y軸負方向を下方向という。
【0034】
コントローラ30の表面30aには、方向ボタン群40と、ボタン42A,42B,42X,42Yと、が設けられている。方向ボタン群40は、上方向に対応する上方向ボタン40Uと、下方向に対応する下方向ボタン40Dと、左方向に対応する左方向ボタン40Lと、右方向に対応する右方向ボタン40Rと、を含む。方向ボタン群40は例えば方向を指示する操作に用いられる。ボタン42A,42B,42X,42Yは各種ゲーム操作に用いられる。
【0035】
更に、コントローラ30は、スティック(レバー)42L,42Rも備えている。スティック44L,44Rは、コントローラ30の筐体の表面30aに直立している。スティック44L,44Rは、この直立状態から全方位に所定角度だけ傾倒自在に構成されている。スティック44Lの上下方向及び左右方向の傾き情報が家庭用ゲーム機11に入力される。例えば、スティック44L,44Rも方向ボタン群40と同様に、方向を指示する操作に用いられる。
【0036】
[2.ゲーム装置において実行されるゲーム]
ゲーム装置10は、光ディスク36から読み出したゲームプログラムを実行することによって、ゲーム空間においてキャラクタが動作(行動)するゲームを実行する。本実施形態では、サッカーの試合会場を模したゲーム空間において複数のキャラクタが動作するサッカーゲームが実行される場合について説明する。サッカーゲームが開始されると、例えば、ゲーム空間が主記憶16に構築される。
【0037】
図3は、ゲーム空間の一例を示す図である。ゲーム空間50は、互いに直交する三つの座標軸(Xw軸、Yw軸、及びZw軸)が設定された仮想的な3次元空間である。ゲーム空間50に配置される各オブジェクトの位置は、例えば、ワールド座標系(Xw−Yw−Zw座標系)の3次元座標で特定される。
【0038】
図3に示すように、ゲーム空間50には、サッカーフィールドを表すオブジェクトであるフィールド52が配置される。フィールド52上では、ユーザが操作するチーム(以降、「ユーザチーム」という。)と、対戦相手(コンピュータ又は他のユーザ)が操作するチーム(以降、「対戦相手チーム」という。)と、の間でサッカーの試合が行われる。
【0039】
フィールド52上には、2本のゴールライン54a,54b、2本のタッチライン56a,56b、及びセンターライン58が表されている。また、フィールド52上には、サッカーのゴールを表すオブジェクトであるゴール60と、ユーザチームに所属するサッカー選手を表すオブジェクトであるキャラクタ62と、対戦相手チームに所属するサッカー選手を表すオブジェクトであるキャラクタ64と、サッカーボール(移動物体)を表すオブジェクトであるボール66と、が配置される。
【0040】
なお、
図2では省略されているが、フィールド52上には、ユーザチームに所属する11体のキャラクタ62と、対戦相手チームに所属する11体のキャラクタ64と、が配置される。
【0041】
キャラクタ62(64)とボール66とが近づくと、所定条件の下、当該キャラクタ62(64)とボール66とが関連づけられる。この場合、キャラクタ62(64)の移動動作は、ドリブル動作になる。以下では、キャラクタ62(64)にボール66が関連づけられた状態のことを「キャラクタ62(64)がボール66を保持している」というように記載する。
【0042】
また、ゲーム空間50には、仮想カメラ68(視点)が設定される。ゲーム空間50を仮想カメラ68から見た様子を表すゲーム画面が、表示部32に表示される。ゲーム画面は、ゲーム空間50に配置された各オブジェクトの頂点座標が、所定の座標変換演算を用いてワールド座標系からスクリーン座標系に座標変換されることによって生成される。
【0043】
図4は、表示部32に表示されるゲーム画面の一例を示す図である。
図4に示すように、ゲーム画面70には、仮想カメラ68の視野に含まれる各オブジェクトが表示される。本実施形態では、ユーザチームに所属するキャラクタ62のうちの何れかが、ユーザの操作に基づいて行動する。
図4に示す状態では、例えば、ボール66を保持しているキャラクタ62が、ユーザの操作対象として設定されている。キャラクタ62の頭上には、ユーザの操作対象に設定されていることを示すカーソル72が表示される。
【0044】
例えば、ユーザは、コントローラ30を用いて方向指示操作を行うことによって、操作対象であるキャラクタ62を移動させる。例えば、キャラクタ62がボール66を保持している場合、ユーザは、コントローラ30を用いて、キャラクタ62にドリブルをさせる方向を指示したり、ボール66を蹴る方向を指示したりする。
【0045】
ゲーム空間50に配置される各キャラクタ62(64)のうちでユーザの操作対象とならないものは、所定の行動アルゴリズムに従って自律的に行動する。例えば、ユーザの操作対象以外のキャラクタ62(64)は、コンピュータの操作に基づいて行動する。
【0046】
本実施形態のゲーム装置10では、ユーザがサッカーの試合をプレイする試合モードの他に、ゲームに関する各種操作をユーザが練習するための練習モードがある。例えば、練習モードにおいては、現実世界で行われたサッカーの試合の有名なシーンを再現するように、キャラクタ62(64)が動作する。当該シーンにおいてキャラクタ62(64)が特定の動作(例えば、フェイント動作)をする場合、ゲーム装置10は、当該特定の動作をさせるための操作(以降、特定操作という。)を行うようにユーザを促す。
【0047】
図5は、練習モードにおけるゲーム画面70の画面遷移を示す図である。
図5に示すように、練習モードが開始されると、ゲーム画面70においてキャラクタ62(64)が自動的に動作する(ゲーム画面70Aの状態)。この状態では、ユーザがコントローラ30を操作しても、当該操作に応じた動作をキャラクタ62が行うわけではない。
【0048】
例えば、ボール66を保持するキャラクタ62がキャラクタ64をフェイントでかわすタイミング(以降、特定動作タイミングという。)が近づくと、キャラクタ62の影を示す影画像74と、キャラクタ62にフェイントをさせるための操作内容を示す操作内容画像76と、が表示される(ゲーム画面70Bの状態)。
【0049】
影画像74は、キャラクタ62と同じ形状又は略同じ形状のポリゴンで構成されており、特定動作タイミングが近づくと、ゲーム空間50に影画像74を示すオブジェクトが生成される。ここでは、影画像74は、特定動作タイミングにおけるキャラクタ62の立ち位置に表示される。即ち、特定動作タイミングが近づくにつれて、ゲーム画面70においてキャラクタ62が影画像74に近づくことになる。なお、影画像74を示すオブジェクトとキャラクタ62との重なり判定は実行されるが、当たり判定は実行されない。
【0050】
特定動作タイミングが到来した場合にユーザが特定操作(操作内容画像76に示されている操作内容)を正確に行うと、ボール66を保持するキャラクタ62がキャラクタ64をフェイントでかわすシーンが再生される(ゲーム画面70Cの状態)。即ち、ボール66を保持するキャラクタ62が影画像74に重なったタイミングで、ユーザが特定操作(操作内容画像76に示されている操作内容)を行うと、当該キャラクタ62がフェイント動作を行うことになる。その後、影画像74及び操作内容画像76は、ゲーム画面70から消去される。なお、影画像74及び操作内容画像76は、ゲーム画面70から消去されずに表示されたままになっていてもよい。
【0051】
一方、特定動作タイミングが到来した場合にユーザが特定操作を正確に行うことができなかった場合(操作内容画像76に示されている操作内容と異なる操作をした場合)には、上記シーンは再生されない(ゲーム画面70Dの状態)。この場合、シーンの最初の状態(即ち、ゲーム画面70Aの状態)から再びやり直すことをユーザに促すメッセージ78が表示される。なお、この場合、影画像74及び操作内容画像76は、ゲーム画面70から消去されずに表示されたままであってもよい。以降、上記の練習モードを実現するための構成について、詳細に説明する。
【0052】
[3.ゲーム装置において実現される機能]
図6は、ゲーム装置10の機能ブロック図である。
図6に示すように、ゲーム装置10は、ゲームデータ記憶部80と、ゲーム実行部82と、受付部84と、自動制御部86と、表示制御部88と、案内部90と、操作比較部92と、タイミング比較部94と、決定部96と、を含む。
【0053】
ゲーム装置10は、光ディスク36に記憶されたゲームプログラムを実行することによって、
図6に示す各機能を実現する。ゲームデータ記憶部80は、例えば、主記憶16及び光ディスク36等を主として実現され、他の各機能は、制御部14を主として実現される。なお、ゲーム装置10は、ゲームデータ記憶部80と、ゲーム実行部82と、受付部84と、自動制御部86と、決定部96と、を含んでいればよく、他の機能は省略してもよい。
【0054】
[3−1.ゲームデータ記憶部]
ゲームデータ記憶部80は、例えば、サッカーゲームを実現するために必要なデータを記憶する。本実施形態では、ゲームデータ記憶部80は、キャラクタ62(64)が複数の動作を行うシーンを示すシーンデータと、特定操作の操作内容を示す特定操作データと、を記憶する。
【0055】
シーンデータは、ゲーム空間50の時系列的な状態変化を示し、例えば、ゲーム空間50に配置されたオブジェクトの時系列的な状態変化(例えば、位置変化又は形状変化)を示す。本実施形態では、シーンデータは、各キャラクタ62(64)の時系列的な状態変化を示す。例えば、シーンデータには、時間(例えば、シーンの開始時点からの経過時間)と、各キャラクタ62のポリゴンの頂点の3次元座標と、が関連付けられている。シーンデータが再生されることによって、ゲーム空間50においてキャラクタ62(64)が複数の動作を順番に行うことになる。
【0056】
図7は、特定操作データの一例を示す図である。
図7に示すように、特定操作データには、特定動作タイミングと特定操作の操作内容とが関連付けられている。特定操作の操作内容としては、特定動作タイミングにおいて押下されるべきコントローラ30のボタンに関する情報が格納される。
【0057】
なお、制御部14は、ゲームデータ記憶部80に記憶されたデータを取得又は更新する手段として機能する。また、ゲームデータ記憶部80に記憶されるデータは、上記の例に限られない。他にも例えば、ゲームデータ記憶部80は、ゲーム空間50の現在の様子を示すデータ(各オブジェクトの位置や頂点座標を示すデータ)や、シーンデータの再生を開始してからの経過時間を示すデータ、ゲーム画面70に表示される各種画像データ等を記憶するようにしてもよい。
【0058】
[3−2.ゲーム実行部]
ゲーム実行部82は、ゲーム空間50においてキャラクタ62(64)が動作するゲームを実行する。例えば、ゲーム実行部82は、練習モードが開始された場合、ゲーム空間50の現在の様子を示すデータを生成してゲームデータ記憶部80に格納する。また例えば、ゲーム実行部82は、練習モードが開始された場合、計時処理に応じてシーンデータの再生を開始してからの経過時間を示すデータを更新する。
【0059】
[3−3.受付部]
受付部84は、ユーザの操作を受け付ける。受付部84は、操作手段(例えば、コントローラ30)からの操作信号を受信することによって、ユーザの操作を受け付ける。
【0060】
[3−4.自動制御部]
自動制御部86は、キャラクタ62(64)が複数の動作を行うシーンを示すデータ(例えば、シーンデータ)を記憶する手段(例えば、ゲームデータ記憶部80)に記憶される当該データに基づいて、ゲーム空間50においてキャラクタ62(64)を動作させる。
【0061】
本実施形態においては、自動制御部86は、シーンデータを再生することによって、ゲーム空間50においてキャラクタ62(64)を動作させる。例えば、自動制御部86は、シーンデータに定義されたキャラクタ62(64)の状態変化に基づいて、キャラクタ62(64)を自動的に動作させる。
【0062】
「キャラクタ62(64)を自動的に動作させる」とは、キャラクタ62(64)がユーザの操作に基づいて動作せずに、コンピュータの操作に基づいて動作することである。即ち、自動制御部86によるキャラクタ62の制御が行われている場合、ユーザの操作によりキャラクタ62が動作することが制限されるともいえる。
【0063】
[3−5.表示制御部]
表示制御部88は、ゲーム空間50を所与の視点(例えば、仮想カメラ68)から見た様子を示す画像をゲーム画面70に表示させる。表示制御部88は、仮想カメラ68の視野内に含まれるオブジェクトを座標変換することによって、ゲーム画面70の表示制御を行う。即ち、表示制御部88は、シーンデータに基づいて、ゲーム空間50でキャラクタ62(64)が動作する様子を示す画像をゲーム画面70に表示させる。
【0064】
[3−6.案内部]
案内部90は、特定動作タイミングにおけるキャラクタ62のゲーム空間50内の位置に対応するゲーム画面70内の位置に、所与の画像(例えば、影画像74)を表示させることによって、特定動作タイミングをユーザに案内する。
【0065】
影画像74を表示させるべき位置に関する情報は、ゲームデータ記憶部80に記憶される。例えば、特定動作タイミングにおけるキャラクタ62の立ち位置を示す3次元座標が、ゲームデータ記憶部80に記憶されている。案内部90は、当該3次元座標が示すゲーム空間50内の位置に、所与のオブジェクト(例えば、キャラクタ62の影を示すオブジェクト)を生成及び配置することによって、ゲーム画面70に影画像74を表示させる。
【0066】
[3−7.操作比較部]
操作比較部92は、キャラクタ62が複数の動作のうちの特定の動作をすべきタイミングが到来する場合、ユーザが行った操作と、キャラクタ62に当該特定の動作をさせるための操作と、を比較する。操作比較部92は、特定動作タイミングが到来した場合、当該特定動作タイミングに関連付けられた特定操作と、ユーザが行った操作と、を比較する。
【0067】
[3−8.タイミング比較部]
タイミング比較部94は、ユーザが操作を行ったタイミングと、特定動作タイミングと、を比較する。タイミング比較部94は、受付部84がユーザの操作を受け付けたタイミングと、特定動作タイミングと、を比較する。
【0068】
[3−9.決定部]
決定部96は、操作比較部92の比較結果に基づいて、自動制御部86の制御により特定動作タイミング以降の動作をキャラクタ62(64)が行うことを許可するか否かを決定する。決定部96は、操作比較部92の比較結果が所与の結果であった場合(例えば、ユーザによる操作と特定操作とが一致していた場合)、自動制御部86の制御によりキャラクタ62が動作することを許可すると決定する。「自動制御部86の制御によりキャラクタ62が動作することを許可する」とは、特定動作タイミング以降のシーンの再生を許可することであり、特定動作の次の動作をキャラクタ62が自動的に行うことを許可することである。
【0069】
また、本実施形態においては、決定部96は、操作比較部92の比較結果と、タイミング比較部94の比較結果と、に基づいて、自動制御部86の制御により特定動作タイミング以降の動作をキャラクタ62(64)が行うことを許可するか否かを決定する。決定部96は、操作比較部92の比較結果が所与の結果である場合(例えば、ユーザによる操作と特定操作とが一致していた場合)、かつ、タイミング比較部94の比較結果が所与の結果である場合(例えば、タイミングのずれが基準値以下である場合)、自動制御部86の制御によりキャラクタ62が動作することを許可すると決定する。
【0070】
[4.ゲーム装置において実行される処理]
図8及び
図9は、ゲーム装置10が実行する処理を示すフロー図である。制御部14は、光ディスク36に記憶されたプログラムに従って、
図8及び
図9に示す処理を実行する。例えば、
図8及び
図9に示す処理は、練習モードを開始するための操作がユーザにより行われた場合に実行される。
【0071】
まず、
図8に示すように、制御部14は、主記憶16にゲーム空間50を構築して光ディスク36に記憶されたシーンデータの再生を開始する(S1)。S1においては、制御部14は、ゲーム空間50の現在の様子を示すデータを生成して主記憶16に格納し、シーンデータに基づいて、ゲーム空間50にキャラクタ62(64)を配置し、キャラクタ62(64)に動作を開始させる。
【0072】
制御部14は、シーンデータを再生し、ゲーム空間50においてキャラクタ62(64)を動作させる(S2)。S2においては、制御部14は、シーンデータの再生をしてからの経過時間を更新する。そして、制御部14は、シーンデータを参照して、現在の経過時間に関連付けられた状態に基づいて、キャラクタ62(64)を動作させる。即ち、制御部14は、シーンデータに定義された複数の動作の各々を、キャラクタ62(64)に時系列順にさせることになる。
【0073】
制御部14は、ゲーム空間50の現在の様子を示す画像をゲーム画面70に表示させる(S3)。制御部14は、現時点が案内対象期間に含まれるか否かを判定する(S4)。案内対象期間は、特定動作タイミングをユーザに案内すべき期間であり、特定動作タイミングを含む所定期間である。例えば、案内対象期間は、特定動作タイミングよりも前の第1タイミングから、特定動作タイミングよりも後の第2タイミングまでの期間である。
【0074】
現時点が案内対象期間に含まれると判定された場合(S4;Y)、制御部14は、特定動作タイミングにおけるキャラクタ62の立ち位置に、当該キャラクタ62の影を示すオブジェクトを配置する(S5)。S5においては、制御部14は、案内対象期間内の特定動作タイミングに関連付けられたゲーム空間50内の位置に、キャラクタ62の影を示すオブジェクトを生成及び配置する。なお、当該オブジェクトにマッピングされるテクスチャは、キャラクタ62にマッピングされるテクスチャとは異なっていてもよい。
【0075】
制御部14は、ゲーム画面70に操作内容画像76を表示させる(S6)。S6においては、制御部14は、特定動作タイミングに関連付けられた特定操作の内容を示す操作内容画像76を、ゲーム画面70の所定位置に表示させる。
【0076】
制御部14は、現時点が判定期間内であるか否かを判定する(S7)。判定期間は、案内対象期間内に設定される、特定動作タイミングを含む一定期間である。S7においては、特定動作タイミングが到来したか否かを制御部14が判定しているともいえる。
【0077】
現時点が判定期間内であると判定された場合(S7;Y)、制御部14は、コントローラ30からユーザによる操作がなされたか否かを判定する(S8)。S8においては、制御部14は、コントローラ30から操作信号が入力されたか否かを判定する。
【0078】
コントローラ30から操作がなされたと判定された場合(S8;Y)、
図9に移り、制御部14は、ユーザが行った操作と特定操作とを比較する(S9)。S9においては、制御部14は、ユーザが行った操作と、特定動作タイミングに関連付けられた特定操作と、が一致するか否かを判定する。
【0079】
制御部14は、ユーザが操作を行った操作タイミングと特定動作タイミングとのずれ時間ΔTを取得する(S10)。このずれ時間ΔTは、操作タイミングと特定動作タイミングとの時間間隔であり、制御部14が、操作タイミングと特定動作タイミングとの差を算出することによって取得される。
【0080】
制御部14は、S9における比較結果と、S10で取得されたずれ時間ΔTと、に基づいて、特定動作タイミング以降のシーンを再生するか否かを決定する(S11)。S11においては、制御部14は、ユーザが行った操作と特定動作タイミングに関連付けられた操作とが一致した場合、かつ、ずれ時間ΔTが基準値以下である場合、特定動作の続きのシーンを再生すると決定する。
【0081】
特定動作タイミング以降のシーンを再生すると決定された場合(S11;Y)、処理はS2に戻る。この場合、制御部14は、シーンデータの再生を継続して、特定動作以降に行われる動作をキャラクタ62(64)にさせる。その後、再び特定動作タイミングが到来する場合には、S5〜S11の処理が実行されることになる。
【0082】
制御部14は、判定期間の終了タイミングが到来したか否かを判定する(S12)。判定期間の終了タイミングが到来していない場合(S12;N)、処理はS14に移行する。
【0083】
一方、続きのシーンを再生しないと決定された場合(S11;N)、又は、判定期間の終了タイミングが到来した場合(S12;Y)、制御部14は、ゲーム画面70にメッセージ78を表示させ(S13)、処理は終了する。この場合、ユーザが特定操作を正確に行うことができなかったので、特定動作タイミング以降のシーンの再生が制限(抑止)されることになる。
【0084】
また、現時点が案内対象期間に含まれないと判定された場合(S4;N)、又は、現時点が判定期間内でないと判定された場合(S7;N)、制御部14は、終了条件が満たされるか否かを判定する(S14)。終了条件は、本処理を終了するために定められた条件であり、例えば、シーンデータの再生が終了したか否か、又は、ユーザにより終了操作が行われたか否かである。
【0085】
終了条件が満たされると判定されない場合(S14;N)、処理はS2に戻り、シーンデータの再生が継続される。終了条件が満たされると判定された場合(S14;Y)、処理は終了する。
【0086】
以上説明したゲーム装置10によれば、特定動作タイミングが到来した場合に、ユーザが特定操作を正確に行ったか否かに応じて、特定動作タイミング以降のシーンの再生をするか否かが決定される。このため、ユーザは、キャラクタ62が一連の動作をするシーンの中で特定操作を効率的に練習することができる。
【0087】
また、操作タイミングと特定動作タイミングとのずれ時間ΔTに基づいて、特定動作タイミング以降のシーンの再生をするか否かが決定されるため、ユーザが最適なタイミングで正確な特定操作を行ったか否かが把握しやすくなる。また、ゲーム画面70に影画像74を表示させることによって特定動作タイミングを案内することによって、ユーザは特定動作タイミングを把握しやすくなる。
【0088】
[5.変形例]
なお、本発明は、以上に説明した実施の形態に限定されるものではない。本発明の趣旨を逸脱しない範囲で、適宜変更可能である。
【0089】
図10は、変形例の機能ブロック図である。
図10に示すように、変形例のゲーム装置10は、実施形態の機能に加えて、手動制御部98と、視点制御部100と、方向提示部102と、類似度提示部104と、再生速度変化部106と、を含む。これら各機能は、制御部14が光ディスク36に記憶されるプログラムを実行することにより実現される。また、これら各機能は、制御部14を主として実現される。
【0090】
(1)例えば、シーンデータが再生されている間はキャラクタ62(64)が自動的に動作するが、特定動作タイミングが到来する場合には、ユーザの操作に応じてキャラクタ62を動作させるようにしてもよい。例えば、特定動作タイミングが近づいた場合には、所定期間の間だけ、ボール66を保持するキャラクタ62をユーザの操作に応じて動作させるようにしてもよい。
【0091】
変形例(1)のゲーム装置10は、手動制御部98を含む。手動制御部98は、特定動作タイミングが到来する場合、自動制御部86の制御に代えて、ユーザの操作に基づいてキャラクタ62を動作させる。例えば、手動制御部98は、特定動作タイミングを含む所定期間において、自動制御部86による動作制御を制限し(即ち、ユーザの操作によりキャラクタ62が動作することの制限を解除し)、ユーザの操作に基づいてキャラクタ62を動作させる。
【0092】
ゲームデータ記憶部80には、ユーザの操作とキャラクタ62の動作との関連付けを示すデータが記憶されている。手動制御部98は、ユーザによる操作に関連付けられた動作をキャラクタ62にさせる。
【0093】
本変形例の自動制御部86は、決定部96の決定結果に基づいて、手動制御部98の制御に代えて、キャラクタ62に特定動作タイミング以降の動作をさせる。自動制御部86は、決定部96により自動制御部86の制御が許可された場合、シーンデータに基づいて、特定動作タイミング以降のシーンを再生する。即ち、自動制御部86は、特定動作タイミング以降のシーンの再生を再開することになる。
【0094】
変形例(1)によれば、特定動作タイミングの前後においてキャラクタ62をユーザの操作により動作させることができるので、特定操作を正確に行うことができたか否かをユーザが理解しやすくなる。
【0095】
(2)また例えば、シーンの再生中において、仮想カメラ68の位置や視線方向がユーザの操作に応じて変化するようにしてもよい。特定動作が、キャラクタ62がゲーム空間50内を所定方向に移動する動作である場合、仮想カメラ68の現在の状態に応じた方向指示操作をユーザにさせるようにしてもよい。
【0096】
変形例(2)のゲーム装置10は、視点制御部100と、方向提示部102と、を含む。視点制御部100は、ユーザの操作(例えば、方向指示操作)に基づいて、視点(例えば、仮想カメラ68)の位置と視線方向との少なくとも一方を制御する。視点制御部100は、ユーザの方向指示操作に基づいて、仮想カメラ68の位置と視線方向との少なくとも一方を移動させる。
【0097】
例えば、ユーザの操作と、仮想カメラ68の位置又は視線方向の変化方法(例えば、移動方向又は移動量)と、の関連付けがゲームデータ記憶部80に記憶されている。視点制御部100は、ユーザの操作に関連付けられた変化方法に基づいて、仮想カメラ68の位置又は視線方向を変化させる。
【0098】
方向提示部102は、キャラクタ62に特定の動作をさせるための操作をユーザに提示する。方向提示部102は、特定動作タイミングが到来する場合に、キャラクタ62を所定方向に移動させるための方向指示操作をユーザに提示する。本変形例においては、特定操作データに、特定動作タイミングと、方向指示操作と、が関連付けられている。方向指示操作は、キャラクタ62に方向を指示するための操作であり、例えば、コントローラ30の方向ボタン群40を押下する行為、又は、スティック44L,44Rを傾ける行為である。
【0099】
方向提示部102は、案内対象期間内に特定動作タイミングが含まれる場合、当該特定動作タイミングに関連付けられた方向指示操作をユーザに提示する。例えば、方向提示部102は、方向指示操作を示す操作内容画像76(例えば、矢印を示す画像)をゲーム画面70に表示させる。なお、方向提示部102は、方向指示操作を示す音声を音声出力部34から出力させるようにしてもよい。
【0100】
本変形例の手動制御部98は、ゲーム空間50において、ユーザによる方向指示操作が示す方向と、現在の視線方向と、に基づいて定まる方向にキャラクタ62を移動させる。
図11は、本変形例におけるキャラクタ62の移動方向を説明するための図である。
図11に示すように、手動制御部98は、仮想カメラ68の現在の視線方向Vに対して、方向指示操作が示す方向に、キャラクタ62を移動させる。
【0101】
ユーザが上方向を指示した場合(例えば、ユーザが方向ボタン40Uを押下した場合)、キャラクタ62は、仮想カメラ68の視線方向Vの向きに移動する。ユーザが下方向を指示した場合(例えば、ユーザが方向ボタン40Dを押下した場合)、キャラクタ62は、仮想カメラ68の視線方向Vとは逆方向の向きに移動する。ユーザが右方向を指示した場合(例えば、ユーザが方向ボタン40Rを押下した場合)、キャラクタ62は、仮想カメラ68から見て右方向に移動する。ユーザが左方向を指示した場合(例えば、ユーザが方向ボタン40Lを押下した場合)、キャラクタ62は、仮想カメラ68から見て左方向に移動する。
【0102】
本変形例の操作比較部92は、ユーザが行った方向指示操作と、キャラクタ62を所定方向に移動させるための方向指示操作と、を比較する。「キャラクタ62を所定方向に移動させるための方向指示操作」とは、仮想カメラ68の現在の視線方向と所定方向とに基づいて定まる方向を示す方向指示操作であり、仮想カメラ68の現在の視線方向に対して上記所定方向を示す方向指示操作である。
【0103】
変形例(2)によれば、仮想カメラ68の現在の視線方向に応じた方向指示操作をユーザが行ったか否かを評価することができる。即ち、フィールド52内におけるキャラクタ62が移動すべき方向が同じであっても、仮想カメラ68の視線方向によっては方向指示操作が異なるので、特定動作タイミングにおける仮想カメラ68の視線方向に応じた方向指示操作を、ユーザが正確に行ったか否かを評価することができる。また、仮想カメラ68の現在の視線方向に応じた方向指示操作をユーザに提示することができる。
【0104】
(3)また例えば、ユーザが実際に行った操作と特定操作との類似度をゲーム画面70に表示させるようにしてもよい。類似度は、ユーザが実際に行った操作と特定操作との類似具合を示す値である。
【0105】
変形例(3)のゲーム装置10は、類似度提示部104を含む。類似度提示部104は、操作比較部92の比較結果に基づいて、ユーザが行った操作とキャラクタ62に特定の動作をさせるための操作との類似度をユーザに提示する。類似度提示部104は、ユーザによる操作と特定操作とのずれ具合に基づいて、類似度を算出する。例えば、特定操作が複数の操作を含む場合、類似度提示部104は、当該複数の操作のうちでユーザにより正確に行われた操作の個数に基づいて、類似度を算出する。例えば、ユーザにより正確に行われた操作の個数を、上記複数の操作の数で割った値が類似度となる。
【0106】
類似度提示部104は、上記算出された類似度を示す画像をゲーム画面70に表示させる。また、類似度提示部104は、上記算出された類似度を音声出力部34から出力させるようにしてもよい。
【0107】
変形例(3)によれば、ユーザが実際に行った操作と特定操作との類似度を提示することができる。
【0108】
(4)また例えば、シーンデータの再生速度を変化させるようにしてもよい。
【0109】
変形例(4)のゲーム装置10は、再生速度変化部106を含む。再生速度変化部106は、シーンデータの再生速度を変化させる。例えば、再生速度変化部106は、ユーザの操作に基づいて、シーンデータの再生速度を変化させる。この場合、ユーザの操作とシーンデータの再生速度との関連付けを示すデータがゲームデータ記憶部80に記憶されており、再生速度変化部106は、ユーザの操作に関連付けられた再生速度に基づいて、シーンデータを再生することになる。
【0110】
また例えば、再生速度変化部106は、特定動作タイミングに基づいて、シーンデータの再生速度を変化させる。この場合、特定動作タイミングとシーンデータの再生速度との関連付けを示すデータがゲームデータ記憶部80に記憶されており、再生速度変化部106は、現時点に基づいて選出される特定動作タイミングに関連付けられた再生速度に基づいて、シーンデータを再生することになる。「現時点に基づいて選出される特定動作タイミング」とは、例えば、現時点以降の特定動作タイミングのうちで現時点に最も近い特定動作タイミングである。
【0111】
変形例(4)によれば、シーンデータの再生速度を変化させることができる。
【0112】
(5)また例えば、ゲーム空間50を、
図2に示すような3次元空間として説明したが、本発明に係るゲーム空間は、キャラクタ62(64)やボール66の位置等が、2つの座標要素で管理されるような2次元ゲーム空間であってもよい。
【0113】
また例えば、本発明は、ゲームシステムにも適用することが可能である。
図12は、ゲームシステムの全体構成を示す図である。
図12に示すように、ゲームシステム110は、ゲーム装置10とゲームサーバ112とを含んでいる。ゲームサーバ112は、例えば、制御部等を備えたサーバコンピュータである。ゲームシステム110では、ゲーム装置10とゲームサーバ112とが通信ネットワーク114を介してデータを授受することによって、ゲームが実行される。
【0114】
ゲームシステム110では、ゲームサーバ112に備えられた記憶部、又はゲームサーバ112からアクセス可能な装置に備えられた記憶部にシーンデータ等が記憶される。例えば、ゲームシステム110では、ゲーム装置10において行われた操作に関するデータがゲーム装置10からゲームサーバ112に送信される。ゲームサーバ112では、ゲーム装置10から送信されたデータに基づいて、ユーザが特定操作を正確に行ったか否かを判定する。ゲーム装置10では、ゲームサーバ112から送信されたシーンデータに基づいて、ゲーム画面70が表示される。
【0115】
ゲームシステム110では、機能ブロックの各々について、ゲーム装置10とゲームサーバ112との何れかで実現される。即ち、機能ブロック図で示した各機能が、ゲーム装置10とゲームサーバ112とで分担されるようにしてもよい。
【0116】
例えば、ゲームデータ記憶部80がゲームサーバ112において実現されるようにしてもよい。この場合、ゲームデータ記憶部80の記憶内容がゲームサーバ112からゲーム装置10に送信されるようにすればよい。
【0117】
また例えば、ゲーム実行部82がゲームサーバ112において実現されるようにしてもよい。この場合、ゲームデータ記憶部80の記憶内容がゲーム装置10からゲームサーバ112に送信されるようにすればよい。
【0118】
また例えば、受付部84がゲームサーバ112において実現されるようにしてもよい。この場合、ゲームサーバ112は、ゲーム装置10からユーザの操作内容を取得することになる。
【0119】
自動制御部86、手動制御部98、及び再生速度変化部106が、ゲームサーバ112において実現されるようにしてもよい。ゲームサーバ112は、シーンデータを再生して、当該再生結果(現在のゲーム空間50の様子を示すデータ)をゲーム装置10に送信したり、ユーザの操作内容をゲーム装置10から取得してキャラクタ62を動作させたりする。
【0120】
表示制御部88、案内部90、視点制御部100、方向提示部102、及び類似度提示部104が、ゲームサーバ112において実現されるようにしてもよい。この場合、ゲームサーバ112は、ゲーム画面70の画像データを生成してゲーム装置10に送信することになる。
【0121】
操作比較部92及びタイミング比較部94が、ゲームサーバ112において実現されるようにしてもよい。ゲームサーバ112は、ユーザの操作内容をゲーム装置10から取得して比較処理を行うことになる。
【0122】
決定部96が、ゲームサーバ112において実現されるようにしてもよい。ゲームサーバ112は、操作比較部92及びタイミング比較部94の比較結果を取得して、特定動作タイミング以降のシーンを再生するか否かを決定することになる。
【0123】
なお、ゲームサーバ112が、本発明に係るゲーム装置に相当するようにしてもよい。この場合、ゲームサーバ112により、上記説明した各機能が実現され、ゲーム装置10は、ユーザの操作をゲームサーバ112に送信したり、ゲームサーバ112から受信した画像データに基づいてゲーム画面70を表示させることになる。
【0124】
また例えば、本発明は、サッカーゲーム以外のゲームを実行するゲーム装置にも適用することができる。本発明は、ゲーム空間においてキャラクタが動作するゲームに適用できる。例えば、バスケットボールゲーム、アイスホッケーゲーム、又は、アメリカンフットボールゲームなどを実行するゲーム装置にも、本発明を適用することができる。他にも例えば、シューティングゲーム(例えば、FPS;First Person Shooting)やアクションゲーム、ロールプレイングゲーム等を実行するゲーム装置にも適用することができる。