説明

データ生成装置、データ生成装置の制御方法、及びプログラム

【課題】プレイヤの動きを評価するゲームに用いられる基準データを効率良く生成する。
【解決手段】見本データ取得手段(42)は、楽曲データの再生期間内の各時点におけるプレイヤの見本姿勢に関する見本データを記憶する手段(10)から見本データを取得する。指定受付手段(44)は、表示手段に表示された設定画面(70)において、楽曲データの再生期間内における時点の指定を受け付ける。表示制御手段(46)は、プレイヤにより指定された時点におけるプレイヤの見本姿勢を案内する見本画像を、見本データに基づいて設定画面に表示させる。基準データ生成手段(48)は、プレイヤにより指定された時点と、この指定された時点のプレイヤの見本姿勢における部位の位置と、に基づいて基準データを生成する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、データ生成装置、データ生成装置の制御方法、及びプログラムに関する。
【背景技術】
【0002】
プレイヤをカメラで撮影して得られる画像(撮影画像)を用いたゲームが知られている。例えば、特許文献1には、撮影画像に基づいてプレイヤの動作を解析し、プレイヤが、楽曲に合わせてダンスを踊るキャラクタと同じ動作をすることを目指すゲームが記載されている。特許文献1の技術においては、ゲーム装置がプレイヤの動作を判定する時点を示す情報と、この時点においてプレイヤがすべき動きを特定する情報と、を対応付けてなる基準データに基づいて、プレイヤの動きが評価される。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特許第3866474号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
上記のように、プレイヤの動きを評価するために用いられる基準データを生成する場合には、楽曲のテンポだけではなく、各時点においてプレイヤが動かす部位の位置も考慮する必要があるので、基準データの生成には煩雑な作業を要するという問題があった。
【0005】
本発明は、上記課題に鑑みてなされたものであって、その目的は、プレイヤの動きを評価するゲームに用いられる基準データを効率良く生成することが可能なデータ生成装置、データ生成装置の制御方法、及びプログラムを提供することである。
【課題を解決するための手段】
【0006】
上記課題を解決するために、本発明に係るデータ生成装置は、楽曲データの再生期間内に設定される基準時点に関する情報と、前記基準時点においてプレイヤの部位があるべき基準位置に関する情報と、を対応付けてなる基準データに基づいて、前記楽曲データの再生期間内に行われるプレイヤの動作を評価するゲームにおいて用いられる前記基準データを生成するためのデータ生成装置であって、前記楽曲データの再生期間内の各時点における前記プレイヤの見本姿勢に関する見本データを記憶する手段から前記見本データを取得する見本データ取得手段と、前記基準データを生成するための設定画面を表示する表示手段と、前記設定画面において、前記楽曲データの再生期間内における時点の指定を受け付ける指定受付手段と、前記指定された時点における前記プレイヤの見本姿勢を案内する見本画像を、前記見本データに基づいて前記設定画面に表示させる表示制御手段と、前記指定された時点と、前記指定された時点の前記プレイヤの見本姿勢における前記部位の位置と、に基づいて前記基準データを生成する基準データ生成手段と、を含むことを特徴とする。
【0007】
また、本発明に係るデータ生成装置の制御方法は、楽曲データの再生期間内に設定される基準時点に関する情報と、前記基準時点においてプレイヤの部位があるべき基準位置に関する情報と、を対応付けてなる基準データに基づいて、前記楽曲データの再生期間内に行われるプレイヤの動作を評価するゲームにおいて用いられる前記基準データを生成するためのデータ生成装置の制御方法であって、前記楽曲データの再生期間内の各時点における前記プレイヤの見本姿勢に関する見本データを記憶する手段から前記見本データを取得する見本データ取得ステップと、前記基準データを生成するための設定画面を表示する表示ステップと、前記設定画面において、前記楽曲データの再生期間内における時点の指定を受け付ける指定受付ステップと、前記指定された時点における前記プレイヤの見本姿勢を案内する見本画像を、前記見本データに基づいて前記設定画面に表示させる表示制御ステップと、前記指定された時点と、前記指定された時点の前記プレイヤの見本姿勢における前記部位の位置と、に基づいて前記基準データを生成する基準データ生成ステップと、を含むことを特徴とする。
【0008】
また、本発明に係るプログラムは、楽曲データの再生期間内に設定される基準時点に関する情報と、前記基準時点においてプレイヤの部位があるべき基準位置に関する情報と、を対応付けてなる基準データに基づいて、前記楽曲データの再生期間内に行われるプレイヤの動作を評価するゲームにおいて用いられる前記基準データを生成するためのデータ生成装置としてコンピュータを機能させるためのプログラムであって、前記楽曲データの再生期間内の各時点における前記プレイヤの見本姿勢に関する見本データを記憶する手段から前記見本データを取得する見本データ取得手段、前記基準データを生成するための設定画面を表示する表示手段、前記設定画面において、前記楽曲データの再生期間内における時点の指定を受け付ける指定受付手段、前記指定された時点における前記プレイヤの見本姿勢を案内する見本画像を、前記見本データに基づいて前記設定画面に表示させる表示制御手段、前記指定された時点と、前記指定された時点の前記プレイヤの見本姿勢における前記部位の位置と、に基づいて前記基準データを生成する基準データ生成手段、を含むことを特徴とするデータ生成装置として前記コンピュータを機能させる。
【0009】
また、本発明に係る情報記憶媒体は、上記プログラムを記録したコンピュータ読み取り可能な情報記憶媒体である。
【0010】
本発明によれば、プレイヤの動きを評価するゲームに用いられる基準データを効率良く生成することが可能になる。
【0011】
また、本発明の一態様では、前記データ生成装置は、前記楽曲データを再生する手段を含み、前記表示制御手段は、前記楽曲データが再生中の場合、前記設定画面において前記見本画像によって案内される見本姿勢を前記楽曲データの再生と同期するようにして変化させ、前記データ生成装置は、所定の再生停止操作が行われた場合、前記楽曲データの再生を停止する手段を更に含み、前記表示制御手段は、前記楽曲データの再生が停止された場合、前記楽曲データの再生が停止された時点における前記見本画像を前記設定画面に表示させ、前記指定受付手段は、所定の時点指定操作に基づいて、前記楽曲データの再生が停止された時点よりも前の時点、又は、前記楽曲データの再生が停止された時点よりも後の時点を、前記指定された時点として取得する、ことを特徴とする。
【0012】
また、本発明の一態様では、前記データ生成装置は、前記基準データ生成手段によって前記基準データが生成された後、前記設定画面において所定の設定内容確認操作が行われた場合、前記楽曲データを再生する手段を含み、前記表示制御手段は、前記基準データ生成手段によって前記基準データが生成された後、前記設定内容確認操作が行われた場合、前記楽曲データの再生と同期して、前記設定画面において前記見本画像によって案内される見本姿勢を変化させるとともに、前記楽曲データの再生と同期して、前記基準時点及び前記基準位置を前記基準データに基づいて案内する手段、を更に含むことを特徴とする。
【0013】
また、本発明の一態様では、前記表示制御手段は、前記楽曲データの再生期間の時間軸を前記設定画面に表示させ、前記指定受付手段は、前記設定画面に表示された前記時間軸に基づいて、前記楽曲データの再生期間内の時点の指定を受け付けることを特徴とする。
【0014】
また、本発明の一態様では、前記表示制御手段は、前記プレイヤの複数の部位に対応する複数の領域を、前記設定画面に表示された時間軸の方向に延伸するように、かつ、当該時間軸に直交する方向に並列に設定し、前記指定受付手段は、前記設定画面に設定された複数の領域の何れかの位置の指定を受け付け、前記基準データ生成手段は、前記指定された領域の位置に対応する時点と、前記指定された領域の位置に対応する部位の位置と、に基づいて前記基準データを生成する、ことを特徴とする。
【0015】
また、本発明の一態様では、前記時間軸は、前記楽曲の所定拍毎に前記楽曲データの再生期間を示し、前記指定受付手段は、前記所定拍毎に前記楽曲データの再生期間内における時点の指定を受け付ける、ことを特徴とする。
【図面の簡単な説明】
【0016】
【図1】ゲームをプレイするプレイヤの様子を示す図である。
【図2】ゲーム画面の一例を示す図である。
【図3】設定画面の一例を示す図である。
【図4】CCDカメラによって生成される撮影画像の一例を示す図である。
【図5】赤外線センサによるプレイヤの深度の測定方法を説明するための図である。
【図6】赤外線センサによって得られる深度画像の一例を示す図である。
【図7】位置検出装置により生成されるプレイヤ位置情報の一例を示す図である。
【図8】プレイヤ位置情報によって特定されるプレイヤの位置を示す図である。
【図9】位置検出装置のハードウェア構成を示す図である。
【図10】ゲーム装置のハードウェア構成を示す図である。
【図11】ゲーム装置において実現される機能を示す機能ブロック図である。
【図12】ゲーム空間を示す図である。
【図13】設定データの一例を示す図である。
【図14】判定方法の種別を示す図である。
【図15】設定データと設定指示画像との関係を示す図である。
【図16】ゲーム装置において実行される処理の一例を示すフロー図である。
【図17】変形例(1)における設定画面の一例を示す図である。
【図18】変形例(2)における設定画面の一例を示す図である。
【発明を実施するための形態】
【0017】
[1.実施形態]
以下、本発明の実施形態の一例について図面に基づき詳細に説明する。本発明の実施形態に係るデータ生成装置は、例えば、家庭用ゲーム機(据置型ゲーム機)、携帯ゲーム機、携帯電話機、携帯情報端末(PDA)又はパーソナルコンピュータ等によって実現される。ここでは、本発明の実施形態に係るデータ生成装置を家庭用ゲーム機(ゲーム装置)によって実現する場合について説明する。
【0018】
本実施形態においては、ゲーム装置は、プレイヤの動き(姿勢)を評価するために使用される基準データを生成するために用いられる。また、ゲーム装置は、基準データに基づいてゲームを実行する。
【0019】
[2.基準データに基づいて実行されるゲーム]
図1は、ゲームをプレイするプレイヤの様子を示す図である。図1に示すように、プレイヤ100は、例えば、位置検出装置1の前方に位置する。詳細は後述するが、位置検出装置1は、例えば、カメラや赤外線センサ等を含んで構成され、プレイヤ100の部位に対応する3次元座標を生成する。ゲーム装置20は、この3次元座標に基づいてゲームを実行する。プレイヤ100は、例えば、ゲーム画面に表示されたキャラクタのダンス及び楽曲に合わせてダンスをすることを目指す。
【0020】
図2は、ゲーム画面の一例を示す図である。図2に示すように、ゲーム画面30には、楽曲に合わせてダンスを踊るキャラクタ32と、プレイヤの得点を示すスコア34とが含まれる。キャラクタ32は、例えば、ダンサーの踊りを撮影した映像にモーションキャプチャリング処理が施されて作成されたデータに基づいて表示される。
【0021】
例えば、ゲーム装置20がプレイヤの動作を判定する時間が近づくと、ゲーム画面30にマーク36が表示される。プレイヤは、このマーク36を頼りにゲームをプレイする。別の言い方をすれば、マーク36は、これからキャラクタ32が体を動かす位置及びタイミングをプレイヤに案内するための画像である。例えば、キャラクタ32の手がマーク36の中心に触れた場合に、プレイヤが同じ動作をしていると、プレイヤは高い評価を得ることになる。
【0022】
なお、本実施形態においては、ゲーム画面30に表示されるキャラクタ32とプレイヤが向き合った状態でゲームをプレイするため、ゲーム画面30においては、プレイヤがすべきダンスを左右反転させたダンスをキャラクタ32が踊るように、キャラクタ32が表示される。例えば、プレイヤから見て右側の手(キャラクタ32から見て左側の手)をキャラクタ32が上げた場合にプレイヤが右手を上げると、プレイヤは高い評価を得ることになる。
【0023】
このように、プレイヤは、キャラクタ32のダンスと同じようにダンスをすることを目指す。ゲーム装置20においては、設定者(例えば、プレイヤ又はゲーム制作者)が、キャラクタ32のダンスのうちプレイヤの動作及び当該動作を判定する時を設定し、基準データを生成する。設定者(以降、設定者がプレイヤである場合を説明する。)は、設定画面において基準データの生成を行う。
【0024】
図3は、設定画面の一例を示す図である。図3に示すように、設定画面70は、キャラクタ32を含む。キャラクタ32は、モーションデータに基づいて表示される。設定画面70におけるキャラクタ32は、ゲーム画面30(図2)におけるキャラクタ32と同様の動作をする。
【0025】
また、設定画面70には、基準データに設定されている内容を示す設定指示画像72が表示される。プレイヤは、例えば、設定指示画像72の表示内容を頼りに基準データの設定及び生成を行う。本実施形態においては、プレイヤがゲームの設定を行う場合、楽曲及びキャラクタ32のダンスが同期再生される構成になっている。以降、この技術について詳細に説明する。
【0026】
[3.位置検出装置の動作]
まず、位置検出装置1について説明する。位置検出装置1は、3次元空間におけるプレイヤの位置に関するプレイヤ位置情報を生成する。本実施形態においては、プレイヤの位置情報が、プレイヤ100の複数の部位の位置に関する情報を含む場合を説明する。プレイヤ100の部位は、例えば、頭や両腕等である。
【0027】
図1に示すように、位置検出装置1は、例えば、CCDカメラ2、赤外線センサ3、複数のマイクロフォンを含むマイク4等を備える。
【0028】
CCDカメラ2は、CCDイメージセンサを備えた公知のカメラである。CCDカメラ2は、例えば、所定時間毎(例えば1/60秒毎)にプレイヤ100を撮影した撮影画像(例えば、RGBデジタル画像)を生成する。
【0029】
図4は、CCDカメラ2によって生成される撮影画像の一例を示す図である。図4に示すように、撮影画像には、例えば、プレイヤ100が含まれる。撮影画像には、互いに直行するXs軸、Ys軸が設定される。例えば、撮影画像の左上を、原点Os(0,0)とする。また例えば、撮影画像の右下を、座標Pmax(Xmax,Ymax)とする。撮影画像に対応する各画素の位置は、それぞれの画素に割り当てられる2次元座標(Xs−Ys座標)によって特定される。
【0030】
赤外線センサ3は、例えば、赤外線発光素子及び赤外線受光素子(例えば、赤外線ダイオード)から構成される。赤外線センサ3は、赤外線光を照射して得られる反射光を検出する。赤外線センサ3は、この反射光の検出結果に基づいて被写体(例えば、プレイヤ100)の深度を測定する。
【0031】
被写体の深度とは、測定基準位置と被写体の位置との距離間隔である。測定基準位置とは、プレイヤ100の位置の深度(奥行き)を測定する際の基準となる位置である。測定基準位置は、位置検出装置1の位置と関連付けられる所定の位置であればよく、例えば、赤外線センサ3の赤外線受光素子の位置である。赤外線センサ3は、例えば、赤外線を照射してから反射光を受光するまでの飛行時間(TOF:Time of Flight)に基づいてプレイヤ100の深度を測定する。
【0032】
図5は、赤外線センサ3によるプレイヤ100の深度の測定方法を説明するための図である。図5に示すように、赤外線センサ3から所定間隔でパルス状の赤外線光が照射される。赤外線センサ3から照射された赤外線光は、赤外線センサ3の発光位置を中心点として球状に広がる。
【0033】
赤外線センサ3から照射された赤外線光は、例えば、プレイヤ100の体の表面に当たる。これらの表面に当たった赤外線光は、反射する。反射した赤外線光は、赤外線センサ3の赤外線受光素子により検出される。即ち、赤外線センサ3は、照射した赤外線に対して位相が180度反転した反射光を検出する。
【0034】
例えば、図5に示すように、プレイヤ100が両手を前方に突き出している場合、突き出された両手は、プレイヤ100の胴体よりも赤外線センサ3に近い。つまり、プレイヤ100の両手によって反射される赤外線光の飛行時間は、プレイヤ100の胴体によって反射される赤外線光の飛行時間よりも短い。
【0035】
赤外線センサ3が赤外線光を照射してから反射光を検出するまでの時間(つまり、飛行時間)と、赤外線の速度と、を乗算して半分で割った値は、測定基準位置とプレイヤ100との距離間隔(即ち、深度)に相当する。このような処理を行うことにより、赤外線センサ3は、プレイヤ100の深度を測定する。
【0036】
また、赤外線センサ3は、反射した赤外線光から得られる深度差を検出することにより、被写体(プレイヤ100)の輪郭も検出する。上記のように、赤外線センサ3が赤外線光の反射光を受信することは、この場所に物体が配置されていることを意味する。また、この物体の後方の近い位置に他の物体が配置されていなければ、この物体と、この物体の周囲と、の深度差は大きくなる。例えば、深度差が所定値よりも大きい箇所をつなぎ合わせることによって、プレイヤ100の輪郭を検出する。
【0037】
なお、プレイヤ100の輪郭を検出する方法は、上記の例に限られない。他にも例えば、CCDカメラ2によって得られる撮影画像の各画素の輝度に基づいて輪郭を検知するようにしてもよい。この場合も、例えば、画素間の輝度差が大きい箇所をつなぎ合わせることによってプレイヤ100の輪郭を検出することができる。
【0038】
上記のようにして検出されるプレイヤ100の深度に関する情報(深度情報)は、例えば、深度画像として表現される。本実施形態においては、深度情報が、グレースケールの深度画像(例えば、256ビットのグレースケールの画像データ)として表現される例を挙げて説明する。
【0039】
図6は、赤外線センサ3によって得られる深度画像の一例を示す図である。図6に示すように、例えば、赤外線センサ3に近い物体は明るく(輝度が高く)、遠い物体は暗く(輝度が低く)表現される。プレイヤ100の深度は、深度画像の輝度(画素値)に対応する。
【0040】
例えば、深度画像が256ビットのグレースケールの画像データとして表される場合、プレイヤ100の深度が2センチメートル異なる毎に深度画像の輝度が1ビット異なる。この場合、赤外線センサ3は、被写体の深度を2センチ単位で検出することが可能であることを示す。プレイヤ100が両手を前方に突き出している場合(図5)、図6に示すように、プレイヤ100の両手に対応する画素は、胴体に対応する画素よりも明るく(輝度が高く)表現される。
【0041】
本実施形態においては、赤外線センサ3は、CCDカメラ2と同様に所定時間毎(例えば1/60秒毎)に、深度画像を生成する。CCDカメラ2により得られる撮影画像と、赤外線センサ3により得られる深度画像と、に基づいてプレイヤ100の部位の位置に関するプレイヤ位置情報が生成される。
【0042】
例えば、CCDカメラ2により得られる撮影画像(RGBデータ)に、深度画像が示す深度情報(D:Depth)が合算された合成画像(RGBDデータ)が生成される。即ち、合成画像は、各画素ごとに、色情報(RGBそれぞれの明度)と深度情報とを含む。
【0043】
合成画像に基づいてプレイヤ位置情報が生成される際には、まず、深度画像に基づいてプレイヤ100の輪郭に対応する画素が特定される。次いで、合成画像のうち輪郭によって囲まれた画素の色情報(RGBの明度)が参照される。合成画像の色情報に基づいて、プレイヤ100の体の各部位に対応する画素が特定される。この特定方法としては、例えば、比較画像(教師画像)との比較によって画像の中から対象物(即ち、プレイヤ100の体の各部位)を抽出するパターンマッチング法等、公知の手法を適用可能である。
【0044】
上記のようにして特定された画素の画素値(RGBD値)に基づいて、プレイヤ100の頭や肩等の3次元座標が算出される。例えば、この画素値に対して所定の行列変換処理が施されることによって、3次元座標が生成される。この行例変換処理は、例えば、3Dグラフィックにおけるワールド座標−スクリーン座標の2つの座標系の変換処理と同様の行例演算によって実行される。つまり、画素の色情報を示すRGB値と奥行きを示すD値と、が所定の行列式に代入されることにより、この画素の3次元座標が算出される。
【0045】
なお、画素値(RGBD値)から画素に対応する3次元座標が算出される方法は、公知の手法を適用可能であり、この算出方法は、上記の例に限られない。他にも例えば、ルックアップテーブルを用いて座標変換が行われるようにしてもよい。
【0046】
図7は、位置検出装置1により生成されるプレイヤ位置情報の一例を示す図である。図7に示すように、プレイヤ位置情報は、プレイヤ100の複数の部位の位置に関する複数の情報を含む。プレイヤ位置情報は、例えば、プレイヤ100の各部位と、3次元座標と、が対応付けられて格納される。
【0047】
図8は、プレイヤ位置情報によって特定されるプレイヤ100の位置を示す図である。本実施形態では、例えば、位置検出装置1に対応する所定位置(例えば、測定基準位置)を原点Opとする。例えば、原点Opは、赤外線センサ3の測定基準位置に対応する3次元座標である。なお、原点Opの位置は、プレイヤ100がいる3次元空間のどこに設定されてもよい。例えば、撮影画像の原点Osに対応する3次元座標が、原点Opとして設定されるようにしてもよい。
【0048】
図8に示すように、本実施形態では、プレイヤ位置情報がプレイヤ100の複数の部位のうちで少なくとも頭の位置及び腰の位置に関する部位情報を含む場合を説明する。例えば、プレイヤ位置情報は、プレイヤ100の頭P1、肩P2、左上腕P3、右上腕P4、左下腕P5、右下腕P6、背中P7、左ももP8、右ももP9、左すねP10、右すねP11に対応する11個の3次元座標が含まれる。
【0049】
なお、プレイヤ位置情報によって示されるプレイヤ100の体の部位は、プレイヤの体(骨格)のうちで予め定められた部位のものであってよい。例えば、この部位は、先述したパターンマッチング法によって特定可能な体の部位であればどこでもよい。
【0050】
例えば、所定間隔毎(例えば、1/60秒毎)に生成されるプレイヤ位置情報は、位置検出装置1からゲーム装置20に対して送信される。ゲーム装置20は、プレイヤ位置情報を位置検出装置1から受信し、プレイヤ(以降、プレイヤの「100」の符号を省略する。)の体の動きを把握してゲームを実行する。
【0051】
次に、位置検出装置1とゲーム装置20とのハードウェア構成について説明する。
【0052】
[4.位置検出装置の構成]
図9は、位置検出装置1のハードウェア構成を示す図である。図9に示すように、位置検出装置1は、制御部10、記憶部11、撮影部12、深度測定部13、音声入力部14、通信インタフェース部15から構成される。位置検出装置1の各構成要素は、バス16によってデータ送受信可能に接続される。
【0053】
制御部10は、記憶部11に記憶されるオペレーティングシステム、各種プログラムに基づいて位置検出装置1の各部を制御する。
【0054】
記憶部11は、オペレーティングシステムや撮影部12、深度測定部13を動作させるためのプログラム、各種パラメータを記憶する。また、記憶部11は、撮影画像及び深度画像に基づいてプレイヤ位置情報を生成するためのプログラムを記憶する。
【0055】
撮影部12は、CCDカメラ2等から構成される。撮影部12は、例えば、プレイヤの撮影画像を生成する。深度測定部13は、赤外線センサ3等から構成される。深度測定部13は、例えば、赤外線センサ3により得られる飛行時間に基づいて深度画像を生成する。制御部10は、先述のように、所定時間毎(例えば、1/60秒毎)に、撮影部12により生成される撮影画像と、深度測定部13により生成される深度画像と、に基づいて、プレイヤ位置情報を生成する。
【0056】
音声入力部14は、マイク4等から構成される。通信インタフェース部15は、ゲーム装置20に対してプレイヤ位置情報等の各種データを送信するためのインタフェースである。
【0057】
[5.ゲーム装置の構成]
図10は、ゲーム装置20のハードウェア構成を示す図である。図10に示すように、ゲーム装置20は、制御部21、主記憶部22、補助記憶部23、光ディスク再生部24、通信インタフェース部25、操作部26、表示部27、及び音声出力部28を含む。ゲーム装置20の各部はバス29によって接続されている。
【0058】
制御部21は、例えばCPU、GPU(Graphics Processing Unit)、及びSPU(Sound Processing Unit)等を含む。制御部21は、オペレーティングシステムやその他のプログラムに従って各種処理を実行する。
【0059】
主記憶部22は、例えば、RAM(Random Access Memory)を含む。補助記憶部23は、例えば、ハードディスク装置(情報記億媒体)を含む。主記憶部22は、補助記憶部23又は光ディスク(情報記憶媒体)から読み出されたプログラムやデータを記憶する。また、主記憶部22は、処理の過程で必要なデータを記憶するワークメモリとしても用いられる。
【0060】
光ディスク再生部24は、光ディスクに記憶されたプログラムやデータを読み取る。光ディスクには、例えば、ゲームプログラムが記憶されている。
【0061】
通信インタフェース部25は、ゲーム装置20を通信ネットワークに通信接続するためのインタフェースである。
【0062】
操作部26は、プレイヤが操作を行うためのものである。操作部26は、例えば、十字キーや各種ボタンを含むゲームコントローラ、タッチパネル、マウス、又はキーボード等を含む。表示部27は、例えば、家庭用テレビ受像機又は液晶表示パネル等である。表示部27は、例えば、基準データを生成するための設定画面70を表示する。音声出力部28は、例えば、スピーカ又はヘッドホン等を含む。
【0063】
本実施形態においては、ゲームの実行に際して必要なプログラムやデータは、光ディスクを介してゲーム装置20に供給される場合を説明する。なお、これらのプログラムやデータは、他の情報記憶媒体(例えば、メモリカード)を介してゲーム装置20に供給されるようにしてもよい。または、プログラムやデータは、通信ネットワークを介して遠隔地からゲーム装置20に供給されるようにしてもよい。
【0064】
[6.ゲーム装置で実現される機能]
図11は、ゲーム装置20において実現される機能を示す機能ブロック図である。図11に示すように、ゲーム装置20では、ゲームデータ記憶部40、見本データ取得部42、指定受付部44、表示制御部46、基準データ生成部48が実現される。これらの機能は、制御部21が、光ディスクから読み出されたプログラムに従って動作することにより、実現される。
【0065】
[6−1.ゲームデータ記憶部]
ゲームデータ記憶部40は、主記憶部22及び補助記憶部23を主として実現される。ゲームデータ記憶部40は、ゲームを実行するために必要な情報を記憶する。例えば、ゲームデータ記憶部40には、以下のようなデータが格納される。
(1)楽曲データ(一般のポピュラー音楽等を所定のデータ形式で保存したデータ)
(2)モーションデータ
(3)基準データ
(4)プレイヤ位置情報を時系列的に格納したデータ
(5)ゲーム状況データ(実行中のゲームの状況(得点や経過時間等)を示すデータ)
【0066】
なお、上記のデータのうち、楽曲データ、モーションデータ、及び基準データは、予めゲーム作成者によって用意されたデータである。プレイヤ位置情報は、位置検出装置1から取得されるデータであり、ゲーム状況データは、ゲームプログラムによって生成及び更新されるデータである。また、制御部21は、ゲームデータ記憶部40に格納された各種データを取得する手段として機能する。
【0067】
[モーションデータ]
まず、モーションデータについて説明する。モーションデータは、例えば、ダンサーの動きを撮影した映像にモーションキャプチャリング処理を施して生成されるデータに基づいて、ゲーム製作者によって作成される。モーションデータは、例えば、キャラクタ32の各部位の位置を特定するためのデータである。
【0068】
本実施形態においては、モーションデータには、楽曲の再生が開始されてからの経過時間(例えば、1/256小節毎)と、ゲーム空間におけるキャラクタ32の各部位(骨格)を示すデータと、が対応付けられて格納される場合を説明する。
【0069】
即ち、モーションデータには、キャラクタ32の姿勢を示すデータが時系列的に格納される。ゲーム装置20は、モーションデータに基づいて、キャラクタ32を示すオブジェクトをゲーム空間に配置することによって、ゲーム画面30においてキャラクタ32がダンスを踊るように表示制御を行うことができる。
【0070】
図12は、ゲーム空間を示す図である。図12に示すように、ゲーム空間60には、キャラクタ32を示すキャラクタオブジェクト62と、仮想カメラ64(視点)と、が配置される。キャラクタオブジェクト62は、複数のポリゴンを含んで構成される。例えば、モーションデータに格納されたキャラクタ32の部位を示すデータに基づいてキャラクタオブジェクト62が作成される。
【0071】
キャラクタオブジェクト62は、プレイヤが取るべき姿勢を案内するように変化する。本実施形態においては、キャラクタ32が、プレイヤがすべきダンスを左右反転させたダンスを踊る場合を説明する。例えば、プレイヤが右手を上方に位置させるべき場合には、キャラクタオブジェクト62のうちキャラクタ32の左手を示すオブジェクトが上方に位置する。即ち、モーションデータには、キャラクタ32が、プレイヤがすべきダンスを左右反転させたダンスを踊るように、キャラクタ32の部位の位置が定義されている。
【0072】
ゲーム画面30には、ゲーム空間60を仮想カメラ64から見た様子を示す画像が表示される。仮想カメラ64の位置や視線方向を示す情報は、固定値であってもよいし、ゲームプログラムやプレイヤの操作に基づいて変動するようにしてもよい。仮想カメラ64の位置や視線方向を示す情報は、例えば、ゲーム状況データに格納される。また、モーションデータと楽曲データとは、キャラクタ32が楽曲に合わせてダンスを踊るように同期再生される。
【0073】
[基準データ]
次に、基準データについて説明する。基準データは、楽曲データの再生時間内に設定される基準時点に関する情報と、基準時点においてプレイヤの部位があるべき基準位置に関する情報と、を対応付けてなるデータである。基準時点とは、ゲーム装置20がプレイヤの動作を判定(評価)すべき時点である。基準データに基づいて、楽曲データの再生期間内に行われるプレイヤの動作が評価される。楽曲データの再生期間内とは、楽曲の始点から終点までの期間内のことである。
【0074】
本実施形態においては、基準データは、判定用位置データと設定データとを含んでいる場合を説明する。判定用位置データは、楽曲の再生が開始されてからの各時点においてプレイヤの各部位があるべき位置を示すデータである。例えば、楽曲の再生が開始されてからの経過時間と、この経過時間においてプレイヤの部位があるべき位置(3次元座標)と、が対応付けられて判定用位置データに格納される。モーションデータと同様に、判定用位置も、ダンサーの動きを撮影した映像にモーションキャプチャリング処理を施して生成されるデータに基づいて、ゲーム製作者によって作成される。判定用位置データは、プレイヤ位置情報が示すプレイヤの部位の位置と比較される。
【0075】
また、本実施形態においては、判定用位置データが、プレイヤに設定される代表点に基づいた座標系で表現される場合を説明する。例えば、判定用位置データに格納される3次元座標は、代表点を原点とした座標系によって表現される。即ち、判定用位置データに格納されるプレイヤの各部位の位置座標は、プレイヤの各部位があるべき位置と、代表点の位置と、の位置関係を示している。
【0076】
なお、本実施形態においては、代表点を背中P7とする。この場合、背中P7を原点とし、背中P7からの相対的な位置を示す3次元座標が、判定用位置データに格納される。プレイヤの動作が評価される場合には、ゲーム装置20は、プレイヤ位置情報を代表点に基づいた座標系で表現する。例えば、判定用位置データは、背中P7を原点とする座標系で表現されているので、プレイヤ位置情報に含まれる3次元座標も、背中P7を原点とする座標系で表現する。
【0077】
なお、本実施形態においては、代表点が背中P7である場合を説明するが、代表点は、プレイヤ及びキャラクタ32に設定される点であればよく、背中P7でなくともよい。例えば、代表点は、頭P1等であってもよい。
【0078】
また、本実施形態においては、キャラクタ32は、プレイヤがすべきダンスの左右反対のダンスを踊るので、判定用位置データが示すプレイヤの頭P1、肩P2、左上腕P3、右上腕P4、左下腕P5、右下腕P6、背中P7、左ももP8、右ももP9、左すねP10、右すねP11の位置と、図12に示すキャラクタ32の頭Q1、肩Q2、左上腕Q3、右上腕Q4、左下腕Q5、右下腕Q6、背中Q7、左ももQ8、右ももQ9、左すねQ10、右すねQ11の位置と、は一定の関係(左右反対の関係)を保っている。
【0079】
次に、設定データについて説明する。設定データは、基準時点と、当該基準時点においてゲーム装置20が判定するプレイヤの部位を特定するためのデータである。本実施形態においては、プレイヤは、設定画面70において、設定データの内容を設定することによって、基準データを生成する。
【0080】
図13は、設定データの一例を示す図である。図13に示すt軸は、時間軸である。t軸は、楽曲の再生が開始されてからの経過時間を示している。例えば、設定データは、所定小節(例えば、1/16小節)毎に、ゲーム装置20が判定すべきプレイヤの部位を示している。本実施形態においては、設定データにおいて、頭、左手(例えば、左下腕)、右手(例えば、右下腕)、左足(例えば、左すね)、右足(例えば、右すね)の5つの部位が定義される場合を説明する。
【0081】
図13に示すように、1/16小節の各時点において、ゲーム装置20がプレイヤのダンスを判定すべきか否かは、「0」〜「7」の数値によって表されている。設定データに格納される「頭」、「左手」、「右手」、「左足」、「右足」の値は、それぞれ、ゲーム装置20がプレイヤの頭、左手、右手、左足、右足の位置を判定すべきか否かを示している。また、設定データの値の数値によって、ゲーム装置20がプレイヤの動作を判定する方法の種別が異なる。
【0082】
図14は、判定方法の種別を示す図である。図14に示すように、本実施形態においては、設定データに格納される値によって、ゲーム装置20がプレイヤの動作を判定する方法の種別が異なる。設定データに格納される値が「0」であることは、ゲーム装置20がプレイヤの動作を判定すべき時点ではないことを示している。即ち、設定データに格納される全ての部位が「0」である場合は、基準時点ではないことを示している。
【0083】
設定データに格納される部位の値が「1」〜「7」の何れかである場合、ゲーム装置20が判定すべきプレイヤの部位があることを示している。以降、この部位を判定対象部位という。即ち、設定データが「1」〜「7」である時間は、基準時点であることを示している。本実施形態においては、図14に示すように、ゲーム装置20がプレイヤの動作を判定する方法が、以下の7種類に分類される。
(1)Ripple:ゲーム装置20が、プレイヤがキャラクタ32と同じ手の動きをしているか否かを判定する。
(2)Step:ゲーム装置20が、プレイヤがキャラクタ32と同じ足の動きをしているか否かを判定する。
(3)Pose:ゲーム装置20が、プレイヤが全身を使ってキャラクタ32と同じポーズをしているか否かを判定する。
(4)Lock:ゲーム装置20が、プレイヤが、一定時間、キャラクタ32と同じ位置に部位を固定しているか否かを判定する。
(5)Solid:ゲーム装置20が、プレイヤが、一定時間、キャラクタ32と同じように手を振っているか否かを判定する。
(6)Stream:ゲーム装置20が、プレイヤが、一定時間、キャラクタ32と同じ手の動きをしているか否かを判定する。
(7)Gesture:ゲーム装置20が、プレイヤが、一定時間、全身又は一部の部位を使ってキャラクタ32と同じポーズをしているか否かを判定する。
【0084】
例えば、設定データの値が「1」、「2」、「4」、「5」、「6」の部位がある場合、ゲーム装置20は、これらの値になっているプレイヤの部位(頭、左手、右手、左足、右足)の動作を、上記の種別に基づいて判定する。また例えば、設定データの値が「3」、「7」の部位がある場合、ゲーム装置20は、プレイヤの全身又は一部の部位の動作を、上記種別に基づいて判定する。
【0085】
なお、本実施形態においては、プレイヤによって上記のような動作が行われる場合を説明するが、ゲーム装置20の判定方法の種別は、キャラクタ32のダンスに基づいた動作であればよく、ゲーム装置20の判定方法の種別は、上記の例に限られない。
【0086】
[6−2.見本データ取得部]
見本データ取得部42は、制御部21を主として実現される。見本データ取得部42は、楽曲データの再生期間内の各時点におけるプレイヤの見本姿勢に関する見本データを記憶する手段から見本データを取得する。見本姿勢は、プレイヤがすべき動作(姿勢)を示すものであり、例えば、キャラクタ32の姿勢(ダンス)である。本実施形態においては、見本データ取得部42は、ゲームデータ記憶部40に記憶されたモーションデータを取得する。
【0087】
[6−3.指定受付部]
指定受付部44は、制御部21及び操作部26を主として実現される。指定受付部44は、設定画面70において、楽曲データの再生期間内における時点の指定を受け付ける。指定受付部44は、設定画面70の表示内容に基づいて、楽曲データの再生期間内における時点(経過時間)の指定をプレイヤから受け付ける。
【0088】
[6−4.表示制御部]
表示制御部46は、制御部21を主として実現される。表示制御部46は、指定された時点におけるプレイヤの見本姿勢を案内する見本画像(例えば、キャラクタ32)を、見本データ(例えば、モーションデータ)に基づいて設定画面70に表示させる。
【0089】
本実施形態においては、表示制御部46は、楽曲データが再生中の場合、設定画面70において見本画像(例えば、キャラクタ32)によって案内される見本姿勢を楽曲データの再生と同期するようにして変化させる。つまり、表示制御部46は、モーションデータが示す経過時間と、楽曲データが示す経過時間と、が一致するようにしてモーションデータが示すキャラクタ32を設定画面70に表示させる。
【0090】
表示制御部46により表示される設定画面70は、図3に示すように、キャラクタ32を含む。先述のように、キャラクタ32は、モーションデータに基づいて表示される。設定画面70におけるキャラクタ32は、ゲーム画面30(図2)におけるキャラクタ32と同様の動作をする。
【0091】
また、設定画面70には、設定データの内容を示す設定指示画像72が表示される。設定指示画像72は、プレイヤが設定データの設定を行うためのものである。例えば、現在設定されている設定データの内容に基づいて設定指示画像72が表示される。
【0092】
図3に示すように、設定指示画像72には、設定データに格納される基準時点及び当該基準時点において判定に用いられる部位が対応づけられて表示される。例えば、設定指示画像72には2軸が設定され、一方の軸(例えば、縦軸)には、楽曲データの再生時間内の時点が関連付けられ、他方の軸(例えば、横軸)には、ゲーム装置20が判定すべきプレイヤの部位が関連付けられている。
【0093】
図15は、設定データと設定指示画像72との関係を示す図である。図15に示すように、設定データに基づいて設定指示画像72の表示内容が決定される。例えば、現在の経過時間を含む所定時間内の設定データに基づいて設定指示画像72が表示される。設定データに格納される判定方法の種別は、四角や丸等のアイコンによって区別されて設定指示画像72に表示される。
【0094】
なお、StreamやSolidのように一定期間にわたって行われる判定については、図15に示すように、アイコン同士がつながって表示されるようにしてもよい。また、表示制御部46は、楽曲データの再生期間の時間軸tを設定指示画像72に表示させる。図15に示す例では、設定指示画像72に設定される横軸が、時間軸tに対応する。
【0095】
設定画面70が表示されると、楽曲データの再生の時間経過に伴い、設定指示画像72の表示が更新される。例えば、楽曲データの再生の時間経過に伴って設定指示画像72が時間軸tに対応する方向(例えば、左方向)にスクロールする。このように設定指示画像72が表示されることによって、プレイヤは、実際にゲームをプレイした場合に、現在の経過時間において、どのような種別の判定がなされるかを把握しながら設定作業を行うことができる。
【0096】
また、本実施形態においては、表示制御部46は、プレイヤの複数の部位に対応する複数の領域72a〜72eを、設定画面70に表示された時間軸tの方向に延伸するように、かつ、時間軸tに直交する方向に並列に設定する。例えば、領域72a〜72eの長手方向は、時間軸tの方向となる。複数の領域72a〜72eは、各領域72a〜72eの短手方向に並列に配置される。
【0097】
例えば、設定指示画像72に設定される複数の領域72a〜72eのそれぞれは、判定対象部位に対応する。本実施形態においては、判定対象部位が頭、左手、右手、左足、右足の5つであるので、図15に示すように、これら5つの部位に対応する5つの領域72a〜72eが設定される。
【0098】
図3に戻り、設定指示画像72は、基準時点指示画像74と、基準位置指示画像76と、を更に含む。プレイヤは、基準時点指示画像74に基づいて基準時点の設定を行い、基準位置指示画像76に基づいて基準位置の設定を行う。
【0099】
基準時点指示画像74は、設定指示画像72に表示された時間軸tが示す再生期間内の時点をプレイヤが指定するためのものである。基準時点指示画像74は、プレイヤの操作に基づいて左右に移動する。プレイヤが基準時点指示画像74を移動させると、プレイヤは、楽曲データの再生期間内の時点を指定及び変更することができる。
【0100】
即ち、指定受付部44は、設定画面70に表示された時間軸tに基づいて、楽曲データの再生期間内の時点の指定を受け付ける。本実施形態においては、時間軸tは、楽曲の所定拍毎に楽曲データの再生期間を示しているので、指定受付部44は、楽曲の所定拍毎に楽曲データの再生期間内における時点の指定を受け付ける。
【0101】
表示制御部46は、プレイヤによって指定された時点におけるキャラクタ32の動作を設定画面70に表示させる。例えば、プレイヤが基準時点指示画像74を移動させることによって指示した時点と、モーションデータと、に基づいて、この時点におけるキャラクタ32の動作(姿勢)が設定画面70に表示される。
【0102】
また、基準位置指示画像76は、設定画面70に設定された複数の領域72a〜72eの何れかの位置を、プレイヤが指定するためのものである。基準位置指示画像76は、プレイヤの操作に基づいて上下に移動する。プレイヤは、基準位置指示画像76を移動させることによって判定対象部位を指定し、基準位置を設定することができる。即ち、指定受付部44は、設定画面70に設定された複数の領域72a〜72eの何れかの位置の指定を受け付ける。
【0103】
なお、図3に示すように、設定画面70においては、ゲーム装置20の判定方法の種別毎に、基準時点の数が判定方法表示欄78に表示されるようにしてもよい。判定方法表示欄78の表示内容は、設定データが示す「1」〜「7」の数値に基づいて決定される。
【0104】
また、判定方法表示欄78は、プレイヤが設定すべき判定方法の種別を示すカーソル80を含む。プレイヤが所定の操作を行うことによって、カーソル80が上下に移動する。カーソル80が上下に移動することによって、プレイヤが設定する判定方法の種別を変更することができるようにしている。
【0105】
[6−5.基準データ生成部]
基準データ生成部48は、制御部21を主として実現される。基準データ生成部48は、設定画面70において指定された時点と、この指定された時点のプレイヤの見本姿勢における部位の位置と、に基づいて基準データを生成する。例えば、基準データ生成部48は、指定受付部44が受け付けた時点に基づいて基準時点を設定し、この時点の見本動作(例えば、キャラクタ32の動作)に基づいて基準位置を設定する。
【0106】
また、本実施形態においては、基準データ生成部48は、設定画面70において指定された領域72a〜72eの位置に対応する時点と、この指定された領域72a〜72eの位置に対応する部位の位置と、に基づいて前記基準データを生成する場合を説明する。例えば、基準データ生成部48は、基準位置指示画像76が示す部位及びカーソル80が示す判定方法の種別に基づいて、設定データの設定内容を特定することになる。
【0107】
例えば、図3の状態の場合、プレイヤが所定の設定指示操作を行うと、楽曲データの再生が開始されてから「2と3/4」小節目に、プレイヤの左手にRippleの判定が行われるように、設定データを設定することができる。基準位置は、判定用位置データに格納された「2と3/4」小節目の左下腕P5の3次元座標となる。
【0108】
即ち、基準データ生成部48は、基準時点指示画像74に基づいて指定される時点と、基準位置指示画像76に基づいて指定されるキャラクタ32の部位及びカーソル80で指定される判定方法の種別と、に基づいて設定データを生成することによって、基準データを生成する。
【0109】
設定指示操作が行われると、設定指示画像72及び判定方法表示欄78の表示内容も更新される。また、プレイヤが設定指示操作を行った場合、基準時点指示画像74及び基準位置指示画像76が示す設定指示画像72内の位置に、設定された判定方法の種別を示すアイコンが表示される。
【0110】
[7.ゲーム装置において実行される処理]
図16は、ゲーム装置20において実行される処理の一例を示すフロー図である。図16の処理は、例えば、設定画面70が表示される場合に、制御部21が、光ディスクから読み出されたプログラムに従って動作することにより実行される。
【0111】
まず、図16に示すように、制御部21は、楽曲データに基づいて楽曲を再生する(S101)。制御部21は、モーションデータに基づいてキャラクタ32のダンスを開始させ、設定画面70を表示させる(S102)。S102においては、モーションデータに基づいてゲーム空間60にキャラクタオブジェクト62が配置される。そして、仮想カメラ64からゲーム空間60を見た様子を示す画像が、設定画面70に表示される。なお、S101及びS102に処理によって、楽曲に合わせてキャラクタ32がダンス(プレイヤがすべきダンスとは左右反対のダンス)をするように、楽曲データとモーションデータとは同期再生される。
【0112】
制御部21は、現在の楽曲の経過時間に基づいて設定画面70の表示内容を更新し、楽曲データとモーションデータとの同期再生を行う(S103)。S103においては、例えば、経過時間の経過に伴って、キャラクタ32が楽曲に合わせてダンスを行い、設定指示画像72が時間軸tの方向にスクロールする。
【0113】
制御部21は、再生停止操作が行われたか否かを判定する(S104)。S104においては、操作部26の所定ボタンが押下されたか否かに基づいて、再生停止操作が行われたか否か判定される。
【0114】
再生停止操作が行われた場合(S104;Y)、制御部21は、楽曲の再生を停止する(S105)。制御部21は、モーションデータの同期再生を停止する(S106)。つまり、制御部21(表示制御部46)は、楽曲データの再生が停止された場合、楽曲データの再生が停止された時点における見本画像(例えば、キャラクタ32)を設定画面70に表示させる。S105において楽曲の再生が停止するので、設定画面70において、キャラクタ32のダンスが停止し、設定指示画像72のスクロールも停止する。
【0115】
制御部21は、基準時点指示画像74の移動指示(時点指定操作)が行われたか否かを判定する(S107)。例えば、操作部26の十字キーの左右のボタンが押下されたか否かが判定される。
【0116】
基準時点指示画像74の移動指示が行われた場合(S107;Y)、制御部21は、この移動指示に基づいて基準時点指示画像74を移動させて、楽曲データの経過時間を変更させる(S108)。
【0117】
S108においては、制御部21(指定受付部44)は、所定の時点指定操作に基づいて、楽曲データの再生が停止された時点よりも前の時点、又は、楽曲データの再生が停止された時点よりも後の時点を、指定された時点として取得する。楽曲データの再生が停止された時点とは、再生停止操作が行われた場合の楽曲の経過時間のことである。即ち、S108においては、基準時点指示画像74の移動に伴って、現在の経過時間が変更される。例えば、基準時点指示画像74が左に移動した場合、経過時間が戻り、基準時点指示画像74が右に移動した場合、経過時間が先に進む。
【0118】
制御部21は、変更された経過時間に基づいてキャラクタ32の表示を更新する(S109)。現在の経過時間が変更されると、S109において、モーションデータに基づいてキャラクタ32の表示が更新される。本実施形態においては、図3及び図15に示すように、時間軸tは、楽曲の所定拍毎に経過時間を示しているので、S109においては、この所定拍毎に指定された経過時間におけるキャラクタ32の動作が、設定画面70に表示される。また、後述するS113において、この所定拍毎に指定された経過時間に基づいて基準時点が設定される。
【0119】
一方、基準時点指示画像74の移動指示が行われない場合(S107;N)、制御部21は、基準位置指示画像76の移動指示が行われたか否かを判定する(S110)。例えば、操作部26の十字キーの上下のボタンが押下されたか否かが判定される。
【0120】
基準位置指示画像76の移動指示が行われた場合(S110;Y)、制御部21は、基準位置指示画像76を移動させる(S111)。例えば、基準位置指示画像76は、操作部26から入力される操作に基づいて上下に移動する。
【0121】
基準位置指示画像76の移動指示が行われない場合(S110;N)、制御部21は、設定指示操作が行われたか否かを判定する(S112)。設定指示操作が行われた場合(S112;Y)、制御部21は、基準時点指示画像74に基づいて基準時点を設定し、基準位置指示画像76が示す部位に基づいて基準位置を設定する(S113)。即ち、S113においては、設定データの内容が設定されることによって、基準データが生成される。なお、カーソル80の位置は、適宜、プレイヤが入力する所定の操作によって上下に移動するようにしてもよい。
【0122】
設定指示操作が行われない場合(S112;N)、制御部21は、設定内容確認操作が入力されたか否かを判定する(S114)。設定内容確認操作は、予め定められた操作であればよい。例えば、設定内容確認操作は、操作部26の所定のボタンが押下されることであってもよい。
【0123】
設定内容確認操作が入力された場合(S114;Y)、処理はS103に戻り、モーションデータ及び楽曲データの同期再生が再開される。つまり、制御部21は、基準データが生成された後、設定画面70において所定の設定内容確認操作が行われた場合、楽曲データを再生する。
【0124】
また、楽曲データの再生に同期してモーションデータが再生される。即ち、基準データが生成された後、設定内容確認操作が行われた場合、楽曲データの再生と同期して、設定画面70において見本画像(例えば、キャラクタ32)によって案内される見本姿勢が変化する。例えば、楽曲の時間経過に伴い、モーションデータに基づいてキャラクタ32の表示処理が行われる。
【0125】
更に、楽曲データの再生と同期して、基準時点及び基準位置が基準データに基づいて案内されるようにしてもよい。例えば、基準時点及び基準位置が、音声又は画像によって案内される。例えば、基準時点が訪れる場合、基準位置を案内する音声が音声出力部28から出力されるようにしてもよいし、基準位置を案内するマーク36が設定画面70に表示されるようにしてもよい。これらの音声データ又は画像データは、予めゲームデータ記憶部40に記憶されるようにしてもよい。
【0126】
設定内容確認操作が入力されない場合(S114;N)、制御部21は、終了条件を満たすか否かを判定する(S115)。終了条件は、予め定められた条件であればよい。例えば、終了条件は、プレイヤによって基準データの設定を終了する旨の指示が入力されたか否かであってもよい。
【0127】
終了条件を満たす場合(S115;Y)、処理は終了する。終了条件を満たさない場合(S115;N)、処理はS104に戻り、設定画面70からの基準データの設定が継続される。
【0128】
以上に説明したゲーム装置20においては、設定画面70において、楽曲の再生期間内の時点の指定が行われ、この指定された時点におけるキャラクタ32の姿勢が表示される。プレイヤは、指定した時点と、この指定した時点のキャラクタ32の部位の位置と、に基づいて基準データを生成することができる。即ち、プレイヤは、キャラクタ32の姿勢を確認しながら基準データを生成することができるので、基準データを効率良く生成することができる。
【0129】
また、楽曲データ及びモーションデータの同期再生中に、再生停止操作が行われた場合に同期再生を停止させて、基準データの生成が行われるので、プレイヤは、基準時点として設定すべき時点を指定しやすくなる。また、設定内容確認操作が行われた場合、生成された基準データに基づいて設定画面70の表示が行われるので、プレイヤは、自分が設定した基準データの内容の確認を容易に行うことができる。
【0130】
また、ゲーム装置20は、設定画面70において、時間軸tを表す画像を表示させるので、プレイヤは、基準時点を指定しやすくなる。プレイヤは、この時間軸tに基づいて所定拍毎に経過時間を指定することができるので、楽曲のテンポを考慮に入れながら基準時点の指定を行いやすくなる。また、ゲーム装置20は、設定画面70において、キャラクタ32の部位毎に領域72a〜72eが設定されるので、プレイヤは、基準位置を設定する部位の指定を行いやすくなる。
【0131】
なお、実施形態においては、設定指示画像72に基づいて基準データの設定が行われる場合を説明したが、モーションデータ及び楽曲データの同期再生の再生内容に基づいて基準データの設定が行われるようにすればよく、基準データの設定方法は、実施形態の例に限られない。他にも例えば、設定画面70に表示されたキャラクタ32の部位をマウス等でクリックすることによって基準時点及び基準位置が指定されるようにしてもよい。
【0132】
また、再生停止操作が行われて同期再生が停止されると基準データの生成が行われる場合を説明したが、同期再生が行われたまま、基準データの生成作業が行われるようにしてもよい。
【0133】
また、設定指示画像72の横軸を時間軸tとし、縦軸をキャラクタ32の部位を指定するための領域72a〜72eとした例を説明したが、設定画面70に表示される時間軸t及びキャラクタ32の部位を指定するための領域の例は、これに限られない。例えば、縦軸が時間軸tであり、横軸がキャラクタ32の部位を指定するための領域であってもよい。また、必ずしもこれらが直交している必要はない。
【0134】
なお、本発明は、以上説明した実施形態に限定されるものではなく、本発明の趣旨を逸脱しない範囲で適宜変更可能である。
【0135】
(1)例えば、基準データに基づいて設定画面70にマーク36を表示させ、このマーク36の形状を設定することができるようにしてもよい。
【0136】
変形例(1)におけるゲームデータ記憶部40は、基準時点及び基準位置をプレイヤに案内する案内画像(例えば、マーク36)に関する画像情報を記憶する。例えば、画像情報には、マーク36に対応する画像データと、マーク36を表示すべき画面上の位置と、マーク36を表示すべき期間(以降、案内対象期間という。)と、が対応づけられて格納される。案内対象期間は、例えば、基準時点の所定時間前から基準時点までの期間である。
【0137】
また、変形例(1)における表示制御部46は、ゲームデータ記憶部40から画像情報を取得し、案内対象期間が訪れる場合、案内画像(例えば、マーク36)を設定画面70に表示させる。マーク36は、例えば、キャラクタ32の判定対象部位の位置に表示される。
【0138】
例えば、判定方法の種別がRipple、Step、又はLockである案内対象期間が訪れた場合、プレイヤが動かすべき部位を特定するように、図2に示すような球状のマーク36が設定画面70に表示される。なお、判定方法の種別によってマーク36の形状が異なるようにしてもよい。例えば、判定方法の種別がSolid又はStreamである場合には、流れるような手の動きを案内するマーク36が設定画面70に表示されるようにしてもよい。
【0139】
図17は、変形例(1)における設定画面70の一例を示す図である。例えば、判定方法の種別がSolid又はStreamである案内対象期間内において再生停止操作が入力された場合、図17に示すように、設定画面70にマーク36が表示される。
【0140】
プレイヤは、所定の操作(例えば、操作部26のマウスでマーク36をクリックする等)を行うことによって、例えば、矢印を模したマーク36の長さ、曲率、色相、太さ等を指定することができる。また、マーク36を示すオブジェクトがゲーム空間60に配置される場合、このオブジェクトのポリゴン面の向き、頂点座標の位置等が指定されるようにしてもよい。
【0141】
ゲーム装置20は、設定画面70に表示された案内画像(例えば、マーク36)の形状の変更指示を受け付ける。例えば、設定画面70の表示内容に対するプレイヤの操作に基づいて、マーク36の形状の変更指示が受け付けられる。また、ゲーム装置20は、変更指示を受け付けたマーク36の形状を変更する。プレイヤにより指定されたマーク36の形状に関する情報は、案内対象期間と対応づけられてゲームデータ記憶部40に記憶される。
【0142】
変形例(1)のゲーム装置20によれば、設定画面70においてマーク36の形状を変更することができる。
【0143】
(2)また例えば、設定画面70において、基準位置が示す3次元座標が変更されるようにしてもよい。変形例(2)の場合、表示制御部46は、同期再生において基準時点が訪れるときに、基準位置を示す指標を設定画面70に表示させる。
【0144】
図18は、変形例(2)における設定画面70の一例を示す図である。図18に示すように、設定画面70には、プレイヤの動作を評価するための判定領域82が表示される。判定領域82は、例えば、基準位置が示す3次元座標を中心とした所定半径の球である。
【0145】
判定領域82は、プレイヤの動作を評価するために用いられる。例えば、ゲームが実行されて基準時点が訪れる場合、プレイヤ位置情報が示すプレイヤの位置と、判定領域82の位置と、が比較されることによって、プレイヤの動作が評価される。
【0146】
具体的には、基準時点が訪れる場合、まず、プレイヤ位置情報が示す代表点(例えば、P8)と、判定用位置データが示す代表点(例えば、背中P8)と、が一致される。次いで、判定領域82が設定され、プレイヤの判定対象部位が、判定領域82内にあるか否かに基づいてプレイヤの動作が評価される。プレイヤの判定対象部位の3次元座標が判定領域82内にある場合、プレイヤは高い評価を得ることになる。
【0147】
ゲーム装置20は、設定画面70に表示された判定領域82が示す基準位置の変更指示を受け付ける。例えば、ゲーム装置20は、判定領域82の位置変更を示す所定操作が行われた場合、基準位置の変更を受け付ける。ゲーム装置20は、この変更指示に基づいて基準位置を変更する。例えば、設定画面70に表示された判定領域82の中心点82aを上下左右に移動させる操作が行われることによって、基準位置が変更される。
【0148】
変形例(2)においては、例えば、設定画面70において、基準位置が示す3次元座標を変更することができる。
【0149】
(3)また例えば、ゲームに難易度が設定されるようにしてもよい。ゲームに難易度が設定される場合、ゲームデータ記憶部40には、例えば、難易度毎に基準データが記憶される。即ち、この場合、同一のダンス及び楽曲であっても、基準時点の数や、プレイヤの動作の判定方法が異なる。
【0150】
例えば、難易度が高くなるほど基準時点の数が多くなる。また例えば、難易度が高くなるほど、高い評価を得ることが比較的難しい判定方法(例えば、Stream等)が用いられる。また例えば、難易度が高くなるほど複数の部位(例えば、頭、右手、左足)が同時に判定に用いられる。このように、難易度が高くなるほど、プレイヤは、良い評価を得ることが難しくなる。
【0151】
変形例(3)においては、設定画面70において、複数の難易度毎に基準データが設定されるようにしてもよい。この場合、設定画面70には、複数の難易度のそれぞれに対応する複数の設定指示画像72が所定方向に並列して表示される。設定指示画像72の構成は、実施形態と同様である。即ち、プレイヤは、設定指示画像72の基準時点指示画像74及び基準位置指示画像76を移動させることによって、各難易度の基準データを生成する。
【0152】
変形例(3)によれば、プレイヤは、これらの設定指示画像72を比較しながら基準データの設定を行うことができる。プレイヤが複数の難易度別に基準データを設定する場合、どの程度難しく/易しく設定されているかが分かりづらいが、上記のような設定画面70によって設定が行われることにより、プレイヤは効率よく基準データを生成することができる。
【0153】
(4)また、実施形態においては、基準データとして判定用位置データと設定データを含む例を説明したが、基準データは、基準時点と基準位置とが対応付けられたものであればよい。例えば、基準時点と、判定対象部位の3次元座標と、が対応付けられていてもよい。また、モーションデータに判定用位置データが含まれており、モーションデータと基準データとが一体となっていてもよい。
【0154】
(5)また、本実施形態においては、モーションデータに基づいてゲーム画面30及び設定画面70が表示される場合を説明したが、ゲーム画面30の表示方法は、他の方法であってもよい。例えば、アニメーションデータを用意しておいてゲーム画面30及び設定画面70を表示させるようにしてもよい。
【0155】
(6)また、上記実施形態及び変形例においては、ゲーム装置20がダンスゲームを実行する場合を説明したが、ゲーム装置20は、キャラクタ32の動作及び楽曲に合わせてプレイヤが体を動かすゲームの実行及び当該ゲームの設定を行うようにすればよい。ゲーム装置20が実行するゲームはダンスゲームに限られず、他にも例えば、キャラクタ32の動作に合わせてプレイヤが体操を行うゲームが実行されるようにしてもよい。
【0156】
(7)また、本発明に係るデータ生成装置がゲーム装置に適用される場合を説明したが、本発明に係るデータ生成装置は、基準データに基づいてプレイヤの動作を評価するゲームにおいて用いられる基準データを生成するための装置に適用されるようにすればよい。
【符号の説明】
【0157】
1 位置検出装置、2 CCDカメラ、3 赤外線センサ、4 マイク、10 制御部、11 記憶部、12 撮影部、13 深度測定部、14 音声入力部、15 通信インタフェース部、16,29 バス、20 ゲーム装置、21 制御部、22 主記憶部、23 補助記憶部、24 光ディスク再生部、25 通信インタフェース部、26 操作部、27 表示部、28 音声出力部、30 ゲーム画面、32 キャラクタ、34 スコア、36 マーク、38 エフェクト画像、39 評価画像、40 ゲームデータ記憶部、42 見本データ取得部、44 指定受付部、46 表示制御部、48 基準データ生成部、60 ゲーム空間、62 キャラクタオブジェクト、64 仮想カメラ、70 設定画面、72 設定指示画像、74 基準時点指示画像、76 基準位置指示画像、78 判定方法表示欄、80 カーソル、82 判定領域、100 プレイヤ。

