説明

情報処理装置

【課題】遊戯者に画面内で動作を提示するとともに、遊戯者の動作が提示した動作と同じか否かを、簡単な処理により比較することができる情報処理装置を提供する。
【解決手段】ディスプレイ画面にキャラクタオブジェクトの動作を表示することによって遊戯者の動作を案内する情報処理装置である。遊戯者により操作される実コントローラ20A、20Bが設けられている。仮想三次元空間内にキャラクタオブジェクトを生成し、仮想三次元空間内に、キャラクタオブジェクトにより操作され、実コントローラ20A、20Bを模倣した仮想コントローラオブジェクト20A′、20B′を生成し、キャラクタオブジェクトをディスプレイ画面に表示させ、キャラクタオブジェクトを動作させた際の、仮想コントローラオブジェクト20A′、20B′の仮想動作情報を演算し、実コントローラ20A、20Bの動作情報と、演算された仮想コントローラオブジェクト20A′、20B′の仮想動作情報とを比較し、実コントローラ20A、20Bを操作する遊戯者の動作を評価する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ディスプレイ画面にオブジェクトの動作を表示することによって遊戯者の動作を案内する情報処理装置に関する。
【背景技術】
【0002】
従来、音楽等に合わせてダンスを踊るダンスゲームにおいて、ディスプレイ画面に模範となるキャラクタの動作を表示し、それを見ながらダンスを行う遊戯者の動作を検出してダンスの評価を行うゲーム装置が知られている。
【0003】
遊戯者の動作を検出する手段としては、床面に感圧センサを配置して遊戯者のステップを検出するものや、検出領域に設けられた赤外光を物体が横切ったか否かを検知することにより遊戯者の腕の動きを検出するものや、遊戯者の腕などの動きを検知したい部分に光反射部材を設け、光反射部材からの反射光を受光することにより腕などの動きを検出するものが知られている(特許文献1参照)。
【特許文献1】特開2003−325971号公報
【発明の開示】
【発明が解決しようとする課題】
【0004】
これら従来技術では、床面に感圧センサを設けたり、赤外光による検出領域を設けたり、検知したい部分に光反射部材を設けたりする等、検出のための特別な部材を設ける必要があり、遊戯者の自由な動作を制限するものであった。
【0005】
遊戯者の自由を制限することなく、遊戯者の動作を検出するものとして、加速度センサを内蔵したコントローラが発案されている。
【0006】
しかしながら、加速度センサを内蔵したコントローラにより遊戯者の動作を検出するためには、コントローラの絶対座標を設定し、加速度センサの検出値に基づいてコントローラの相対座標を算出しなければならず、非常に複雑で高速なデータ処理が必要である。
【0007】
また、コントローラは通常遊戯者が手に持って操作するものであるため、遊戯者の動作を画面内のキャラクタの動作で提示しても、コントローラの動きからは、脚等の遊戯者の他の部分の動きを提示した動作を比較することができない。
【0008】
本発明の目的は、遊戯者に画面内で動作を提示するとともに、遊戯者の動作が提示した動作と同じか否かを、簡単な処理により比較することができる情報処理装置を提供することにある。
【課題を解決するための手段】
【0009】
本発明の一態様による情報処理装置は、制御手段を有し、ディスプレイ画面にオブジェクトの動作を表示することによって遊戯者の動作を案内する情報処理装置であって、前記制御手段は、仮想三次元空間内にオブジェクトを生成するオブジェクト生成手段と、前記仮想三次元空間内に、前記オブジェクトにより操作され、前記遊戯者により操作される実コントローラを模倣した仮想コントローラオブジェクトを生成する仮想コントローラオブジェクト生成手段と、前記オブジェクトを前記ディスプレイ画面に表示させる表示手段と、前記オブジェクトを動作させた際の、前記仮想コントローラオブジェクトの仮想動作情報を演算する演算手段と、前記実コントローラの動作情報と、前記演算手段により演算された前記仮想コントローラオブジェクトの仮想動作情報とを比較し、前記実コントローラを操作する前記遊戯者の動作を評価する評価手段とを有することを特徴とする。
【0010】
本発明の一態様による情報処理装置は、制御手段を有し、ディスプレイ画面にキャラクタオブジェクトの動作を表示することによって遊戯者の動作を案内する情報処理装置であって、前記制御手段は、仮想三次元空間内にキャラクタオブジェクトを生成するキャラクタオブジェクト生成手段と、前記仮想三次元空間内に、前記キャラクタオブジェクトにより把持される位置に付随され、前記遊戯者により操作される実コントローラを模倣した仮想コントローラオブジェクトであって、前記実コントローラが有する加速度センサを模倣した仮想加速度センサを有する仮想コントローラオブジェクトを生成する仮想コントローラオブジェクト生成手段と、前記キャラクタオブジェクトを前記ディスプレイ画面に表示させる表示手段と、前記キャラクタオブジェクトを動作させた際の、前記キャラクタオブジェクトに付随する前記仮想コントローラオブジェクトの前記仮想加速度センサによる仮想加速度情報を演算する演算手段と、前記実コントローラの前記加速度センサによる加速度情報と、前記演算手段により演算された前記仮想コントローラオブジェクトの前記仮想加速度センサによる仮想加速度情報とを比較し、前記実コントローラを操作する前記遊戯者の動作を評価する評価手段とを有することを特徴とする。
【発明の効果】
【0011】
本発明によれば、仮想三次元空間内にオブジェクトを生成し、仮想三次元空間内に、オブジェクトにより操作され、遊戯者により操作される実コントローラを模倣した仮想コントローラオブジェクトを生成し、オブジェクトをディスプレイ画面に表示させ、オブジェクトを動作させた際の、仮想コントローラオブジェクトの仮想動作情報を演算し、実コントローラの動作情報と、演算された仮想コントローラオブジェクトの仮想動作情報とを比較し、実コントローラを操作する遊戯者の動作を評価するようにしたので、遊戯者に画面内で動作を提示するとともに、遊戯者の動作が提示した動作と同じか否かを、簡単な処理により比較することができる。
【発明を実施するための最良の形態】
【0012】
[一実施形態]
本発明の一実施形態によるゲーム装置について図面を用いて説明する。
【0013】
(ゲーム装置の外観)
本実施形態のゲーム装置10の外観を図1に示す。本実施形態のゲーム装置10は、テレビ台2上に設置されたテレビモニタ4に接続されて使用される。ゲーム装置10は、ゲーム装置本体12と、テレビモニタ4上に設置されたセンサーバー14と、遊戯者により操作されるコントローラ20とから構成されている。
【0014】
ゲーム装置本体12とテレビモニタ4とはケーブルにより接続されている。ゲーム装置本体12とセンサーバー14とはケーブルにより接続されている。ゲーム装置本体12とコントローラ20とは無線により通信可能である。
【0015】
センサーバー14は、テレビモニタ4に対するコントローラ20の位置関係を検出するためのものである。センサーバー14は細長い形状をしており、両端に5個ずつの発光素子14a、14bが設けられている。コントローラ20のイメージセンサ22により、センサーバー14の発光素子14a、14bから出力する光を、テレビモニタ4と共に撮像することにより、テレビモニタ4に対するコントローラ20の位置や傾きを検出する。センサーバー14を用いた位置検出方法の詳細については後述する。
【0016】
コントローラ20は、遊戯者の例えば手により保持され自由に操作される。コントローラ12の動きは、内蔵された3軸加速度センサ26により検出された加速度に基づいて把握することができる。
【0017】
コントローラ20の操作面上には、電源ボタン28a、十字ボタン28b等の各種操作ボタン28が設けられている。
【0018】
(ゲーム装置の構成)
本実施形態のゲーム装置10の構成を図2に示す。
【0019】
図2に示すように、ゲーム装置10には、ゲームプログラムの実行やシステム全体の制御や画像表示のための座標計算等を行うCPU40と、CPU40が処理を行うのに必要なプログラムやデータを格納するバッファメモリとして利用されるシステムメモリ(RAM)42とがバスラインにより共通接続され、バスアービタ44に接続されている。バスアービタ44は、ゲーム装置10の各ブロックや外部に接続される機器とのプログラムやデータの流れを制御する。
【0020】
ゲームプログラムやデータ(映像データや音楽データも含む)が格納されたプログラムデータ記憶装置又は記憶媒体(ゲーム用記録媒体であるCD−ROM等を駆動する光ディスクや光ディスクドライブ等も含む)46と、ゲーム装置を起動するためのプログラムやデータが格納されているBOOTROM48とがバスラインを介してバスアービタ44に接続されている。
【0021】
表示画像を生成するためには、システムメモリ42内に、表示するオブジェクトを構成する三次元ローカル座標データを有するポリゴンデータ(頂点データ)や、NURBS(Non Uniform Rational B-Spline)データ(曲面や制御点データ)を格納しておき、CPUやジオメトリプロセッサ(図示しない)によって、これを三次元仮想空間のワールド座標系に配置してローカル座標をワールド座標系に変換する。
【0022】
更に、ワールド座標系に、遊戯者の操作やゲームの進行に伴って生成される視点座標を設定して、この視点から所定の視方向および画角でみた視野範囲にあるオブジェクトを、視点座標を原点とした視点座標系に変換して、この変換されたオブジェクトの座標をレンダリングプロセッサ50に送信する。
【0023】
レンダリングプロセッサ50は、送られてきたオブジェクトの座標に対して、まず、光源処理などの補間処理や、グラフィックメモリ52に格納されたテクスチャーデータをオブジェクトに貼り付けてオブジェクトの表面にディテールを施す。さらにレンダリングプロセッサ50は、三次元の立体オブジェクトから、テレビモニタ4に表示するために2次元平面(スクリーン)にオブジェクト(ポリゴン)を投影して2次元座標データ(スクリーン座標系)に変換し、Z座標の深さが浅いポリゴン即ち視点座標に近いポリゴンから優先的に表示するようにして2次元画像を生成して、これをCRTや液晶表示装置等のテレビモニタ4に出力する。
【0024】
バスアービタ44を介して、プログラムデータ記憶装置又は記憶媒体46から読み出した映像(MOVIE)データを再生したり、プレイヤの操作やゲーム進行に応じて画像表示のための画像を生成したりするレンダリングプロセッサ50と、そのレンダリングプロセッサ50が画像生成を行うために必要なグラフィックデータ等を格納しておくグラフィックメモリ52とが接続されている。レンダリングプロセッサ50から出力される画像信号は、ビデオDAC54によりデジタル信号からアナログ信号に変換され、テレビモニタ4により表示される。
【0025】
バスアービタ44を介して、プログラムデータ記憶装置又は記憶媒体46から読み出した音楽データを再生したり、プレイヤによる操作やゲーム進行に応じて効果音や音声を生成したりするサウンドプロセッサ56と、そのサウンドプロセッサ56により効果音や音声を生成するために必要なサウンドデータ等を格納しておくサウンドメモリ58とが接続されている。サウンドプロセッサ56から出力される音声信号は、オーディオDAC60によりデジタル信号からアナログ信号に変換され、テレビモニタ4のスピーカから出力される。
【0026】
バスアービタ44には、通信インターフェース62が接続されている。通信インタフェース62はLANアダプタ64を介して電話回線等の外部ネットワークに接続される。ゲーム装置12はLANアダプタ64によりインターネットに接続され、他のゲーム装置やネットワークサーバ等との通信が可能となる。
【0027】
なお、通信インターフェース62及びLANアダプタ64は電話回線を使用するものであるが、電話回線を使用するターミナルアダプタ(TA)やルータ、ケーブルテレビ回線を使用するケーブルモデム、携帯電話やPHSを利用して無線通信手段、光ファイバを用いた光ファイバ通信手段等の他の通信方法を利用してもよい。
【0028】
バスアービタ44には、テレビモニタ4に対するコントローラ20の位置を検出するためのセンサーバー14が接続されている。
【0029】
バスアービタ44には、コントローラ20と無線通信するための無線受信部68が接続されている。
【0030】
バスアービタ44には、ペリフェラルI/F(インターフェース)70が接続されている。ペリフェラルI/F70を介して、様々な周辺機器を接続することができる。
【0031】
コントローラ20には、センサーバー14からの光や、テレビモニタ4に表示されるゲーム画面を撮像するためのイメージセンサ22、ゲーム装置本体12と無線通信するための無線送信部24、コントローラ20の3軸方向の加速度を検出するための3軸加速度センサ26、電源ボタン28a、十字ボタン28b等の各種操作ボタン28が設けられている。
【0032】
なお、ゲーム装置10は、家庭用のゲーム装置に限定されるものではなく、パーソナルコンピュータや、携帯型電子ゲーム機、携帯電話やPDA等の電子装置、アミューズメント施設やゲームカフェ等の店舗に設置されるゲーム装置等の情報処理装置でもよい。
【0033】
(コントローラの加速度情報)
本実施形態のコントローラ20の加速度情報の検出について図3を用いて説明する。
【0034】
コントローラ20に内蔵された3軸加速度センサ26は、3軸(X軸、Y軸、Z軸)方向の加速度(αx, αy, αz)を測定する。重力も加速度であるので、常に3軸のいずれかに加速度が加わっている。3軸の加速度を検出することにより、コントローラ20の重力に対する向きを検出する。
【0035】
例えば、コントローラ20が水平状態にあるときには、図3に示すように、X軸加速度αx=0[G]、Y軸加速度αy=0[G]、Z軸加速度αz=1[G]となる。Gは“Gravity(重力)”の意である。
【0036】
また、コントローラ20を上向きに向けたときには、X軸加速度αx=0[G]、Y軸加速度αy=1[G]、Z軸加速度αz=0[G]となる。
【0037】
また、コントローラ20を右90度傾けたときには、X軸加速度αx=1[G]、Y軸加速度αy=0[G]、Z軸加速度αz=1[G]となる。
【0038】
また、コントローラ20を自由落下させたときには、無重力状態となるので、X軸加速度αx=0[G]、Y軸加速度αy=0[G]、Z軸加速度αz=0[G]となる。
【0039】
コントローラ20を振ると加速度が加わり、大きく振り回すと遠心力が加わり、X軸加速度αx、Y軸加速度αy、Z軸加速度αzが変化する。このときの3軸の加速度(αx, αy, αz)を検出することにより、コントローラ20の動きを検出する。
【0040】
なお、コントローラ20の動作開始時の位置を基準座標とし、その後の3軸の加速度(αx, αy, αz)情報を逐次検出し、逐次検出された加速度(αx, αy, αz)情報を用いて複雑な演算を逐次行うことにより、基準座標に対するコントローラ20の現在の位置座標を求めることができる。
【0041】
(コントローラの位置情報)
本実施形態のコントローラ20の位置情報の検出について図4を用いて説明する。
【0042】
コントローラ20の先端部にはイメージセンサ22が設けられている。このイメージセンサ22により、例えば、テレビモニタ4上に設置されたセンサーバー14の発光素子14a、14bを撮像することにより、センサーバー14、すなわち、テレビモニタ4に対するコントローラ20の位置を検出する。
【0043】
図4(a)〜(e)は、コントローラ20のイメージセンサ22による撮像画像である。センサーバー14の発光素子14a、14bが撮像されている。なお、センサーバー14の両端に5個ずつの発光素子14a、14bが設けられているが、図4(a)〜(e)では便宜上5個の発光素子を1個の発光素子14a、14bとして図示している。
【0044】
図4(a)は、コントローラ20がセンサーバー14に向けられた基準位置にあるときのイメージセンサ22の撮像画像である。発光素子14a、14bの中間位置をXY面の原点Oとし、発光素子14a、14bを結ぶ線を水平な基準線とし、発光素子14a、14b間の距離Loを奥行き方向(Z方向)の基準とする。
【0045】
コントローラ20のイメージセンサ22による撮像画像から、基準位置に対するコントローラ20の位置、傾きを知ることができる。
【0046】
例えば、図4(b)の撮像画像は、発光素子14a、14bが右上方に移動し、発光素子14a、14b間の距離が基準距離Loのままである。これから、コントローラ20がXY面において左下方に水平移動した座標値(X1,Y1,0)に位置していることがわかる。
【0047】
また、図4(c)の撮像画像は、発光素子14a、14bが右上方に移動し、発光素子14a、14b間の距離が基準距離Loのままであり、発光素子14a、14bを結ぶ線が傾いている。これから、コントローラ20がXY面において左下方に水平移動した座標値(X1,Y1,0)に位置し、かつ、コントローラ20が左方向にθ度傾いていることがわかる。
【0048】
また、図4(d)の撮像画像は、発光素子14a、14bが基準位置のままで、発光素子14a、14b間の距離L1が基準距離Loより長くなっている。これから、コントローラ20がセンサーバー14に近づいて、奥行き方向(Z方向)の位置が変化していることがわかる。
【0049】
また、図4(e)の撮像画像は、発光素子14a、14bが基準位置のままで、発光素子14a、14b間の距離L2が基準距離Loより短くなっている。これから、コントローラ20がセンサーバー14から遠ざかり、奥行き方向(Z方向)の位置が変化していることがわかる。
【0050】
このように、コントローラ20のイメージセンサ22による撮像画像から、基準位置に対するコントローラ20の位置座標(x,y,z)、傾きθ[度]を知ることができる。
【0051】
(コントローラ検出データバッファ)
本実施形態のコントローラ検出データバッファを図5に示す。
【0052】
本実施形態では、上述したように、コントローラ20のイメージセンサ22と3軸加速度センサ26を用いて、その位置情報と加速度情報を取得することができる。
【0053】
図5に示すコントローラ検出データバッファは、これら位置情報と加速度情報を一時的に保存する。例えば、図5のコントローラ検出データバッファでは、座標位置(X座標、Y座標、Z座標)(x,y,z)と、傾きθ[度]と、加速度(αx, αy, αz)を、0.5秒毎に20秒間、蓄積する。新しい位置情報と加速度情報を取得すると、最も古い位置情報と加速度情報が削除され、常に現時点より前の20秒間の位置情報と加速度情報を記憶している。
【0054】
コントローラ検出データバッファの位置情報と加速度情報を用いて、コントローラ20の動きと、お手本のキャラクタの動きとを比較し、遊戯者の動作を評価する。これらの処理の詳細については後述する。
【0055】
(キャラクタお手本データ)
本実施形態におけるキャラクタお手本データの作成方法について図6乃至図8を用いて説明する。
【0056】
まず、図6に示すように、仮想三次元空間内でお手本となるキャラクタの動き(ダンス)を設計する。キャラクタの表示画像を生成するために、システムメモリ42内に、表示するオブジェクトを構成する三次元ローカル座標データを有するポリゴンデータ(頂点データ)や、NURBS(Non Uniform Rational B-Spline)データ(曲面や制御点データ)を格納しておき、CPUやジオメトリプロセッサ(図示しない)によって、これを三次元仮想空間のワールド座標系に配置し、ダンスを踊るように変化させる。設計者は、キャラクタが、例えば3分間のダンスを行うように、キャラクタの動きを自由に設計する。
【0057】
次に、図7に示すように、キャラクタの動きの真似をする遊戯者が両手にコントローラを保持することを想定し、実コントローラ20を模倣したオブジェクトである仮想コントローラ20A′、20B′を、キャラクタの両手にそれぞれ保持される位置に生成する。また、キャラクタの手の形状を、仮想コントローラ20A′、20B′を保持している形状とする。
【0058】
仮想コントローラ20A′、20B′は、仮想三次元空間内において、実コントローラ20と同等の形状、同等の機能を有している。仮想コントローラ20A′、20B′には、仮想三次元空間内の基準座標系に基づいて実コントローラ20の3軸加速度センサ26をエミュレートした仮想3軸加速度センサ26′が設けられている。なお、仮想三次元空間内の基準座標系は、キャラクタの大きさや動きが遊戯者のそれとほぼ同等となるように、適宜設定すればよい。
【0059】
次に、仮想コントローラ20A′、20B′をキャラクタの両手に保持させた状態で、既に設計した動きをキャラクタに行わせ、各時点での仮想コントローラ20A′、20B′の、仮想三次元空間内の基準座標系に基づく仮想3軸加速度を演算により求める。
【0060】
各時点での、仮想コントローラ20A′、20B′の仮想軸加速度は、仮想三次元空間の基準座標系における下方に重力Gが常に印加されていると仮定し、キャラクタの動きのデータに基づく仮想コントローラ20A′、20B′の動きから、仮想3軸加速度センサ26′によって算出することができる。すなわち、仮想3軸加速度センサ26′は、仮想三次元空間内の基準座標系における動きのデータから仮想三次元空間内の仮想3軸加速度を演算するプログラムである。したがって、他の基準座標系にこのプログラムを用いればその座標系における加速度を演算することができる。
【0061】
このように演算により求めた仮想コントローラ20A′、20B′の仮想3軸加速度を、図8に示すように、キャラクタお手本データとしてプログラムデータ記憶装置または記憶媒体46に格納する。ゲーム実行時には、プログラムデータ記憶装置または記憶媒体46から読み出してシステムメモリ42に格納する。
【0062】
図8では、キャラクタの3分間(180秒間)の動き(ダンス)に対して、0.5秒毎に仮想コントローラ20A′、20B′の3軸加速度のデータを格納している。
【0063】
(ゲーム実行処理)
本実施形態のゲーム装置におけるゲーム実行処理について図9乃至図11を用いて説明する。図9はゲーム実行処理のフローチャートであり、図10はゲーム実行処理の説明図であり、図11はゲーム実行処理の比較結果メモリである。
【0064】
本実施形態のゲームは、遊戯者が、テレビモニタ2に表示されるキャラクタの動き(ダンス)を見ながら、その動きを模倣し、いかに忠実に模倣できたかを競うゲームである。
【0065】
遊戯者の動きは、図10に示すように、両手に実コントローラ20A、20Bを保持し、これら実コントローラ20A、20Bの検出データから把握する。
【0066】
キャラクタは、図10に示すように、仮想三次元空間内で動き、そのキャラクタの両手には仮想コントローラ20A′、20B′が保持されているように表示される。図10では、仮想コントローラ20A′、20B′はテレビモニタ2に表示されているが、必要に応じて透明化し、テレビモニタ2に表示されないようにしてもよい。
【0067】
図9のフローチャートを用いて本実施形態のゲーム実行処理を説明する。
【0068】
まず、ゲームスタートすると(ステップS10)、キャラクタのお手本動作を開始し(ステップS11)、テレビモニタ2にキャラクタのお手本の動作(ダンス)を表示する。
【0069】
次に、遊戯者が保持している実コントローラ20A、20Bからデータを検出する(ステップS12)。実コントローラ20A、20Bのそれぞれについて、座標位置(X座標、Y座標、Z座標)(x,y,z)、傾きθ[度]、加速度(αx, αy, αz)を、例えば0.5秒毎に検出し(ステップS12)、検出データを、図5に示すコントローラ検出データバッファに逐次保存する(ステップS13)。
【0070】
次に、図5に示すコントローラ検出データバッファに保存された検出データと、図8に示すキャラクタお手本データとを比較し(ステップS14)、各検出データについて類似度を演算する(ステップS15)。
【0071】
なお、お手本データは、CPU40の処理速度が十分であれば、上記のように予め記憶媒体46に格納しておかなくとも、ステップS11においてキャラクタのお手本の動作を表示しながら、このお手本動作のリアルタイムデータを基に、仮想3軸加速度センサ26′を用いて仮想三次元空間内の仮想3軸加速度を逐次演算してシステムメモリ42に格納するようにしても良い。
【0072】
各時点において、コントローラ検出データバッファに保存された所定時間、例えば直近5秒間の検出データと、キャラクタお手本データの所定期間、例えば3秒から8秒の5秒間のデータとを比較し、その時点(8秒経過時点)の類似度を演算し、比較結果メモリに格納する。
【0073】
図11は比較結果メモリの具体例を示すものである。キャラクタの3分間(180秒間)の動き(ダンス)について、1秒毎に求めた3軸加速度の類似度を格納する。
【0074】
例えば、図11の比較結果メモリでは、8秒経過時点の3軸加速度の類似度=0.70となっている。
【0075】
なお、類似度として、3軸加速度の変換点に注目するようにしてもよい。図11中において変換点を矢印にて示す。すなわち、右移動から左移動、上移動から下移動等というように、移動方向が変化した時点を重点的に比較する。このようにすることで、例えば大人と子供などでは腕の長さが異なり同じように腕を振る動作であっても手先の加速度が異なるような場合に、画面内で提示した動作と遊戯者の動作との比較を、遊戯者の体型に関わらず同様に行うことができる。
【0076】
次に、キャラクタお手本動作が終了したか否かを判断する(ステップS16)。キャラクタお手本動作が終了していなければ、ステップS12に戻り、ステップS12〜S15の処理を繰り返す。
【0077】
キャラクタお手本動作が終了したと判断されると、図11の比較結果メモリに基づいて総合類似度を演算する(ステップS17)。
【0078】
総合類似度の求め方としては様々な求め方がある。
【0079】
例えば、図11の比較結果メモリに格納された各類似度の平均を総合類似度としてもよい。また、お手本動作開始時には遊戯者の動作が安定しないので、お手本動作開始時から一定期間の類似度を考慮せずに総合類似度を求めてもよい。また、逆に、お手本動作開始時には遊戯者の動作を重視して総合類似度を求めてもよい。また、経過時間に応じて重み付けをして総合類似度を求めるようにしてもよい。
【0080】
また、実コントローラ20A、20Bと仮想コントローラ20A′、20B′の3軸加速度の類似度とは別に、所定のタイミング(例えば、ダンス中における決めポーズ等の一時停止状態)における実コントローラ20A、20Bの位置情報を判定して、総合類似度に加味するようにしてもよい。
【0081】
次に、ステップS17で演算して求めた総合類似度に基づいて、遊戯者の動作を評価する(ステップS18)。例えば、総合類似度を所定のしきい値と比較して遊戯者の動作を評価する。例えば、総合類似度が0.8以上であれば「優」と評価し、総合類似度が0.7以上であれば「良」と評価し、総合類似度が0.6以上であれば「可」と評価し、総合類似度が0.6未満であれば「不可」と評価する。
【0082】
なお、本発明では、実空間における遊戯者の加速度情報と、仮想三次元空間内における画面内のキャラクタの仮想加速度情報を用いて、遊戯者の動作とキャラクタのお手本動作との類似を判断している。通常、足の動きや頭の動きを位置情報として把握するには、それらの動作を検出する装置を足や頭に装着しなければならないが、本発明では遊戯者が足を動かしたり頭を動かしたりすると、手に持っているコントローラがそれらの動きに影響された動きをし、その加速度情報から間接的に遊戯者の足の動きや頭の動きを検出する。
【0083】
[変形実施形態]
本発明は上記実施形態に限らず種々の変形が可能である。
【0084】
例えば、上記実施形態では、遊戯者が把持する実コントローラを模倣した仮想コントローラを生成し、その仮想コントローラを仮想三次元空間内のキャラクタが把持する位置に設けるようにしたが、遊戯者が実空間内で蹴るボールに3軸加速度センサを設け、仮想三次元空間内でキャラクタが蹴るボールのオブジェクトに仮想3軸加速度センサを設けるようにしてもよい。例えば、画面内でボールのリフティングを提示し、遊戯者が同様にボールを蹴ることができたか否かを容易に判定することができる。
【図面の簡単な説明】
【0085】
【図1】本発明の一実施形態によるゲーム装置の外観を示す図である。
【図2】本発明の一実施形態によるゲーム装置の構成を示すブロック図である。
【図3】本発明の一実施形態によるゲーム装置のコントローラの加速度情報の検出についての説明図である。
【図4】本発明の一実施形態によるゲーム装置のコントローラの位置情報の検出についての説明図である。
【図5】本発明の一実施形態によるゲーム装置におけるコントローラ検出データバッファを示す図である。
【図6】本発明の一実施形態におけるキャラクタお手本データの作成方法についての説明図(その1)である。
【図7】本発明の一実施形態におけるキャラクタお手本データの作成方法についての説明図(その2)である。
【図8】本発明の一実施形態におけるキャラクタお手本データを示す図である。
【図9】本発明の一実施形態によるゲーム装置のゲーム実行処理のフローチャートである。
【図10】本発明の一実施形態によるゲーム装置のゲーム実行処理を説明するための図である。
【図11】本発明の一実施形態によるゲーム装置における比較結果メモリを示す図である。
【符号の説明】
【0086】
2…テレビ台
4…テレビモニタ
10…ゲーム装置
12…ゲーム装置本体
14…センサーバー
14a、14b…発光素子
20、20A、20B…コントローラ
20A′、20B′…仮想コントローラ
22…イメージセンサ
24…無線送信部
26…3軸加速度センサ
28…各種操作ボタン
28a…電源ボタン
28b…十字ボタン
40…CPU
42…システムメモリ(RAM)
44…バスアービタ
46…プログラムデータ記憶装置又は記憶媒体
48…BOOTROM
50…レンダリングプロセッサ
52…グラフィックメモリ
54…ビデオDAC
56…サウンドプロセッサ
58…サウンドメモリ
60…オーディオDAC
62…通信インターフェース
64…LANアダプタ
68…無線受信部
70…ペリフェラルインターフェース

