説明

ゲーム装置、ゲーム制御方法、ならびに、プログラム

【課題】ユーザによりなされた課題動作の適切さを、複数の入力系統を用いて適切に判定する。
【解決手段】第1検知部401は、ユーザの体の第1部位の状態を検知する。第2検知部402は、ユーザの体の第2部位の状態を検知する。第1判定部403は、第1部位の状態が、課題の状態であるか否かを判定する。記憶部404には、第2部位の参考状態が記憶される。更新部405は、第1部位の状態が課題の状態であると判定された場合、第2部位の状態により、記憶部404に記憶される第2部位の参考状態を更新する。第2判定部406は、第2部位の状態が、参考状態に類似するか否かを判定する。成績判定部407は、第1部位の状態が課題の状態であると判定された場合、もしくは、第2部位の状態が参考状態に類似すると判定された場合、課題が達成されたと判定する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ユーザによりなされた課題動作の適切さを、複数の入力系統を用いて適切に判定するのに好適なゲーム装置、ゲーム制御方法、ならびに、これらをコンピュータにより実現するためのプログラムに関する。
【背景技術】
【0002】
近年、新たな発想の入力デバイスをコントローラとして採用するゲーム装置が普及してきている。例えば、特許文献1には、手持ち型コントローラとマット型コントローラとが接続されたゲーム装置が開示されている。
【0003】
この手持ち型コントローラには、加速度センサや無線モジュールが内蔵されている。また、マット型コントローラには、歪みゲージなどが内蔵されている。このゲーム装置は、ダンスゲームにおいて、これら複数のコントローラを介して受け付けられた入力に基づいて、ユーザの動きを判定し、ゲームの成績を決定する。また、このようなゲーム装置において、マット型コントローラの代わりに、四隅に歪みゲージが内蔵されたボード型コントローラなどを採用することができる。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2009−284953号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかしながら、手持ち型コントローラは、マット型コントローラやボード型コントローラなどとは異なり、床面などに配置されない状態で使用される。従って、手持ち型コントローラは、マット型コントローラやボード型コントローラなどに比べ、ユーザの動きを正確に検出できないことがあった。このため、ユーザが手の振り動作と足の踏み動作とを正確に行ったにもかかわらず、手の振り動作が正確に認識されないために、成績が悪くなることがあった。そこで、ユーザによりなされた動作の適切さを、当該動作を認識可能であって、認識精度の異なる複数の入力系統を用いて、適切に判定したいという要望は強い。
【0006】
本発明は、上記問題に鑑みてなされたものであり、ユーザによりなされた課題動作の適切さを、複数の入力系統を用いて適切に判定するのに好適なゲーム装置、ゲーム制御方法、ならびに、これらをコンピュータにより実現するためのプログラムを提供することを目的とする。
【課題を解決するための手段】
【0007】
上記目的を達成するために、本発明の第1の観点に係るゲーム装置は、複数の課題をユーザが達成することを求めるゲーム装置であって、第1検知部、第2検知部、第1判定部、記憶部、更新部、第2判定部、成績判定部、を備え、以下のように構成する。ここで、当該複数の課題のそれぞれは、当該ユーザの体の第1部位がとるべき状態とそのタイミングとを表す。
【0008】
まず、第1検知部が、当該ユーザの体の第1部位の状態を検知する。第1検知部は、例えば、有線又は無線によりゲーム装置本体に接続された、手持ち型コントローラから出力された信号に基づいて第1部位の状態を検知する。この手持ち型コントローラには、3軸の加速度センサなどが内蔵される。従って、ユーザが当該コントローラを動かすと、3軸方向(上下方向、左右方向、前後方向)の加速度が計算され、当該コントローラの動作が取得される。
【0009】
手持ち型コントローラは、片手で把持されるタイプであってもよいし、右手で把持される右手用コントローラと左手で把持される左手用コントローラとの2つのコントローラによって構成されるタイプであってもよい。後者の場合、ゲーム装置は、ユーザの右手と左手との両方の動きを取得することができる。つまり、第1部位は、例えば、ユーザの右手や左手であってもよい。
【0010】
そして、第2検知部が、当該ユーザの体の第2部位の状態を検知する。第2検知部は、例えば、有線又は無線によりゲーム装置本体に接続された、マット型コントローラから出力された信号に基づいて第2部位の状態を検知する。このマット型コントローラには、歪みゲージや機械式圧力スイッチなどが、所定箇所に所定個数配置される。従って、ユーザが当該マット型コントローラの所定箇所を足で踏むと、踏まれた箇所が取得される。つまり、第2部位は、例えば、ユーザの右足や左足であってもよい。第2検知部は、四隅に歪みゲージが内蔵されたボード型コントローラ(もしくは、体重計)から出力された信号に基づいて第2部位の状態を検知してもよい。マット型コントローラやボード型コントローラは、床面などに設置された状態で使用されるため、ユーザの体の第2部位の状態を、正確に検知することができる。
【0011】
ここで、第1判定部は、当該複数の課題のそれぞれについて、当該課題のタイミングで当該検知されている第1部位の状態が、当該課題の状態であるか否かを判定する。第1部位は、例えば、ユーザの右手や左手である。従って、第1部位の状態は、右手もしくは左手の三次元空間における、位置、移動方向、回転方向などにより判定される。つまり、第1判定部は、ユーザの手が、あらかじめ定められたタイミングで、あらかじめ定められた動きをしているか否かなどを判定する。
【0012】
ここで、記憶部には、当該課題の状態のそれぞれについて、当該状態に対応付けられる当該第2部位の参考状態が記憶される。つまり、課題は、第1部位の状態として与えられるが、第2部位の状態も参考状態として考慮されるように、当該第2部位の参考状態が記憶部に記憶される。なお、ユーザが第1部位の状態を課題の状態に合わせようとした場合、第2部位の状態が第1部位の状態に連動することが自然である。従って、第2部位の状態は、第1部位の状態を推測するために参考状態として参酌することができる。
【0013】
また、更新部は、当該複数の課題のそれぞれについて、当該課題のタイミングで当該検知された第1部位の状態が当該課題の状態であると判定された場合、以下に示す更新処理を行う。この更新処理では、更新部が、当該検知されている第2部位の状態により、当該課題の状態に対応付けて当該記憶部に記憶される当該第2部位の参考状態を更新する。このように、記憶部に記憶されている第2部位の参考状態は、第1部位の状態が適切であると判定されたときの第2部位の状態で更新される。
【0014】
そして、第2判定部は、当該複数の課題のそれぞれについて、当該課題のタイミングで当該検知された第1部位の状態が当該課題の状態でないと判定された場合、以下に示す判定処理を行う。この判定処理では、第2判定部は、当該課題のタイミングで当該検知されている第2部位の状態が、当該課題の状態に対応付けて当該記憶された当該第2部位の参考状態に類似するか否かを判定する。
【0015】
ここで、成績判定部は、当該複数の課題のそれぞれについて、以下に示す第1の場合もしくは第2の場合に、当該課題が当該ユーザにより達成されたと判定する。第1の場合は、当該課題のタイミングで当該検知されている第1部位の状態が当該課題の状態であると当該第1判定部により判定された場合である。第2の場合は、当該検知されている第2部位の状態が当該課題の状態に対応付けて当該記憶された当該第2部位の参考状態に類似すると当該第2判定部により判定された場合である。このように、成績判定部は、第1部位の状態に基づく判定結果だけでなく、第2部位の状態に基づく判定結果も考慮して、成績を判定する。
【0016】
具体的には、当該課題のタイミングで当該検知されている第1部位の状態が当該課題の状態であると当該第1判定部により判定された場合、第2部位の状態に基づく判定結果にかかわらず、当該課題が当該ユーザにより達成されたと判定される(第1の場合)。つまり、課題は、第1部位がとるべき状態とそのタイミングとを表すので、課題のタイミングで第1部位の状態が課題の状態であった場合は、無条件に課題が達成されたと判定される。
【0017】
一方、当該課題のタイミングで当該検知されている第2部位の状態が当該課題の状態に対応付けて当該記憶された当該第2部位の参考状態に類似すると当該第2判定部により判定された場合も、当該課題が当該ユーザにより達成されたと判定される(第2の場合)。このように、成績判定部が、第1部位の状態に基づく判定結果のみによって成績を判定しないのは、第1部位の状態に基づく判定結果が適切でない場合もあるためである。この理由は、第1部位の状態を検知する第1検知部は、床面などに固定されていない不安定な状態にある加速度センサなどにより第1部位の状態を検知するためである。
【0018】
そこで、床面などに設置され、比較的精度が良い歪みゲージから出力される信号に基づく第2部位の状態の判定結果が良好である場合、課題がユーザにより達成されたと判定される。具体的には、当該課題のタイミングにおいて検知された第2部位の状態が、当該課題の状態に対応付けて記憶されている当該第2部位の参考状態に類似すると判定された場合、当該課題が当該ユーザにより達成されたと判定される。
【0019】
前述したように、記憶部に記憶されている第2部位の参考状態は、第1部位の状態が課題の状態であると判定されたときの第2部位の状態で更新されている。一方、第1部位の状態と第2部位の状態とは連動していることが予想される。従って、検知された第2部位の状態が、記憶部に記憶されている第2部位の参考状態と類似する場合、第1部位の状態は、課題の状態と類似するものと考えられる。このような場合、第1部位の状態が課題の状態であったにもかかわらず、第1検知部による検知の精度が低いために、第1判定部により誤って判定されてしまったことが予想される。従って、このような場合、成績判定部は、課題がユーザにより達成されたと判定する。
【0020】
本発明に係るゲーム装置によれば、ユーザによりなされた課題動作の適切さを、複数の入力系統を用いて適切に判定することができる。なお、参考状態は適宜更新されるため、例えば、動きに癖のあるユーザによってプレイされる場合でも、プレイが繰り返されるうちに、課題が達成されたか否かが適切に判別されるようになる。
【0021】
また、本発明に係るゲーム装置は、第1部位の状態が、ユーザの手の動きである場合にも適用可能である。この場合、第1検知部は、加速度センサにより、当該手の動きを検知する。また、第2部位の状態は、水平面におけるユーザの重心の位置であってもよい。このとき、第2検知部は、圧力センサにより当該重心の位置を検知する。
【0022】
つまり、第1検知部は、例えば、ユーザに把持されたリモートコントローラに内蔵された加速度センサから出力される信号に基づいて、当該ユーザの手の動きを検知する。なお、当該加速度センサからは、例えば、三次元空間において互いに直交する3つの軸のそれぞれの方向における加速度を表す信号が出力される。
【0023】
一方、第2検知部は、例えば、ユーザが乗っているボード型コントローラの四隅に配置されている圧力センサ(歪みゲージ)から出力された信号に基づいて、当該ユーザの重心の位置を検知する。ここで、4つの圧力センサが水平面に配置されると、当該水平面における座標(X軸方向の座標、Y軸方向の座標)により、当該重心の位置が表される。
【0024】
ここで、ユーザは、手の動きが課題の動きとなるように、三次元空間内において、手を自由に動かすことができる。その一方、ユーザに把持された加速度センサからは、例えば、3つの軸のそれぞれの方向について、激しく変化する加速度を表す信号が出力される。しかしながら、第1判定部は、加速度センサから出力された信号に基づいて、手の動きが課題の動きであるか否かを正確に判定することが困難である場合がある。
【0025】
一方、ボード型コントローラの四隅に配置された4つの圧力センサのそれぞれからは、一次元の値を表す信号が出力される。このため、ユーザが、ボード型コントローラの上に乗って、多少激しく動いたとしても、第2検知部は、圧力センサから出力された信号に基づいて、ユーザの重心の位置を容易に検知することができる。従って、第2判定部は、検知されたユーザの重心の位置と、記憶部に記憶されている、手の動きが課題の動きであると判定されたときのユーザ重心の位置と、が類似するか否かを正確に判定することができる。
【0026】
かかる構成では、手の動きが課題の動きではないと判定された場合において、ユーザの重心の位置が参考とされる重心の位置に類似すると判定された場合、課題がユーザにより達成されたと判定される。
【0027】
従って、本発明に係るゲーム装置によれば、ユーザの手の動きとユーザの重心の位置とにより、課題がユーザにより達成されたか否かが適切に判定される。
【0028】
また、本発明に係るゲーム装置において、当該課題のそれぞれについて、当該課題のタイミングで、当該第1部位の状態をいずれの状態とすべきかが、画面に表示されてもよい。なお、第1部位の状態を、どのようにして画面に表示するかは、適宜調整が可能である。
【0029】
例えば、ユーザがなすべき手の動き(手振り)をするキャラクタが、画面に表示されてもよい。この場合、ユーザは、画面に表示されたキャラクタの手の動きを模倣することで、課題を達成することができる。あるいは、ユーザがなすべき手の動きを表す文字列が、画面に表示されてもよい。この場合、ユーザは、画面に表示された文字列の意味を認識して、当該文字列により表される手の動きを実行する。
【0030】
本発明に係るゲーム装置によれば、ユーザに、当該ユーザが課題をなすべきタイミングと当該課題の内容とを分かり易く知らせ、当該ユーザが当該課題を達成し易くなるように、当該ユーザを導くことができる。
【0031】
上記目的を達成するために、本発明のその他の観点に係るゲーム装置は、ユーザの体の第1部位がとるべき状態ならびに第2部位がとることが望ましい参考状態とそのタイミングとを表す課題を、当該ユーザが達成することを求めるゲーム装置であって、第1検知部、第2検知部、第1判定部、第2判定部、成績判定部、を備え、以下のように構成する。
【0032】
まず、第1検知部が、ユーザの体の第1部位の状態を検知する。第1検知部は、例えば、有線又は無線によりゲーム装置本体に接続された、手持ち型コントローラから出力された信号に基づいて第1部位の状態を検知する。この手持ち型コントローラには、3軸の加速度センサなどが内蔵される。従って、ユーザが当該コントローラを動かすと、3軸方向(上下方向、左右方向、前後方向)の加速度が計算され、当該コントローラの動作が取得される。
【0033】
手持ち型コントローラは、片手で把持されるタイプであってもよいし、右手で把持される右手用コントローラと左手で把持される左手用コントローラとの2つのコントローラによって構成されるタイプであってもよい。後者の場合、ゲーム装置は、ユーザの右手と左手との両方の動きを取得することができる。つまり、第1部位は、例えば、ユーザの右手や左手であってもよい。
【0034】
そして、第2検知部が、当該ユーザの体の第2部位の状態を検知する。第2検知部は、例えば、有線又は無線によりゲーム装置本体に接続された、マット型コントローラから出力された信号に基づいて第2部位の状態を検知する。このマット型コントローラには、歪みゲージや機械式圧力スイッチなどが、所定箇所に所定個数配置される。従って、ユーザが当該マット型コントローラの所定箇所を足で踏むと、踏まれた箇所が取得される。つまり、第2部位は、例えば、ユーザの右足や左足であってもよい。また、第2検知部は、四隅に歪みゲージが内蔵されたボード型コントローラから出力された信号に基づいて第2部位の状態を検知してもよい。マット型コントローラやボード型コントローラは、床面などに設置された状態で使用されるため、ユーザの体の第2部位の状態を、正確に検知することができる。
【0035】
ここで、第1判定部は、当該課題のタイミングで当該検知されている第1部位の状態が、当該課題の状態であるか否かを判定する。第1部位は、例えば、ユーザの右手や左手である。従って、第1部位の状態は、右手もしくは左手の三次元空間における、位置、移動方向、回転方向などにより判定される。つまり、第1判定部は、ユーザの手が、あらかじめ定められたタイミングで、あらかじめ定められた動きをしているか否かを判定する。
【0036】
そして、第2判定部は、当該課題のタイミングで当該検知された第1部位の状態が当該課題の状態でないと判定された場合、以下に示す判定処理を行う。この判定処理では、第2判定部は、当該課題のタイミングで当該検知されている第2部位の状態が、当該課題の参考状態に類似するか否かを判定する。
【0037】
ここで、成績判定部は、以下に示す第1の場合もしくは第2の場合に、当該課題が当該ユーザにより達成されたと判定する。第1の場合は、当該課題のタイミングで当該検知されている第1部位の状態が当該課題の状態であると当該第1判定部により判定された場合である。第2の場合は、当該検知されている第2部位の状態が当該課題の参考状態に類似すると当該第2判定部により判定された場合である。このように、成績判定部は、第1部位の状態に基づく判定結果だけでなく、第2部位の状態に基づく判定結果も考慮して、成績を判定する。
【0038】
具体的には、当該課題のタイミングで当該検知されている第1部位の状態が当該課題の状態であると当該第1判定部により判定された場合、第2部位の状態に基づく判定結果にかかわらず、当該課題が当該ユーザにより達成されたと判定される(第1の場合)。つまり、課題は、第1部位がとるべき状態とそのタイミングとを表すので、課題のタイミングで第1部位の状態が課題の状態であった場合は、無条件に課題が達成されたと判定される。
【0039】
一方、当該課題のタイミングで当該検知されている第2部位の状態が当該課題の参考状態に類似すると当該第2判定部により判定された場合、第1部位の状態に基づく判定結果にかかわらず、当該課題が当該ユーザにより達成されたと判定される(第2の場合)。このように、成績判定部が、第1部位の状態に基づく判定結果のみによって成績を判定しないのは、第1部位の状態に基づく判定結果が適切でない場合もあるためである。この理由は、第1部位の状態を検知する第1検知部は、床面などに固定されていない不安定な状態にある加速度センサなどにより第1部位を検知するためである。
【0040】
そこで、床面などに設置され、比較的精度が良い歪みゲージから出力される信号に基づく第2部位の状態の判定結果が良好である場合、課題がユーザにより達成されたと判定される。具体的には、当該課題のタイミングにおいて検知された第2部位の状態が、当該課題の参考状態に類似すると判定された場合、当該課題が当該ユーザにより達成されたと判定される。
【0041】
ここで、第1部位の状態と第2部位の状態とは連動していることが予想される。従って、検知された第2部位の状態が、参考状態と類似する場合、第1部位の状態は、課題の状態と類似するものと考えられる。このような場合、第1部位の状態が課題の状態であったにもかかわらず、第1検知部による検知の精度が低いために、第1判定部により誤って判定されてしまったことが予想される。従って、このような場合、成績判定部は、課題がユーザにより達成されたと判定する。
【0042】
本発明に係るゲーム装置によれば、ユーザによりなされた課題動作の適切さを、複数の入力系統を用いて適切に判定することができる。なお、課題の状態に対応してあらかじめ用意する参考状態を調整することにより、課題が達成されたか否かの判定の基準を調整することができる。
【0043】
また、本発明に係るゲーム装置において、当該課題のタイミングで、当該第1部位の状態をいずれの状態とすべきかが、画面に表示されてもよい。なお、第1部位の状態を、どのようにして画面に表示するかは、適宜調整が可能である。
【0044】
例えば、ユーザがなすべき手の動き(手振り)をするキャラクタが、画面に表示されてもよい。この場合、ユーザは、画面に表示されたキャラクタの手の動きを模倣することで、課題を達成することができる。あるいは、ユーザがなすべき手の動きを表す文字列が、画面に表示されてもよい。この場合、ユーザは、画面に表示された文字列の意味を認識して、当該文字列により表される手の動きを実行する。なお、当該キャラクタや文字列により、ユーザがなすべき足の動き(踏み動作)が、さらにユーザに提示されてもよい。
【0045】
本発明に係るゲーム装置によれば、ユーザに、当該ユーザが課題をなすべきタイミングと当該課題の内容とを分かり易く知らせ、当該ユーザが当該課題を達成し易くなるように、当該ユーザを導くことができる。
【0046】
また、本発明に係るゲーム装置において、当該課題の参考状態を、1つ以上とすることができる。つまり、課題の参考状態は、1つの課題につき、1つであっても良いし、2つ以上であってもよい。
【0047】
例えば、課題のタイミングにおいて第2部位がとることが望ましい理想的な状態が1つに絞り込めない場合、課題の参考状態は2つ以上であることが望ましい。典型的には、2人以上のユーザがゲームをプレイする場合、課題の参考状態を人数分用意することが望ましい。この理由は、第1部位を課題の状態としたときの第2部位の理想的な状態は、ユーザ毎に異なると考えられるためである。なお、ユーザが1人の場合であっても、課題の参考状態を2つ以上用意するほうが望ましい場合もある。
【0048】
一方、課題のタイミングにおいて第2部位がとることが望ましい理想的な状態が1つに絞り込める場合、課題の参考状態は1つであることが望ましい。なお、課題の参考状態の個数は、課題毎に適切な個数だけ用意されてもよい。
【0049】
本発明に係るゲーム装置によれば、ユーザによりなされた課題動作の適切さを、複数の入力系統を用いて、より適切に判定することができる。
【0050】
また、本発明に係るゲーム装置において、第2判定部が当該検知されている第2部位の状態を判定するのが、当該検知された第1部位の状態が当該課題の状態ではないが当該課題の状態に類似する場合に限られてもよい。
【0051】
つまり、第1部位の状態が課題の状態に一致も類似もしない場合、第2部位の状態にかかわらず課題が達成されていないと判定される。一方、第1部位の状態が課題の状態に一致しないが類似する場合、第2部位の状態が参考状態に一致もしくは類似することを条件に、課題が達成されたと判定される。かかる構成によれば、第1部位の状態が課題の状態でないにもかかわらず、第2部位の状態が参考状態に偶然一致もしくは類似したために、ユーザのプレイ能力以上に成績が良くなるという事態が抑制される。
【0052】
本発明に係るゲーム装置によれば、ユーザによりなされた課題動作の適切さを、複数の入力系統を用いて、より適切に判定することができる。
【0053】
上記目的を達成するために、本発明のその他の観点に係るゲーム制御方法は、第1検知部、第2検知部、第1判定部、記憶部、更新部、第2判定部、成績判定部、を備え、複数の課題をユーザが達成することを求めるゲーム装置にて実行されるゲーム制御方法であって、第1検知工程、第2検知工程、第1判定工程、記憶工程、更新工程、第2判定工程、成績判定工程を備え、以下のように構成する。ここで、当該複数の課題のそれぞれは、当該ユーザの体の第1部位がとるべき状態とそのタイミングとを表す。
【0054】
まず、第1検知工程において、第1検知部が、当該ユーザの体の第1部位の状態を検知する。第1検知部は、例えば、有線又は無線によりゲーム装置本体に接続された、手持ち型コントローラから出力された信号に基づいて第1部位の状態を検知する。この手持ち型コントローラには、3軸の加速度センサなどが内蔵される。従って、ユーザが当該コントローラを動かすと、3軸方向(上下方向、左右方向、前後方向)の加速度が計算され、当該コントローラの動作が取得される。
【0055】
そして、第2検知工程において、第2検知部が、当該ユーザの体の第2部位の状態を検知する。第2検知部は、例えば、有線又は無線によりゲーム装置本体に接続された、マット型コントローラから出力された信号に基づいて第2部位の状態を検知する。このマット型コントローラには、歪みゲージや機械式圧力スイッチなどが、所定箇所に所定個数配置される。従って、ユーザが当該マット型コントローラの所定箇所を足で踏むと、踏まれた箇所が取得される。つまり、第2部位は、例えば、ユーザの右足や左足であってもよい。第2検知部は、四隅に歪みゲージが内蔵されたボード型コントローラ(もしくは、体重計)から出力された信号に基づいて第2部位の状態を検知してもよい。マット型コントローラやボード型コントローラは、床面などに設置された状態で使用されるため、ユーザの体の第2部位の状態を、正確に検知することができる。
【0056】
ここで、第1判定工程において、第1判定部は、当該複数の課題のそれぞれについて、当該課題のタイミングで当該検知されている第1部位の状態が、当該課題の状態であるか否かを判定する。第1部位は、例えば、ユーザの右手や左手である。従って、第1部位の状態は、右手もしくは左手の三次元空間における、位置、移動方向、回転方向などにより判定される。つまり、第1判定部は、ユーザの手が、あらかじめ定められたタイミングで、あらかじめ定められた動きをしているか否かなどを判定する。
【0057】
ここで、記憶工程において、記憶部には、当該課題の状態のそれぞれについて、当該状態に対応付けられる当該第2部位の参考状態が記憶される。つまり、課題は、第1部位の状態として与えられるが、第2部位の状態も参考状態として考慮されるように、当該第2部位の参考状態が記憶部に記憶される。なお、ユーザが第1部位の状態を課題の状態に合わせようとした場合、第2部位の状態が第1部位の状態に連動することが自然である。従って、第2部位の状態は、第1部位の状態を推測するために参考状態として参酌することができる。
【0058】
また、更新工程において、更新部は、当該複数の課題のそれぞれについて、当該課題のタイミングで当該検知された第1部位の状態が当該課題の状態であると判定された場合、以下に示す更新処理を行う。この更新処理では、更新部が、当該検知されている第2部位の状態により、当該課題の状態に対応付けて当該記憶部に記憶される当該第2部位の参考状態を更新する。このように、記憶部に記憶されている第2部位の参考状態は、第1部位の状態が適切であると判定されたときの第2部位の状態で更新される。
【0059】
そして、第2判定工程において、第2判定部は、当該複数の課題のそれぞれについて、当該課題のタイミングで当該検知された第1部位の状態が当該課題の状態でないと判定された場合、以下に示す判定処理を行う。この判定処理では、第2判定部は、当該課題のタイミングで当該検知されている第2部位の状態が、当該課題の状態に対応付けて当該記憶された当該第2部位の参考状態に類似するか否かを判定する。
【0060】
ここで、成績判定工程において、成績判定部は、当該複数の課題のそれぞれについて、以下に示す第1の場合もしくは第2の場合に、当該課題が当該ユーザにより達成されたと判定する。第1の場合は、当該課題のタイミングで当該検知されている第1部位の状態が当該課題の状態であると当該第1判定部により判定された場合である。第2の場合は、当該検知されている第2部位の状態が当該課題の状態に対応付けて当該記憶された当該第2部位の参考状態に類似すると当該第2判定部により判定された場合である。このように、成績判定部は、第1部位の状態に基づく判定結果だけでなく、第2部位の状態に基づく判定結果も考慮して、成績を判定する。
【0061】
本発明に係るゲーム制御方法によれば、ユーザによりなされた課題動作の適切さを、複数の入力系統を用いて適切に判定することができる。なお、参考状態は適宜更新されるため、例えば、動きに癖のあるユーザによってプレイされる場合でも、プレイが繰り返されるうちに、課題が達成されたか否かが適切に判別されるようになる。
【0062】
上記目的を達成するために、本発明のその他の観点に係るゲーム制御方法は、第1検知部、第2検知部、第1判定部、第2判定部、成績判定部、を備え、ユーザの体の第1部位がとるべき状態ならびに第2部位がとることが望ましい参考状態とそのタイミングとを表す課題を、当該ユーザが達成することを求めるゲーム装置にて実行されるゲーム制御方法であって、第1検知工程、第2検知工程、第1判定工程、第2判定工程、成績判定工程を備え、以下のように構成する。
【0063】
まず、第1検知工程において、第1検知部が、ユーザの体の第1部位の状態を検知する。第1検知部は、例えば、有線又は無線によりゲーム装置本体に接続された、手持ち型コントローラから出力された信号に基づいて第1部位の状態を検知する。この手持ち型コントローラには、3軸の加速度センサなどが内蔵される。従って、ユーザが当該コントローラを動かすと、3軸方向(上下方向、左右方向、前後方向)の加速度が計算され、当該コントローラの動作が取得される。
【0064】
そして、第2検知工程において、第2検知部が、当該ユーザの体の第2部位の状態を検知する。第2検知部は、例えば、有線又は無線によりゲーム装置本体に接続された、マット型コントローラから出力された信号に基づいて第2部位の状態を検知する。このマット型コントローラには、歪みゲージや機械式圧力スイッチなどが、所定箇所に所定個数配置される。従って、ユーザが当該マット型コントローラの所定箇所を足で踏むと、踏まれた箇所が取得される。つまり、第2部位は、例えば、ユーザの右足や左足であってもよい。また、第2検知部は、四隅に歪みゲージが内蔵されたボード型コントローラから出力された信号に基づいて第2部位の状態を検知してもよい。マット型コントローラやボード型コントローラは、床面などに設置された状態で使用されるため、ユーザの体の第2部位の状態を、正確に検知することができる。
【0065】
ここで、第1判定工程において、第1判定部は、当該課題のタイミングで当該検知されている第1部位の状態が、当該課題の状態であるか否かを判定する。第1部位は、例えば、ユーザの右手や左手である。従って、第1部位の状態は、右手もしくは左手の三次元空間における、位置、移動方向、回転方向などにより判定される。つまり、第1判定部は、ユーザの手が、あらかじめ定められたタイミングで、あらかじめ定められた動きをしているか否かを判定する。
【0066】
そして、第2判定工程において、第2判定部は、当該課題のタイミングで当該検知された第1部位の状態が当該課題の状態でないと判定された場合、以下に示す判定処理を行う。この判定処理では、第2判定部は、当該課題のタイミングで当該検知されている第2部位の状態が、当該課題の参考状態に類似するか否かを判定する。
【0067】
ここで、成績判定工程において、成績判定部は、以下に示す第1の場合もしくは第2の場合に、当該課題が当該ユーザにより達成されたと判定する。第1の場合は、当該課題のタイミングで当該検知されている第1部位の状態が当該課題の状態であると当該第1判定部により判定された場合である。第2の場合は、当該検知されている第2部位の状態が当該課題の参考状態に類似すると当該第2判定部により判定された場合である。このように、成績判定部は、第1部位の状態に基づく判定結果だけでなく、第2部位の状態に基づく判定結果も考慮して、成績を判定する。
【0068】
本発明に係るゲーム制御方法によれば、ユーザによりなされた課題動作の適切さを、複数の入力系統を用いて適切に判定することができる。
【0069】
本発明の他の観点に係るプログラムは、コンピュータを、上記のゲーム装置の各部として機能させ、または、コンピュータに、上記のゲーム制御方法の各工程を実行させるように構成する。
【0070】
また、本発明のプログラムは、コンパクトディスク、フレキシブルディスク、ハードディスク、光磁気ディスク、ディジタルビデオディスク、磁気テープ、半導体メモリ等のコンピュータ読取可能な情報記録媒体に記録することができる。上記プログラムは、プログラムが実行されるコンピュータとは独立して、コンピュータ通信網を介して配布・販売することができる。また、上記情報記録媒体は、コンピュータとは独立して配布・販売することができる。
【発明の効果】
【0071】
本発明によれば、ユーザによりなされた課題動作の適切さを、複数の入力系統を用いて適切に判定するのに好適なゲーム装置、ゲーム制御方法、ならびに、これらをコンピュータにより実現するためのプログラムを提供することができる。
【図面の簡単な説明】
【0072】
【図1】本発明の第1の実施形態に係るゲーム装置が実現される典型的な情報処理装置の概要構成を示す模式図である。
【図2】ゲーム装置に接続可能なコントローラユニットの概要構成を示す模式図である。
【図3】ゲーム装置に接続可能なボード型コントローラの概要構成を示す模式図である。
【図4】本発明の第1の実施形態に係るゲーム装置の構成を示すブロック図である。
【図5】本発明の第1の実施形態に係るゲーム装置が表示する画面を示す図である。
【図6】本発明の第1の実施形態に係るゲーム装置が使用する課題データを模式的に示す図である。
【図7】手持ち型コントローラにより手の動きを検知する方法を説明するための図である。
【図8】第1判定部による判定基準を説明するための図である。
【図9】第2判定部による判定基準を説明するための図である。
【図10】本発明の第1の実施形態に係るゲーム装置が実行するゲーム制御処理を示すフローチャートである。
【図11】本発明の第2の実施形態に係るゲーム装置が表示する画面を示す図である。
【図12】本発明の第2の実施形態に係るゲーム装置が使用する課題データを模式的に示す図である。
【図13】本発明の第3の実施形態に係るゲーム装置が表示する画面を示す図である。
【図14】ゲーム装置に接続可能なマット型コントローラの概要構成を示す模式図である。
【図15】本発明の第4の実施形態に係るゲーム装置の構成を示すブロック図である。
【図16】本発明の第4の実施形態に係るゲーム装置が表示する画面を示す図である。
【図17】本発明の第4の実施形態に係るゲーム装置が使用する課題データを模式的に示す図である。
【図18】本発明の第4の実施形態に係るゲーム装置が実行するゲーム制御処理を示すフローチャートである。
【発明を実施するための形態】
【0073】
以下に本発明の実施形態を説明する。以下では、理解を容易にするため、ゲーム専用の情報処理装置に本発明が適用される実施形態を説明する。しかしながら、各種のコンピュータ、PDA(Personal Data Assistants)、携帯電話などの情報処理装置にも同様に本発明を適用することができる。すなわち、以下に説明する実施形態は説明のためのものであり、本願発明の範囲を制限するものではない。ここで、当業者であればこれらの各要素もしくは全要素をこれと均等なものに置換した実施形態を採用することができる。従って、これらの実施形態も本発明の範囲に含まれる。
【0074】
(第1の実施形態)
(情報処理装置の説明)
図1は、本発明の第1の実施形態に係るゲーム装置が実現される典型的な情報処理装置100の概要構成を示す模式図である。
【0075】
情報処理装置100は、CPU(Central Processing Unit)101と、ROM(Read Only Memory)102と、RAM(Random Access Memory)103と、インターフェース104と、コントローラユニット105と、外部メモリ106と、画像処理部107と、DVD(Digital Versatile Disk)−ROMドライブ108と、NIC(Network Interface Card)109と、音声処理部110と、RTC(Real Time Clock)111と、ボード型コントローラ120と、ディスプレイ290と、を備える。
【0076】
ゲーム制御用のプログラムおよびデータを記憶したDVD−ROMがDVD−ROMドライブ108に装着されている状態において、情報処理装置100の電源が投入されると、ゲーム制御用のプログラムが実行される。これにより、本実施形態に係るゲーム装置が実現される。
【0077】
CPU 101は、情報処理装置100全体の動作を制御する。CPU 101は、各構成要素と接続され、制御信号やデータをやりとりする。CPU 101は、各構成要素から、各種のデータを取得する。CPU 101は、当該各種のデータを、種々の演算により加工する。CPU 101は、加工結果を示すデータや制御信号を、各構成要素に供給する。CPU 101は、内部にキャッシュやレジスタを備える。CPU 101に取得された各種のデータは、一旦キャッシュに格納される。その後、当該各種のデータは、レジスタに取り出されてから各種の演算が施される。
【0078】
ROM 102には、電源投入直後に実行されるIPL(Initial Program Loader)が記録される。IPLが実行されることにより、DVD−ROMに記録されたプログラムがRAM 103に読み出され、CPU 101によるプログラムの実行が開始される。また、ROM 102には、情報処理装置100全体の動作制御に必要なオペレーティングシステムのプログラムやデータが記録される。
【0079】
RAM 103は、データやプログラムを一時的に記憶する。RAM 103には、DVD−ROMから読み出されたプログラムやデータなどが保持される。このほか、RAM 103は、外部機器に伝達する情報や、外部機器から伝達された情報も、一時的に記憶する。
【0080】
インターフェース104を介して接続されたコントローラユニット105は、ユーザがゲーム実行の際に行う操作入力を受け付ける。以下、図2を参照してコントローラユニット105を説明する。図2は、コントローラユニット105の概要を説明するための外観図である。
【0081】
コントローラユニット105は、図2に示すような右手用コントローラ210と左手用コントローラ220とセンサバー230とを含んで構成される。情報処理装置100は、所定のケーブルを介してセンサバー230と接続される。
【0082】
右手用コントローラ210は、主となるコントローラであり、例えば、テレビ等のリモコンと類似した外観を有し、情報処理装置100とワイヤレスで(無線通信によって)接続される。
【0083】
一方、左手用コントローラ220は、右手用コントローラ210と接続された状態で使用される補助的なコントローラであり、右手用コントローラ210を介して、情報処理装置100に情報を送信する。
【0084】
ユーザは、右手用コントローラ210と左手用コントローラ220とを両手で把持して、ゲームをプレイすることになる。なお、情報処理装置100において、右手用コントローラ210を右手で把持し、左手用コントローラ220を左手で把持することが、正しい(標準的な)持ち方として定められている。
【0085】
また、センサバー230は、所定の長さの棒状に形成され、ディスプレイ290の上部に、画面の向きに沿って適宜固定される。このセンサバー230には、両端に1つずつ発光素子231が埋設されている。なお、埋設される発光素子231の数は一例であり、これらの数より多くてもよい。センサバー230は、情報処理装置100から電源供給を受けて発光素子231を適宜発光させる。
【0086】
右手用コントローラ210は、先端にCCDカメラ211が配置され、先端がディスプレイ290に向けられると、このCCDカメラ211がセンサバー230の2つの発光素子231(2つの発光点)を含む画像を撮影する。また、右手用コントローラ210は、内部に無線通信部を備えており、撮影した画像の情報を、無線通信にて情報処理装置100に順次送信する。
【0087】
そして、情報処理装置100は、右手用コントローラ210から送られた画像中における2つの発光点の位置関係等に基づいて、右手用コントローラ210の位置及び向き等を適宜取得する。例えば、CPU 101及び画像処理部107等は、右手用コントローラ210から見える2つの発光点の位置関係等を解析して、右手用コントローラ210の空間位置及び、その先端の向き(長手軸線の方向)を算定し、最終的に、ユーザが右手用コントローラ210を画面上のどこに向けて操作しているか等を取得する。なお、このような右手用コントローラ210の位置等の計測は、例えば、垂直同期割り込み(1/60秒)毎に行われる。
【0088】
また、右手用コントローラ210は、内部に、3軸の加速度センサを備えており、右手用コントローラ210の3軸方向の動きを測定することが可能となっている。なお、このような加速度センサの代わりに、角速度センサや傾きセンサ等により、右手用コントローラ210の動きを測定してもよい。右手用コントローラ210は、このような測定結果(例えば、3軸それぞれの加速度情報)を情報処理装置100に順次送信する。そして、情報処理装置100は、右手用コントローラ210から送られる測定結果に基づいて、右手用コントローラ210の動きを検出する。例えば、ユーザが右手用コントローラ210を振る、ひねる、突くといった動作やその移動方向を取得する。なお、このような右手用コントローラ210の動きの検出も、例えば、垂直同期割り込み毎に行われる。
【0089】
右手用コントローラ210の上面には、十字形キー212が配置されており、ユーザが任意の方向を指定した指示入力を行うことができる。また、Aボタン213や、各種ボタン215も上面に配置されており、ユーザはこれらのボタンに対応付けられた指示入力を行うことができる。一方、Bボタン214は、右手用コントローラ210の下面に配置される。Bボタン214は、押圧される面に窪みが構成され、ユーザがトリガを引くように操作することができるようになっている。
【0090】
右手用コントローラ210の上面には、複数の小さな孔216が設けられており、内部に埋設されたスピーカからクリアな音声を出力できるようになっている。右手用コントローラ210の上面のインジケータ217は、右手用コントローラ210が複数使用された場合でもユーザが識別できるように、適宜点灯する。また、右手用コントローラ210の上面に用意された電源ボタン218は、例えば、情報処理装置100のオン・オフを指示する。更に、右手用コントローラ210の内部には、バイブレータ等の振動機構が配置され、情報処理装置100から送られる指示情報に応答して、振動を発生させることもできるようになっている。
【0091】
一方、左手用コントローラ220も、内部に、3軸の加速度センサを備えており、左手用コントローラ220の3軸方向の動きを測定することが可能となっている。なお、このような加速度センサの代わりに、角速度センサや傾きセンサ等により、左手用コントローラ220の動きを測定してもよい。左手用コントローラ220は、このような測定結果(例えば、3軸それぞれの加速度情報)を、右手用コントローラ210を介して情報処理装置100に順次送信する。
【0092】
そして、情報処理装置100は、左手用コントローラ220からの測定結果に基づいて、左手用コントローラ220の動きを検出する。例えば、ユーザが左手用コントローラ220を振る、ひねる、突くといった動作やその移動方向を取得する。なお、このような左手用コントローラ220の動きの検出も、例えば、垂直同期割り込み毎に行われる。
【0093】
左手用コントローラ220の上面には、コントロールスティック221が配置されており、ユーザが任意の方向を指定した指示入力を行うことができる。この他にも、左手用コントローラ220の先端部には、Cボタン222が配置され、また、左手用コントローラ220の下面には、Zボタン223が配置されており、ユーザが各種操作を行えるようになっている。
【0094】
このように、右手用コントローラ210と左手用コントローラ220とセンサバー230との組合せによって、右手用コントローラ210や左手用コントローラ220の操作や位置等が得られる。なお、右手用コントローラ210等の位置の測定は、センサバー230の発光点(発光素子231)をCCDカメラ211が撮影する手法に限られず、他の手法でも適宜適用可能である。例えば、センサバー230を介した2地点間の無線通信の時差等から、右手用コントローラ210等の位置を求めてもよく、また、超音波や赤外線等を使用して、三角測量の原理にて右手用コントローラ210等の位置を求めてもよい。
【0095】
図1の説明に戻る。外部メモリ106は、インターフェース104を介して、情報処理装置100に着脱自在に接続される。外部メモリ106には、ゲームの進行状態を示すデータなどが書き換え可能に記憶される。ユーザは、例えば、コントローラユニット105を介して指示入力を行うことにより、これらのデータを適宜外部メモリ106に記録することができる。
【0096】
画像処理部107は、DVD−ROMから読み出されたデータを加工する。画像処理部107は、画像演算プロセッサ(図示せず)と、フレームメモリ(図示せず)と、を備える。加工処理は、画像演算プロセッサによって実行される。加工されたデータ(画像情報)はフレームメモリ(図示せず)に記録される。フレームメモリに記録された画像情報は、所定の同期タイミングでビデオ信号に変換され、画像処理部107に接続されたディスプレイ290へ出力される。これにより、各種の画像表示が可能となる。
【0097】
画像演算プロセッサは、2次元の画像の重ね合わせ演算、αブレンディング等の透過演算、ならびに、各種の飽和演算などを高速に実行する。また、画像演算プロセッサは、レンダリング画像を得る演算の高速実行も可能である。レンダリング画像は、所定の視点位置から三次元仮想空間に配置されたポリゴンを俯瞰した様子を表す画像である。レンダリング画像は、ポリゴン情報を、Zバッファ法によりレンダリングすることにより生成される。なお、ポリゴン情報は、三次元仮想空間に配置され、各種のテクスチャが付加されたポリゴンを表す情報である。画像演算プロセッサは、点光源や平行光源、円錐光源などの典型的な(正)光源によってポリゴンが照らされる度合を計算する機能を有する。これらの機能は、ライブラリ化もしくはハードウェア化されている。これにより、これらの計算の高速化が実現されている。
【0098】
さらに、画像演算プロセッサは、文字の形状を定義するフォント情報にしたがって、文字列を、2次元画像としてフレームメモリへ描画したり、各ポリゴン表面へ描画したりする。画像演算プロセッサは、ROM 102に記録されている一般的なフォント情報を利用しても良いし、DVD−ROMに記録されている専用のフォント情報を利用してもよい。なお、画像演算プロセッサは、適宜、CPU 101と協調動作して、上述した各種の処理を実行する。
【0099】
DVD−ROMドライブ108に装着されるDVD−ROMには、ゲームを制御するためのプログラムとゲームに付随する画像データや音声データが記録される。DVD−ROMドライブ108は、CPU 101の制御に従って、これに装着されたDVD−ROMに対する読み出し処理を行って、必要なプログラムやデータを読み出す。読み出されたプログラムやデータは、RAM 103等に一時的に記憶される。
【0100】
NIC 109は、情報処理装置100をインターネット等のコンピュータ通信網(図示せず)に接続するためのものである。NIC 109は、例えば、LAN(Local Area Network)を構成する際に用いられる10BASE−T/100BASE−T規格に従うインターフェース(図示せず)により構成される。あるいは、NIC 109は、電話回線を用いてインターネットに接続するためのアナログモデム、ISDN(Integraged Services Digital Network)モデム、ADSL(Asymmetric Digital Subscriber Line Modem)モデム、ケーブルテレビジョン回線を用いてインターネットに接続するためのケーブルモデム等と、CPU 101との仲立ちを行うインターフェース(図示せず)により構成される。
【0101】
情報処理装置100は、NIC 109を介してインターネット内のSNTPサーバに接続し、SNTPサーバから情報を取得することによって、現在の日時情報を得ることもできる。また、各種のネットワークゲームのサーバ装置が、SNTPサーバと同様の機能を果たすように構成設定してもよい。
【0102】
音声処理部110は、DVD−ROMから読み出した音声データをアナログ音声信号に変換する。音声処理部110は、音声処理部110に接続されたスピーカ(図示せず)にアナログ音声信号を供給し、当該アナログ音声信号に基づく音声をスピーカに出力させる。また、音声処理部110は、CPU 101の制御の下、ゲームの進行の中で発生させるべき効果音や楽曲データを生成し、これに対応した音声をスピーカから出力させる。音声処理部110は、例えば、BGMやカラオケとして再生される楽曲の音や、ユーザのボタン操作に合わせて再生される効果音などを処理する。
【0103】
音声処理部110は、DVD−ROMに記録された音声データがMIDIデータである場合には、これが有する音源データを参照して、MIDIデータをPCMデータに変換する。また、音声処理部110は、DVD−ROMに記録された音声データがADPCM形式やOgg Vorbis形式等の圧縮済音声データである場合には、これを展開してPCMデータに変換する。PCMデータは、そのサンプリング周波数に応じたタイミングでD/A(Digital/Analog)変換されて、スピーカなどに出力されることにより、音声出力が実現される。
【0104】
RTC 111は、水晶振動子や発振回路などを備える計時用のデバイスである。RTC 111は、内蔵電池から電源を供給され、情報処理装置100の電源がオフのときでも動作し続ける。
【0105】
ボード型コントローラ120は、インターフェース104を介して情報処理装置100に接続され、ユーザがゲーム実行の際に行う操作入力を受け付ける。図3に、床面に設置されたボード型コントローラ120を真上から眺めたときの概略図を示す。ボード型コントローラ120は、略長方形平面状に成形されており、その下面の四隅に4つの加重センサ121〜124を備える。ボード型コントローラ120の表面には足を置くための領域125、126が設けられており、ユーザは、この領域内に足を乗せる。ユーザがボード型コントローラ120の上面に乗ると、加重センサ121〜124が加重を検出する。なお、本実施形態では、ボード型コントローラ120の形状が略長方形状であるとして説明するが、これに限られない。例えば、ボード型コントローラ120の形状は、長方形以外の多角形や楕円形等でもよい。
【0106】
ディスプレイ290は、画像処理部107から供給されたビデオ信号に従って画像を表示する。ディスプレイ290は、例えば、液晶ディスプレイ、プラズマディスプレイ、CRTなどにより構成される。
【0107】
このほか、情報処理装置100は、ハードディスク等の大容量外部記憶装置を用いて、ROM 102、RAM 103、外部メモリ106、DVD−ROMドライブ108に装着されるDVD−ROM等と同じ機能を果たすように構成してもよい。なお、情報処理装置100は、汎用のパーソナルコンピュータとしても利用することができる。
【0108】
(ゲーム装置の説明)
次に、本実施形態に係るゲーム装置400の機能について、図面を参照して説明する。まず、図4を参照して、本発明の実施形態に係るゲーム装置400の構成を説明する。なお、本実施形態に係るゲーム装置400は、情報処理装置100と、ゲーム制御用のプログラムが格納されたDVD−ROMと、から構成される。つまり、DVD−ROMドライブ108に当該DVD−ROMが装着されている状態において、情報処理装置100の電源が投入されると、本実施形態に係るゲーム装置400が構成される。
【0109】
図4に示すように、ゲーム装置400は、機能的には、第1検知部401と、第2検知部402と、第1判定部403と、記憶部404と、更新部405と、第2判定部406と、成績判定部407と、を備える。
【0110】
第1検知部401は、ユーザの体の第1部位の状態を検知する。第1部位は、例えば、ユーザの手である。この場合、第1検知部401は、ユーザの手の状態(例えば、右手もしくは左手の位置、向き、速度、加速度、あるいは、右手と左手との位置関係など)を検知するための構成を備える。第1検知部401は、例えば、CPU 101、もしくは、CPU 101およびコントローラユニット105により構成される。
【0111】
第2検知部402は、ユーザの体の第2部位の状態を検知する。第2部位は、ユーザの体の第1部位以外の部位であり、例えば、ユーザの足である。この場合、第2検知部402は、ユーザの足の状態(例えば、右足もしくは左足の位置、向き、速度、加速度、あるいは、右足と左足との位置関係など)を検知するための構成を備える。第2検知部402は、例えば、CPU 101、もしくは、CPU 101およびボード型コントローラ120により構成される。
【0112】
第1判定部403は、複数の課題のそれぞれについて、当該課題により表されるタイミングで検知されている第1部位の状態が、当該課題により表される状態であるか否かを判定する。例えば、複数の課題が、時刻t1においてユーザが両手を上げることを表す課題1と、時刻t2においてユーザが両手を下げることを表す課題2と、の2つである場合、第1判定部403は、第1検知部401の検知結果に基づいて、時刻t1にユーザの両手が上げられたか否か、ならびに、時刻t2にユーザの両手が下げられたか否かを判定する。第1判定部403は、例えば、CPU 101により構成される。
【0113】
記憶部404には、当該課題の状態のそれぞれについて、当該状態に対応付けられる当該第2部位の参考状態が記憶される。ここで、参考状態は、課題のタイミングにおける第1部位の状態を推測するために参考にされる第2部位の状態である。典型的には、参考状態は、ユーザが、第1部位の状態を課題の状態としたときに、とることが予想される第2部位の状態である。外部メモリ106は、例えば、外部メモリ106により構成される。
【0114】
更新部405は、当該複数の課題のそれぞれについて、当該課題のタイミングで当該検知された第1部位の状態が当該課題の状態であると判定された場合、以下に示す更新処理を実行する。この更新処理において、更新部405は、当該検知されている第2部位の状態により、当該課題の状態に対応付けて当該記憶部404に記憶される当該第2部位の参考状態を更新する。つまり、記憶部404に記憶されている第2部位の参考状態は、第1部位の状態が適切であると判定されたときの第2部位の状態で更新されるため、参考状態が改善もしくは維持される。更新部405は、例えば、CPU 101により構成される。
【0115】
第2判定部406は、当該複数の課題のそれぞれについて、当該課題のタイミングで当該検知された第1部位の状態が当該課題の状態でないと判定された場合、以下に示す判定処理を実行する。この判定処理において、第2判定部406は、当該課題のタイミングで当該検知されている第2部位の状態が当該課題の状態に対応付けて当該記憶された当該第2部位の参考状態に類似するか否かを判定する。第2判定部406は、例えば、CPU 101により構成される。
【0116】
成績判定部407は、当該複数の課題のそれぞれについて、以下に示す第1の場合もしくは第2の場合、当該課題が前記ユーザにより達成されたと判定する。第1の場合は、当該課題のタイミングで当該検知されている第1部位の状態が当該課題の状態であると当該第1判定部403により判定された場合である。第2の場合は、当該検知されている第2部位の状態が当該課題の状態に対応付けて当該記憶された当該第2部位の参考状態に類似すると当該第2判定部406により判定された場合である。以下、第1部位が両手であり、第2部位が両足であり、課題のタイミングが時刻t1であり、両手が上げられた状態が課題の状態であり、右足が持ち上げられた状態が参考状態である場合の成績判定部407の判定について説明する。
【0117】
例えば、時刻t1において、両手が上げられている場合、第1判定部403により、第1部位の状態が課題の状態である、と判定される。この場合、成績判定部407は、課題がユーザによって達成されたと判定する(上述の第1の場合に相当)。
【0118】
これに対し、時刻t1において、両手が上げられていない場合、第1判定部403により、第1部位の状態が課題の状態ではない、と判定される。この場合、第2判定部406により、時刻t1おいて検知されている両足の状態が参考状態であるか否かが判定される。
【0119】
ここで、例えば、時刻t1において、右足が持ち上げられている場合、第2判定部406により、第2部位の状態が参考状態に類似する、と判定される。この場合、成績判定部407は、課題がユーザによって達成されたと判定する(上述の第2の場合に相当)。
【0120】
一方、時刻t1において、右足が持ち上げられていない場合、第2判定部406により、第2部位の状態が参考状態に類似しない、と判定される。この場合、成績判定部407は、課題がユーザによって達成されなかったと判定する。
【0121】
このように、ゲーム装置400は、第1部位の状態と第2部位の状態とに基づいて、ユーザが課題を達成したか否かを適切に判定する。
【0122】
次に、本実施形態に係るゲーム装置400により表示される画面について説明する。なお、ゲーム装置400は、ユーザが、提示されたタイミングに合わせて、提示された課題の状態をとるダンスゲームを制御する。本実施形態では、ユーザに課される課題は、ユーザが右手もしくは左手を提示された状態とすることである。なお、ユーザは、右手用コントローラ210を右手に把持し、左手用コントローラ220を左手に把持し、ボード型コントローラ120に乗った状態でプレイするものとする。
【0123】
ゲーム装置400は、ダンスゲームに必要な種々の情報を表示する。ゲーム装置400は、例えば、ゲーム開始前に、楽曲リスト等を表示し、ユーザに所望の楽曲を選択するように促す。そして、楽曲が選択されると、ダンスゲームが開始される。そして、ゲーム装置400は、ユーザがダンスゲームをプレイしている間、例えば、図5に示すような画面500を表示する。
【0124】
画面500には、照準図形501LL、501LD、501LU、501LR、501RL、501RD、501RU、501RR(以下、必要に応じてこれらを総称して照準図形501という。)、標的図形502LL、502LD、502LU、502LR、502RL、502RD、502RU、502RR(以下、必要に応じてこれらを総称して標的図形502という。)、ゲージ画像504、スコア画像505などが表示される。
【0125】
照準図形501は、照準を表す図形である。照準図形501は、例えば、課題の状態の種類の分だけ用意される。具体的には、左手で実行すべき手振りの種類を表す照準図形501として、照準図形501LL、501LD、501LU、501LR、の4種類が用意され、右手で実行すべき手振りの種類を表す照準図形501として、照準図形501RL、501RD、501RU、501RR、の4種類が用意される。照準図形501は、画面500の固定位置に表示される。
【0126】
標的図形502は、標的を表す図形である。標的図形502は、課題の状態の種類や当該課題の状態をとるべきタイミングをユーザに示すための図形である。標的図形502は、例えば、演奏される楽曲に合わせて、画面500の下方から上方へ伸びる所定の経路上を所定の速度で移動する。また、標的図形502は、当該標的図形502に対応付けられる課題時刻になったときに、照準図形501と重なるように表示される。標的図形502は、例えば、課題の状態の種類の分だけ用意される。具体的には、左手で実行すべき手振りのタイミングを表す標的図形502として、標的図形502LL、502LD、502LU、502LR、の4種類が用意され、右手で実行すべき手振りのタイミングを表す標的図形502として、標的図形502RL、502RD、502RU、502RR、の4種類が用意される。
【0127】
なお、ユーザがゲームをプレイしている間、標的図形502が照準図形501に重なったタイミングで、当該標的図形502に対応づけられた課題の状態がとられると、当該課題が達成されたと判定されて、得点が加算される。
【0128】
ゲージ画像504は、プレイ中の楽曲全体における現在演奏されている位置などを表すゲージを示す画像である。
【0129】
スコア画像505は、現在の楽曲の演奏が開始されてから現在に至るまでに加算された得点の累計(以下「合計得点」という。)を示す画像である。
【0130】
本実施形態では、このようなゲーム制御処理を実現するためのデータとして、楽曲データ列と課題データとが、例えば、DVD−ROMドライブ108に装着されるDVD−ROMにあらかじめ記録されており、必要に応じてRAM 103に読み出されるものとする。
【0131】
楽曲データ列は、BGMとして再生される楽曲を表現するデータ列である。
【0132】
課題データについては、図6を参照して詳細に説明する。図6は、RAM 103の課題データ領域に読み出された課題データの様子を示す模式図である。
【0133】
本実施形態では、課題データ600は、複数のレコード602からなる表601と、可判定時間611(この値をTokとする。)と、終了時刻621(この値をtendとする。)と、を含むデータである。各レコード602は、課題時刻603(この値をttaskとする。)、課題の状態604、判定結果605を含む。
【0134】
課題時刻603は、照準図形501と標的図形502とが完全に重なる時刻であって、ユーザが当該標的図形502に対応付けられている課題の状態をとる(課題の手振りを実行する)理想的な時刻を示す。
【0135】
課題の状態604は、課題時刻603に至ったときに、ユーザが、体の第1部位をどの状態とすべきか(どの手振りを実行すべきか)を文字列により示すデータである。課題の状態604は、例えば、課題の状態を「左手を左に伸ばす状態」とする場合は“左手を左へ”、課題の状態を「左手を下に伸ばす状態」とする場合は“左手を下へ”、課題の状態を「左手を上に伸ばす状態」とする場合は“左手を上へ”、課題の状態を「左手を右に伸ばす状態」とする場合は“左手を右へ”、課題の状態を「右手を左に伸ばす状態」とする場合は“右手を左へ”、課題の状態を「右手を下に伸ばす状態」とする場合は“右手を下へ”、課題の状態を「右手を上に伸ばす状態」とする場合は“右手を上へ”、課題の状態を「右手を右に伸ばす状態」とする場合は“右手を右へ”、という文字列で表される。
【0136】
なお、図5においては、照準図形501LLと標的図形502LLとに対応する課題の状態は「左手を左に伸ばす状態」であり、照準図形501LDと標的図形502LDとに対応する課題の状態は「左手を下に伸ばす状態」であり、照準図形501LUと標的図形502LUとに対応する課題の状態は「左手を上に伸ばす状態」であり、照準図形501LRと標的図形502LRとに対応する課題の状態は「左手を右に伸ばす状態」であり、照準図形501RLと標的図形502RLとに対応する課題の状態は「右手を左に伸ばす状態」であり、照準図形501RDと標的図形502RDとに対応する課題の状態は「右手を下に伸ばす状態」であり、照準図形501RUと標的図形502RUとに対応する課題の状態は「右手を上に伸ばす状態」であり、照準図形501RRと標的図形502RRとに対応する課題の状態は「右手を右に伸ばす状態」である。
【0137】
可判定時間611は、課題の状態がとられるべき時間帯(以下、適宜「課題時間帯」という。)の先頭の時刻と末尾の時刻とを、課題時刻603を基準として表す時間である。つまり、課題時刻603よりも可判定時間611前の時刻から、課題時刻603よりも可判定時間611後の時刻までの時間帯に、ユーザにより課題の状態がとられると、「成功」と判定される。
【0138】
終了時刻621は、楽曲に対応するBGMの演奏が終了する時刻である。
【0139】
DVD−ROMには、判定結果605として、「未処理」が記録されているものとする。なお、RAM 103に読み出された判定結果605は、後述する処理で、「成功」もしくは「失敗」で上書きされる。
【0140】
課題時刻603、可判定時間611、ならびに、終了時刻621は、いずれもゲーム中の画面500の表示更新レートである垂直同期割込の周期(典型的には1/60秒)を単位とした数値により表現される。なお、課題時刻603や終了時刻621は、いずれも、ゲームが開始されてからの垂直同期割込の回数により表現される。以下、本実施形態においては、時刻や時間の単位は、垂直同期割込の周期を単位とした数値により表現される。
【0141】
ここで、図7〜9を参照して、ユーザによりとられた状態に基づいて、ユーザにより課題が達成されたか否かを判定する手法について説明する。
【0142】
図7は、左手用コントローラ220により左手の動きを検知する方法を説明するための図である。左手用コントローラ220は、U方向、V方向、ならびに、W方向のそれぞれについて、加速度を検出することが可能な加速度センサが内蔵されている。
【0143】
U方向は、例えば、左手用コントローラ220の長手方向である。ここで、左手用コントローラ220の中心を基準として、Cボタン222がある方向を+U方向とする。
【0144】
V方向は、例えば、U方向に直交する方向であって、コントロールスティック221が配置された面にほぼ直交する方向である。ここで、左手用コントローラ220の中心を基準として、コントロールスティック221がある方向を+V方向とする。
【0145】
W方向は、例えば、U方向とV方向とに直交する方向である。ここで、V軸がU軸に重なるように回転したときに、右ねじが進む方向を+W方向とする。
【0146】
ユーザは、左手用コントローラ220に配置されたボタンやコントローラを定められた指で操作が可能となるように、当該左手用コントローラ220を把持する。このように、ユーザが、左手用コントローラ220を左手に把持した状態で左手を動かした場合、左手とともに左手用コントローラ220が動くことになる。つまり、ゲーム装置400は、左手用コントローラ220が内蔵する加速度センサの出力に基づいて、ユーザの左手の動きを計算することが可能である。そして、ゲーム装置400は、左手を課題の状態とした場合に加速度センサから出力されることが予測される加速度の値と、加速度センサから実際に出力された加速度の値と、が近似する場合、左手が課題の状態とされたと判定することができる。
【0147】
図7には、ユーザが、左手用コントローラ220を左手に把持した状態で、左手を左へ伸ばしている様子を示している。この場合、+W軸方向もしくは+U軸方向またはその両方向に加速度が発生することが予測される。従って、+W軸方向もしくは+U軸方向またはその両方向に加速度が発生したことが検出された場合、ユーザが左手を左に伸ばしたと判定される。
【0148】
図7の説明では、ユーザの左手の動きが、左手用コントローラ220が内蔵する3軸の加速度センサの出力に基づいて検知される例を示した。同様にして、ユーザの右手の動きは、右手用コントローラ210が内蔵する3軸の加速度センサの出力に基づいて検知される。
【0149】
なお、図7には、三次元空間における直交座標系も示している。
【0150】
X方向は、例えば、ユーザとディスプレイ290とを結ぶ方向である。ここで、ユーザの位置を基準として、ディスプレイ290がある方向を+X方向とする。
【0151】
Y方向は、X方向に直交する方向であって、鉛直方向である。ここで、上方向を+Y方向とする。
【0152】
Z方向は、X方向とY方向とに直交する方向である。ここで、Y軸がX軸に重なるように回転したときに、右ねじが進む方向を+Z方向とする。
【0153】
ボード型コントローラ120は、床面に設置されて使用されるため、ユーザの重心の位置の座標は、X方向の座標とZ方向の座標とにより表すことができる。
【0154】
ここで、図8に、課題の状態と、第1判定部403による判定基準と、の関係の一例を示す。
【0155】
図8には、「左手を上へ」という課題は、「+V方向もしくは+U方向の加速度が閾加速度以上の状態が課題時間帯において閾時間以上継続」した場合、「左手を下へ」という課題は、「−V方向もしくは−U方向の加速度が閾加速度以上の状態が課題時間帯において閾時間以上継続」した場合、「左手を左へ」という課題は、「+W方向もしくは+U方向の加速度が閾加速度以上の状態が課題時間帯において閾時間以上継続」した場合、「左手を右へ」という課題は、「−W方向もしくは−U方向の加速度が閾加速度以上の状態が課題時間帯において閾時間以上継続」した場合、達成されたと判定される例が示されている。
【0156】
なお、図8に示す第1判定部403による判定基準は、例えば、加速度の方向、閾加速度、閾時間などにより表すことができる。
【0157】
本実施形態では、第1判定部403による判定基準が満たされない場合であっても、第2判定部406による判定基準が満たされる場合、成績判定部407により課題が達成されたと判定される。この理由は、第1判定部403が判定に利用するデータを検知する第1検知部401の検知の精度が比較的低いため、第1判定部403の判定結果のみによって成績が判定されることが望ましくないためである。そこで、成績判定部407は、検知の精度が比較的高い第2検知部402が検知したデータを判定に利用する第2判定部406による判定結果も加味して成績を判定する。
【0158】
なお、本実施形態では、第1検知部401により検知される第1部位の状態は、ユーザの手の状態であり、第2検知部402により検知される第2部位の状態は、ユーザの重心の位置である。ここで、ユーザの手の状態が課題の状態とされると、ユーザの重心の位置は、当該ユーザの手の状態に合わせて移動することが予想される。つまり、ユーザの手の状態と、ユーザの重心の位置と、は相関関係があるといえる。そこで、ユーザの重心の位置が、過去にユーザの手の状態が課題の状態であると判定されたときの、ユーザの重心の位置と類似する場合、課題が達成されたと判定されるように、ゲーム装置400が構成される。
【0159】
図9に、課題の状態と、第2判定部406による判定基準と、の関係の一例を示す。なお、第2判定部406による判定基準は、過去に第1判定部403により課題が達成されたときに第2検知部402により検知された第2部位の状態(以下、適宜「参考状態」という。)に類似するか否かである。
【0160】
図9には、「左手を上へ」という課題は、「ユーザの重心の位置が課題時間帯において−Z方向ならびに−X方向へ閾距離以上移動」した場合、「左手を下へ」という課題は、「ユーザの重心の位置が課題時間帯において+Z方向ならびに+X方向へ閾距離以上移動」した場合、「左手を左へ」という課題は、「ユーザの重心の位置が課題時間帯において−Z方向へ閾距離以上移動」した場合、「左手を右へ」という課題は、「ユーザの重心の位置が課題時間帯において+Z方向へ閾距離以上移動」した場合、達成されたと判定される例が示されている。
【0161】
なお、図9に示す第2判定部406による判定基準である参考状態は、例えば、移動方向、閾距離などにより表すことができる。これらの移動方向や閾距離は、例えば、課題時間帯において、第2検知部402により検知されたユーザの重心の位置の履歴に基づいて求められる。
【0162】
典型的には、参考状態は、例えば、X−Z平面におけるベクトルにより表現することができる。ここで、課題時間帯の先頭の時刻において検知されたユーザの重心の位置を移動開始位置とし、当該課題時間帯の末尾の時刻において検知されたユーザの重心の位置を移動終了位置とし、移動開始位置を始点とし移動終了位置を終点とするベクトルを移動ベクトルとする。このとき、第1判定部403により課題が達成されたと判定された少なくとも1つの課題における、少なくとも1つの移動ベクトルの平均ベクトルを参考ベクトルとすることができる。
【0163】
ここで、判定対象となる課題について求められた移動ベクトルが、記憶部404に参考状態として記憶されている参考ベクトルと類似するか否かが判定される。なお、移動ベクトルと参考ベクトルとが類似するか否かは、これらのベクトルの大きさや方向により判定される。例えば、移動ベクトルの大きさと参考ベクトルの大きさとの差が所定の範囲内であり、かつ、移動ベクトルの方向と参考ベクトルの方向との差が所定の範囲内である場合に、移動ベクトルと参考ベクトルとが類似していると判定される。あるいは、移動ベクトルの方向と参考ベクトルの方向との差が所定の範囲内である場合に、これらのベクトルの大きさにかかわらず、移動ベクトルと参考ベクトルとが類似していると判定されてもよい。
【0164】
なお、第2判定部406による判定基準である参考状態は、課題時間帯において、第2検知部402により検知されたユーザの重心の位置の履歴そのものであってもよい。この場合、第2検知部402により実際に検知されたユーザの重心の位置の履歴と、過去に参考状態として記憶部404に記憶された、ユーザの重心の位置の履歴と、が直接比較され、類似しているか否かが判別される。
【0165】
次に、本実施形態に係るゲーム装置400の動作について、図10を参照して説明する。図10は、本実施形態に係るゲーム装置400が実行するゲーム制御処理を示すフローチャートである。なお、図10に示すゲーム制御処理は、例えば、ユーザの操作入力により課題となる楽曲が選択された後に実行される。
【0166】
まず、CPU 101は、課題データ600を、DVD−ROMからRAM 103の所定の課題データ領域に読み出す(ステップS101)。
【0167】
CPU 101は、ステップS101の処理を完了すると、合計得点を初期化する(ステップS102)。具体的には、CPU 101は、RAM 103に記憶されている、合計得点を示す変数を0に初期化する。
【0168】
CPU 101は、ステップS102の処理を完了すると、現在の画面更新回数(この値をtとする。)を0に初期化する(ステップS103)。具体的には、CPU 101は、RAM 103に記憶されている、画面更新回数を示す変数を0に初期化する。画面更新回数は、本実施形態では、垂直同期割込ごとに更新されて、1ずつ増加されることになる。
【0169】
CPU 101は、ステップS103の処理を完了すると、音声処理部110に、課題データ600に対応付けられているBGMの再生を開始するように指示を出す(ステップS104)。BGMの音声データ列は、DVD−ROM内に、PCM(Pulse Code Modulation)形式、MP3(MPEG Layer 3)形式、Ogg Vorbis形式、MIDI(Musical Instrument Digital Interface)形式等で記録されている。
【0170】
CPU 101は、ステップS104の処理を完了すると、ttask+Tok=tを満たすレコードがあるか否かを判別する(ステップS105)。ここで、可判定時間を表すTokは、レコードに依存しない。従って、例えば、CPU 101は、まず、画面更新回数を表すtから可判定時間を表すTokを減算し、表601を構成する全てのレコード602のうち、課題時刻を表すttaskが、除算結果である(t−Tok)と一致するレコードを抽出する。ここで抽出されるレコードは、課題時刻から可判定時間が経過した直後のレコード、つまり、課題時間帯が経過した直後のレコードである。このように、各レコードは、課題時間帯が経過した直後に、「成功」か「失敗」かが判定される。
【0171】
CPU 101は、ttask+Tok=tを満たすレコードがあると判別すると(ステップS105:YES)、課題時間帯におけるユーザの手の状態が課題の状態であるか否かを判別する(ステップS106)。なお、課題時間帯におけるユーザの手の状態を表す情報は、後述するステップS112において、画面更新周期毎に、右手用コントローラ210もしくは左手用コントローラ220に内蔵された加速度センサからの出力値としてRAM 103などに記憶される。
【0172】
一方、課題の状態は、ユーザが課題の手の動きをしたときに、右手用コントローラ210もしくは左手用コントローラ220に内蔵された加速度センサにより出力されるべき値などを表すデータであり、DVD−ROMなどに記憶されているものとする。
【0173】
例えば、継続して検知されるべき加速度の最小値(閾加速度)、当該加速度が継続して検知されるべき最小時間(閾時間)、当該加速度が検知される方向、などを表すデータがあらかじめDVD−ROMなどに記憶される。
【0174】
CPU 101は、課題時間帯におけるユーザの手の状態が課題の状態であると判別すると(ステップS106:YES)、課題時間帯に検知された重心の位置の履歴を参考状態として外部メモリ106などに記憶する(ステップS107)。
【0175】
一方、CPU 101は、課題時間帯におけるユーザの手の状態が課題の状態でないと判別すると(ステップS106:NO)、課題時間帯におけるユーザの重心の位置の履歴が参考状態と類似するか否かを判別する(ステップS108)。ユーザの重心の位置の履歴が参考状態と類似するか否かは、検知されたユーザの重心の位置の履歴と、参考状態を表す、外部メモリ107などに記憶されているユーザの重心の位置の履歴と、が類似しているか否かで判別される。これらの履歴が互いに類似しているか否かは、これらの履歴から抽出される特徴が同じであるか否かにより判別されてもよい。なお、課題時間帯におけるユーザの重心の位置の履歴を表す情報は、後述するステップS113において、画面更新周期毎に、ボード型コントローラ120に内蔵された加重センサ121〜124からの出力値としてRAM 103などに記憶される。
【0176】
一方、参考状態は、第1判定部403により成功と判定されたときに、ステップS107において、課題時間帯におけるユーザの重心の位置の履歴として外部メモリ107などに記憶される。
【0177】
CPU 101は、ステップS107の処理を完了した場合、もしくは、ユーザの重心の位置の履歴が参考状態と類似すると判別した場合(ステップS108:YES)、レコードを「成功」に更新する(ステップS109)。
【0178】
CPU 101は、ステップS109の処理を完了すると、「成功」に対応する得点を合計得点に加算する(ステップS110)。例えば、CPU 101は、RAM 103に記憶されている合計得点に、「成功」に対応する得点として500点を加算する。
【0179】
一方、CPU 101は、ユーザの重心の位置の履歴が参考状態と類似していないと判別した場合(ステップS108:NO)、レコードを「失敗」に更新する(ステップS111)。
【0180】
CPU 101は、ステップS110の処理を完了した場合、もしくは、ステップS111の処理を完了した場合、ユーザの手の加速度を検知して保存する(ステップS112)。例えば、ユーザの左手の加速度は、左手用コントローラ220に内蔵された3軸の加速度センサにより検知され、ユーザの右手の加速度は、右手用コントローラ210に内蔵された3軸の加速度センサにより検知される。検知された加速度を表す値は、例えば、画面更新周期と対応付けられてRAM 103に記憶される。
【0181】
CPU 101は、ステップS112の処理を完了すると、ユーザの重心の位置を検知して保存する(ステップS113)。例えば、ユーザの重心の位置は、ボード型コントローラ120に内蔵された4つの加重センサ121〜124により検知された値に基づいて算出される。算出された重心の位置を表す値は、例えば、画面更新周期と対応付けられてRAM 103に記憶される。
【0182】
CPU 101は、ステップS113の処理を終了すると、表示画面を更新する(ステップS114)。すなわち、CPU 101は、画像処理部107を制御して、ディスプレイ290に、図5に示す画面500を表示させる信号を出力する。
【0183】
CPU 101は、ステップS114の処理を終了すると、次の垂直同期まで待機する(ステップS115)。この待機の間に、ほかの処理を実行しても良い。そして、CPU 101は、次の垂直同期割り込みが発生したら、tを1つ増加させる(ステップS116)。
【0184】
CPU 101は、ステップS116の処理が終了すると、t<tendであるか否かを判別する(ステップS117)。CPU 101は、t<tendであると判別すると(ステップS117:YES)、ステップS105に処理を戻す。一方、CPU 101は、t<tendではないと判別すると(ステップS117:NO)、ゲーム制御処理を終了する。
【0185】
本実施形態に係るゲーム装置400によれば、ユーザの手の状態が適切に検知できない場合であっても、ユーザの重心の位置が加味されて、ユーザが課題通りに手を動かしたか否かが、適切に判別される。なお、参考にされるユーザの重心の位置は適宜更新されるため、例えば、動きに癖のあるユーザによってプレイされる場合でも、プレイが繰り返されるうちに、課題が達成されたか否かが適切に判別されるようになる。
【0186】
(第2の実施形態)
第1の実施形態では、ユーザの一方の手のとるべき状態が、1つの課題として与えられる例を示した。しかし、本発明において、ユーザの両手のとるべき状態が、1つの課題として与えられても良い。以下、本実施形態に係るゲーム装置400について説明する。なお、第1の実施形態と同様の構成、動作については、説明を省略または簡略化する。
【0187】
まず、本実施形態に係るゲーム装置400により表示される画面について説明する。なお、ゲーム装置400は、ユーザが、提示されたタイミングに合わせて、提示された課題の状態をとるダンスゲームを制御する。本実施形態では、ユーザに課される課題は、ユーザが両手を提示された状態とすることである。
【0188】
ゲーム装置400は、ダンスゲームに必要な種々の情報を表示する。ゲーム装置400は、例えば、ゲーム開始前に、楽曲リスト等を表示し、ユーザに所望の楽曲を選択するように促す。そして、楽曲が選択されると、ダンスゲームが開始される。そして、ゲーム装置400は、ユーザがダンスゲームをプレイしている間、例えば、図11に示すような画面1100を表示する。
【0189】
画面1100には、照準図形1101L、1101D、1101U、1101R(以下、必要に応じてこれらを総称して照準図形1101という。)、標的図形1102L、1102D、1102U、1102R、(以下、必要に応じてこれらを総称して標的図形1102という。)、ゲージ画像504、スコア画像505などが表示される。
【0190】
照準図形1101は、照準を表す図形である。照準図形1101は、例えば、課題の状態の種類の分だけ用意される。具体的には、両手で実行すべき手振りの種類を表す照準図形1101として、照準図形1101L、1101D、1101U、1101R、の4種類が用意される。照準図形1101は、画面1100の固定位置に表示される。
【0191】
標的図形1102は、標的を表す図形である。標的図形1102は、課題の状態の種類や当該課題の状態をとるべきタイミングをユーザに示すための図形である。標的図形1102は、例えば、演奏される楽曲に合わせて、画面1100の下方から上方へ伸びる所定の経路上を所定の速度で移動する。また、標的図形1102は、当該標的図形1102に対応付けられる課題時刻になったときに、照準図形1101と重なるように表示される。標的図形1102は、例えば、課題の状態の種類の分だけ用意される。具体的には、両手で実行すべき手振りのタイミングを表す標的図形1102として、標的図形1102L、1102D、1102U、1102R、の4種類が用意される。
【0192】
なお、ユーザがゲームをプレイしている間、標的図形1102が照準図形1101に重なったタイミングで、当該標的図形1102に対応づけられた課題の状態がとられると、当該課題が達成されたと判定されて、得点が加算される。
【0193】
本実施形態における課題データについては、図12を参照して詳細に説明する。図12は、RAM 103の課題データ領域に読み出された課題データの様子を示す模式図である。
【0194】
本実施形態では、課題データ1200は、複数のレコード1202からなる表1201と、可判定時間611(この値をTokとする。)と、終了時刻621(この値をtendとする。)と、を含むデータである。各レコード1202は、課題時刻603(この値をttaskとする。)、課題の状態1204、判定結果605を含む。
【0195】
課題の状態1204は、課題時刻603に至ったときに、ユーザが、どの状態をとるべきか(どの手振りを実行するべきか)を文字列により示すデータである。課題の状態1204は、例えば、課題の状態を「両手を頭上で大きく回す状態」とする場合は“手を回す”、課題の状態を「両手を前後に大きく振る状態」とする場合は“手を縦に振る”、課題の状態を「両手を胸の前で叩く状態」とする場合は“両手を叩く”、課題の状態を「両手を頭上で左右に大きく振る状態」とする場合は“手を横に振る”、という文字列で表される。
【0196】
なお、図11においては、照準図形1101Lと標的図形1102Lとに対応する課題の状態は「両手を頭上で大きく回す状態」であり、照準図形1101Dと標的図形1102Dとに対応する課題の状態は「両手を前後に大きく振る状態」であり、照準図形1101Uと標的図形1102Uとに対応する課題の状態は「両手を胸の前で叩く状態」であり、照準図形1101Rと標的図形1102Rとに対応する課題の状態は「両手を頭上で左右に大きく振る状態」である。
【0197】
本実施形態に係るゲーム装置400が実行するゲーム制御処理は、基本的には、図10のフローチャートに示すゲーム制御処理と同様である。ただし、ステップS106においては、ユーザに両手の動きが課題の状態に合致するか否かが判定されることが、第1の実施形態と異なる。
【0198】
なお、本実施形態のように、ユーザの両手の複雑な動きが課題とされる場合、ユーザの両手の複雑な動きを正確に検知することができないこともあるが、ユーザの重心の位置は比較的容易に検知することができる。このため、本実施形態に係るゲーム装置400によれば、ユーザの手の状態が適切に検知できない場合であっても、ユーザが重心の位置が加味されて、ユーザが課題どおりに手を動かしたか否かが、適切に判別される。
【0199】
(第3の実施形態)
第1、2の実施形態では、照準図形501、1101や標的図形502、1102により、ユーザの体の第1部位がとるべき状態とそのタイミングとが提示される例を示した。しかし、本発明において、ユーザの体の第1部位がとるべき状態とそのタイミングとをユーザに提示する手法は任意である。例えば、ユーザの体の第1部位がとるべき状態とそのタイミングとを、画面内に表示されるキャラクタを用いて、ユーザに提示してもよい。以下、図面を参照して、本実施形態に係るゲーム装置400について説明する。
【0200】
本実施形態に係るゲーム装置400により表示される画面について説明する。なお、ゲーム装置400は、ユーザが、提示されたタイミングに合わせて、提示された課題の状態をとるダンスゲームを制御する。本実施形態では、ユーザに課される課題は、ユーザが両手を提示された状態とすることである。
【0201】
ゲーム装置400は、ダンスゲームに必要な種々の情報を表示する。ゲーム装置400は、例えば、ゲーム開始前に、楽曲リスト等を表示し、ユーザに所望の楽曲を選択するように促す。そして、楽曲が選択されると、ダンスゲームが開始される。そして、ゲーム装置400は、ユーザがダンスゲームをプレイしている間、例えば、図13に示すような画面1300を表示する。
【0202】
画面1300には、キャラクタ画像1301、ゲージ画像504、スコア画像505などが表示される。
【0203】
キャラクタ画像1301は、ユーザの両手がとるべき状態とそのタイミングとをユーザに提示するための画像である。つまり、キャラクタ画像1301は、ユーザに与えられた課題どおりに両手を動かすキャラクタをあらわす画像である。具体的には、このキャラクタは、仮想空間内において、課題時刻になると課題の状態をとる。従って、ユーザが、このキャラクタの真似をするように両手を動かすことで、当該課題が達成されたと判定されて、得点が加算される。
【0204】
本実施形態に係るゲーム装置400によれば、ユーザが達成するべき課題を、わかりやすくユーザに提示することができる。
【0205】
(第4の実施形態)
第1〜3の実施形態では、ユーザの体の第1部位(ユーザの手)の状態のみが課題とされる例を示した。しかし、例えば、ユーザの体の第2部位(ユーザの足)の状態が参考状態として課題に含まれてもよい。以下、図面を参照して、本実施形態に係るゲーム装置400について説明する。
【0206】
本実施形態では、ボード型コントローラ120に代えて、マット型コントローラ130がインターフェース104に接続される。マット型コントローラ130は、ユーザからの各種の操作入力を受け付ける。図14は、マット型コントローラ130の外観を示す説明図である。以下、本図を参照してマット型コントローラ130を説明する。
【0207】
図14は、床面に設置されたマット型コントローラ130を真上から眺めたときのマット型コントローラ130の概略図である。マット型コントローラ130の所定領域には、「左」を指示する入力をユーザから受け付ける方向ボタン201L、「下」を指示する入力をユーザから受け付ける方向ボタン201D、「上」を指示する入力をユーザから受け付ける方向ボタン201U、「右」を指示する入力をユーザから受け付ける方向ボタン201R、「決定」を指示する入力をユーザから受け付ける決定ボタン202、「取消」を指示する入力をユーザから受け付ける取消ボタン203、がそれぞれ配置されている。ユーザは、方向ボタン201L、201D、201U、201R(以下、必要に応じて方向ボタン201と総称する。)、決定ボタン202、ならびに、取消ボタン203、を任意のタイミングで押圧することができる。CPU 101は、方向ボタン201、決定ボタン202、ならびに、取消ボタン203、のそれぞれについて、ボタンが押圧されている状態であるか否かを判別する。
【0208】
本実施形態では、マット型コントローラ130は6個のボタンを備えているものとして説明する。しかしながら、ボタンの数は6個に限定されず、5個以下あるいは7個以上でもよい。
【0209】
次に、本実施形態に係るゲーム装置1500の構成について説明する。
【0210】
図15に示すように、ゲーム装置1500は、第1検知部1501と、第2検知部1502と、第1判定部1503と、第2判定部1506と、成績判定部1507と、を備える。
【0211】
第1検知部1501は、ユーザの体の第1部位の状態を検知する。第1検知部1501は、例えば、CPU 101、もしくは、CPU 101およびコントローラユニット105により構成される。
【0212】
第2検知部1502は、当該ユーザの体の第2部位の状態を検知する。第2検知部1502は、例えば、CPU 101、もしくは、CPU 101およびマット型コントローラ130により構成される。
【0213】
第1判定部1503は、当該複数の課題のそれぞれについて、当該課題のタイミングで当該検知されている第1部位の状態が、当該課題の状態であるか否かを判定する。第1判定部1503は、例えば、CPU 101により構成される。
【0214】
第2判定部1506は、当該複数の課題のそれぞれについて、当該課題のタイミングで当該検知された第1部位の状態が当該課題の状態でないと判定された場合、以下に示す判定処理を実行する。この判定処理において、第2判定部1506は、当該課題のタイミングで当該検知されている第2部位の状態が当該課題の参考状態であるか否かを判定する。第2判定部1506は、例えば、CPU 101により構成される。
【0215】
成績判定部1507は、当該複数の課題のそれぞれについて、以下に示す第1の場合もしくは第2の場合、当該課題が前記ユーザにより達成されたと判定する。第1の場合は、当該課題のタイミングで当該検知されている第1部位の状態が当該課題の状態であると当該第1判定部1503により判定された場合である。第2の場合は、当該検知されている第2部位の状態が当該課題の参考状態であると当該第2判定部1506により判定された場合である。
【0216】
次に、本実施形態に係るゲーム装置1500により表示される画面について説明する。なお、ゲーム装置1500は、ユーザが、提示されたタイミングに合わせて、提示された課題の状態をとるダンスゲームを制御する。本実施形態では、課題は、ユーザの両手がとるべき状態ならびにユーザの足がとることが望ましい参考状態とそのタイミングとを表す。なお、ユーザは、右手用コントローラ210を右手に把持し、左手用コントローラ220を左手に把持し、マット型コントローラ130に乗った状態でプレイするものとする。
【0217】
ゲーム装置400は、ダンスゲームに必要な種々の情報を表示する。ゲーム装置400は、例えば、ゲーム開始前に、楽曲リスト等を表示し、ユーザに所望の楽曲を選択するように促す。そして、楽曲が選択されると、ダンスゲームが開始される。そして、ゲーム装置1500は、ユーザがダンスゲームをプレイしている間、例えば、図16に示すような画面1600を表示する。
【0218】
画面1600には、キャラクタ画像1301、照準図形1601HL、1601HLR、1601HR、(以下、必要に応じてこれらを総称して照準図形1601という。)照準図形1602HL、1602HLR、1602HR、(以下、必要に応じてこれらを総称して標的図形1602という。)、ゲージ画像504、スコア画像505などが表示される。
【0219】
キャラクタ画像1301は、ユーザの両手がとるべき状態とユーザの両足がとることが望ましい状態とそのタイミングとをユーザに提示するための画像である。つまり、キャラクタ画像1301は、ユーザに与えられた課題どおりに両手ならびに両足を動かすキャラクタをあらわす画像である。具体的には、このキャラクタは、仮想空間内において、課題時刻になると課題の状態をとる。従って、ユーザが、このキャラクタの真似をするように両手ならびに両足を動かすことで、当該課題が達成されたと判定されて、得点が加算される。
【0220】
照準図形1601は、照準を表す図形である。照準図形1601は、例えば、課題の状態の種類の分だけ用意される。具体的には、左手を振る動作を表す照準図形1601HL、両手を振る動作を表す照準図形1601HLR、右手を振る動作を表す照準図形1601HR、の3種類が用意される。照準図形1601は、画面1600の固定位置に表示される。
【0221】
標的図形1602は、標的を表す図形である。標的図形1602は、課題の状態の種類や当該課題の状態をとるべきタイミングをユーザに示すための図形である。標的図形1602は、例えば、演奏される楽曲に合わせて、画面1600の下方から上方へ伸びる所定の経路上を所定の速度で移動する。また、標的図形1602は、当該標的図形1602に対応付けられる課題時刻になったときに、照準図形1601と重なるように表示される。標的図形1602は、例えば、課題の状態の種類の分だけ用意される。標的図形1602としては、左手を振るタイミングを表す標的図形1602HL、両手を振るタイミングを表す標的図形1602HLR、右手を振るタイミングを表す標的図形1602HR、の3種類が用意される。
【0222】
なお、ユーザがゲームをプレイしている間、標的図形1602が照準図形1601に重なったタイミングで、当該標的図形1602に対応づけられた課題の状態がとられると、当該課題が達成されたと判定されて、得点が加算される。
【0223】
本実施形態では、このようなゲーム制御処理を実現するためのデータとして、楽曲データ列と課題データとが、例えば、DVD−ROMドライブ108に装着されるDVD−ROMにあらかじめ記録されており、必要に応じてRAM 103に読み出されるものとする。
【0224】
楽曲データ列は、BGMとして再生される楽曲を表現するデータ列である。
【0225】
課題データについては、図17を参照して詳細に説明する。図17は、RAM 103の課題データ領域に読み出された課題データの様子を示す模式図である。
【0226】
本実施形態では、課題データ1700は、複数のレコード1702からなる表1701と、可判定時間611(この値をTokとする。)と、終了時刻621(この値をtendとする。)と、を含むデータである。各レコード1702は、課題時刻603(この値をttaskとする。)、課題の状態1704、参考状態1705、判定結果605を含む。
【0227】
課題時刻603は、照準図形1601と標的図形1602とが完全に重なる時刻であって、ユーザが当該標的図形1602に対応付けられている課題の状態をとる(課題の手振りを実行する)理想的な時刻を示す。
【0228】
課題の状態1704は、課題時刻603に至ったときに、ユーザが、どの状態をとるべきか(どの手振りを実行するべきか)を文字列により示すデータである。課題の状態1704は、例えば、課題の状態を「左手を小刻みに振る状態」とする場合は“左手を振る”、課題の状態を「両手を小刻みに振る状態」とする場合は“両手を振る”、課題の状態を「右手を小刻みに振る状態」とする場合は“右手を振る”、という文字列で表される。
【0229】
なお、図16においては、照準図形1601HLと標的図形1602HLとに対応する課題の状態は「左手を小刻みに振る状態」であり、照準図形1601HLRと標的図形1602HLRとに対応する課題の状態は「両手を小刻みに振る状態」であり、照準図形1601HRと標的図形1602HRとに対応する課題の状態は「右手を小刻みに振る状態」である。
【0230】
参考状態1704は、課題時刻603に至ったときに、ユーザが、どの状態をとることが望ましいか(マット型コントローラ130のどのボタンを踏むことが望ましいか)を文字列により示すデータである。参考状態1704は、例えば、参考状態を「片足で左ボタンを踏む状態」とする場合は“左ボタン押圧”、参考状態を「両足で上下のボタンを踏む状態」とする場合は“上下ボタン押圧”、参考状態を「片足で右ボタンを踏む状態」とする場合は“右ボタン押圧”、という文字列で表される。
【0231】
なお、本実施形態では、課題の状態1703と参考状態1704とは、あらかじめ対応付けられているものとする。具体的には、「左手を小刻みに振る状態」と「片足で左ボタンを踏む状態」が対応付けられ、「両手を小刻みに振る状態」と「両足で上下のボタンを踏む状態」が対応付けられ、「右手を小刻みに振る状態」と「片足で左ボタンを踏む状態」が対応付けられているものとする。つまり、本実施形態では、ユーザの手の状態とユーザの足の状態とは全く独立したものではなく、手の状態と足の状態とが連動することが期待されている。
【0232】
可判定時間611は、課題の状態がとられるべき時間帯(以下、適宜「課題時間帯」という。)の先頭の時刻と末尾の時刻とを、課題時刻603を基準として表す時間である。つまり、課題時刻603よりも可判定時間611前の時刻から、課題時刻603よりも可判定時間611後の時刻までの時間帯に、ユーザにより課題の状態がとられると、「成功」と判定され、それ以外の場合、「失敗」と判定される。
【0233】
終了時刻621は、楽曲に対応するBGMの演奏が終了する時刻である。
【0234】
DVD−ROMには、判定結果605として、「未処理」が記録されているものとする。なお、RAM 103に読み出された判定結果605は、後述する処理で、「成功」もしくは「失敗」で上書きされる。
【0235】
課題時刻603、可判定時間611、ならびに、終了時刻621は、いずれもゲーム中の画面500の表示更新レートである垂直同期割込の周期(典型的には1/60秒)を単位とした数値により表現される。なお、課題時刻603や終了時刻621は、いずれも、ゲームが開始されてからの垂直同期割込の回数により表現される。以下、本実施形態においては、時刻や時間の単位は、垂直同期割込の周期を単位とした数値により表現される。
【0236】
次に、本実施形態に係るゲーム装置1500の動作について、図18を参照して説明する。図18は、本実施形態に係るゲーム装置1500が実行するゲーム制御処理を示すフローチャートである。なお、図18に示すゲーム制御処理は、例えば、ユーザの操作入力により課題となる楽曲が選択された後に実行される。
【0237】
まず、CPU 101は、課題データ1700を、DVD−ROMからRAM 103の所定の課題データ領域に読み出す(ステップS201)。
【0238】
CPU 101は、ステップS201の処理を完了すると、合計得点を初期化する(ステップS202)。具体的には、CPU 101は、RAM 103に記憶されている、合計得点を示す変数を0に初期化する。
【0239】
CPU 101は、ステップS202の処理を完了すると、現在の画面更新回数(この値をtとする。)を0に初期化する(ステップS203)。具体的には、CPU 101は、RAM 103に記憶されている、画面更新回数を示す変数を0に初期化する。画面更新回数は、本実施形態では、垂直同期割込ごとに更新されて、1ずつ増加されることになる。
【0240】
CPU 101は、ステップS203の処理を完了すると、音声処理部110に、課題データ1700に対応付けられているBGMの再生を開始するように指示を出す(ステップS204)。BGMの音声データ列は、DVD−ROM内に、PCM(Pulse Code Modulation)形式、MP3(MPEG Layer 3)形式、Ogg Vorbis形式、MIDI(Musical Instrument Digital Interface)形式等で記録されている。
【0241】
CPU 101は、ステップS204の処理を完了すると、ttask+Tok=tを満たすレコードがあるか否かを判別する(ステップS205)。ここで、可判定時間であるTokは、レコードに依存しない。従って、例えば、CPU 101は、まず、画面更新回数であるtから可判定時間であるTokを減算し、表1701を構成する全てのレコード602のうち、課題時刻であるttaskが、除算結果である(t−Tok)と一致するレコードを抽出する。ここで抽出されるレコードは、課題時刻から可判定時間が経過した直後のレコード、つまり、課題時間帯が経過した直後のレコードである。このように、各レコードは、課題時間帯が経過した直後に、「成功」か「失敗」かが判定される。
【0242】
CPU 101は、ttask+Tok=tを満たすレコードがあると判別すると(ステップS205:YES)、課題時間帯におけるユーザの手の状態が課題の状態であるか否かを判別する(ステップS206)。なお、課題時間帯におけるユーザの手の状態を表す情報は、後述するステップS212において、画面更新周期毎に、右手用コントローラ210もしくは左手用コントローラ220に内蔵された加速度センサからの出力値としてRAM 103などに記憶される。
【0243】
一方、課題の状態は、ユーザが課題の手の動きをしたときに、右手用コントローラ210もしくは左手用コントローラ220に内蔵された加速度センサにより出力されるべき値などを表すデータであり、DVD−ROMなどに記憶されているものとする。
【0244】
例えば、手の振り動作によって変化するべき加速度の最小値(閾加速度)、手の振り動作によって加速度が変化するべき最小回数(閾回数)、手の振り動作によって加速度が変化するべき方向、などを表すデータがあらかじめDVD−ROMなどに記憶される。
【0245】
CPU 101は、課題時間帯におけるユーザの手の動きが課題の状態ではないと判別すると(ステップS206:NO)、課題時間帯にボタンの押圧状態が参考状態であるか否かを判別する(ステップS208)。なお、課題時間帯にボタンの押圧状態を表す情報は、後述するステップS213において、画面更新周期毎に、マット型コントローラ130に配置された方向ボタン201からの出力値としてRAM 103などに記憶される。
【0246】
一方、参考状態は、課題データ1701の一部としてDVD−ROMなどに記憶されている。
【0247】
CPU 101は、ユーザの手の状態が課題の状態であると判別した場合(ステップS206:YES)、もしくは、ボタンの押圧状態が参考状態であると判別した場合(ステップS208:YES)、レコードを「成功」に更新する(ステップS209)。
【0248】
CPU 101は、ステップS209の処理を完了すると、「成功」に対応する得点を合計得点に加算する(ステップS210)。例えば、CPU 101は、RAM 103に記憶されている合計得点に、「成功」に対応する得点として500点を加算する。
【0249】
一方、CPU 101は、ボタンの押圧状態が参考状態ではないと判別した場合(ステップS208:NO)、レコードを「失敗」に更新する(ステップS211)。
【0250】
CPU 101は、ステップS210の処理を完了した場合、もしくは、ステップS211の処理を完了した場合、ユーザの手の加速度を検知して保存する(ステップS212)。例えば、ユーザの左手の加速度は、左手用コントローラ220に内蔵された3軸の加速度センサにより検知され、ユーザの右手の加速度は、右手用コントローラ210に内蔵された3軸の加速度センサにより検知される。検知された加速度を表す値は、例えば、画面更新周期と対応付けられてRAM 103に記憶される。
【0251】
CPU 101は、ステップS212の処理を完了すると、ボタンの押圧状態を検知して保存する(ステップS213)。例えば、CPU 101は、マット型コントローラ130に配置された4つの方向ボタン201のそれぞれについて、押圧状態を調べる。各方向ボタン201の押圧状態を表す値は、例えば、画面更新周期と対応付けられてRAM 103に記憶される。
【0252】
CPU 101は、ステップS213の処理を終了すると、表示画面を更新する(ステップS214)。すなわち、CPU 101は、画像処理部107を制御して、ディスプレイ290に、図16に示す画面1600を表示させる信号を出力する。
【0253】
CPU 101は、ステップS214の処理を終了すると、次の垂直同期まで待機する(ステップS215)。この待機の間に、ほかの処理を実行しても良い。そして、CPU 101は、次の垂直同期割り込みが発生したら、tを1つ増加させる(ステップS216)。
【0254】
CPU 101は、ステップS216の処理が終了すると、t<tendであるか否かを判別する(ステップS217)。CPU 101は、t<tendであると判別すると(ステップS217:YES)、ステップS205に処理を戻す。一方、CPU 101は、t<tendではないと判別すると(ステップS217:NO)、ゲーム制御処理を終了する。
【0255】
本実施形態に係るゲーム装置400によれば、ユーザの手の状態が適切に検知できない場合であっても、ユーザの足の状態が加味されて、ユーザが課題通りに手を動かしたか否かが、適切に判別される。なお、本実施形態では、参考状態があらかじめ定められているが、参考状態をどのように決定するかは適宜調整が可能である。例えば、複数の人に対して、第1部位を課題の状態にさせたときの第2部位の状態の統計に基づいて参考状態を決定することができる。典型的には、検知された第2部位の状態の平均値を参考状態に決定する。また、課題の状態に対応してあらかじめ用意する参考状態を調整することにより、課題が達成されたか否かの判定の基準を調整することができる。
【0256】
(変形例)
本発明は、上述した第1〜4の実施形態に限られるものではなく、種々の変形が可能である。
【0257】
第1〜4の実施形態では、課題のタイミングにおいて検知された第1部位の状態が課題の状態でない場合に、第2部位の状態が考慮されて、成績が判定される例を示した。しかし、本発明において、課題のタイミングにおいて検知された第1部位の状態が課題の状態であるか否かが疑わしい場合に、第2部位の状態が考慮されて、成績が判定されてもよい。かかる構成によれば、第1部位の状態が課題の状態でないにもかかわらず、第2部位の状態が参考状態に偶然一致したために、ユーザのプレイ能力以上に成績が良くなるという事態を抑制できる。
【0258】
ここで、第1部位の状態が課題の状態であるか否かが疑わしい場合の典型例は、第1部位の状態が課題の状態ではないが課題の状態に類似する場合である。なお、第1部位の状態が課題の状態であるか否かが判定される際の第1の閾値よりも、第1部位の状態が課題の状態に類似するか否かが判定される際の第2の閾値が緩く設定される。そして、第1の閾値により定まる条件は満たされないが、第2の閾値により定まる条件が満たされる場合に、第2部位の状態が考慮されて成績が判定される。
【0259】
例えば、第1部位の+W方向の加速度であるAwが第1の閾値であるAth1以上である場合に第1部位の状態が課題の状態であると判定される場合、第2の閾値はAth2(ただし、Ath2<Ath1)に設定される。この場合、Ath2≦Aw<Ath1が満たされると、第2部位の状態が考慮されて成績が判定される。
【0260】
第1の実施形態では、参考状態が1つであり、第1部位の状態が課題の状態であると判別されると、参考状態が更新される例を示した。しかし、本発明において、参考状態は複数個であってもよい。この場合、例えば、第2部位の状態が、当該複数個の参考状態のうちのいずれかの参考状態と類似した場合に、課題が達成されたと判定されてもよい。
【0261】
なお、記憶部404には、1つの課題に対して1つ以上の参考状態が記憶されるが、記憶部404に記憶される1つ以上の参考状態をどのように更新するかは適宜調整が可能である。例えば、第1部位の状態が課題の状態であると判定されたときの第2部位の状態のうち、最新の所定個数の第2部位の状態が記憶部404に記憶されるようにしてもよい。あるいは、過去に検知された第1部位の状態のうち、課題の状態に近いものから順に選択された所定個数の第1部位の状態のそれぞれが検知されたときに検知された第2部位の状態が記憶部404に記憶されるようにしてもよい。
【0262】
かかる構成によれば、第1部位の状態が課題の状態であるときに検知されると予想される第2部位の状態が2つ以上存在する場合に、課題が達成されたか否かが適切に判定される。典型的には、2人以上のユーザによりゲームがプレイされる場合に、2人以上のユーザのそれぞれに対応する参考状態が記憶部404に記憶され、第2部位の状態がいずれかの参考状態に類似する場合に課題が達成されたと判定される。この場合において、過去に自分がプレイした際に記憶部404に記憶された参考状態が、検出される第2部位の状態と類似する確率が高い参考状態となる。
【産業上の利用可能性】
【0263】
以上説明したように、本発明によれば、ユーザによりなされた課題動作の適切さを、複数の入力系統を用いて適切に判定するのに好適なゲーム装置、ゲーム制御方法、ならびに、これらをコンピュータにより実現するためのプログラムを提供することができる。
【符号の説明】
【0264】
100 情報処理装置
101 CPU
102 ROM
103 RAM
104 インターフェース
105 コントローラユニット
106 外部メモリ
107 画像処理部
108 DVD−ROMドライブ
109 NIC
110 音声処理部
111 RTC
120 ボード型コントローラ
121〜124 加重センサ
125、126 領域
130 マット型コントローラ
201、201L、201D、201U、201R 方向ボタン
202 決定ボタン
203 取消ボタン
210 右手用コントローラ
211 CCDカメラ
212 十字型キー
213 Aボタン
214 Bボタン
215 ボタン
216 孔
217 インジケータ
218 電源ボタン
220 左手用コントローラ
221 コントロールスティック
222 Cボタン
223 Zボタン
230 センサバー
231 発光素子
290 ディスプレイ
400 ゲーム装置
401 第1検知部
402 第2検知部
403 第1判定部
404 記憶部
405 更新部
406 第2判定部
407 成績判定部
500 画面
501 501LL、501LD、501LU、501LR、501RL、501RD、501RU、501RR 照準図形
502 502LL、502LD、502LU、502LR、502RL、502RD、502RU、502RR 標的図形
504 ゲージ画像
605 スコア画像
600 課題データ
601 表
602 レコード
603 課題時刻
604 課題の状態
605 判定結果
611 可判定時間
621 終了時刻
1100 画面
1101 1101L、1101D、1101U、1101R 照準図形
1102 1102L、1102D、1102U、1102R 標的図形
1200 課題データ
1201 表
1202 レコード
1204 課題の状態
1300 画像
1301 キャラクタ画像
1500 ゲーム装置
1501 第1検知部
1502 第2検知部
1503 第1判定部
1506 第2判定部
1507 成績判定部
1600 画面
1601 1601HL、1601HD、1601HU、1601HR 照準図形
1602 1602HL、1602HD、1602HU、1602HR 標的図形
1700 課題データ
1701 表
1702 レコード
1704 課題の状態
1705 参考状態