【特許請求の範囲】
【請求項1】
楽曲データの再生期間内に設定される基準時点に関する情報と、前記基準時点においてプレイヤの部位があるべき基準位置に関する情報と、を対応付けてなる基準データに基づいて、前記楽曲データの再生期間内に行われるプレイヤの動作を評価するゲームにおいて用いられる前記基準データを生成するためのデータ生成装置であって、
前記楽曲データの再生期間内の各時点における前記プレイヤの見本姿勢に関する見本データを記憶する手段から前記見本データを取得する見本データ取得手段と、
前記基準データを生成するための設定画面を表示する表示手段と、
前記設定画面において、前記楽曲データの再生期間内における時点の指定を受け付ける指定受付手段と、
前記指定された時点における前記プレイヤの見本姿勢を案内する見本画像を、前記見本データに基づいて前記設定画面に表示させる表示制御手段と、
前記指定された時点と、前記指定された時点の前記プレイヤの見本姿勢における前記部位の位置と、に基づいて前記基準データを生成する基準データ生成手段と、
を含むことを特徴とするデータ生成装置。
【請求項2】
前記データ生成装置は、前記楽曲データを再生する手段を含み、
前記表示制御手段は、前記楽曲データが再生中の場合、前記設定画面において前記見本画像によって案内される見本姿勢を前記楽曲データの再生と同期するようにして変化させ、
前記データ生成装置は、所定の再生停止操作が行われた場合、前記楽曲データの再生を停止する手段を更に含み、
前記表示制御手段は、前記楽曲データの再生が停止された場合、前記楽曲データの再生が停止された時点における前記見本画像を前記設定画面に表示させ、
前記指定受付手段は、所定の時点指定操作に基づいて、前記楽曲データの再生が停止された時点よりも前の時点、又は、前記楽曲データの再生が停止された時点よりも後の時点を、前記指定された時点として取得する、
ことを特徴とする請求項1に記載のデータ生成装置。
【請求項3】
前記データ生成装置は、
前記基準データ生成手段によって前記基準データが生成された後、前記設定画面において所定の設定内容確認操作が行われた場合、前記楽曲データを再生する手段を含み、
前記表示制御手段は、
前記基準データ生成手段によって前記基準データが生成された後、前記設定内容確認操作が行われた場合、前記楽曲データの再生と同期して、前記設定画面において前記見本画像によって案内される見本姿勢を変化させるとともに、前記楽曲データの再生と同期して、前記基準時点及び前記基準位置を前記基準データに基づいて案内する手段、
を更に含むことを特徴とする請求項1又は2に記載のデータ生成装置。
【請求項4】
前記表示制御手段は、前記楽曲データの再生期間の時間軸を前記設定画面に表示させ、
前記指定受付手段は、前記設定画面に表示された前記時間軸に基づいて、前記楽曲データの再生期間内の時点の指定を受け付けることを特徴とする請求項1〜3の何れか一項に記載のデータ生成装置。
【請求項5】
前記表示制御手段は、前記プレイヤの複数の部位に対応する複数の領域を、前記設定画面に表示された時間軸の方向に延伸するように、かつ、当該時間軸に直交する方向に並列に設定し、
前記指定受付手段は、前記設定画面に設定された複数の領域の何れかの位置の指定を受け付け、
前記基準データ生成手段は、前記指定された領域の位置に対応する時点と、前記指定された領域の位置に対応する部位の位置と、に基づいて前記基準データを生成する、
ことを特徴とする請求項4に記載のデータ生成装置。
【請求項6】
前記時間軸は、前記楽曲の所定拍毎に前記楽曲データの再生期間を示し、
前記指定受付手段は、前記所定拍毎に前記楽曲データの再生期間内における時点の指定を受け付ける、
ことを特徴とする請求項4又は5に記載のデータ生成装置。
【請求項7】
楽曲データの再生期間内に設定される基準時点に関する情報と、前記基準時点においてプレイヤの部位があるべき基準位置に関する情報と、を対応付けてなる基準データに基づいて、前記楽曲データの再生期間内に行われるプレイヤの動作を評価するゲームにおいて用いられる前記基準データを生成するためのデータ生成装置の制御方法であって、
前記楽曲データの再生期間内の各時点における前記プレイヤの見本姿勢に関する見本データを記憶する手段から前記見本データを取得する見本データ取得ステップと、
前記基準データを生成するための設定画面を表示する表示ステップと、
前記設定画面において、前記楽曲データの再生期間内における時点の指定を受け付ける指定受付ステップと、
前記指定された時点における前記プレイヤの見本姿勢を案内する見本画像を、前記見本データに基づいて前記設定画面に表示させる表示制御ステップと、
前記指定された時点と、前記指定された時点の前記プレイヤの見本姿勢における前記部位の位置と、に基づいて前記基準データを生成する基準データ生成ステップと、
を含むことを特徴とするデータ生成装置の制御方法。
【請求項8】
楽曲データの再生期間内に設定される基準時点に関する情報と、前記基準時点においてプレイヤの部位があるべき基準位置に関する情報と、を対応付けてなる基準データに基づいて、前記楽曲データの再生期間内に行われるプレイヤの動作を評価するゲームにおいて用いられる前記基準データを生成するためのデータ生成装置としてコンピュータを機能させるためのプログラムであって、
前記楽曲データの再生期間内の各時点における前記プレイヤの見本姿勢に関する見本データを記憶する手段から前記見本データを取得する見本データ取得手段、
前記基準データを生成するための設定画面を表示する表示手段、
前記設定画面において、前記楽曲データの再生期間内における時点の指定を受け付ける指定受付手段、
前記指定された時点における前記プレイヤの見本姿勢を案内する見本画像を、前記見本データに基づいて前記設定画面に表示させる表示制御手段、
前記指定された時点と、前記指定された時点の前記プレイヤの見本姿勢における前記部位の位置と、に基づいて前記基準データを生成する基準データ生成手段、
を含むことを特徴とするデータ生成装置として前記コンピュータを機能させるためのプログラム。

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