【特許請求の範囲】
【請求項1】
制御手段を有し、ディスプレイ画面にオブジェクトの動作を表示することによって遊戯者の動作を案内する情報処理装置であって、
前記制御手段は、
仮想三次元空間内にオブジェクトを生成するオブジェクト生成手段と、
前記仮想三次元空間内に、前記オブジェクトにより操作され、前記遊戯者により操作される実コントローラを模倣した仮想コントローラオブジェクトを生成する仮想コントローラオブジェクト生成手段と、
前記オブジェクトを前記ディスプレイ画面に表示させる表示手段と、
前記オブジェクトを動作させた際の、前記仮想コントローラオブジェクトの仮想動作情報を演算する演算手段と、
前記実コントローラの動作情報と、前記演算手段により演算された前記仮想コントローラオブジェクトの仮想動作情報とを比較し、前記実コントローラを操作する前記遊戯者の動作を評価する評価手段と
を有することを特徴とする情報処理装置。
【請求項2】
制御手段を有し、ディスプレイ画面にキャラクタオブジェクトの動作を表示することによって遊戯者の動作を案内する情報処理装置であって、
前記制御手段は、
仮想三次元空間内にキャラクタオブジェクトを生成するキャラクタオブジェクト生成手段と、
前記仮想三次元空間内に、前記キャラクタオブジェクトにより把持される位置に付随され、前記遊戯者により操作される実コントローラを模倣した仮想コントローラオブジェクトであって、前記実コントローラが有する加速度センサを模倣した仮想加速度センサを有する仮想コントローラオブジェクトを生成する仮想コントローラオブジェクト生成手段と、
前記キャラクタオブジェクトを前記ディスプレイ画面に表示させる表示手段と、
前記キャラクタオブジェクトを動作させた際の、前記キャラクタオブジェクトに付随する前記仮想コントローラオブジェクトの前記仮想加速度センサによる仮想加速度情報を演算する演算手段と、
前記実コントローラの前記加速度センサによる加速度情報と、前記演算手段により演算された前記仮想コントローラオブジェクトの前記仮想加速度センサによる仮想加速度情報とを比較し、前記実コントローラを操作する前記遊戯者の動作を評価する評価手段と
を有することを特徴とする情報処理装置。
【請求項3】
請求項1又は2記載の情報処理装置において、
前記表示手段は、前記仮想コントローラオブジェクトを、前記ディスプレイ画面に目視可能に表示することを特徴とする情報処理装置。
【請求項4】
コンピュータを、ディスプレイ画面にオブジェクトの動作を表示することによって遊戯者の動作を案内する情報処理装置として機能させるためのコンピュータプログラムであって、
前記コンピュータを、
仮想三次元空間内にオブジェクトを生成するオブジェクト生成手段、
前記仮想三次元空間内に、前記オブジェクトにより操作され、前記遊戯者により操作される実コントローラを模倣した仮想コントローラオブジェクトを生成する仮想コントローラオブジェクト生成手段、
前記オブジェクトを前記ディスプレイ画面に表示させる表示手段、
前記オブジェクトを動作させた際の、前記仮想コントローラオブジェクトの仮想動作情報を演算する演算手段、
前記実コントローラの動作情報と、前記演算手段により演算された前記仮想コントローラオブジェクトの仮想動作情報とを比較し、前記実コントローラを操作する前記遊戯者の動作を評価する評価手段
として機能させるためのコンピュータプログラム。
【請求項5】
請求項4記載のコンピュータプログラムを記録したコンピュータ読み取り可能な記録媒体。

【図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


【公開番号】特開2008−220400(P2008−220400A)
【公開日】平成20年9月25日(2008.9.25)
【国際特許分類】
【出願番号】特願2007−58553(P2007−58553)
【出願日】平成19年3月8日(2007.3.8)
【出願人】(000132471)株式会社セガ (811)
【Fターム(参考)】