【特許請求の範囲】
【請求項1】
複数の課題をユーザが達成することを求めるゲーム装置であって、当該複数の課題のそれぞれは、当該ユーザの体の第1部位がとるべき状態とそのタイミングとを表し、
前記ユーザの体の第1部位の状態を検知する第1検知部、
前記ユーザの体の第2部位の状態を検知する第2検知部、
前記複数の課題のそれぞれについて、当該課題のタイミングで前記検知されている第1部位の状態が、当該課題の状態であるか否かを判定する第1判定部、
前記課題の状態のそれぞれについて、当該状態に対応付けられる前記第2部位の参考状態が記憶される記憶部、
前記複数の課題のそれぞれについて、当該課題のタイミングで前記検知された第1部位の状態が当該課題の状態であると判定された場合、前記検知されている第2部位の状態により、当該課題の状態に対応付けて前記記憶部に記憶される前記第2部位の参考状態を更新する更新部、
前記複数の課題のそれぞれについて、当該課題のタイミングで前記検知された第1部位の状態が当該課題の状態でないと判定された場合、当該課題のタイミングで前記検知されている第2部位の状態が当該課題の状態に対応付けて前記記憶された前記第2部位の参考状態に類似するか否かを判定する第2判定部、
前記複数の課題のそれぞれについて、当該課題のタイミングで前記検知されている第1部位の状態が当該課題の状態であると前記第1判定部により判定された場合、もしくは、前記検知されている第2部位の状態が当該課題の状態に対応付けて前記記憶された前記第2部位の参考状態に類似すると前記第2判定部により判定された場合、当該課題が前記ユーザにより達成されたと判定する成績判定部
を備えることを特徴とするゲーム装置。
【請求項2】
請求項1に記載のゲーム装置であって、
前記第1部位の状態は、ユーザの手の動きであり、
前記第1検知部は、加速度センサにより、前記手の動きを検知し、
前記第2部位の状態は、水平面におけるユーザの重心の位置であり、
前記第2検知部は、圧力センサにより前記重心の位置を検知する
ことを特徴とするゲーム装置。
【請求項3】
請求項1または2に記載のゲーム装置であって、
前記課題のそれぞれについて、当該課題のタイミングで、前記第1部位の状態をいずれの状態とすべきかが、画面に表示される
ことを特徴とするゲーム装置。
【請求項4】
ユーザの体の第1部位がとるべき状態ならびに第2部位がとることが望ましい参考状態とそのタイミングとを表す課題を、当該ユーザが達成することを求めるゲーム装置であって、
前記ユーザの体の第1部位の状態を検知する第1検知部、
前記ユーザの体の第2部位の状態を検知する第2検知部、
前記課題のタイミングで前記検知されている第1部位の状態が、当該課題の状態であるか否かを判定する第1判定部、
前記課題のタイミングで前記検知された第1部位の状態が当該課題の状態でないと判定された場合、当該課題のタイミングで前記検知されている第2部位の状態が当該課題の参考状態であるか否かを判定する第2判定部、
前記課題のタイミングで前記検知されている第1部位の状態が当該課題の状態であると前記第1判定部により判定された場合、もしくは、前記検知されている第2部位の状態が当該課題の参考状態であると前記第2判定部により判定された場合、当該課題が前記ユーザにより達成されたと判定する成績判定部
を備えることを特徴とするゲーム装置。
【請求項5】
請求項4に記載のゲーム装置であって、
前記課題のタイミングで、前記第1部位の状態をいずれの状態とすべきかが、画面に表示される
ことを特徴とするゲーム装置。
【請求項6】
請求項1乃至5のいずれか1項に記載のゲーム装置であって、
前記課題の参考状態は、1つ以上である
ことを特徴とするゲーム装置。
【請求項7】
請求項1乃至6のいずれか1項に記載のゲーム装置であって、
前記第2判定部が前記検知されている第2部位の状態を判定するのは、前記検知された第1部位の状態が前記課題の状態ではないが当該課題の状態に類似する場合に限られる
ことを特徴とするゲーム装置。
【請求項8】
複数の課題をユーザが達成することを求めるゲーム装置にて実行されるゲーム制御方法であって、
前記ゲーム装置は、第1検知部、第2検知部、第1判定部、記憶部、更新部、第2判定部、成績判定部、を備え、当該複数の課題のそれぞれは、当該ユーザの体の第1部位がとるべき状態とそのタイミングとを表し、
前記第1検知部が、前記ユーザの体の第1部位の状態を検知する第1検知工程、
前記第2検知部が、前記ユーザの体の第2部位の状態を検知する第2検知工程、
前記第1判定部が、前記複数の課題のそれぞれについて、当該課題のタイミングで前記検知されている第1部位の状態が、当該課題の状態であるか否かを判定する第1判定工程、
前記記憶部に、前記課題の状態のそれぞれについて、当該状態に対応付けられる前記第2部位の参考状態が記憶される記憶工程、
前記更新部が、前記複数の課題のそれぞれについて、当該課題のタイミングで前記検知された第1部位の状態が当該課題の状態であると判定された場合、前記検知されている第2部位の状態により、当該課題の状態に対応付けて前記記憶部に記憶される前記第2部位の参考状態を更新する更新工程、
前記第2判定部が、前記複数の課題のそれぞれについて、当該課題のタイミングで前記検知された第1部位の状態が当該課題の状態でないと判定された場合、当該課題のタイミングで前記検知されている第2部位の状態が当該課題の状態に対応付けて前記記憶された前記第2部位の参考状態に類似するか否かを判定する第2判定工程、
前記成績判定部が、前記複数の課題のそれぞれについて、当該課題のタイミングで前記検知されている第1部位の状態が当該課題の状態であると前記第1判定部により判定された場合、もしくは、前記検知されている第2部位の状態が当該課題の状態に対応付けて前記記憶された前記第2部位の参考状態に類似すると前記第2判定部により判定された場合、当該課題が前記ユーザにより達成されたと判定する成績判定工程
を備えることを特徴とするゲーム制御方法。
【請求項9】
ユーザの体の第1部位がとるべき状態ならびに第2部位がとることが望ましい参考状態とそのタイミングとを表す課題を、当該ユーザが達成することを求めるゲーム装置にて実行されるゲーム制御方法であって、
前記ゲーム装置は、第1検知部、第2検知部、第1判定部、第2判定部、成績判定部、を備え、
前記第1検知部が、前記ユーザの体の第1部位の状態を検知する第1検知工程、
前記第2検知部が、前記ユーザの体の第2部位の状態を検知する第2検知工程、
前記第1判定部が、前記課題のタイミングで前記検知されている第1部位の状態が、当該課題の状態であるか否かを判定する第1判定工程、
前記第2判定部が、前記課題のタイミングで前記検知された第1部位の状態が当該課題の状態でないと判定された場合、当該課題のタイミングで前記検知されている第2部位の状態が当該課題の参考状態であるか否かを判定する第2判定工程、
前記成績判定部が、前記課題のタイミングで前記検知されている第1部位の状態が当該課題の状態であると前記第1判定部により判定された場合、もしくは、前記検知されている第2部位の状態が当該課題の参考状態であると前記第2判定部により判定された場合、当該課題が前記ユーザにより達成されたと判定する成績判定工程
を備えることを特徴とするゲーム制御方法。
【請求項10】
コンピュータを、
複数の課題をユーザが達成することを求めるゲーム装置として機能させるプログラムであって、当該複数の課題のそれぞれは、当該ユーザの体の第1部位がとるべき状態とそのタイミングとを表し、
前記プログラムは、前記コンピュータを、
前記ユーザの体の第1部位の状態を検知する第1検知部、
前記ユーザの体の第2部位の状態を検知する第2検知部、
前記複数の課題のそれぞれについて、当該課題のタイミングで前記検知されている第1部位の状態が、当該課題の状態であるか否かを判定する第1判定部、
前記課題の状態のそれぞれについて、当該状態に対応付けられる前記第2部位の参考状態が記憶される記憶部、
前記複数の課題のそれぞれについて、当該課題のタイミングで前記検知された第1部位の状態が当該課題の状態であると判定された場合、前記検知されている第2部位の状態により、当該課題の状態に対応付けて前記記憶部に記憶される前記第2部位の参考状態を更新する更新部、
前記複数の課題のそれぞれについて、当該課題のタイミングで前記検知された第1部位の状態が当該課題の状態でないと判定された場合、当該課題のタイミングで前記検知されている第2部位の状態が当該課題の状態に対応付けて前記記憶された前記第2部位の参考状態に類似するか否かを判定する第2判定部、
前記複数の課題のそれぞれについて、当該課題のタイミングで前記検知されている第1部位の状態が当該課題の状態であると前記第1判定部により判定された場合、もしくは、前記検知されている第2部位の状態が当該課題の状態に対応付けて前記記憶された前記第2部位の参考状態に類似すると前記第2判定部により判定された場合、当該課題が前記ユーザにより達成されたと判定する成績判定部
として機能させることを特徴とするプログラム。
【請求項11】
コンピュータを、
ユーザの体の第1部位がとるべき状態ならびに第2部位がとることが望ましい参考状態とそのタイミングとを表す課題を、当該ユーザが達成することを求めるゲーム装置として機能させるプログラムであって、
前記プログラムは、前記コンピュータを、
前記ユーザの体の第1部位の状態を検知する第1検知部、
前記ユーザの体の第2部位の状態を検知する第2検知部、
前記課題のタイミングで前記検知されている第1部位の状態が、当該課題の状態であるか否かを判定する第1判定部、
前記課題のタイミングで前記検知された第1部位の状態が当該課題の状態でないと判定された場合、当該課題のタイミングで前記検知されている第2部位の状態が当該課題の参考状態であるか否かを判定する第2判定部、
前記課題のタイミングで前記検知されている第1部位の状態が当該課題の状態であると前記第1判定部により判定された場合、もしくは、前記検知されている第2部位の状態が当該課題の参考状態であると前記第2判定部により判定された場合、当該課題が前記ユーザにより達成されたと判定する成績判定部
として機能させることを特徴とするプログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate

【図18】
image rotate