情報処理装置
【課題】 プレイヤが直感的に操作を行うことができる情報処理装置を提供する。
【解決手段】情報処理装置は、プレイヤが手に把持して操作する手入力ユニット7と、プレイヤが足で踏んで操作するマットユニット3とを備え、マットユニット3からの入力に応じて、キャラクタ101を跳び箱オブジェクト109に向かって移動、ジャンプし、手入力ユニット7からの入力に応じてキャラクタ101が跳び箱オブジェクト109を飛び越える動作を行うように表示を行う。
【解決手段】情報処理装置は、プレイヤが手に把持して操作する手入力ユニット7と、プレイヤが足で踏んで操作するマットユニット3とを備え、マットユニット3からの入力に応じて、キャラクタ101を跳び箱オブジェクト109に向かって移動、ジャンプし、手入力ユニット7からの入力に応じてキャラクタ101が跳び箱オブジェクト109を飛び越える動作を行うように表示を行う。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、プレイヤが手と足とを併用して入力を行う情報処理装置に関する。
【背景技術】
【0002】
特許文献1には、プレイヤの手の動きと足の動きを検出して入力とし、表示装置の映像を変化させる情報処理装置が開示されている。特許文献1の発明では、画面中のキャラクタを動かすための、プレイヤの入力動作が、エアロビクス運動になるように設定されており、プレイヤはビデオゲームをこなすことで、同時にエアロビクス運動を行える。
【特許文献1】特表平10−509058
【発明の開示】
【発明が解決しようとする課題】
【0003】
しかしながら、特許文献1の発明には、プレイヤが、直感的な操作を行えるようにするという観点や、プレイヤに対して臨場感を与えるという観点が特に開示されていない。
【0004】
そこで、本発明の目的は、プレイヤが直感的に操作を行うことができる情報処理装置を提供することである。
【0005】
また、本発明の他の目的は、映像表示によってプレイヤに臨場感を与えることができる情報処理装置を提供することである。
【課題を解決するための手段】
【0006】
本発明の観点によれば、情報処理装置は、プレイヤの3次元空間内での手の動きを検出し、当該検出の結果に応じた入力を行う第一の入力手段と、前記プレイヤの3次元空間内での足の動きを検出し、当該検出の結果に応じた入力を行う第二の入力手段と、前記第二の入力手段からの入力に応じて、画面中のキャラクタの位置情報を制御する位置制御手段と、前記第一の入力手段からの入力に応じて、前記キャラクタが所定の行動を行うように制御する行動制御手段と、を含む。
【0007】
この構成によれば、プレイヤは足を動かすことによって画面中のキャラクタを動かすことができ、手を動かすことによって前記キャラクタに所定の行動を行わせることができる。人間は普通移動を行う場合には足を使い、道具を使う、物を掴む、物を振る、又は物を投げるなどの行動を手を用いて行うため、プレイヤは、直感的に操作を行うことができる。また、プレイヤに対して臨場感を与えることができる。
【0008】
本発明の第2の観点によれば、情報処理装置は、プレイヤの3次元空間内での手の動きを検出し、当該検出の結果に応じた入力を行う第一の入力手段と、前記プレイヤの3次元空間内での足の動きを検出し、当該検出の結果に応じた入力を行う第二の入力手段と、前記第一の入力手段からの入力に応じて、画面中のキャラクタの上半身の運動を制御し、前記第二の入力手段からの入力に応じて画面中のキャラクタの下半身の運動を制御するキャラクタ制御手段と、を含む。
【0009】
この構成によれば、プレイヤは、キャラクタの下半身を動かしたい場合は自分の足を動かし第二の入力手段で入力を行い、キャラクタの上半身を動かしたい場合は自分の手を動かし第一の入力手段で入力を行えるので、直感的な操作が可能となる。
【0010】
上記本発明の第1及び第2の観点において、前記第一の入力手段は、プレイヤの手を撮像する撮像手段を含んでもよい。
【0011】
また、前記第二の入力手段は、プレイヤの足を撮像する撮像手段を含んでもよい。
【0012】
さらに、前記第一の入力手段は、前記プレイヤの手の動きを検出するための、加速度センサ、傾きセンサ、振動センサ及び重力センサのうち、一つまたは任意の組み合わせを含んでもよい。
【0013】
さらに、前記第二の入力手段は、前記プレイヤの足の動きを検出するための、加速度センサ、傾きセンサ、振動センサ及び重力センサのうち、一つまたは任意の組み合わせを含んでもよい。
【0014】
加速度センサとしては、ピエゾ式の加速度センサなどが利用できる。また、傾きセンサにはジャイロスコープなどを利用することができる。
【0015】
さらに、前記第二の入力手段は、前記プレイヤの踏み込み動作を検出する踏み込み検出手段を含んでもよい。
【0016】
さらに、前記第一の入力手段及び前記第二の入力手段からのそれぞれの入力に基づいて、前記プレイヤの動きによって消費されるエネルギーを算出する消費エネルギー算出手段をさらに含んでもよい。
【0017】
この構成によれば、プレイヤは入力動作がどの程度運動になっているのかを把握することができる。
【0018】
さらにこの場合、前記第一の入力手段は、プレイヤが両手で把持するための把持部を含んでもよい。
【0019】
前記把持部は、押下するとオンになるスイッチを含む。
【0020】
この構成によれば、プレイヤは把持部を握りこむことでスイッチを押下し、入力を行うことができる。
【0021】
また、前記第一の入力手段は、プレイヤの手の動きに応じた操作信号を送信する複数の送信手段を含み、前記送信手段は、互いに異なる方向を向いていることを特徴としてもよい。
【0022】
この構成によれば、第一の入力手段がプレイヤによって傾けて把持されても、何れかの送信手段から操作信号が送信され、入力が行われる。
【0023】
この場合、前記送信手段は、赤外線発光ダイオードであってもよい。
【発明を実施するための最良の形態】
【0024】
以下、本発明の実施の形態について、図面を参照しながら説明する。なお、図中、同一または相当部分については同一の参照符号を付してその説明を援用する。
【0025】
図1は、本発明の実施の形態による情報処理装置の全体構成を示す図である。この情報処理装置は、情報処理部1、マットユニット3、テレビジョンモニタ5、手入力ユニット7及びAVケーブル9を備える。情報処理部1はAVケーブル9を通してテレビジョンモニタ5に接続される。したがってAVケーブル9を通して情報処理部1が作成したビデオ信号及びオーディオ信号をテレビジョンモニタ5に与えることができる。これにより、テレビジョンモニタ5に、後述のゲーム画面や運動計測画面等を表示し、スピーカ(図示せず)から音楽や効果音を出力することができる。
【0026】
情報処理部1は、マットユニット3の一方端部に取り付けられる。情報処理部1の表面には、電源スイッチ(図示せず)が設けられる。一方、マットユニット3は、2つのフットスイッチSW1及びSW2を含み、フットスイッチSW1及びSW2は、踏まれるとオンになる。プレイヤは普段フットスイッチSW1、SW2にそれぞれ左足と右足をおいて操作するので、基本的にフットスイッチSW1及びSW2はオンの状態になり、プレイヤがマットの上で足踏みをする、ジャンプをするなど足を上げる動作をした時に、フットスイッチSW1及び/又はSW2から足が離れてオフになり、着地したときに再びオンになる。
【0027】
手入力ユニット7はプレイヤに握るように把持される。図1に示されているように水平方向にもたれることもあれば、図示しないが、垂直方向にもたれることもある。
【0028】
図2は、プレイヤが把持した状態で図1の手入力ユニット7を情報処理部1側、つまり地面側から見たものである。
【0029】
図2を参照して、グリップ部71L、71Rは、プレイヤによって把持される部分である。ボタンスイッチSW3及びSW4は、グリップ部71L、71Rがプレイヤによって握られた場合に、プレイヤの人差し指と中指の中腹が当たる位置に設置されている。ボタンスイッチSW3、SW4はプレイヤがグリップ部71L及び71Rを把持するだけでは押し込まれず、プレイヤが指に力を込めて握りこむと、押し込まれてオンになる。
【0030】
手入力ユニット7の両端部には、側面部に赤外光(IR)発光部73L、73Rが、底面部にIR発光部75Rと75Lが、それぞれ露出している。以下IR発光部73L及び73Rを合わせて指す場合はIR発光部73と、IR発光部75L及び75Rを合わせて指す場合はIR発光部75として説明する場合がある。IR発光部75Rと75Lとが左右非対称でそれぞれ斜め向きに配置されているのは、手入力ユニット7が傾けて持たれても、いずれかのIR発光部からの赤外光が、IRレシーバ15(後述する)に届くようにするためである。IR発光部73が側面に、IR発光部75が底面に配置されているのは、手入力ユニットが垂直方向に把持された場合でも、水平方向に把持された場合でも、いずれかのIR発光部からの赤外光が、IRレシーバ15に届くようにするためである。IR発光部には例えば、赤色発光ダイオードを使用する。
【0031】
図3は、情報処理部1、マットユニット3、及び手入力ユニット7の電気的構成を示すブロック図である。図3を参照してマットユニット3は、フットスイッチSW1及びSW2を含む。フットスイッチSW1及びSW2のオン/オフ信号は、情報処理部1のプロセッサ11に直接与えられる。
【0032】
手入力ユニット7は、IR発光部73及び75、MCU(Micro Controler Unit)701、ボタンスイッチSW3、SW4、傾きセンサ711、及び振動センサ713を含む。MCU701、傾きセンサ711、及び振動センサ713はそれぞれ手入力ユニットに内蔵されている。傾きセンサ711は、手入力ユニット7が水平方向に把持されているのか、垂直方向に把持されているのかを感知し、「横」又は「縦」を表す傾き情報として出力する。振動センサ713は、プレイヤに手入力ユニット7が揺らされると、振動を感知してオンになる。MCU701は、ボタンスイッチSW3、SW4、及び振動センサ713のオン/オフ情報並びに傾きセンサ711からの傾き情報を受け、IR発光部73及び75を駆動して、IR通信により、ボタンスイッチSW3、SW4及び振動センサ713のオン/オフ情報並びに傾きセンサ711からの傾き情報をIRレシーバ15へ送信する。
【0033】
一方、マットユニット3の一方端部にすえつけられた情報処理部1は、プロセッサ11、外部メモリ13及びIRレシーバ15を含む。IRレシーバ15が受信したボタンスイッチSW3、SW4、及び振動センサ713のオン/オフ情報並びに傾きセンサ711からの傾き情報は、プロセッサ11に与えられる。なお、情報処理部1は、独立した単体として構成されてもよいし、手入力ユニット7側にすえつけられる様な構成であってもよい。ただし、手入力ユニット7側にすえつけられる場合は、MCU701及びIR発光部73及び75に相当するものを、手入寮クユニット7ではなく、マットユニット3側に備える必要がある。
【0034】
プロセッサ11には、外部メモリ13が接続される。外部メモリ13は、プログラム領域、画像データ領域、および音声データ領域を含む。プログラム領域には、制御プログラムが格納される。画像データ領域には、テレビジョンモニタ5に表示される画面を構成するすべての画像データや、他の必要な画像データが格納されている。音声データ領域には、音楽や効果音のための音声データが格納されている。プロセッサ11は、プログラム領域の制御プログラムを実行して、画像データ領域の画像データ及び音声データ領域の音声データを読み出し、必要な処理を施して、ビデオ信号及びオーディオ信号を生成する。この場合、プロセッサ11は、フットスイッチSW1及びSW2からのオン/オフ情報と、IRレシーバ15からの、ボタンスイッチSW3、SW4及び振動センサ713のオン/オフ情報並びに傾きセンサ711からの傾き情報とを処理に反映する。ビデオ信号及びオーディオ信号は、AVケーブル9を通して、テレビジョンモニタ5に与えられる。
【0035】
プロセッサ11は、図示しないが、CPU(Central Processing Unit)、グラフィックスプロセサ、サウンドプロセサおよびDMAコントローラ等の各種機能ブロックを含むとともに、アナログ信号を取り込むときに用いられるA/Dコンバータ、IR信号やキー操作信号のような入力デジタル信号を受けかつ出力デジタル信号を外部機器に与える入出力制御回路、及び内部メモリ等を含む。
【0036】
CPUは、外部メモリ13に格納された制御プログラムを実行する。A/Dコンバータからのデジタル信号および入出力制御回路からのデジタル信号はCPUに与えられ、CPUは、制御プログラムに従って、それらの信号に応じて必要な演算を実行する。この入出力制御回路に、フットスイッチSW1、SW2、からのオン/オフ情報及びIRレシーバー15からのボタンスイッチSW3、SW4、及び振動センサ713のオン/オフ情報並びに傾きセンサ711からの傾き情報が入力される。グラフィックスプロセサは、外部メモリ13に格納された画像データに対して、CPUの演算結果によって必要になったグラフィック処理を実行して、テレビジョンモニタ5に表示する画像を表すビデオ信号を生成する。サウンドプロセサは、外部メモリ13に格納された音声データに対して、CPUの演算結果によって必要になったサウンド処理を実行して、音楽や効果音を表すオーディオ信号を生成する。内部メモリは、例えば、RAMにより構成され、ワーキング領域、カウンタ領域、レジスタ領域、テンポラリデータ領域、及び/又はフラグ領域等として利用される。
【0037】
図4は、本発明の実施の形態による情報処理装置が表示する画面の例示図である。図4の画面は、腕立て伏せのゲーム画面である。
【0038】
図4を参照して、画面100はキャラクタ101、時間表示部103及び回数表示部105を含む。この画面では、プロセッサ11は、手入力ユニット7の振動センサ713のオン/オフ信号に応じて、キャラクタ101は腕立て伏せをするように表示する。
【0039】
プロセッサ11は、一定時間この画面を表示し、残り時間を時間表示部103に表示する。また、キャラクタ101が腕立て伏せを行った回数、つまり、プレイヤが手入力ユニット7を上下に動かし、腕の上下運動を行った回数を回数表示部に表示する。
【0040】
従って、プレイヤは、一定時間中、腕を上下に振って手入力ユニット7を上下に動かすことで、より多くの回数キャラクタ101に腕立て伏せをさせることができる。
【0041】
図5は、本発明の実施の形態による入力装置を用いた情報処理装置が表示する画面の他の例示図である。図5の画面は跳び箱ゲーム画面である。
【0042】
図5を参照して、画面100は、キャラクタ101、ジャンプ台オブジェクト107及び跳び箱オブジェクト109を含む。この画面では、プロセッサ11はまず、プレイヤにその場でダッシュ動作、つまり、フットスイッチSW1、SW2上で足踏みをするように指示を表示する。プレイヤがダッシュ動作を行うと、プレイヤの足が交互に離れるので、フットスイッチSW1、SW2は、交互にオンからオフ、オフからオンに遷移する。
【0043】
プロセッサ11は、フットスイッチSW1及びSW2が交互にオンからオフになり、所定の時間t1内にオフからオンに遷移するのを確認すると、ダッシュコマンドが入力されたと判断する。プロセッサ11は、ダッシュコマンドが入力される度に、キャラクタ101にニ歩分走る動作をさせ、跳び箱オブジェクト109に接近させる。そして、プロセッサ11は、キャラクタ101が所定の位置、つまりジャンプ台オブジェクト107の位置まで移動したと判断すると、プレイヤに対し、その場でジャンプするように指示を表示する。
【0044】
プレイヤがジャンプすると、プレイヤの両足がフットスイッチSW1及びSW2から離れるので、プレイヤが着地するまでフットスイッチSW1及びSW2が両方にオンからオフに遷移する。プロセッサ11はフットスイッチSW1及びSW2が両方オンからオフに遷移し、所定時間t2の間、オフ状態が続く状態を確認すると、ジャンプコマンドが入力されたと判断する。所定の時間t2は、上記の所定の時間t1よりも、長く設定されている。プロセッサ11は、タイミングよくジャンプコマンドが入力されたことを確認すると、キャラクタ101がジャンプする表示を行い、入力のタイミングがずれた場合は、キャラクタ101が跳び箱オブジェクト109にぶつかり、ジャンプに失敗する表示を行う。
【0045】
プロセッサ11は、プレイヤがジャンプコマンドの入力をタイミングよく行うと、画面100に手入力ユニット7を振る指示を表示する。ここで、プレイヤが手入力ユニット7を振ると、振動センサ713がオフからオンになる。プロセッサ11は振動センサ713のオン信号を検出すると、スイングコマンドが入力されたと判断し、タイミングよくスイングコマンドが入力されると、キャラクタ101が手を使って跳び箱オブジェクト109を飛び越える表示を行い、入力のタイミングがずれた場合は、キャラクタ101が跳び箱オブジェクト109の上に乗っかってしまい、飛び越えることに失敗する表示を行う。
【0046】
従ってプレイヤは、素早く足踏みをする、タイミングよく両足でジャンプする、タイミングよく腕を使う、という現実に跳び箱を飛ぶ際の動作を模した動作を順番に行うことによって、キャラクタ101に跳び箱オブジェクト109を飛び越えさせることができる。
【0047】
図6は、本発明の実施の形態による情報処理装置が表示する画面の他の例示図である。図6の画面は、転がる丸太の上にバランスをとりながら乗って進むというゲーム画面である。
【0048】
図6を参照して、画面100は、キャラクタ101、丸太オブジェクト111を含む。プロセッサ11は、上記のダッシュコマンドが、一定の間隔で入力されると転がる丸太オブジェクト111の上でバランスを取りながら歩く動作を行わせる。この時上記ダッシュコマンドの入力の間隔が乱れたり、振動センサ713のオン信号があったり、傾きセンサ711の傾き情報が「横」ではなく「縦」になると、プロセッサ11は、キャラクタ101がバランスを崩し丸太オブジェクト111から落下する表示を行う。
【0049】
従ってプレイヤは、リズムよくマットユニット3上でステップを踏みつつ、手入力ユニット7を揺らさないように水平に保つことで、キャラクタ101を落下させずに進ませることができる。
【0050】
図7は、本発明の実施の形態による情報処理装置が表示する画面のさらに他の例示図である。図7の画面は、綱を使ってがけをよじ登るゲーム画面である。
【0051】
図7を参照して、ゲーム画面には、キャラクタ101、ロープオブジェクト113及び崖オブジェクト114を含む。プロセッサ11は、プレイヤにその場でジャンプして、ボタンスイッチSW3及びSW4を同時に押すようにとの指示を順に表示する。前述のとおり、プレイヤがフットスイッチSW1及びSW2上でジャンプすると、プロセッサ11はジャンプコマンドが入力されたと判断する。プレイヤが手入力ユニット7を両手で握りこみ、ボタンスイッチSW3及びSW4が両方押されてオンになると、プロセッサ11はつかみコマンドが入力されたと判断する。
【0052】
プロセッサ11は、ジャンプコマンドの入力に応じて、キャラクタ101がジャンプする表示を行い、さらに、ジャンプのアニメーションが表示されている間につかみコマンドが入力されると、キャラクタ101が、ロープオブジェクト113を掴む動作を表示する。その後キャラクタ101はロープオブジェクト113にぶら下がった状態で表示される。タイミングよくジャンプのアニメーション表示中につかみコマンドが入力されなかった場合、プロセッサ11は、キャラクタ101が地面に落ちるように表示させ、再びジャンプコマンドとつかみコマンドが入力されるのを待つ。
【0053】
次にプロセッサ11は、プレイヤにボタンスイッチSW3及びSW4を両方とも離さないように注意しながら、交互にボタンスイッチSW3及びSW4を一度離してから再び押す操作を行えという指示を表示する。ボタンスイッチSW3及びSW4が交互にオンからオフ、オフからオンに遷移すると、プロセッサ11はロープコマンドが入力されたと判断する。プロセッサ11はロープコマンドの入力に応じて、キャラクタ101に、離した手を伸ばし、ロープオブジェクト113を手繰り寄せるという動作を行わせ、キャラクタ101が崖オブジェクト114を登っていくように表示する。
【0054】
ここで、ロープコマンドの入力の他に、振動センサ713がオンに入力されたり、ダッシュコマンドが入力されると、キャラクタ101が体の反動や、足の動きも使う動作が表示され、より速くキャラクタ101が崖オブジェクト114を登るようにしてもよい。
【0055】
プロセッサ11は、ボタンスイッチSW3及びSW4が同時にオフになった状態を検知すると、キャラクタ101がロープオブジェクト113から手を離し、地面に落ちる表示をおこなう。
【0056】
従ってプレイヤはジャンプした時にタイミングよく手入力ユニット7を握ることで、キャラクタ101にロープオブジェクト113を掴ませ、手入力ユニット7を片手ずつ交互に握ったり離したりする、ロープを手繰り寄せる動作を模した動作を行うことで、キャラクタ101にロープオブジェクト113を使って崖オブジェクト114を登らせることができる。
【0057】
図8は、本発明の実施の形態による情報処理装置が表示する画面のさらに他の例示図である。図8の画面は、プレイヤのスイング運動を検出しつつ、検出した結果に基づいた画面中の表示によってプレイヤに運動の指示を与えるスイング運動検出画面である。
【0058】
図8を参照して、画面100は、時間表示部115、運動評価部117、操作方法指示部119、及び運動指示キャラクタ121を含む。プロセッサ11は、時間表示部115で残り運動時間を表示する。また、運動指示キャラクタ121が運動器具を用いたエクササイズを行うアニメーションを表示する。上記アニメーションは、運動器具を水平方向に持ち、上下に動かすアニメーションと、運動器具を垂直方向に持ち、左右に動かすアニメーションの2種類からなり、所定の時間ごとに切り替わる。さらに、操作方法指示部119に、手入力ユニット7をどのように操作すればよいのかを表示する。
【0059】
プロセッサ11は、傾きセンサ711の傾き情報が「横」か「縦」かによってプレイヤの手入力ユニット7の持ち方が、運動指示キャラクタ121の持ち方と同じか否かを判断し、誤った方向に持っている場合は、プレイヤに対し、持ち方を直すように指示する表示を行う。さらに、手入力ユニット7からの信号に応じて、運動評価部117に消費カロリーを表示する。消費カロリーは、予め計測された手入力ユニット7を上下又は左右に一回振ったときの単位消費カロリー情報を外部メモリ13に記憶しておき、その単位消費カロリーと、振動センサ713のオン/オフ信号が切り替わった回数とを乗算して算出される。
【0060】
従って、プレイヤは、運動指示キャラクタ121の動きを参照しつつ、操作方法指示部119に表示される方法で、手入力ユニット7を水平方向又は垂直方向に持ち替えて、上下又は左右に振ることにより、運動による消費カロリーの確認を行いながら、運動を行う。
【0061】
図9は、本発明の実施の形態による情報処理装置が表示する画面のさらに他の例示図である。図9の画面は文字入力画面である。
【0062】
図9を参照して、画面100は、文字種類表示部123、行選択部125、エンドボタン126、カーソル127、文字選択部129、及び選択文字表示部131を含む。プロセッサ11は、振動センサ713のオン信号に応じて、ひらがな、カタカナ、英文字などの文字種類を変更し、選ばれた文字種類を文字種類表示部123に表示し(図中ではひらがな)、行選択部125及び文字選択部129に表示される各文字を、変更された文字種類で表示する。ボタンスイッチSW3及びSW4の入力に応じて、行選択部125内でカーソル127を左右に移動させる。また、プロセッサ11は、フットスイッチSW2の入力に応じてカーソルの当たっている行を選択し、選択された行に属する各文字を文字選択部129に表示し、カーソル127を、文字選択部129に移動させる。さらに、プロセッサ11は、ボタンスイッチSW3及びSW4の入力に応じて、文字選択部129内でカーソル127を左右に移動させる。フットスイッチSW2のオン信号に応じてカーソルの当たっている文字を選択し、選択文字表示部131に、選択された文字を表示し、再びカーソルを行選択部125に戻す。プロセッサ11は、フットスイッチSW1が入力されると、選択文字表示部131の文字を一文字消す。プロセッサ11は、カーソル127がエンドボタン126に当たっているときにフットスイッチSW2が入力されると、文字選択画面を終了する。
【0063】
従ってプレイヤは、まず手入力ユニットを振ることで自分が望む文字種を選択し、ボタンスイッチSW3及びSW4を入力ことで自分の選びたい文字にカーソルを移動させ、フットスイッチSW2を入力によって文字を入力することができる。
【0064】
次にフローチャートを参照しながら、プロセッサ11が実行する処理を説明する。
【0065】
フローチャート中、特定のオン/オフ信号のパターンを、説明の便宜のためダッシュコマンド、ジャンプコマンド、つかみコマンド、ロープコマンド、と表記しているが、詳細については後述の図35を参照するものとする。
【0066】
図10は、プロセッサ11が実行する処理の全体的な流れを示すフローチャートである。図10を参照して、前述の電源スイッチがオンされると、ステップS1にて、プロセッサ11はシステムの初期化を実行する。この処理で、各アプリケーションのための処理で使用される、全てのフラグが初期化され、全てのカウンタがクリアされる。また、各種レジスタも初期化される。
【0067】
ステップS3にて、プロセッサ11は、外部メモリ13に格納されたアプリケーションプログラムに従った処理を実行する。ステップS5にて、プロセッサ11は、ビデオ同期信号による割り込みが発生するまで待機する。つまり、プロセッサ11は、ビデオ同期信号による割り込みが発生していない場合は、同じステップS5に戻り、ビデオ同期信号による割り込みが発生した場合は、ステップS7に進む。例えば、ビデオ同期信号による割り込みは、1/60秒ごとに発生する。この割り込みに同期して、ステップS7及びステップS9にて、プロセッサ11は、画面100に表示する画像を更新すると共に、音声の再生を行う。そして、プロセッサ11は、ステップS3に戻る。
【0068】
IRレシーバ15からの信号に応答して、割り込みが発生し、ステップS11のIRコード取得処理が実行される。
【0069】
図11は、プロセッサ11が実行するアプリケーションの画面遷移図である。図11を参照して、プロセッサ11は、ステップS20でモード選択画面を表示し、ステップS21でプレイヤの入力に応じて、モードの選択処理を行う。この実施例では、アスレチックゲームモードが選ばれた場合には、ステップS22に進み、運動支援モードが選ばれた場合はステップS32に進む。
【0070】
アスレチックゲームモードとは、図4から7で例示したような、プレイヤが入力によって画面中のキャラクタを操作し、アスレチックステージを一つずつクリアしていくゲームである。全ステージ数をn、第1ステージから第nステージの内、任意のステージを第Nステージとして説明する。
【0071】
ステップS22で、プロセッサ11は、ゲームの難易度の設定と、全ステージを実行する本番モードか、任意の第Nステージだけを実行する練習モードか、どちらのモードをプレイするかの設定と、をプレイヤに選択させる設定画面を表示し、プレイヤの入力に従って設定処理を行い、ステップS24に進む。
【0072】
ステップS24では、プロセッサ11は、図9で説明したようなプレイヤの名前を入力させる画面を表示し、プレイヤの入力に従って、プレイヤの名前を外部メモリ13に記憶しておく。
【0073】
ステップS22で本番モードが選択された場合、S26−1に進み、図4から7に例示したようなゲーム画面を表示させていく。ステップS26−Nで表示する第Nステージがクリアされた場合、ステップS26−(N+1)に進み、第N+1ステージを表示していく。そして、ステップS26−nで表示される第nステージがクリアされるとステップS28に進み、クリア画面を表示させたのち、ステップS30に進み、クリアタイムやステップS24で入力された名前でのランキングを表示する結果表示画面を表示する。
【0074】
ステップS22で練習モードが選択された場合、ステップS26−Nに進み、第NステージがクリアされるとステップS30の結果表示画面に進み、第Nステージにおけるクリアタイムなどを表示する。
【0075】
ステップS21で、運動支援モードが選択され、ステップS32に進んだ場合の画面遷移を説明する。運動支援モードとは、図8に例示したような、プレイヤに対して、テレビジョンモニタ5に表示される画面100を通して指示を与え、手入力ユニット7及びマットスイッチ3を操作させ、それによってプレイヤ自身の運動を促すための画面である。全課目数をm、第1課目から第m科目の内、任意の課目を第M課目として説明する。
【0076】
運動支援モードでは、第1課目から第m課目まで通しての運動支援画面を表示するモードと、任意の第M課目の運動支援画面を表示するモードがあるが、クリア画面表示が無い以外はアスレチックゲームモードとほぼ同様の画面遷移が行われるので、説明を省略する。
【0077】
図12は、図11のステップS26−Nで実行される第Nステージの例として、図5で説明した跳び箱ゲームの実行ルーチンを示すフローチャートである。
【0078】
図12及び図5を参照して、プロセッサ11は、ステップS40で、キャラクタ位置をスタート地点に設定するなど、当該ルーチンのための初期化処理を行う。ステップS41にすすみ、このステージ用の背景を表示する。
【0079】
ステップS43に進み、プロセッサ11は、ダッシュコマンドが入力されるまで待機する。ダッシュコマンドが入力されると、ステップS45に進み、キャラクタ101が走っている動作をしながら、移動するように表示を行う。ステップS47にて、プロセッサ11は、キャラクタ101の位置を判定し、キャラクタ101が所定位置である画面中のジャンプ台オブジェクト107の位置に移動していなければ、ステップS43に戻り、さらなるダッシュコマンドの入力を待つ。
【0080】
プロセッサ11は、キャラクタ101がジャンプ台オブジェクト107の位置に進むとステップS51に進み、所定時間内にジャンプコマンドが入力されるかをチェックする。プロセッサ11は、所定時間内にタイミングよくジャンプコマンドが入力されると、ステップS53に進み、キャラクタがジャンプ台オブジェクト107を踏み切り、跳び箱オブジェクト109の上方へむかってジャンプするアニメーションを表示する。
【0081】
ステップS55に進み、プロセッサ11は、所定時間内にスイングコマンドが入力されるかをチェックする。所定時間内にタイミングよくスイングコマンドが入力されると、ステップS57に進み、キャラクタ101が手をうまく使って跳び箱オブジェクト109を飛び越えるアニメーションを表示する。ステップS59に進み、第Nステージクリアと表示された画面を表示させ、第N+1ステージの実行ルーチンへ移る。N=nである場合は、もう次のステージは無いので、ステップS28のクリア画面に進む。
【0082】
ステップS51で、所定時間内にジャンプコマンドが入力されなかった場合、プロセッサ11は、キャラクタ101が跳び箱オブジェクト109にぶつかり、ジャンプに失敗するアニメーションを表示させた後、ステップS65に進む。同様にステップS55で、所定時間内にスイングコマンドが入力されなかった場合、キャラクタ101が跳び箱オブジェクト109の上でしりもちをつき、跳び越えるのに失敗するアニメーションを表示させた後、ステップS65に進む。ステップS65では、もう一度始めからやり直すかをプレイヤに選択させるためのコンテニュー画面を表示する。ステップS67に進み、プレイヤがコンテニューを選択した場合、ステップS40に戻り、第Nステージを始めからやり直させる。プレイヤがコンテニューを選択しなかった場合、ゲームを終了する。
【0083】
図13は、ステップS26−Nで実行される第Nステージの例として、図7で説明したロープを使って崖を登るゲーム画面の実行ルーチンを示すフローチャートである。
【0084】
図13及び図7を参照して、ステップS70でプロセッサ11は、キャラクタの位置をスタート地点に戻すなど、当該ルーチンのための初期化処理を行う。ステップS71に進み、プロセッサ11は、この画面のための背景を表示する。
【0085】
ステップS73に進んでブロセッサ11は、ジャンプコマンドが入力されるのを待ち、入力されるとステップS75に進み、キャラクタ101がロープオブジェクト113に向かってジャンプするアニメーションを表示する。
【0086】
ステップS77に進み、プロセッサ11は、所定時間内、つまりジャンプアニメーションが表示されている間に、つかみコマンドが入力されたかをチェックする。所定時間内に入力が無かった場合ステップS91に進み、キャラクタ101が地面に落ちる表示を行い、再びステップS73に戻り、ジャンプコマンドの入力を待つ。タイミングよくつかみコマンドの入力があった場合、ステップS79に進み、キャラクタ101が、ロープオブジェクト113に掴まりぶら下がるように表示する。
【0087】
ステップS81に進み、プロセッサ11はボタンスイッチSW3及びSW4が同時にオフになったかをチェックする。同時にオフになった場合、ステップS91に進み、キャラクタ101が地面に落ちるアニメーションを表示し、その後ステップS73に戻る。SW3又はSW4のいずれかがオンであった場合、ステップS83に進み、プロセッサ11はロープコマンドが入力されるのを待つ。ロープコマンドが入力されるとステップS85に進み、キャラクタ101がロープオブジェクト113を手繰って、崖オブジェクト116を登るアニメーションを表示する。ステップS87に進み、プロセッサ11はキャラクタ101の位置をチェックする。キャラクタ101が所定の位置、つまり崖オブジェクト116の上まで達していない場合、ステップS81に戻る。キャラクタ101が所定の位置に達した場合、ステップS89に進み、第Nステージクリアの画面を表示させ、第N+1ステージの実行ルーチンに移る。ただし、N=nである場合は、もう次のステージは無いので、ステップS28のクリア画面に進む。
【0088】
図14は、ステップS36−Mで実行される第M課目の例として、図8で説明したスイング運動検出画面の実行ルーチンを示すフローチャートである。
【0089】
図14及び図8を参照して、ステップS100でプロセッサ11は、残り時間を初期値に戻すなど、当該実行ルーチンのための初期化処理を行う。次にステップS101に進み、カウントダウンを開始し、残り時間を残り時間表示部115に表示する。
【0090】
ステップS103に進み、所定の時間が経過したかを判断する。所定の時間が経過した場合のみ、ステップS105に進み、それ以外の場合はステップS107に進む。ステップS105では、傾きフラグを「縦」から「横」又は、「横」から「縦」に変更して、ステップS107に進む。ステップS107で、プロセッサ11は、傾きフラグに応じて運動指示部119及び運動指示キャラクタ121のアニメーション表示を決定し、表示する。
【0091】
ステップS109に進み、プロセッサ11は振動センサ713のオン/オフ信号の切り替わりの数を計数し、ステップS111で、外部メモリ13に格納された単位消費カロリーと、振動センサ713のオン/オフ信号の切り替わりの数とを乗算して、運動評価部117に消費カロリーとして表示する。
【0092】
ステップS113に進み、プロセッサ11は、傾きセンサ713の傾き情報と、傾きフラグとが、「縦」又は「横」で、対応しているか否かを判定する。異なっていた場合のみ、ステップS115に進み、プレイヤに手入力ユニット7の動かし方の修正を促す表示を運動指示部119及び運動指示キャラクタ121を通して表示させ、ステップ117に進む。傾きセンサ713の傾き情報と、傾きフラグとが同じだった場合は直接ステップS117に進む。
【0093】
ステップS117に進み、プロセッサ11は、カウントダウンが終了していなければ、再びステップS103に戻り、終了している場合はステップS119に進む。ステップS119で、プロセッサ11は、第M課目終了画面を表示させ、第M+1課目の実行ルーチンに移る。
【0094】
図15は、ステップS24やステップS34で実行されるデータ入力画面の例として、図9で説明した文字入力画面の、入力受付処理の全体の流れを説明するフローチャートである。
【0095】
図15を参照して、ステップS301で、プロセッサ11は、当該文字入力画面のための初期化処理を行う。具体的には文字種をひらがなにし、カーソル127の位置を、行選択部125のあ行の上にし、選択文字表示部131に何も表示されていない状態にする。ステップS303に進み、プロセッサ11は、行選択処理を行う。
【0096】
図16は、図15のステップS303の行選択処理の流れの一例を示すフローチャートである。
【0097】
図16を参照して、ステップS321でプロセッサ11は、入力があるかをチェックする。無かった場合はステップS321に戻り、入力があるまで待機する。ここで入力とは、各種スイッチ又は振動センサ713がオフからオンに遷移したことをプロセッサ11が検知した状態を言うものとする。振動センサ713が入力された場合、ステップS323に進み、ボタンスイッチSW4が入力された場合、ステップS325に進み、ボタンスイッチSW3が入力された場合、ステップS329に進み、フットスイッチSW2が入力された場合、ステップS331に進む。
【0098】
ステップS323では、プロセッサ11は、文字種を変更し、文字種表示部123、行選択部125、文字選択部129の各文字の表示が、文字種に対応したものに変更される。そして再びステップS321に戻る。
【0099】
ステップS325では、プロセッサ11は、カーソル127を一つ右の行に移動させ、ステップS325に進み、文字表示部129の文字列を、カーソルが重なった行の文字列に変更する。そして再びステップS321に戻る。ステップS329で、プロセッサ11は、カーソル127を一つ左の行に移動させ、同様の処理を行う。
【0100】
ステップS331でプロセッサ11は、、カーソル127が重なっているのが、エンドボタン126かを確認し、そうであった場合、ステップS335に進み、選択文字表示部131に表示された文字を外部メモリ13に記憶させ、文字入力画面を終了させる。それ以外の場合、ステップS333に進み、カーソル127を文字選択部129の文字列の一番左の文字の上に移動させて、図15のフローにリターンし、ステップS305の文字選択処理に進む。
【0101】
図17は、図15のステップS305の文字選択処理の流れの一例を示すフローチャートである。
【0102】
図17を参照してステップS351で、プロセッサ11は、入力があるかをチェックする。無かった場合はステップS351に戻り、入力があるまで待機する。ここでも入力とは、各種スイッチ又は振動センサ713が、オフからオンに遷移したことをプロセッサ11が検知した状態を言うものとする。振動センサ713が入力された場合、ステップS353に進み、ボタンスイッチSW4が入力された場合、ステップS355に進み、ボタンスイッチSW3が入力された場合、ステップS357に進み、フットスイッチSW1が入力された場合、ステップS359に進み、フットスイッチSW2が入力された場合、ステップS363に進む。
【0103】
ステップS353で、プロセッサ11は、濁音、半濁音、清音の切り替え処理を行い、文字選択部129の各文字の表示が変更される。そして再びステップS351に戻る。
【0104】
ステップS355で、プロセッサ11は、カーソル127を一つ右の文字に移動させ、再びステップS351に戻る。ステップS357では、カーソル127を一つ左の文字に移動させ、再びステップS351に戻る。
【0105】
ステップS359で、プロセッサ11は、選択文字表示部131に表示されている文字があるかを確認し、あれば、ステップS361に進み、一番右に表示されている文字を消し、ステップS351に戻る。無ければ直接ステップS351に戻る。
【0106】
ステップS363で、プロセッサ11は、カーソル127が重なっている文字を選択文字表示部131に表示し、ステップS365に進み、カーソル127を行選択部125に戻して、図15のフローにリターンする。
【0107】
次に本発明の第2の実施の形態として、第一の入力手段の変形例について説明する。
【0108】
図18は、本発明の第2の実施の形態における第一の入力手段の例示図である。図18を参照して、手入力ユニット2は、銃を扱うゲームにあわせて銃の形状をしており、トリガスイッチSW5と、IR発光部25とを含む。なお、この手入力ユニット2は、図1の手入力ユニット7の代わりに用いられ、図1の情報処理装置のその他の構成要素は同じものを使用する。
【0109】
図19は、図18の手入力ユニット2の内部構成を説明する図である。図3及び図19を参照して、図3の手入力ユニット7の部分を、図19の手入力ユニット2に置き換えて説明する。トリガスイッチSW5はプレイヤに引かれると、オンになる。MCU27は、トリガスイッチSW5のオン/オフ情報を受け、IR発光部25を駆動して、IR通信により、トリガスイッチSW5のオン/オフ情報をIRレシーバ15へ送信する。IR発光部25が手入力ユニット2の複数の面に設けられているのは、手入力ユニット2がプレイヤにどのようにもたれてもIRレシーバ15にIRが届くようにするためである。
【0110】
図20は、本発明の第2の実施の形態によるゲーム画面の例示図である。図20のゲーム画面は、銃を使った銃撃戦ゲームであり、手入力ユニット2のトリガスイッチSW5を引くことで、画面中で銃を撃つことができるゲームである。
【0111】
図20を参照して、画面100は、プレイヤキャラクタ201、敵オブジェクト203、敵攻撃オブジェクト205、及び体力表示部207を含む。
【0112】
プロセッサ11は、ラインL1からL3上のいずれかのライン上にプレイヤキャラクタ201を表示する。プロセッサ11は、フットスイッチSW1の入力に応じて、プレイヤキャラクタ201を一つ左のラインに移動させる。プロセッサ11は、プレイヤキャラクタ201がすでにラインL1上にいるときは移動を行わせない。同様にプロセッサ11は、フットスイッチSW2の入力に応じて、プレイヤキャラクタ201を一つ右のラインに移動させる。プロセッサ11は、プレイヤキャラクタ201がすでにラインL3上にいるときは移動を行わせない。
【0113】
プロセッサ11は、ラインL1〜L3上にランダムに敵オブジェクト203を表示する。また、プロセッサ11は、敵オブジェクト203の表示されているライン沿いに、一定時間ごとに敵攻撃オブジェクト205が、キャラクタ201側に向かってくる表示を行う。さらに、キャラクタ201が敵攻撃オブジェクト205と同じ位置にいた場合は、キャラクタ201が攻撃を受けた表示を行い、体力表示部207のハートを一つ消滅させる表示を行う。さらに、体力表示部207のハートがなくなると、ゲームを終了する。
【0114】
プロセッサ11は、トリガスイッチSW5のオン信号に応じて、プレイヤキャラクタ201が銃を撃つ表示を行い、その瞬間に敵オブジェクト203の位置が、プレイヤキャラクタ201と同じライン上であれば、その後敵オブジェクト203の位置が変わっても、弾オブジェクトは敵オブジェクト203めがけて直線又は曲線の弾道を描いて飛んでいき、敵オブジェクト203に弾があたり、消滅する表示を行う。
【0115】
従ってプレイヤは、フットスイッチSW1及びSW2を押すことによってキャラクタ201を左右に動かすことができ、敵攻撃オブジェクト205を回避させたり、敵オブジェクト203を正面に捕らえさせたりすることができ、トリガスイッチSW5を引くことで、キャラクタ201に銃を撃たせて、正面の敵オブジェクト203を攻撃させることができる。
【0116】
図21は、本発明の第2の実施の形態によるゲーム画面の他の例示図である。図21の画面100は、音楽ゲーム画面であり、音楽の節に合わせてフットスイッチSW1及びSW2、並びにトリガスイッチSW5をタイミングよく入力することによって、高評価を得ることができる音楽ゲーム画面である。
【0117】
図21を参照して、画面100は、移動オブジェクト211L、211M及び211Rと、タイミング指示部213L、213M及び213Rとが含まれる。以下、移動オブジェクト211L、211M、211Rをまとめて移動オブジェクト211とし、タイミング指示部213L、213M及び213Rをまとめてタイミング指示部213として説明することがある。プロセッサ11は、音楽に合わせて移動オブジェクト211を、それぞれ対応するタイミング指示部213に向かって移動させ、移動オブジェクト211がタイミング指示部213に重なるように表示を行う。プロセッサ11は、移動オブジェクト211Lがタイミング指示部213Lに重なっている間にフットスイッチSW1が入力されるか、移動オブジェクト211Mがタイミング指示部213Mに重なっている間にトリガスイッチSW5が入力されるか、移動オブジェクト211Rがタイミング指示部213Rに重なっている間にフットスイッチSW2が入力された場合に、得点(図示せず)を加算する。
【0118】
従ってプレイヤは、音楽を楽しみながら、各移動オブジェクト211が、各タイミング指示部213に重なっている間に、対応するフットスイッチSW1及びSW2並びにトリガスイッチSW5を入力することによって、ゲーム中で高得点を取得できる。この構成によれば、ステップを踏むだけの従来のマットスイッチのみを用いた音楽ゲームと違い、同時に手に把持した第一の入力装置による入力も取り入れたダンスゲームを実行することができる。
【0119】
図22は、本発明の第2の実施の形態における第一の入力手段の他の例示図である。
【0120】
図22を参照して、手入力ユニット8は、情報処理装置が実行するプログラムがテニスゲームである場合に使われることを想定したもので、テニスゲームにあわせてテニスラケットの形状をしており、ボタンスイッチSW6と、IR発光部85とを含む。IR発行部85は、テニスラケットのグリップ部のヘッド部近傍に配置されている。図には表れていないが、手入力ユニットがどのような向きに把持されていても、IRレシーバ15に赤外光が届くように、IR発光部85の他にも、IR発光部85が、グリップ部のヘッド部近傍の裏側や、ヘッド部のフレームトップ等にも配置される。
【0121】
図23は、手入力ユニット8の内部構成を示す図である。以下、図3の手入力ユニット7の部分を図23の手入力ユニット8に置き換えて説明する。
【0122】
図3及び図23を参照して、手入力ユニット8は、ボタンスイッチSW6、加速度センサ811、MCU81及びIR発光部85を含む。ボタンスイッチSW6は押されると、オンになる。加速度センサ811は、例えばピエゾ素子を用いたセンサであり、手入力ユニット8が振られたときの加速度を感知し、加速度情報を出力する。MCU83は、ボタンスイッチSW6及び加速度センサ811の加速度情報を受け、IR発光部85を駆動して、IR通信により、ボタンスイッチSW6及び加速度センサ811の加速度情報をIRレシーバ15(図3参照)へ送信する。
【0123】
この例において手入力ユニット8及びマットユニット3を併用した入力装置をもちいることで、例えばプロセッサ11に、手入力ユニット8が振られたか否かを加速度センサ811によって検出し、加速度を検出したときに、画面中のキャラクタが同時にラケットを振るように表示を行い、その時の加速度の大きさに応じて、ラケットを振るスピード及び打ち返す打球のスピードを変化するようなアプリケーションを実行させることができる。さらに、フットスイッチSW1及びSW2の入力に応じて、画面中のキャラクタを左右に移動させる、などの処理をプロセッサ11に行わせるような構成にすれば、CPUが動きを制御する敵キャラクタが打ち返す球の画面中の位置を見て、プレイヤが、キャラクタを適切な位置に移動させ、適切なタイミングで手入力ユニット8を振ることで、キャラクタにラケットをふらせるというような従来にないテニスゲームを提供することができる。
【0124】
図24は図20で説明した銃撃戦ゲームを実行する際の、図10で説明したプロセッサ11の処理の全体の流れの内、ステップS3に相当する部分の処理の流れの一例を説明するフローチャートである。
【0125】
図24及び図20を参照して、プロセッサ11は、ステップS402で、敵オブジェクト203及び敵攻撃オブジェクト205の動きを制御する。すなわち敵オブジェクト203が画面100上に表示されていない場合は、敵オブジェクト203を出現させるように設定する。敵オブジェクト203が画面100上にいる場合は、所定時間ごとにラインL1、L2、L3の順に敵オブジェクト203の位置データを変更する処理と、攻撃動作を行わせるための処理を行う。敵オブジェクト203に攻撃動作を行わせた場合に、敵攻撃オブジェクト205を画面100上に発生させ、ラインL1、L2、又はL3に沿って、プレイヤキャラクタ201に向かって敵攻撃オブジェクト205の位置データを変更していく処理を行う。ここで位置データとは、プロセッサ11が、図10のフローのステップS7の画面更新処理の際に、各種オブジェクトを表示する位置を決定するために参照するデータをいうものとする。
【0126】
ステップS404に進み、プロセッサ11は、プレイヤからの入力に応じてプレイヤキャラクタ201の動きを制御する。
【0127】
図25は、図24のステップS404のプレイヤキャラクタ制御処理の流れの一例を示すフローチャートである。
【0128】
図25を参照して、ステップS412でプロセッサ11は、プレイヤからの入力を待つ。入力が無い場合は、ステップS412から進まない。フットスイッチSW1が入力されるとステップS414に進む。ステップS414で、プロセッサ11は、プレイヤキャラクタ201の位置データをチェックする。プレイヤキャラクタ201の位置データがラインL1上だった場合、何もせずに図24のフローにリターンする。ラインL1上以外だった場合、ステップS416に進み、プレイヤキャラクタ201の位置データが、ラインL2上だった場合はラインL1上へ、ラインL3上だった場合はラインL2上へ、というように、プレイヤキャラクタ201の位置データを一つ左のラインに変更してからリターンする。
【0129】
ステップS412で、トリガスイッチSW5が入力された場合、プロセッサ11は、ステップS418に進み、攻撃フラグをオンにする。次に、ステップS420に進み、プレイヤキャラクタ201が銃を撃つ動作と、弾オブジェクトが出現し、敵オブジェクト203側に飛んでいき、画面100上の所定の点で消滅するアニメーションとを表示するための設定を行い、図24のフローにリターンする。
【0130】
ステップS412で、フットスイッチSW2が入力された場合、プロセッサ11は、ステップS422に進み、プレイヤキャラクタ201の位置データをチェックする。プレイヤキャラクタ201の位置データがラインL3上だった場合、何もせずに図24のフローにリターンする。ラインL3上以外だった場合、ステップS424に進み、プレイヤキャラクタ201の位置データが、ラインL1上だった場合は、ラインL2上へ、ラインL2上だった場合はラインL3上へ、というように、プレイヤキャラクタ201の位置データを一つ右のラインに変更してから図24のフローにリターンする。
【0131】
図24に戻って、ステップS408に進み、攻撃判定処理、つまり、プレイヤキャラクタ201の発射した弾が、敵オブジェクト203に当たったかの判定処理を行う。
【0132】
図26は、図24のステップS408の攻撃判定の処理の流れの一例を示すフローチャートである。
【0133】
ステップS431に進み、プロセッサ11は、攻撃フラグがオンになっているかをチェックし、オンの場合はステップS433へ、オフの場合はステップS438へ進む。
【0134】
ステップS433に進み、プロセッサ11は、プレイヤキャラクタ201の位置データと、敵オブジェクト203の位置データをそれぞれ参照し、同一のライン上にあるかを確認する。同一のライン上だった場合、ステップS435に進み、それ以外の場合、ステップS438に進む。
【0135】
ステップS435に進んだ場合、プロセッサ11は、ヒットフラグをオンにし、攻撃フラグをオフにする。ヒットフラグがオンになった場合、弾オブジェクトが、敵オブジェクト203に向かって飛んでいき、敵オブジェクト203の表示位置で消滅するように、弾オブジェクトの動きを設定する。そして、ステップS436に進み、ヒット数をインクリメントしてからステップS438に進む。
【0136】
ステップS438で、プロセッサ11は、ヒットフラグがオンになっているかをチェックし、オンの場合はステップS440へ進み、オフの場合は図24のフローにリターンする。
【0137】
ステップS440では弾オブジェクトが敵オブジェクト203の位置に到達したかをチェックする。到達していた場合、ステップS444に進み、敵オブジェクト203の表示位置に火花が表示されるように設定し、敵オブジェクト203が消滅するように設定し、ヒットフラグをオフにし、ステップS446に進む。それ以外の場合、図24のフローにリターンする。
【0138】
ステップS446で、プロセッサ11は、ヒット数が所定の数Xに達したかをチェックする。達していなかった場合は直接リターンし、達していた場合は、ステップS448に進み、画面100に、クリア画面を表示するための設定を行い、図24のフローにリターンする。
【0139】
図24に戻り、ステップS410に進んで、プロセッサ11はダメージ判定処理、つまり、プレイヤキャラクタ201に敵攻撃オブジェクト205が当たったかを判定する。
【0140】
図27は、図24のステップS410のダメージ判定処理の流れの一例を示すフローチャートである。
【0141】
図27を参照して、ステップS451で、プロセッサ11は、画面100上に敵攻撃オブジェクト205が存在するかをチェックし、存在する場合はステップS453、存在しない場合は、ステップS465に進む。
【0142】
ステップS453で、プレイヤキャラクタ201の位置データと、敵攻撃オブジェクト205の位置データを参照し、同じ位置にあった場合はステップS453、それ以外はステップS465に進む。
【0143】
ステップS455で、プロセッサ11は、敵攻撃オブジェクト205が消滅し、プレイヤキャラクタ201が、ダメージを受けた動作をするように設定し、ステップS459に進む。ステップS459で、残り体力のデータをデクリメントし、体力表示部207のハートを一つ消滅させるように設定する。
【0144】
ステップS461に進み、残り体力が0になった場合はステップS463へ進み、ゲームオーバー画面を表示するために設定を行い、ステップS465に進む。残り体力が0以外の場合は、直接S465に進む。
【0145】
ステップS465で、プロセッサ11は、画面100上の全ての敵攻撃オブジェクト205について、判定処理を完了したかをチェックし、まだであればステップS453に戻り、判定処理を続け、完了した場合は図24のフローにリターンする。
【0146】
図24に戻り、ステップS410の処理が終わると、プロセッサ11は、図10のフローにリターンする。ステップS448でクリア画面が設定されていた場合又は、ステップS463が設定されていた場合は、それぞれの画面が表示された後、この銃撃戦ゲームを終了する。
【0147】
図28は図21で説明した音楽ゲームを実行する際に、図10で説明したプロセッサ11の処理の全体の流れの内、ステップS3に相当する部分の処理の流れの一例を説明するフローチャートである。
【0148】
図28及び図21を参照して、ステップS202で、プロセッサ11は、背景の制御を行い、背景の表示が音楽に合わせて変化していくように表示するための設定を行う。ステップS204に進み、音楽の制御を行い、音楽ゲーム実行中に音楽が流れていくように、外部メモリ13に格納された楽譜データに従って、何の音を鳴らすかの設定を行う。ステップS206に進み、移動オブジェクト211の制御を行う。
【0149】
図29は、図28の移動オブジェクト制御処理の流れの一例を示すフローチャートである。図29を参照して、ステップS220でプロセッサ11は、外部メモリ13に格納された移動オブジェクト出現パターンデータに従って、移動オブジェクト211L、211M.211Rをそれぞれ所定から出現させるための設定を行う。上記出現パターンデータは、上記楽譜データに合わせて作られており、音楽の節に合わせて移動オブジェクト211がタイミング指示部213に重なるようになっている。
【0150】
ステップS222に進み、プロセッサ11は、画面中に表示された各移動オブジェクト211L、211M、211Rが、対応する各タイミング指示部213L,213M、213Rにむかって一定の速度で移動していき、タイミング指示部213を通り過ぎると消滅するように設定する。そして、ステップS224で、タイミング指示部213に達した移動オブジェクト211に対応して、プレイヤの入力が行われたかを判定する判定処理を実行し、図28のフローにリターンする。
【0151】
図30は、図29のステップS224の判定処理の流れの一例を示すフローチャートである。
【0152】
図30を参照して、ステップS240で、プロセッサ11は、少なくとも1つの移動オブジェクト211がヒットレンジ内にあるかを判定する。無い場合は図29のフローにリターンする。ヒットレンジは、ゲームを難しくしたければ、移動オブジェクト211とタイミング指示部213とが完全に重なった一瞬でもよいし、簡単にしたければ、移動オブジェクト211がタイミング指示部213に少しでも重なった状態となっている間ずっとでもよい。
【0153】
ステップS240でヒットレンジ内にある移動オブジェクトがあると判断された場合、ステップS242に進み、ヒットレンジ内にある移動オブジェクトが移動オブジェクト211LならフットスイッチSW1、211MならトリガスイッチSW5,211RならフットスイッチSW2が、入力(入力信号がオフからオンに遷移したことを持って入力とみなす)されたか否かを判定し、入力が無かったと判定された場合、図29のフローにリターンする。入力があったと判定された場合、ステップS244に進む。
【0154】
ステップS244で、プロセッサ11は、ヒット効果アニメーションを表示するための設定と、ヒット音を発生させるための設定とを行い、ステップS246に進む。ステップS246で、プロセッサ11は、点数を加算する処理を行い、ステップS250に進む。ステップS250で、プロセッサ11は、移動オブジェクトを消滅させる処理を行い、図29のフローにリターンする。
【0155】
図28に戻り、ステップS206の移動オブジェクト制御処理を終えると、プロセッサ11は、ステップS208に進み、音楽が終了したか否かをチェックし、音楽が終了した場合、ダンスゲームを終了する。まだ音楽が終了していなかった場合は、図10のフローにリターンする。
【0156】
以上のように、実行するプログラムに応じて第一の入力装置の外観や内蔵するスイッチ又はセンサを変更してもよい。
【0157】
手入力ユニット2のように、トリガスイッチSW5のみを備えた第一の入力装置や、手入力ユニット8のように、加速度センサ811のみを備えた第一の入力手段のように、単一の入力信号発生手段を備えた第一の入力装置であっても、マットユニット3と併用することによって、本発明の第1の実施の形態で述べたような効果を得ることができる。プレイヤにとっては、入力のオン/オフの切り替えが分かりやすく、操作が簡単になるという利点もある。
【0158】
また、ダンスゲームプログラムを実行する場合、ステップを踏むだけの従来のマットスイッチのみを用いた音楽ゲームと違い、同時に手に把持した第一の入力装置による入力も取り入れた音楽ゲームを実行することができる。
【0159】
また、銃撃戦ゲームを実行する場合、画面の細かい点に向けて入力を行うのではなく、プレイヤキャラクタ201を左右に移動させ、タイミングを合わせてトリガスイッチSW5を引けば、弾オブジェクトが敵キャラクタ203にあたるので、操作に不慣れなプレイヤ(幼児など)でも扱いやすく、手足を動かしながらでも弾オブジェクトを命中させやすい銃撃戦ゲームを提供できる。なおかつ、情報処理装置の処理によって、画面中にそれらしい弾道が描かれるので、敵オブジェクト203に狙いを定め、弾オブジェクトがきちんと当たる快感を得ることもできる。また、手入力ユニット2によって銃を打ちつつ、マットユニット3からの入力によって、画面中のプレイヤキャラクタ201の立ち位置を変更できるので、敵キャラクタ203や敵攻撃オブジェクト205を回避することも直感的に分かりやすい。
【0160】
本発明の第3の実施の形態では、第一の入力手段の全部又は一部を撮像し、第一の入力手段の動きを検出し、検出結果を入力信号として用いる。
【0161】
図31は、本発明の第3の実施の形態による情報処理装置の全体構成を示す図である。
【0162】
図31を参照して、図1の情報処理部1に相当する情報処理部4は、撮像ユニット404を搭載した着脱式のカートリッジ402が装着され、AVケーブル9を通してテレビジョンモニタ5と接続されるアダプタ401とを含む。アダプタ401は、IRレシーバ(図示せず)を備える。マットユニット600は、図1のマットユニット3に相当し、フットスイッチSW7〜SW10を含む。また、マットユニット600は、マットユニット3と異なり、情報処理部4から独立しており、赤外光によって、入力信号を情報処理部4に送信するので、IR送信ユニット601を含む。IR送信ユニット601は、電源スイッチ603及びIR発光部605を含む。第一の入力装置6は、先端に再帰反射シートを貼り付けた再帰反射体61を含む。
【0163】
情報処理部4は、マットユニット600のIR送信ユニット603からの赤外光がIRレシーバに届き、再帰反射体61を撮像ユニット404によって撮像できる範囲内に置かれる。
【0164】
図32は、図31の撮像ユニット404の拡大図である。
【0165】
図32を参照して、カートリッジ402には、撮像ユニット404が取り付けられている。撮像ユニット404は、4つのIR発光ダイオード406と、赤外光だけを通すIRフィルタ408とを備え、IRフィルタ408の裏側にイメージセンサ409(後述)を備える。
【0166】
図33は、情報処理部4、手入力ユニット6、及びマットユニット600の電気的構成を説明する図である。
【0167】
図33を参照して、マットユニット600は、MCU607、IR発光部605、フットスイッチSW7からSW10を含む。MCU607は、フットスイッチSW7からSW10のオン/オフ信号を受け、IR発光部605を駆動して、IR通信により、ボタンスイッチSW7〜SW10のオン/オフ情報を、情報処理部4のIRレシーバへ送信する。
【0168】
情報処理部4のカートリッジ402は、プロセッサ11、外部メモリ13に相当するプロセッサ41、外部メモリ43をさらに含む。プロセッサ41は、ストロボ撮影を行うべく、4つのIR発光ダイオード406を間欠的に駆動し、間欠的に赤外光を発光させる。IR発光ダイオード406からのIRは、再帰反射体81により反射され、赤外線フィルタ408を介してイメージセンサ409に入力される。したがって、イメージセンサ409からは再帰反射体61含む画像信号(赤外光点灯時)がプロセッサ41へ出力される。IR発光ダイオード406は間欠的に駆動されるので、イメージセンサ409からは赤外光消灯時の画像信号も出力される。
【0169】
イメージセンサ409からのこれらのアナログ画像信号は、プロセッサ41に内蔵されたA/Dコンバータによってデジタル画像信号に変換される。プロセッサ41は、赤外光点灯時のデジタル画像信号と消灯時のデジタル画像信号との差分を求めて、この差分信号DI(差分画像DI)を基に、再帰反射体61の動きを解析する。このように、差分を求めることで、再帰反射体61からの反射光以外の光によるノイズを極力除去でき、精度良く再帰反射体61を検出できる。
【0170】
プロセッサ41は、再帰反射体61の運動の解析結果及びフットスイッチSW7からSW10のオン/オフ信号に基づいて、その他の演算、グラフィック処理、及びサウンド処理等を実行し、ビデオ信号およびオーディオ信号を出力する。プロセッサ41が生成したビデオ信号およびオーディオ信号は、アダプタ405及びAVケーブル9を介して、テレビジョンモニタ5に与えられ、テレビジョンモニタ5に上記第1及び第2の実施の形態で説明したような映像が表示され、そのスピーカ(図示せず)から音声が出力される。
【0171】
以上、本発明の実施の形態によれば、プレイヤは、キャラクタ101の下半身を動かしたい場合は自分の足を動かしマットユニット3又は600で入力を行い、キャラクタ101の上半身を動かしたい場合は自分の手を動かし手入力ユニット2、6、7又は8で入力を行えるので、直感的な操作が可能となる。
【0172】
プレイヤは足を動かすことによって、画面上のキャラクタ(キャラクタ101又はプレイヤキャラクタ201)を移動させることができ、手を動かすことによって画面上のキャラクタに跳び箱を飛び越える、ロープを掴む、銃を撃つ、ラケットを振るなどの行動をさせることができる。人間は普通移動を行う場合には足を使い、道具を使う、物を掴む、物を振る、又は物を投げるなどの行動を手を用いて行うため、プレイヤは、直感的に操作を行うことができる。また、プレイヤに対して臨場感を与えることができる。
【0173】
なお、本発明は、上記の実施の形態に限られるものではなく、その要旨を逸脱しない範囲で種種の態様において実施することが可能であり、例えば、以下のような変形も可能である。
【0174】
上記実施の形態では、プレイヤの手の動きを検出するために、手入力ユニット2、6、7、8、又は撮像ユニット404などを用いたが、プレイヤの手の動きを検出する入力手段はこれらに限られない。例えば、ジャイロスコープなどの傾きセンサ、重力センサなどを用いてプレイヤの手の動きするような入力手段を用いてもよい。傾きセンサにジャイロスコープなどを利用した場合は、より詳細な傾き情報を得ることができ、情報処理装置が実行するアプリケーションの幅が広がる。
【0175】
また例えば、本発明の第3の実施の形態の変形例として、手入力ユニット6を小型にして手で握ると隠れる程度のものにしてもよい。
【0176】
図34は、手入力ユニット6の変形例である再帰反射体62の例示図である。
【0177】
図34を参照して、再帰反射体62は、手を握ると指に隠れるため、撮像ユニット404に写らなくなる。この特性を利用すると、プレイヤが手を握ったり開いたりすることによって撮像ユニット404に再帰反射体62の像が写ったり写らなかったりするので、これをオン/オフの入力スイッチとして使用することができる。このようにすると、プレイヤは、手を握ったり開いたりという簡単な動作で、入力を行うことができる。
【0178】
さらに他の変形例として、例えば、手入力ユニット6のかわりに、手に把持して使用する運動用具に再帰反射シートを貼り付け、撮像手段によって当該運動用具の動きを検出することで、プレイヤの手の動きを検出し、入力として利用できるようにしてもよい。
【0179】
上記の実施の形態において、プレイヤの踏み込み動作を検知する第二の入力手段は、マットユニット3、600に含まれるフットスイッチSW1、SW2、又はSW7〜SW10であったが、フットスイッチの数はこれらに限定されない。
【0180】
また、プレイヤの足の動きを検出する第二の入力手段は、フットスイッチを含むマットユニットに限定されず、プレイヤが履く靴などに感圧センサを仕込み、プレイヤの踏み動作を検出する方式であってもよい。また、ステッパーなどの他の踏み込み動作による運動器具に、踏み込み動作を行うたびにスイッチが、オン/オフ信号を発生する回路を設けたり、感圧センサを設けたり、撮像によって当該運動装置の動き解析することによって、オン/オフ信号を出力するように仕込み、プレイヤの踏み込み動作を検出するようにしてもよい。もちろん、プレイヤの足に装着する装着物に、加速度センサ、傾きセンサ、振動センサ又は重力センサなどの各種センサを内蔵してプレイヤの足の動きを検出してもよいし、プレイヤの足に被写体を装着させ、当該被写体の動きを撮像によって検出し、入力を得るものでもよい。
【0181】
第一の入力手段及び第二の入力手段は、汎用的に様々な情報処理装置の入力装置として使われるものであってもよく、特定の情報処理装置に専用のものでなくてもよい。
【0182】
上記の実施例や、図35で説明したような入力パターンの他にも様々な入力パターンがあってよい。第一の入力装置からの入力と、足入力装置からの入力を同時に必要とするような入力パターンがあってもよい。
【0183】
第一の入力手段は二つ以上あってもよく、左右の手で異なる第一の入力手段を持ったり、状況に合わせて異なる種類の第一の入力装置を持ち替えたりする構成にしてもよい。
【0184】
上記の実施の形態において、第一の入力手段及びプレイヤの第二の入力手段からのそれぞれ入力に応じてプレイヤの入力動作による消費エネルギーを算出するようにしてもよい。
【0185】
このように構成すれば、プレイヤは入力動作がどの程度運動になっているのかを把握することができる。なおこの場合、あらかじめ経験によって求められた、それぞれの入力動作を行った際の平均的な単位消費エネルギー量を外部メモリ13に格納しておき、プレイヤの入力動作の数と乗算して消費エネルギーを算出しておけばよい。
【図面の簡単な説明】
【0186】
【図1】本発明の実施の形態による情報処理装置の全体構成を示す図。
【図2】プレイヤが把持した状態で図1の手入力ユニット7を情報処理部1側、つまり地面側から見た図。
【図3】図1の情報処理部1、マットユニット3、及び手入力ユニット7の電気的構成を示すブロック図。
【図4】本発明の実施の形態による情報処理装置が表示する画面の例示図。
【図5】本発明の実施の形態による情報処理装置が表示する他の画面の例示図。
【図6】本発明の実施の形態による情報処理装置が表示するさらに他の画面の例示図。
【図7】本発明の実施の形態による情報処理装置が表示するさらに他の画面の例示図。
【図8】本発明の実施の形態による情報処理装置が表示するさらに他の画面の例示図。
【図9】本発明の実施の形態による情報処理装置が表示するさらに他の画面の例示図。
【図10】プロセッサ11が実行する処理の全体的な流れを示すフローチャート。
【図11】プロセッサ11が実行するアプリケーションの画面遷移図。
【図12】図11のステップS26−Nで実行される第Nステージの例として、図5で説明した跳び箱ゲームの実行ルーチンを示すフローチャート。
【図13】図11のステップS26−Nで実行される第Nステージの例として、図7で説明したロープを使って崖を登るゲーム画面の実行ルーチンを示すフローチャート。
【図14】図11のステップS36−Mで実行される第M課目の例として、図8で説明したスイング運動検出画面の実行ルーチンを示すフローチャート。
【図15】ステップS24やS34で実行されるデータ入力画面の例として、図9で説明した文字入力画面の、入力受付処理の全体の流れを説明するフローチャート。
【図16】図15のステップS303の行選択処理の流れの一例を示すフローチャート。
【図17】図15のステップS305の文字選択処理の流れの一例を示すフローチャート。
【図18】本発明の第2の実施の形態における第一の入力手段の例示図。
【図19】手入力ユニット2の内部構成を説明する図。
【図20】本発明の第2の実施の形態によるゲーム画面の例示図。
【図21】本発明の第2の実施の形態によるゲーム画面の他の例示図。
【図22】本発明の第2の実施の形態における第一の入力手段の他の例示図。
【図23】図22の手入力ユニット8の内部構成を示す図。
【図24】図20で説明した銃撃戦ゲームを実行する際の、図10で説明したプロセッサ11の処理の全体の流れの内、ステップS3に相当する部分の処理の流れの一例を説明するフローチャート。
【図25】図24のステップS404のプレイヤキャラクタ制御処理の流れの一例を示すフローチャート。
【図26】図24のステップS408の攻撃判定の処理の流れの一例を示すフローチャート。
【図27】図24のステップS410のダメージ判定処理の流れの一例を示すフローチャート。
【図28】図21で説明した音楽ゲームを実行する際に、図10で説明したプロセッサ11の処理の全体の流れの内、ステップS3に相当する部分の処理の流れの一例を説明するフローチャート。
【図29】図28の移動オブジェクト制御処理の流れの一例を示すフローチャート。
【図30】図29のステップS224の判定処理の流れの一例を示すフローチャート。
【図31】本発明の第3の実施の形態による入力装置を利用した情報処理装置の使用例を示す図。
【図32】図31の撮像ユニット404の拡大図。
【図33】情報処理部4、手入力ユニット6、及びマットユニット600の電気的構成を説明する図。
【図34】手入力ユニット6の変形例である、再帰反射体62を説明する図。
【図35】本発明の第1の実施例における、プレイヤの入力コマンドを説明する図。
【符号の説明】
【0187】
1、4…情報処理装置、3、600…マットユニット、5…テレビジョンモニタ、2、6、7、8…手入力ユニット、711…傾きセンサ、713…振動センサ、811…加速度センサ、404…撮像ユニット
【技術分野】
【0001】
本発明は、プレイヤが手と足とを併用して入力を行う情報処理装置に関する。
【背景技術】
【0002】
特許文献1には、プレイヤの手の動きと足の動きを検出して入力とし、表示装置の映像を変化させる情報処理装置が開示されている。特許文献1の発明では、画面中のキャラクタを動かすための、プレイヤの入力動作が、エアロビクス運動になるように設定されており、プレイヤはビデオゲームをこなすことで、同時にエアロビクス運動を行える。
【特許文献1】特表平10−509058
【発明の開示】
【発明が解決しようとする課題】
【0003】
しかしながら、特許文献1の発明には、プレイヤが、直感的な操作を行えるようにするという観点や、プレイヤに対して臨場感を与えるという観点が特に開示されていない。
【0004】
そこで、本発明の目的は、プレイヤが直感的に操作を行うことができる情報処理装置を提供することである。
【0005】
また、本発明の他の目的は、映像表示によってプレイヤに臨場感を与えることができる情報処理装置を提供することである。
【課題を解決するための手段】
【0006】
本発明の観点によれば、情報処理装置は、プレイヤの3次元空間内での手の動きを検出し、当該検出の結果に応じた入力を行う第一の入力手段と、前記プレイヤの3次元空間内での足の動きを検出し、当該検出の結果に応じた入力を行う第二の入力手段と、前記第二の入力手段からの入力に応じて、画面中のキャラクタの位置情報を制御する位置制御手段と、前記第一の入力手段からの入力に応じて、前記キャラクタが所定の行動を行うように制御する行動制御手段と、を含む。
【0007】
この構成によれば、プレイヤは足を動かすことによって画面中のキャラクタを動かすことができ、手を動かすことによって前記キャラクタに所定の行動を行わせることができる。人間は普通移動を行う場合には足を使い、道具を使う、物を掴む、物を振る、又は物を投げるなどの行動を手を用いて行うため、プレイヤは、直感的に操作を行うことができる。また、プレイヤに対して臨場感を与えることができる。
【0008】
本発明の第2の観点によれば、情報処理装置は、プレイヤの3次元空間内での手の動きを検出し、当該検出の結果に応じた入力を行う第一の入力手段と、前記プレイヤの3次元空間内での足の動きを検出し、当該検出の結果に応じた入力を行う第二の入力手段と、前記第一の入力手段からの入力に応じて、画面中のキャラクタの上半身の運動を制御し、前記第二の入力手段からの入力に応じて画面中のキャラクタの下半身の運動を制御するキャラクタ制御手段と、を含む。
【0009】
この構成によれば、プレイヤは、キャラクタの下半身を動かしたい場合は自分の足を動かし第二の入力手段で入力を行い、キャラクタの上半身を動かしたい場合は自分の手を動かし第一の入力手段で入力を行えるので、直感的な操作が可能となる。
【0010】
上記本発明の第1及び第2の観点において、前記第一の入力手段は、プレイヤの手を撮像する撮像手段を含んでもよい。
【0011】
また、前記第二の入力手段は、プレイヤの足を撮像する撮像手段を含んでもよい。
【0012】
さらに、前記第一の入力手段は、前記プレイヤの手の動きを検出するための、加速度センサ、傾きセンサ、振動センサ及び重力センサのうち、一つまたは任意の組み合わせを含んでもよい。
【0013】
さらに、前記第二の入力手段は、前記プレイヤの足の動きを検出するための、加速度センサ、傾きセンサ、振動センサ及び重力センサのうち、一つまたは任意の組み合わせを含んでもよい。
【0014】
加速度センサとしては、ピエゾ式の加速度センサなどが利用できる。また、傾きセンサにはジャイロスコープなどを利用することができる。
【0015】
さらに、前記第二の入力手段は、前記プレイヤの踏み込み動作を検出する踏み込み検出手段を含んでもよい。
【0016】
さらに、前記第一の入力手段及び前記第二の入力手段からのそれぞれの入力に基づいて、前記プレイヤの動きによって消費されるエネルギーを算出する消費エネルギー算出手段をさらに含んでもよい。
【0017】
この構成によれば、プレイヤは入力動作がどの程度運動になっているのかを把握することができる。
【0018】
さらにこの場合、前記第一の入力手段は、プレイヤが両手で把持するための把持部を含んでもよい。
【0019】
前記把持部は、押下するとオンになるスイッチを含む。
【0020】
この構成によれば、プレイヤは把持部を握りこむことでスイッチを押下し、入力を行うことができる。
【0021】
また、前記第一の入力手段は、プレイヤの手の動きに応じた操作信号を送信する複数の送信手段を含み、前記送信手段は、互いに異なる方向を向いていることを特徴としてもよい。
【0022】
この構成によれば、第一の入力手段がプレイヤによって傾けて把持されても、何れかの送信手段から操作信号が送信され、入力が行われる。
【0023】
この場合、前記送信手段は、赤外線発光ダイオードであってもよい。
【発明を実施するための最良の形態】
【0024】
以下、本発明の実施の形態について、図面を参照しながら説明する。なお、図中、同一または相当部分については同一の参照符号を付してその説明を援用する。
【0025】
図1は、本発明の実施の形態による情報処理装置の全体構成を示す図である。この情報処理装置は、情報処理部1、マットユニット3、テレビジョンモニタ5、手入力ユニット7及びAVケーブル9を備える。情報処理部1はAVケーブル9を通してテレビジョンモニタ5に接続される。したがってAVケーブル9を通して情報処理部1が作成したビデオ信号及びオーディオ信号をテレビジョンモニタ5に与えることができる。これにより、テレビジョンモニタ5に、後述のゲーム画面や運動計測画面等を表示し、スピーカ(図示せず)から音楽や効果音を出力することができる。
【0026】
情報処理部1は、マットユニット3の一方端部に取り付けられる。情報処理部1の表面には、電源スイッチ(図示せず)が設けられる。一方、マットユニット3は、2つのフットスイッチSW1及びSW2を含み、フットスイッチSW1及びSW2は、踏まれるとオンになる。プレイヤは普段フットスイッチSW1、SW2にそれぞれ左足と右足をおいて操作するので、基本的にフットスイッチSW1及びSW2はオンの状態になり、プレイヤがマットの上で足踏みをする、ジャンプをするなど足を上げる動作をした時に、フットスイッチSW1及び/又はSW2から足が離れてオフになり、着地したときに再びオンになる。
【0027】
手入力ユニット7はプレイヤに握るように把持される。図1に示されているように水平方向にもたれることもあれば、図示しないが、垂直方向にもたれることもある。
【0028】
図2は、プレイヤが把持した状態で図1の手入力ユニット7を情報処理部1側、つまり地面側から見たものである。
【0029】
図2を参照して、グリップ部71L、71Rは、プレイヤによって把持される部分である。ボタンスイッチSW3及びSW4は、グリップ部71L、71Rがプレイヤによって握られた場合に、プレイヤの人差し指と中指の中腹が当たる位置に設置されている。ボタンスイッチSW3、SW4はプレイヤがグリップ部71L及び71Rを把持するだけでは押し込まれず、プレイヤが指に力を込めて握りこむと、押し込まれてオンになる。
【0030】
手入力ユニット7の両端部には、側面部に赤外光(IR)発光部73L、73Rが、底面部にIR発光部75Rと75Lが、それぞれ露出している。以下IR発光部73L及び73Rを合わせて指す場合はIR発光部73と、IR発光部75L及び75Rを合わせて指す場合はIR発光部75として説明する場合がある。IR発光部75Rと75Lとが左右非対称でそれぞれ斜め向きに配置されているのは、手入力ユニット7が傾けて持たれても、いずれかのIR発光部からの赤外光が、IRレシーバ15(後述する)に届くようにするためである。IR発光部73が側面に、IR発光部75が底面に配置されているのは、手入力ユニットが垂直方向に把持された場合でも、水平方向に把持された場合でも、いずれかのIR発光部からの赤外光が、IRレシーバ15に届くようにするためである。IR発光部には例えば、赤色発光ダイオードを使用する。
【0031】
図3は、情報処理部1、マットユニット3、及び手入力ユニット7の電気的構成を示すブロック図である。図3を参照してマットユニット3は、フットスイッチSW1及びSW2を含む。フットスイッチSW1及びSW2のオン/オフ信号は、情報処理部1のプロセッサ11に直接与えられる。
【0032】
手入力ユニット7は、IR発光部73及び75、MCU(Micro Controler Unit)701、ボタンスイッチSW3、SW4、傾きセンサ711、及び振動センサ713を含む。MCU701、傾きセンサ711、及び振動センサ713はそれぞれ手入力ユニットに内蔵されている。傾きセンサ711は、手入力ユニット7が水平方向に把持されているのか、垂直方向に把持されているのかを感知し、「横」又は「縦」を表す傾き情報として出力する。振動センサ713は、プレイヤに手入力ユニット7が揺らされると、振動を感知してオンになる。MCU701は、ボタンスイッチSW3、SW4、及び振動センサ713のオン/オフ情報並びに傾きセンサ711からの傾き情報を受け、IR発光部73及び75を駆動して、IR通信により、ボタンスイッチSW3、SW4及び振動センサ713のオン/オフ情報並びに傾きセンサ711からの傾き情報をIRレシーバ15へ送信する。
【0033】
一方、マットユニット3の一方端部にすえつけられた情報処理部1は、プロセッサ11、外部メモリ13及びIRレシーバ15を含む。IRレシーバ15が受信したボタンスイッチSW3、SW4、及び振動センサ713のオン/オフ情報並びに傾きセンサ711からの傾き情報は、プロセッサ11に与えられる。なお、情報処理部1は、独立した単体として構成されてもよいし、手入力ユニット7側にすえつけられる様な構成であってもよい。ただし、手入力ユニット7側にすえつけられる場合は、MCU701及びIR発光部73及び75に相当するものを、手入寮クユニット7ではなく、マットユニット3側に備える必要がある。
【0034】
プロセッサ11には、外部メモリ13が接続される。外部メモリ13は、プログラム領域、画像データ領域、および音声データ領域を含む。プログラム領域には、制御プログラムが格納される。画像データ領域には、テレビジョンモニタ5に表示される画面を構成するすべての画像データや、他の必要な画像データが格納されている。音声データ領域には、音楽や効果音のための音声データが格納されている。プロセッサ11は、プログラム領域の制御プログラムを実行して、画像データ領域の画像データ及び音声データ領域の音声データを読み出し、必要な処理を施して、ビデオ信号及びオーディオ信号を生成する。この場合、プロセッサ11は、フットスイッチSW1及びSW2からのオン/オフ情報と、IRレシーバ15からの、ボタンスイッチSW3、SW4及び振動センサ713のオン/オフ情報並びに傾きセンサ711からの傾き情報とを処理に反映する。ビデオ信号及びオーディオ信号は、AVケーブル9を通して、テレビジョンモニタ5に与えられる。
【0035】
プロセッサ11は、図示しないが、CPU(Central Processing Unit)、グラフィックスプロセサ、サウンドプロセサおよびDMAコントローラ等の各種機能ブロックを含むとともに、アナログ信号を取り込むときに用いられるA/Dコンバータ、IR信号やキー操作信号のような入力デジタル信号を受けかつ出力デジタル信号を外部機器に与える入出力制御回路、及び内部メモリ等を含む。
【0036】
CPUは、外部メモリ13に格納された制御プログラムを実行する。A/Dコンバータからのデジタル信号および入出力制御回路からのデジタル信号はCPUに与えられ、CPUは、制御プログラムに従って、それらの信号に応じて必要な演算を実行する。この入出力制御回路に、フットスイッチSW1、SW2、からのオン/オフ情報及びIRレシーバー15からのボタンスイッチSW3、SW4、及び振動センサ713のオン/オフ情報並びに傾きセンサ711からの傾き情報が入力される。グラフィックスプロセサは、外部メモリ13に格納された画像データに対して、CPUの演算結果によって必要になったグラフィック処理を実行して、テレビジョンモニタ5に表示する画像を表すビデオ信号を生成する。サウンドプロセサは、外部メモリ13に格納された音声データに対して、CPUの演算結果によって必要になったサウンド処理を実行して、音楽や効果音を表すオーディオ信号を生成する。内部メモリは、例えば、RAMにより構成され、ワーキング領域、カウンタ領域、レジスタ領域、テンポラリデータ領域、及び/又はフラグ領域等として利用される。
【0037】
図4は、本発明の実施の形態による情報処理装置が表示する画面の例示図である。図4の画面は、腕立て伏せのゲーム画面である。
【0038】
図4を参照して、画面100はキャラクタ101、時間表示部103及び回数表示部105を含む。この画面では、プロセッサ11は、手入力ユニット7の振動センサ713のオン/オフ信号に応じて、キャラクタ101は腕立て伏せをするように表示する。
【0039】
プロセッサ11は、一定時間この画面を表示し、残り時間を時間表示部103に表示する。また、キャラクタ101が腕立て伏せを行った回数、つまり、プレイヤが手入力ユニット7を上下に動かし、腕の上下運動を行った回数を回数表示部に表示する。
【0040】
従って、プレイヤは、一定時間中、腕を上下に振って手入力ユニット7を上下に動かすことで、より多くの回数キャラクタ101に腕立て伏せをさせることができる。
【0041】
図5は、本発明の実施の形態による入力装置を用いた情報処理装置が表示する画面の他の例示図である。図5の画面は跳び箱ゲーム画面である。
【0042】
図5を参照して、画面100は、キャラクタ101、ジャンプ台オブジェクト107及び跳び箱オブジェクト109を含む。この画面では、プロセッサ11はまず、プレイヤにその場でダッシュ動作、つまり、フットスイッチSW1、SW2上で足踏みをするように指示を表示する。プレイヤがダッシュ動作を行うと、プレイヤの足が交互に離れるので、フットスイッチSW1、SW2は、交互にオンからオフ、オフからオンに遷移する。
【0043】
プロセッサ11は、フットスイッチSW1及びSW2が交互にオンからオフになり、所定の時間t1内にオフからオンに遷移するのを確認すると、ダッシュコマンドが入力されたと判断する。プロセッサ11は、ダッシュコマンドが入力される度に、キャラクタ101にニ歩分走る動作をさせ、跳び箱オブジェクト109に接近させる。そして、プロセッサ11は、キャラクタ101が所定の位置、つまりジャンプ台オブジェクト107の位置まで移動したと判断すると、プレイヤに対し、その場でジャンプするように指示を表示する。
【0044】
プレイヤがジャンプすると、プレイヤの両足がフットスイッチSW1及びSW2から離れるので、プレイヤが着地するまでフットスイッチSW1及びSW2が両方にオンからオフに遷移する。プロセッサ11はフットスイッチSW1及びSW2が両方オンからオフに遷移し、所定時間t2の間、オフ状態が続く状態を確認すると、ジャンプコマンドが入力されたと判断する。所定の時間t2は、上記の所定の時間t1よりも、長く設定されている。プロセッサ11は、タイミングよくジャンプコマンドが入力されたことを確認すると、キャラクタ101がジャンプする表示を行い、入力のタイミングがずれた場合は、キャラクタ101が跳び箱オブジェクト109にぶつかり、ジャンプに失敗する表示を行う。
【0045】
プロセッサ11は、プレイヤがジャンプコマンドの入力をタイミングよく行うと、画面100に手入力ユニット7を振る指示を表示する。ここで、プレイヤが手入力ユニット7を振ると、振動センサ713がオフからオンになる。プロセッサ11は振動センサ713のオン信号を検出すると、スイングコマンドが入力されたと判断し、タイミングよくスイングコマンドが入力されると、キャラクタ101が手を使って跳び箱オブジェクト109を飛び越える表示を行い、入力のタイミングがずれた場合は、キャラクタ101が跳び箱オブジェクト109の上に乗っかってしまい、飛び越えることに失敗する表示を行う。
【0046】
従ってプレイヤは、素早く足踏みをする、タイミングよく両足でジャンプする、タイミングよく腕を使う、という現実に跳び箱を飛ぶ際の動作を模した動作を順番に行うことによって、キャラクタ101に跳び箱オブジェクト109を飛び越えさせることができる。
【0047】
図6は、本発明の実施の形態による情報処理装置が表示する画面の他の例示図である。図6の画面は、転がる丸太の上にバランスをとりながら乗って進むというゲーム画面である。
【0048】
図6を参照して、画面100は、キャラクタ101、丸太オブジェクト111を含む。プロセッサ11は、上記のダッシュコマンドが、一定の間隔で入力されると転がる丸太オブジェクト111の上でバランスを取りながら歩く動作を行わせる。この時上記ダッシュコマンドの入力の間隔が乱れたり、振動センサ713のオン信号があったり、傾きセンサ711の傾き情報が「横」ではなく「縦」になると、プロセッサ11は、キャラクタ101がバランスを崩し丸太オブジェクト111から落下する表示を行う。
【0049】
従ってプレイヤは、リズムよくマットユニット3上でステップを踏みつつ、手入力ユニット7を揺らさないように水平に保つことで、キャラクタ101を落下させずに進ませることができる。
【0050】
図7は、本発明の実施の形態による情報処理装置が表示する画面のさらに他の例示図である。図7の画面は、綱を使ってがけをよじ登るゲーム画面である。
【0051】
図7を参照して、ゲーム画面には、キャラクタ101、ロープオブジェクト113及び崖オブジェクト114を含む。プロセッサ11は、プレイヤにその場でジャンプして、ボタンスイッチSW3及びSW4を同時に押すようにとの指示を順に表示する。前述のとおり、プレイヤがフットスイッチSW1及びSW2上でジャンプすると、プロセッサ11はジャンプコマンドが入力されたと判断する。プレイヤが手入力ユニット7を両手で握りこみ、ボタンスイッチSW3及びSW4が両方押されてオンになると、プロセッサ11はつかみコマンドが入力されたと判断する。
【0052】
プロセッサ11は、ジャンプコマンドの入力に応じて、キャラクタ101がジャンプする表示を行い、さらに、ジャンプのアニメーションが表示されている間につかみコマンドが入力されると、キャラクタ101が、ロープオブジェクト113を掴む動作を表示する。その後キャラクタ101はロープオブジェクト113にぶら下がった状態で表示される。タイミングよくジャンプのアニメーション表示中につかみコマンドが入力されなかった場合、プロセッサ11は、キャラクタ101が地面に落ちるように表示させ、再びジャンプコマンドとつかみコマンドが入力されるのを待つ。
【0053】
次にプロセッサ11は、プレイヤにボタンスイッチSW3及びSW4を両方とも離さないように注意しながら、交互にボタンスイッチSW3及びSW4を一度離してから再び押す操作を行えという指示を表示する。ボタンスイッチSW3及びSW4が交互にオンからオフ、オフからオンに遷移すると、プロセッサ11はロープコマンドが入力されたと判断する。プロセッサ11はロープコマンドの入力に応じて、キャラクタ101に、離した手を伸ばし、ロープオブジェクト113を手繰り寄せるという動作を行わせ、キャラクタ101が崖オブジェクト114を登っていくように表示する。
【0054】
ここで、ロープコマンドの入力の他に、振動センサ713がオンに入力されたり、ダッシュコマンドが入力されると、キャラクタ101が体の反動や、足の動きも使う動作が表示され、より速くキャラクタ101が崖オブジェクト114を登るようにしてもよい。
【0055】
プロセッサ11は、ボタンスイッチSW3及びSW4が同時にオフになった状態を検知すると、キャラクタ101がロープオブジェクト113から手を離し、地面に落ちる表示をおこなう。
【0056】
従ってプレイヤはジャンプした時にタイミングよく手入力ユニット7を握ることで、キャラクタ101にロープオブジェクト113を掴ませ、手入力ユニット7を片手ずつ交互に握ったり離したりする、ロープを手繰り寄せる動作を模した動作を行うことで、キャラクタ101にロープオブジェクト113を使って崖オブジェクト114を登らせることができる。
【0057】
図8は、本発明の実施の形態による情報処理装置が表示する画面のさらに他の例示図である。図8の画面は、プレイヤのスイング運動を検出しつつ、検出した結果に基づいた画面中の表示によってプレイヤに運動の指示を与えるスイング運動検出画面である。
【0058】
図8を参照して、画面100は、時間表示部115、運動評価部117、操作方法指示部119、及び運動指示キャラクタ121を含む。プロセッサ11は、時間表示部115で残り運動時間を表示する。また、運動指示キャラクタ121が運動器具を用いたエクササイズを行うアニメーションを表示する。上記アニメーションは、運動器具を水平方向に持ち、上下に動かすアニメーションと、運動器具を垂直方向に持ち、左右に動かすアニメーションの2種類からなり、所定の時間ごとに切り替わる。さらに、操作方法指示部119に、手入力ユニット7をどのように操作すればよいのかを表示する。
【0059】
プロセッサ11は、傾きセンサ711の傾き情報が「横」か「縦」かによってプレイヤの手入力ユニット7の持ち方が、運動指示キャラクタ121の持ち方と同じか否かを判断し、誤った方向に持っている場合は、プレイヤに対し、持ち方を直すように指示する表示を行う。さらに、手入力ユニット7からの信号に応じて、運動評価部117に消費カロリーを表示する。消費カロリーは、予め計測された手入力ユニット7を上下又は左右に一回振ったときの単位消費カロリー情報を外部メモリ13に記憶しておき、その単位消費カロリーと、振動センサ713のオン/オフ信号が切り替わった回数とを乗算して算出される。
【0060】
従って、プレイヤは、運動指示キャラクタ121の動きを参照しつつ、操作方法指示部119に表示される方法で、手入力ユニット7を水平方向又は垂直方向に持ち替えて、上下又は左右に振ることにより、運動による消費カロリーの確認を行いながら、運動を行う。
【0061】
図9は、本発明の実施の形態による情報処理装置が表示する画面のさらに他の例示図である。図9の画面は文字入力画面である。
【0062】
図9を参照して、画面100は、文字種類表示部123、行選択部125、エンドボタン126、カーソル127、文字選択部129、及び選択文字表示部131を含む。プロセッサ11は、振動センサ713のオン信号に応じて、ひらがな、カタカナ、英文字などの文字種類を変更し、選ばれた文字種類を文字種類表示部123に表示し(図中ではひらがな)、行選択部125及び文字選択部129に表示される各文字を、変更された文字種類で表示する。ボタンスイッチSW3及びSW4の入力に応じて、行選択部125内でカーソル127を左右に移動させる。また、プロセッサ11は、フットスイッチSW2の入力に応じてカーソルの当たっている行を選択し、選択された行に属する各文字を文字選択部129に表示し、カーソル127を、文字選択部129に移動させる。さらに、プロセッサ11は、ボタンスイッチSW3及びSW4の入力に応じて、文字選択部129内でカーソル127を左右に移動させる。フットスイッチSW2のオン信号に応じてカーソルの当たっている文字を選択し、選択文字表示部131に、選択された文字を表示し、再びカーソルを行選択部125に戻す。プロセッサ11は、フットスイッチSW1が入力されると、選択文字表示部131の文字を一文字消す。プロセッサ11は、カーソル127がエンドボタン126に当たっているときにフットスイッチSW2が入力されると、文字選択画面を終了する。
【0063】
従ってプレイヤは、まず手入力ユニットを振ることで自分が望む文字種を選択し、ボタンスイッチSW3及びSW4を入力ことで自分の選びたい文字にカーソルを移動させ、フットスイッチSW2を入力によって文字を入力することができる。
【0064】
次にフローチャートを参照しながら、プロセッサ11が実行する処理を説明する。
【0065】
フローチャート中、特定のオン/オフ信号のパターンを、説明の便宜のためダッシュコマンド、ジャンプコマンド、つかみコマンド、ロープコマンド、と表記しているが、詳細については後述の図35を参照するものとする。
【0066】
図10は、プロセッサ11が実行する処理の全体的な流れを示すフローチャートである。図10を参照して、前述の電源スイッチがオンされると、ステップS1にて、プロセッサ11はシステムの初期化を実行する。この処理で、各アプリケーションのための処理で使用される、全てのフラグが初期化され、全てのカウンタがクリアされる。また、各種レジスタも初期化される。
【0067】
ステップS3にて、プロセッサ11は、外部メモリ13に格納されたアプリケーションプログラムに従った処理を実行する。ステップS5にて、プロセッサ11は、ビデオ同期信号による割り込みが発生するまで待機する。つまり、プロセッサ11は、ビデオ同期信号による割り込みが発生していない場合は、同じステップS5に戻り、ビデオ同期信号による割り込みが発生した場合は、ステップS7に進む。例えば、ビデオ同期信号による割り込みは、1/60秒ごとに発生する。この割り込みに同期して、ステップS7及びステップS9にて、プロセッサ11は、画面100に表示する画像を更新すると共に、音声の再生を行う。そして、プロセッサ11は、ステップS3に戻る。
【0068】
IRレシーバ15からの信号に応答して、割り込みが発生し、ステップS11のIRコード取得処理が実行される。
【0069】
図11は、プロセッサ11が実行するアプリケーションの画面遷移図である。図11を参照して、プロセッサ11は、ステップS20でモード選択画面を表示し、ステップS21でプレイヤの入力に応じて、モードの選択処理を行う。この実施例では、アスレチックゲームモードが選ばれた場合には、ステップS22に進み、運動支援モードが選ばれた場合はステップS32に進む。
【0070】
アスレチックゲームモードとは、図4から7で例示したような、プレイヤが入力によって画面中のキャラクタを操作し、アスレチックステージを一つずつクリアしていくゲームである。全ステージ数をn、第1ステージから第nステージの内、任意のステージを第Nステージとして説明する。
【0071】
ステップS22で、プロセッサ11は、ゲームの難易度の設定と、全ステージを実行する本番モードか、任意の第Nステージだけを実行する練習モードか、どちらのモードをプレイするかの設定と、をプレイヤに選択させる設定画面を表示し、プレイヤの入力に従って設定処理を行い、ステップS24に進む。
【0072】
ステップS24では、プロセッサ11は、図9で説明したようなプレイヤの名前を入力させる画面を表示し、プレイヤの入力に従って、プレイヤの名前を外部メモリ13に記憶しておく。
【0073】
ステップS22で本番モードが選択された場合、S26−1に進み、図4から7に例示したようなゲーム画面を表示させていく。ステップS26−Nで表示する第Nステージがクリアされた場合、ステップS26−(N+1)に進み、第N+1ステージを表示していく。そして、ステップS26−nで表示される第nステージがクリアされるとステップS28に進み、クリア画面を表示させたのち、ステップS30に進み、クリアタイムやステップS24で入力された名前でのランキングを表示する結果表示画面を表示する。
【0074】
ステップS22で練習モードが選択された場合、ステップS26−Nに進み、第NステージがクリアされるとステップS30の結果表示画面に進み、第Nステージにおけるクリアタイムなどを表示する。
【0075】
ステップS21で、運動支援モードが選択され、ステップS32に進んだ場合の画面遷移を説明する。運動支援モードとは、図8に例示したような、プレイヤに対して、テレビジョンモニタ5に表示される画面100を通して指示を与え、手入力ユニット7及びマットスイッチ3を操作させ、それによってプレイヤ自身の運動を促すための画面である。全課目数をm、第1課目から第m科目の内、任意の課目を第M課目として説明する。
【0076】
運動支援モードでは、第1課目から第m課目まで通しての運動支援画面を表示するモードと、任意の第M課目の運動支援画面を表示するモードがあるが、クリア画面表示が無い以外はアスレチックゲームモードとほぼ同様の画面遷移が行われるので、説明を省略する。
【0077】
図12は、図11のステップS26−Nで実行される第Nステージの例として、図5で説明した跳び箱ゲームの実行ルーチンを示すフローチャートである。
【0078】
図12及び図5を参照して、プロセッサ11は、ステップS40で、キャラクタ位置をスタート地点に設定するなど、当該ルーチンのための初期化処理を行う。ステップS41にすすみ、このステージ用の背景を表示する。
【0079】
ステップS43に進み、プロセッサ11は、ダッシュコマンドが入力されるまで待機する。ダッシュコマンドが入力されると、ステップS45に進み、キャラクタ101が走っている動作をしながら、移動するように表示を行う。ステップS47にて、プロセッサ11は、キャラクタ101の位置を判定し、キャラクタ101が所定位置である画面中のジャンプ台オブジェクト107の位置に移動していなければ、ステップS43に戻り、さらなるダッシュコマンドの入力を待つ。
【0080】
プロセッサ11は、キャラクタ101がジャンプ台オブジェクト107の位置に進むとステップS51に進み、所定時間内にジャンプコマンドが入力されるかをチェックする。プロセッサ11は、所定時間内にタイミングよくジャンプコマンドが入力されると、ステップS53に進み、キャラクタがジャンプ台オブジェクト107を踏み切り、跳び箱オブジェクト109の上方へむかってジャンプするアニメーションを表示する。
【0081】
ステップS55に進み、プロセッサ11は、所定時間内にスイングコマンドが入力されるかをチェックする。所定時間内にタイミングよくスイングコマンドが入力されると、ステップS57に進み、キャラクタ101が手をうまく使って跳び箱オブジェクト109を飛び越えるアニメーションを表示する。ステップS59に進み、第Nステージクリアと表示された画面を表示させ、第N+1ステージの実行ルーチンへ移る。N=nである場合は、もう次のステージは無いので、ステップS28のクリア画面に進む。
【0082】
ステップS51で、所定時間内にジャンプコマンドが入力されなかった場合、プロセッサ11は、キャラクタ101が跳び箱オブジェクト109にぶつかり、ジャンプに失敗するアニメーションを表示させた後、ステップS65に進む。同様にステップS55で、所定時間内にスイングコマンドが入力されなかった場合、キャラクタ101が跳び箱オブジェクト109の上でしりもちをつき、跳び越えるのに失敗するアニメーションを表示させた後、ステップS65に進む。ステップS65では、もう一度始めからやり直すかをプレイヤに選択させるためのコンテニュー画面を表示する。ステップS67に進み、プレイヤがコンテニューを選択した場合、ステップS40に戻り、第Nステージを始めからやり直させる。プレイヤがコンテニューを選択しなかった場合、ゲームを終了する。
【0083】
図13は、ステップS26−Nで実行される第Nステージの例として、図7で説明したロープを使って崖を登るゲーム画面の実行ルーチンを示すフローチャートである。
【0084】
図13及び図7を参照して、ステップS70でプロセッサ11は、キャラクタの位置をスタート地点に戻すなど、当該ルーチンのための初期化処理を行う。ステップS71に進み、プロセッサ11は、この画面のための背景を表示する。
【0085】
ステップS73に進んでブロセッサ11は、ジャンプコマンドが入力されるのを待ち、入力されるとステップS75に進み、キャラクタ101がロープオブジェクト113に向かってジャンプするアニメーションを表示する。
【0086】
ステップS77に進み、プロセッサ11は、所定時間内、つまりジャンプアニメーションが表示されている間に、つかみコマンドが入力されたかをチェックする。所定時間内に入力が無かった場合ステップS91に進み、キャラクタ101が地面に落ちる表示を行い、再びステップS73に戻り、ジャンプコマンドの入力を待つ。タイミングよくつかみコマンドの入力があった場合、ステップS79に進み、キャラクタ101が、ロープオブジェクト113に掴まりぶら下がるように表示する。
【0087】
ステップS81に進み、プロセッサ11はボタンスイッチSW3及びSW4が同時にオフになったかをチェックする。同時にオフになった場合、ステップS91に進み、キャラクタ101が地面に落ちるアニメーションを表示し、その後ステップS73に戻る。SW3又はSW4のいずれかがオンであった場合、ステップS83に進み、プロセッサ11はロープコマンドが入力されるのを待つ。ロープコマンドが入力されるとステップS85に進み、キャラクタ101がロープオブジェクト113を手繰って、崖オブジェクト116を登るアニメーションを表示する。ステップS87に進み、プロセッサ11はキャラクタ101の位置をチェックする。キャラクタ101が所定の位置、つまり崖オブジェクト116の上まで達していない場合、ステップS81に戻る。キャラクタ101が所定の位置に達した場合、ステップS89に進み、第Nステージクリアの画面を表示させ、第N+1ステージの実行ルーチンに移る。ただし、N=nである場合は、もう次のステージは無いので、ステップS28のクリア画面に進む。
【0088】
図14は、ステップS36−Mで実行される第M課目の例として、図8で説明したスイング運動検出画面の実行ルーチンを示すフローチャートである。
【0089】
図14及び図8を参照して、ステップS100でプロセッサ11は、残り時間を初期値に戻すなど、当該実行ルーチンのための初期化処理を行う。次にステップS101に進み、カウントダウンを開始し、残り時間を残り時間表示部115に表示する。
【0090】
ステップS103に進み、所定の時間が経過したかを判断する。所定の時間が経過した場合のみ、ステップS105に進み、それ以外の場合はステップS107に進む。ステップS105では、傾きフラグを「縦」から「横」又は、「横」から「縦」に変更して、ステップS107に進む。ステップS107で、プロセッサ11は、傾きフラグに応じて運動指示部119及び運動指示キャラクタ121のアニメーション表示を決定し、表示する。
【0091】
ステップS109に進み、プロセッサ11は振動センサ713のオン/オフ信号の切り替わりの数を計数し、ステップS111で、外部メモリ13に格納された単位消費カロリーと、振動センサ713のオン/オフ信号の切り替わりの数とを乗算して、運動評価部117に消費カロリーとして表示する。
【0092】
ステップS113に進み、プロセッサ11は、傾きセンサ713の傾き情報と、傾きフラグとが、「縦」又は「横」で、対応しているか否かを判定する。異なっていた場合のみ、ステップS115に進み、プレイヤに手入力ユニット7の動かし方の修正を促す表示を運動指示部119及び運動指示キャラクタ121を通して表示させ、ステップ117に進む。傾きセンサ713の傾き情報と、傾きフラグとが同じだった場合は直接ステップS117に進む。
【0093】
ステップS117に進み、プロセッサ11は、カウントダウンが終了していなければ、再びステップS103に戻り、終了している場合はステップS119に進む。ステップS119で、プロセッサ11は、第M課目終了画面を表示させ、第M+1課目の実行ルーチンに移る。
【0094】
図15は、ステップS24やステップS34で実行されるデータ入力画面の例として、図9で説明した文字入力画面の、入力受付処理の全体の流れを説明するフローチャートである。
【0095】
図15を参照して、ステップS301で、プロセッサ11は、当該文字入力画面のための初期化処理を行う。具体的には文字種をひらがなにし、カーソル127の位置を、行選択部125のあ行の上にし、選択文字表示部131に何も表示されていない状態にする。ステップS303に進み、プロセッサ11は、行選択処理を行う。
【0096】
図16は、図15のステップS303の行選択処理の流れの一例を示すフローチャートである。
【0097】
図16を参照して、ステップS321でプロセッサ11は、入力があるかをチェックする。無かった場合はステップS321に戻り、入力があるまで待機する。ここで入力とは、各種スイッチ又は振動センサ713がオフからオンに遷移したことをプロセッサ11が検知した状態を言うものとする。振動センサ713が入力された場合、ステップS323に進み、ボタンスイッチSW4が入力された場合、ステップS325に進み、ボタンスイッチSW3が入力された場合、ステップS329に進み、フットスイッチSW2が入力された場合、ステップS331に進む。
【0098】
ステップS323では、プロセッサ11は、文字種を変更し、文字種表示部123、行選択部125、文字選択部129の各文字の表示が、文字種に対応したものに変更される。そして再びステップS321に戻る。
【0099】
ステップS325では、プロセッサ11は、カーソル127を一つ右の行に移動させ、ステップS325に進み、文字表示部129の文字列を、カーソルが重なった行の文字列に変更する。そして再びステップS321に戻る。ステップS329で、プロセッサ11は、カーソル127を一つ左の行に移動させ、同様の処理を行う。
【0100】
ステップS331でプロセッサ11は、、カーソル127が重なっているのが、エンドボタン126かを確認し、そうであった場合、ステップS335に進み、選択文字表示部131に表示された文字を外部メモリ13に記憶させ、文字入力画面を終了させる。それ以外の場合、ステップS333に進み、カーソル127を文字選択部129の文字列の一番左の文字の上に移動させて、図15のフローにリターンし、ステップS305の文字選択処理に進む。
【0101】
図17は、図15のステップS305の文字選択処理の流れの一例を示すフローチャートである。
【0102】
図17を参照してステップS351で、プロセッサ11は、入力があるかをチェックする。無かった場合はステップS351に戻り、入力があるまで待機する。ここでも入力とは、各種スイッチ又は振動センサ713が、オフからオンに遷移したことをプロセッサ11が検知した状態を言うものとする。振動センサ713が入力された場合、ステップS353に進み、ボタンスイッチSW4が入力された場合、ステップS355に進み、ボタンスイッチSW3が入力された場合、ステップS357に進み、フットスイッチSW1が入力された場合、ステップS359に進み、フットスイッチSW2が入力された場合、ステップS363に進む。
【0103】
ステップS353で、プロセッサ11は、濁音、半濁音、清音の切り替え処理を行い、文字選択部129の各文字の表示が変更される。そして再びステップS351に戻る。
【0104】
ステップS355で、プロセッサ11は、カーソル127を一つ右の文字に移動させ、再びステップS351に戻る。ステップS357では、カーソル127を一つ左の文字に移動させ、再びステップS351に戻る。
【0105】
ステップS359で、プロセッサ11は、選択文字表示部131に表示されている文字があるかを確認し、あれば、ステップS361に進み、一番右に表示されている文字を消し、ステップS351に戻る。無ければ直接ステップS351に戻る。
【0106】
ステップS363で、プロセッサ11は、カーソル127が重なっている文字を選択文字表示部131に表示し、ステップS365に進み、カーソル127を行選択部125に戻して、図15のフローにリターンする。
【0107】
次に本発明の第2の実施の形態として、第一の入力手段の変形例について説明する。
【0108】
図18は、本発明の第2の実施の形態における第一の入力手段の例示図である。図18を参照して、手入力ユニット2は、銃を扱うゲームにあわせて銃の形状をしており、トリガスイッチSW5と、IR発光部25とを含む。なお、この手入力ユニット2は、図1の手入力ユニット7の代わりに用いられ、図1の情報処理装置のその他の構成要素は同じものを使用する。
【0109】
図19は、図18の手入力ユニット2の内部構成を説明する図である。図3及び図19を参照して、図3の手入力ユニット7の部分を、図19の手入力ユニット2に置き換えて説明する。トリガスイッチSW5はプレイヤに引かれると、オンになる。MCU27は、トリガスイッチSW5のオン/オフ情報を受け、IR発光部25を駆動して、IR通信により、トリガスイッチSW5のオン/オフ情報をIRレシーバ15へ送信する。IR発光部25が手入力ユニット2の複数の面に設けられているのは、手入力ユニット2がプレイヤにどのようにもたれてもIRレシーバ15にIRが届くようにするためである。
【0110】
図20は、本発明の第2の実施の形態によるゲーム画面の例示図である。図20のゲーム画面は、銃を使った銃撃戦ゲームであり、手入力ユニット2のトリガスイッチSW5を引くことで、画面中で銃を撃つことができるゲームである。
【0111】
図20を参照して、画面100は、プレイヤキャラクタ201、敵オブジェクト203、敵攻撃オブジェクト205、及び体力表示部207を含む。
【0112】
プロセッサ11は、ラインL1からL3上のいずれかのライン上にプレイヤキャラクタ201を表示する。プロセッサ11は、フットスイッチSW1の入力に応じて、プレイヤキャラクタ201を一つ左のラインに移動させる。プロセッサ11は、プレイヤキャラクタ201がすでにラインL1上にいるときは移動を行わせない。同様にプロセッサ11は、フットスイッチSW2の入力に応じて、プレイヤキャラクタ201を一つ右のラインに移動させる。プロセッサ11は、プレイヤキャラクタ201がすでにラインL3上にいるときは移動を行わせない。
【0113】
プロセッサ11は、ラインL1〜L3上にランダムに敵オブジェクト203を表示する。また、プロセッサ11は、敵オブジェクト203の表示されているライン沿いに、一定時間ごとに敵攻撃オブジェクト205が、キャラクタ201側に向かってくる表示を行う。さらに、キャラクタ201が敵攻撃オブジェクト205と同じ位置にいた場合は、キャラクタ201が攻撃を受けた表示を行い、体力表示部207のハートを一つ消滅させる表示を行う。さらに、体力表示部207のハートがなくなると、ゲームを終了する。
【0114】
プロセッサ11は、トリガスイッチSW5のオン信号に応じて、プレイヤキャラクタ201が銃を撃つ表示を行い、その瞬間に敵オブジェクト203の位置が、プレイヤキャラクタ201と同じライン上であれば、その後敵オブジェクト203の位置が変わっても、弾オブジェクトは敵オブジェクト203めがけて直線又は曲線の弾道を描いて飛んでいき、敵オブジェクト203に弾があたり、消滅する表示を行う。
【0115】
従ってプレイヤは、フットスイッチSW1及びSW2を押すことによってキャラクタ201を左右に動かすことができ、敵攻撃オブジェクト205を回避させたり、敵オブジェクト203を正面に捕らえさせたりすることができ、トリガスイッチSW5を引くことで、キャラクタ201に銃を撃たせて、正面の敵オブジェクト203を攻撃させることができる。
【0116】
図21は、本発明の第2の実施の形態によるゲーム画面の他の例示図である。図21の画面100は、音楽ゲーム画面であり、音楽の節に合わせてフットスイッチSW1及びSW2、並びにトリガスイッチSW5をタイミングよく入力することによって、高評価を得ることができる音楽ゲーム画面である。
【0117】
図21を参照して、画面100は、移動オブジェクト211L、211M及び211Rと、タイミング指示部213L、213M及び213Rとが含まれる。以下、移動オブジェクト211L、211M、211Rをまとめて移動オブジェクト211とし、タイミング指示部213L、213M及び213Rをまとめてタイミング指示部213として説明することがある。プロセッサ11は、音楽に合わせて移動オブジェクト211を、それぞれ対応するタイミング指示部213に向かって移動させ、移動オブジェクト211がタイミング指示部213に重なるように表示を行う。プロセッサ11は、移動オブジェクト211Lがタイミング指示部213Lに重なっている間にフットスイッチSW1が入力されるか、移動オブジェクト211Mがタイミング指示部213Mに重なっている間にトリガスイッチSW5が入力されるか、移動オブジェクト211Rがタイミング指示部213Rに重なっている間にフットスイッチSW2が入力された場合に、得点(図示せず)を加算する。
【0118】
従ってプレイヤは、音楽を楽しみながら、各移動オブジェクト211が、各タイミング指示部213に重なっている間に、対応するフットスイッチSW1及びSW2並びにトリガスイッチSW5を入力することによって、ゲーム中で高得点を取得できる。この構成によれば、ステップを踏むだけの従来のマットスイッチのみを用いた音楽ゲームと違い、同時に手に把持した第一の入力装置による入力も取り入れたダンスゲームを実行することができる。
【0119】
図22は、本発明の第2の実施の形態における第一の入力手段の他の例示図である。
【0120】
図22を参照して、手入力ユニット8は、情報処理装置が実行するプログラムがテニスゲームである場合に使われることを想定したもので、テニスゲームにあわせてテニスラケットの形状をしており、ボタンスイッチSW6と、IR発光部85とを含む。IR発行部85は、テニスラケットのグリップ部のヘッド部近傍に配置されている。図には表れていないが、手入力ユニットがどのような向きに把持されていても、IRレシーバ15に赤外光が届くように、IR発光部85の他にも、IR発光部85が、グリップ部のヘッド部近傍の裏側や、ヘッド部のフレームトップ等にも配置される。
【0121】
図23は、手入力ユニット8の内部構成を示す図である。以下、図3の手入力ユニット7の部分を図23の手入力ユニット8に置き換えて説明する。
【0122】
図3及び図23を参照して、手入力ユニット8は、ボタンスイッチSW6、加速度センサ811、MCU81及びIR発光部85を含む。ボタンスイッチSW6は押されると、オンになる。加速度センサ811は、例えばピエゾ素子を用いたセンサであり、手入力ユニット8が振られたときの加速度を感知し、加速度情報を出力する。MCU83は、ボタンスイッチSW6及び加速度センサ811の加速度情報を受け、IR発光部85を駆動して、IR通信により、ボタンスイッチSW6及び加速度センサ811の加速度情報をIRレシーバ15(図3参照)へ送信する。
【0123】
この例において手入力ユニット8及びマットユニット3を併用した入力装置をもちいることで、例えばプロセッサ11に、手入力ユニット8が振られたか否かを加速度センサ811によって検出し、加速度を検出したときに、画面中のキャラクタが同時にラケットを振るように表示を行い、その時の加速度の大きさに応じて、ラケットを振るスピード及び打ち返す打球のスピードを変化するようなアプリケーションを実行させることができる。さらに、フットスイッチSW1及びSW2の入力に応じて、画面中のキャラクタを左右に移動させる、などの処理をプロセッサ11に行わせるような構成にすれば、CPUが動きを制御する敵キャラクタが打ち返す球の画面中の位置を見て、プレイヤが、キャラクタを適切な位置に移動させ、適切なタイミングで手入力ユニット8を振ることで、キャラクタにラケットをふらせるというような従来にないテニスゲームを提供することができる。
【0124】
図24は図20で説明した銃撃戦ゲームを実行する際の、図10で説明したプロセッサ11の処理の全体の流れの内、ステップS3に相当する部分の処理の流れの一例を説明するフローチャートである。
【0125】
図24及び図20を参照して、プロセッサ11は、ステップS402で、敵オブジェクト203及び敵攻撃オブジェクト205の動きを制御する。すなわち敵オブジェクト203が画面100上に表示されていない場合は、敵オブジェクト203を出現させるように設定する。敵オブジェクト203が画面100上にいる場合は、所定時間ごとにラインL1、L2、L3の順に敵オブジェクト203の位置データを変更する処理と、攻撃動作を行わせるための処理を行う。敵オブジェクト203に攻撃動作を行わせた場合に、敵攻撃オブジェクト205を画面100上に発生させ、ラインL1、L2、又はL3に沿って、プレイヤキャラクタ201に向かって敵攻撃オブジェクト205の位置データを変更していく処理を行う。ここで位置データとは、プロセッサ11が、図10のフローのステップS7の画面更新処理の際に、各種オブジェクトを表示する位置を決定するために参照するデータをいうものとする。
【0126】
ステップS404に進み、プロセッサ11は、プレイヤからの入力に応じてプレイヤキャラクタ201の動きを制御する。
【0127】
図25は、図24のステップS404のプレイヤキャラクタ制御処理の流れの一例を示すフローチャートである。
【0128】
図25を参照して、ステップS412でプロセッサ11は、プレイヤからの入力を待つ。入力が無い場合は、ステップS412から進まない。フットスイッチSW1が入力されるとステップS414に進む。ステップS414で、プロセッサ11は、プレイヤキャラクタ201の位置データをチェックする。プレイヤキャラクタ201の位置データがラインL1上だった場合、何もせずに図24のフローにリターンする。ラインL1上以外だった場合、ステップS416に進み、プレイヤキャラクタ201の位置データが、ラインL2上だった場合はラインL1上へ、ラインL3上だった場合はラインL2上へ、というように、プレイヤキャラクタ201の位置データを一つ左のラインに変更してからリターンする。
【0129】
ステップS412で、トリガスイッチSW5が入力された場合、プロセッサ11は、ステップS418に進み、攻撃フラグをオンにする。次に、ステップS420に進み、プレイヤキャラクタ201が銃を撃つ動作と、弾オブジェクトが出現し、敵オブジェクト203側に飛んでいき、画面100上の所定の点で消滅するアニメーションとを表示するための設定を行い、図24のフローにリターンする。
【0130】
ステップS412で、フットスイッチSW2が入力された場合、プロセッサ11は、ステップS422に進み、プレイヤキャラクタ201の位置データをチェックする。プレイヤキャラクタ201の位置データがラインL3上だった場合、何もせずに図24のフローにリターンする。ラインL3上以外だった場合、ステップS424に進み、プレイヤキャラクタ201の位置データが、ラインL1上だった場合は、ラインL2上へ、ラインL2上だった場合はラインL3上へ、というように、プレイヤキャラクタ201の位置データを一つ右のラインに変更してから図24のフローにリターンする。
【0131】
図24に戻って、ステップS408に進み、攻撃判定処理、つまり、プレイヤキャラクタ201の発射した弾が、敵オブジェクト203に当たったかの判定処理を行う。
【0132】
図26は、図24のステップS408の攻撃判定の処理の流れの一例を示すフローチャートである。
【0133】
ステップS431に進み、プロセッサ11は、攻撃フラグがオンになっているかをチェックし、オンの場合はステップS433へ、オフの場合はステップS438へ進む。
【0134】
ステップS433に進み、プロセッサ11は、プレイヤキャラクタ201の位置データと、敵オブジェクト203の位置データをそれぞれ参照し、同一のライン上にあるかを確認する。同一のライン上だった場合、ステップS435に進み、それ以外の場合、ステップS438に進む。
【0135】
ステップS435に進んだ場合、プロセッサ11は、ヒットフラグをオンにし、攻撃フラグをオフにする。ヒットフラグがオンになった場合、弾オブジェクトが、敵オブジェクト203に向かって飛んでいき、敵オブジェクト203の表示位置で消滅するように、弾オブジェクトの動きを設定する。そして、ステップS436に進み、ヒット数をインクリメントしてからステップS438に進む。
【0136】
ステップS438で、プロセッサ11は、ヒットフラグがオンになっているかをチェックし、オンの場合はステップS440へ進み、オフの場合は図24のフローにリターンする。
【0137】
ステップS440では弾オブジェクトが敵オブジェクト203の位置に到達したかをチェックする。到達していた場合、ステップS444に進み、敵オブジェクト203の表示位置に火花が表示されるように設定し、敵オブジェクト203が消滅するように設定し、ヒットフラグをオフにし、ステップS446に進む。それ以外の場合、図24のフローにリターンする。
【0138】
ステップS446で、プロセッサ11は、ヒット数が所定の数Xに達したかをチェックする。達していなかった場合は直接リターンし、達していた場合は、ステップS448に進み、画面100に、クリア画面を表示するための設定を行い、図24のフローにリターンする。
【0139】
図24に戻り、ステップS410に進んで、プロセッサ11はダメージ判定処理、つまり、プレイヤキャラクタ201に敵攻撃オブジェクト205が当たったかを判定する。
【0140】
図27は、図24のステップS410のダメージ判定処理の流れの一例を示すフローチャートである。
【0141】
図27を参照して、ステップS451で、プロセッサ11は、画面100上に敵攻撃オブジェクト205が存在するかをチェックし、存在する場合はステップS453、存在しない場合は、ステップS465に進む。
【0142】
ステップS453で、プレイヤキャラクタ201の位置データと、敵攻撃オブジェクト205の位置データを参照し、同じ位置にあった場合はステップS453、それ以外はステップS465に進む。
【0143】
ステップS455で、プロセッサ11は、敵攻撃オブジェクト205が消滅し、プレイヤキャラクタ201が、ダメージを受けた動作をするように設定し、ステップS459に進む。ステップS459で、残り体力のデータをデクリメントし、体力表示部207のハートを一つ消滅させるように設定する。
【0144】
ステップS461に進み、残り体力が0になった場合はステップS463へ進み、ゲームオーバー画面を表示するために設定を行い、ステップS465に進む。残り体力が0以外の場合は、直接S465に進む。
【0145】
ステップS465で、プロセッサ11は、画面100上の全ての敵攻撃オブジェクト205について、判定処理を完了したかをチェックし、まだであればステップS453に戻り、判定処理を続け、完了した場合は図24のフローにリターンする。
【0146】
図24に戻り、ステップS410の処理が終わると、プロセッサ11は、図10のフローにリターンする。ステップS448でクリア画面が設定されていた場合又は、ステップS463が設定されていた場合は、それぞれの画面が表示された後、この銃撃戦ゲームを終了する。
【0147】
図28は図21で説明した音楽ゲームを実行する際に、図10で説明したプロセッサ11の処理の全体の流れの内、ステップS3に相当する部分の処理の流れの一例を説明するフローチャートである。
【0148】
図28及び図21を参照して、ステップS202で、プロセッサ11は、背景の制御を行い、背景の表示が音楽に合わせて変化していくように表示するための設定を行う。ステップS204に進み、音楽の制御を行い、音楽ゲーム実行中に音楽が流れていくように、外部メモリ13に格納された楽譜データに従って、何の音を鳴らすかの設定を行う。ステップS206に進み、移動オブジェクト211の制御を行う。
【0149】
図29は、図28の移動オブジェクト制御処理の流れの一例を示すフローチャートである。図29を参照して、ステップS220でプロセッサ11は、外部メモリ13に格納された移動オブジェクト出現パターンデータに従って、移動オブジェクト211L、211M.211Rをそれぞれ所定から出現させるための設定を行う。上記出現パターンデータは、上記楽譜データに合わせて作られており、音楽の節に合わせて移動オブジェクト211がタイミング指示部213に重なるようになっている。
【0150】
ステップS222に進み、プロセッサ11は、画面中に表示された各移動オブジェクト211L、211M、211Rが、対応する各タイミング指示部213L,213M、213Rにむかって一定の速度で移動していき、タイミング指示部213を通り過ぎると消滅するように設定する。そして、ステップS224で、タイミング指示部213に達した移動オブジェクト211に対応して、プレイヤの入力が行われたかを判定する判定処理を実行し、図28のフローにリターンする。
【0151】
図30は、図29のステップS224の判定処理の流れの一例を示すフローチャートである。
【0152】
図30を参照して、ステップS240で、プロセッサ11は、少なくとも1つの移動オブジェクト211がヒットレンジ内にあるかを判定する。無い場合は図29のフローにリターンする。ヒットレンジは、ゲームを難しくしたければ、移動オブジェクト211とタイミング指示部213とが完全に重なった一瞬でもよいし、簡単にしたければ、移動オブジェクト211がタイミング指示部213に少しでも重なった状態となっている間ずっとでもよい。
【0153】
ステップS240でヒットレンジ内にある移動オブジェクトがあると判断された場合、ステップS242に進み、ヒットレンジ内にある移動オブジェクトが移動オブジェクト211LならフットスイッチSW1、211MならトリガスイッチSW5,211RならフットスイッチSW2が、入力(入力信号がオフからオンに遷移したことを持って入力とみなす)されたか否かを判定し、入力が無かったと判定された場合、図29のフローにリターンする。入力があったと判定された場合、ステップS244に進む。
【0154】
ステップS244で、プロセッサ11は、ヒット効果アニメーションを表示するための設定と、ヒット音を発生させるための設定とを行い、ステップS246に進む。ステップS246で、プロセッサ11は、点数を加算する処理を行い、ステップS250に進む。ステップS250で、プロセッサ11は、移動オブジェクトを消滅させる処理を行い、図29のフローにリターンする。
【0155】
図28に戻り、ステップS206の移動オブジェクト制御処理を終えると、プロセッサ11は、ステップS208に進み、音楽が終了したか否かをチェックし、音楽が終了した場合、ダンスゲームを終了する。まだ音楽が終了していなかった場合は、図10のフローにリターンする。
【0156】
以上のように、実行するプログラムに応じて第一の入力装置の外観や内蔵するスイッチ又はセンサを変更してもよい。
【0157】
手入力ユニット2のように、トリガスイッチSW5のみを備えた第一の入力装置や、手入力ユニット8のように、加速度センサ811のみを備えた第一の入力手段のように、単一の入力信号発生手段を備えた第一の入力装置であっても、マットユニット3と併用することによって、本発明の第1の実施の形態で述べたような効果を得ることができる。プレイヤにとっては、入力のオン/オフの切り替えが分かりやすく、操作が簡単になるという利点もある。
【0158】
また、ダンスゲームプログラムを実行する場合、ステップを踏むだけの従来のマットスイッチのみを用いた音楽ゲームと違い、同時に手に把持した第一の入力装置による入力も取り入れた音楽ゲームを実行することができる。
【0159】
また、銃撃戦ゲームを実行する場合、画面の細かい点に向けて入力を行うのではなく、プレイヤキャラクタ201を左右に移動させ、タイミングを合わせてトリガスイッチSW5を引けば、弾オブジェクトが敵キャラクタ203にあたるので、操作に不慣れなプレイヤ(幼児など)でも扱いやすく、手足を動かしながらでも弾オブジェクトを命中させやすい銃撃戦ゲームを提供できる。なおかつ、情報処理装置の処理によって、画面中にそれらしい弾道が描かれるので、敵オブジェクト203に狙いを定め、弾オブジェクトがきちんと当たる快感を得ることもできる。また、手入力ユニット2によって銃を打ちつつ、マットユニット3からの入力によって、画面中のプレイヤキャラクタ201の立ち位置を変更できるので、敵キャラクタ203や敵攻撃オブジェクト205を回避することも直感的に分かりやすい。
【0160】
本発明の第3の実施の形態では、第一の入力手段の全部又は一部を撮像し、第一の入力手段の動きを検出し、検出結果を入力信号として用いる。
【0161】
図31は、本発明の第3の実施の形態による情報処理装置の全体構成を示す図である。
【0162】
図31を参照して、図1の情報処理部1に相当する情報処理部4は、撮像ユニット404を搭載した着脱式のカートリッジ402が装着され、AVケーブル9を通してテレビジョンモニタ5と接続されるアダプタ401とを含む。アダプタ401は、IRレシーバ(図示せず)を備える。マットユニット600は、図1のマットユニット3に相当し、フットスイッチSW7〜SW10を含む。また、マットユニット600は、マットユニット3と異なり、情報処理部4から独立しており、赤外光によって、入力信号を情報処理部4に送信するので、IR送信ユニット601を含む。IR送信ユニット601は、電源スイッチ603及びIR発光部605を含む。第一の入力装置6は、先端に再帰反射シートを貼り付けた再帰反射体61を含む。
【0163】
情報処理部4は、マットユニット600のIR送信ユニット603からの赤外光がIRレシーバに届き、再帰反射体61を撮像ユニット404によって撮像できる範囲内に置かれる。
【0164】
図32は、図31の撮像ユニット404の拡大図である。
【0165】
図32を参照して、カートリッジ402には、撮像ユニット404が取り付けられている。撮像ユニット404は、4つのIR発光ダイオード406と、赤外光だけを通すIRフィルタ408とを備え、IRフィルタ408の裏側にイメージセンサ409(後述)を備える。
【0166】
図33は、情報処理部4、手入力ユニット6、及びマットユニット600の電気的構成を説明する図である。
【0167】
図33を参照して、マットユニット600は、MCU607、IR発光部605、フットスイッチSW7からSW10を含む。MCU607は、フットスイッチSW7からSW10のオン/オフ信号を受け、IR発光部605を駆動して、IR通信により、ボタンスイッチSW7〜SW10のオン/オフ情報を、情報処理部4のIRレシーバへ送信する。
【0168】
情報処理部4のカートリッジ402は、プロセッサ11、外部メモリ13に相当するプロセッサ41、外部メモリ43をさらに含む。プロセッサ41は、ストロボ撮影を行うべく、4つのIR発光ダイオード406を間欠的に駆動し、間欠的に赤外光を発光させる。IR発光ダイオード406からのIRは、再帰反射体81により反射され、赤外線フィルタ408を介してイメージセンサ409に入力される。したがって、イメージセンサ409からは再帰反射体61含む画像信号(赤外光点灯時)がプロセッサ41へ出力される。IR発光ダイオード406は間欠的に駆動されるので、イメージセンサ409からは赤外光消灯時の画像信号も出力される。
【0169】
イメージセンサ409からのこれらのアナログ画像信号は、プロセッサ41に内蔵されたA/Dコンバータによってデジタル画像信号に変換される。プロセッサ41は、赤外光点灯時のデジタル画像信号と消灯時のデジタル画像信号との差分を求めて、この差分信号DI(差分画像DI)を基に、再帰反射体61の動きを解析する。このように、差分を求めることで、再帰反射体61からの反射光以外の光によるノイズを極力除去でき、精度良く再帰反射体61を検出できる。
【0170】
プロセッサ41は、再帰反射体61の運動の解析結果及びフットスイッチSW7からSW10のオン/オフ信号に基づいて、その他の演算、グラフィック処理、及びサウンド処理等を実行し、ビデオ信号およびオーディオ信号を出力する。プロセッサ41が生成したビデオ信号およびオーディオ信号は、アダプタ405及びAVケーブル9を介して、テレビジョンモニタ5に与えられ、テレビジョンモニタ5に上記第1及び第2の実施の形態で説明したような映像が表示され、そのスピーカ(図示せず)から音声が出力される。
【0171】
以上、本発明の実施の形態によれば、プレイヤは、キャラクタ101の下半身を動かしたい場合は自分の足を動かしマットユニット3又は600で入力を行い、キャラクタ101の上半身を動かしたい場合は自分の手を動かし手入力ユニット2、6、7又は8で入力を行えるので、直感的な操作が可能となる。
【0172】
プレイヤは足を動かすことによって、画面上のキャラクタ(キャラクタ101又はプレイヤキャラクタ201)を移動させることができ、手を動かすことによって画面上のキャラクタに跳び箱を飛び越える、ロープを掴む、銃を撃つ、ラケットを振るなどの行動をさせることができる。人間は普通移動を行う場合には足を使い、道具を使う、物を掴む、物を振る、又は物を投げるなどの行動を手を用いて行うため、プレイヤは、直感的に操作を行うことができる。また、プレイヤに対して臨場感を与えることができる。
【0173】
なお、本発明は、上記の実施の形態に限られるものではなく、その要旨を逸脱しない範囲で種種の態様において実施することが可能であり、例えば、以下のような変形も可能である。
【0174】
上記実施の形態では、プレイヤの手の動きを検出するために、手入力ユニット2、6、7、8、又は撮像ユニット404などを用いたが、プレイヤの手の動きを検出する入力手段はこれらに限られない。例えば、ジャイロスコープなどの傾きセンサ、重力センサなどを用いてプレイヤの手の動きするような入力手段を用いてもよい。傾きセンサにジャイロスコープなどを利用した場合は、より詳細な傾き情報を得ることができ、情報処理装置が実行するアプリケーションの幅が広がる。
【0175】
また例えば、本発明の第3の実施の形態の変形例として、手入力ユニット6を小型にして手で握ると隠れる程度のものにしてもよい。
【0176】
図34は、手入力ユニット6の変形例である再帰反射体62の例示図である。
【0177】
図34を参照して、再帰反射体62は、手を握ると指に隠れるため、撮像ユニット404に写らなくなる。この特性を利用すると、プレイヤが手を握ったり開いたりすることによって撮像ユニット404に再帰反射体62の像が写ったり写らなかったりするので、これをオン/オフの入力スイッチとして使用することができる。このようにすると、プレイヤは、手を握ったり開いたりという簡単な動作で、入力を行うことができる。
【0178】
さらに他の変形例として、例えば、手入力ユニット6のかわりに、手に把持して使用する運動用具に再帰反射シートを貼り付け、撮像手段によって当該運動用具の動きを検出することで、プレイヤの手の動きを検出し、入力として利用できるようにしてもよい。
【0179】
上記の実施の形態において、プレイヤの踏み込み動作を検知する第二の入力手段は、マットユニット3、600に含まれるフットスイッチSW1、SW2、又はSW7〜SW10であったが、フットスイッチの数はこれらに限定されない。
【0180】
また、プレイヤの足の動きを検出する第二の入力手段は、フットスイッチを含むマットユニットに限定されず、プレイヤが履く靴などに感圧センサを仕込み、プレイヤの踏み動作を検出する方式であってもよい。また、ステッパーなどの他の踏み込み動作による運動器具に、踏み込み動作を行うたびにスイッチが、オン/オフ信号を発生する回路を設けたり、感圧センサを設けたり、撮像によって当該運動装置の動き解析することによって、オン/オフ信号を出力するように仕込み、プレイヤの踏み込み動作を検出するようにしてもよい。もちろん、プレイヤの足に装着する装着物に、加速度センサ、傾きセンサ、振動センサ又は重力センサなどの各種センサを内蔵してプレイヤの足の動きを検出してもよいし、プレイヤの足に被写体を装着させ、当該被写体の動きを撮像によって検出し、入力を得るものでもよい。
【0181】
第一の入力手段及び第二の入力手段は、汎用的に様々な情報処理装置の入力装置として使われるものであってもよく、特定の情報処理装置に専用のものでなくてもよい。
【0182】
上記の実施例や、図35で説明したような入力パターンの他にも様々な入力パターンがあってよい。第一の入力装置からの入力と、足入力装置からの入力を同時に必要とするような入力パターンがあってもよい。
【0183】
第一の入力手段は二つ以上あってもよく、左右の手で異なる第一の入力手段を持ったり、状況に合わせて異なる種類の第一の入力装置を持ち替えたりする構成にしてもよい。
【0184】
上記の実施の形態において、第一の入力手段及びプレイヤの第二の入力手段からのそれぞれ入力に応じてプレイヤの入力動作による消費エネルギーを算出するようにしてもよい。
【0185】
このように構成すれば、プレイヤは入力動作がどの程度運動になっているのかを把握することができる。なおこの場合、あらかじめ経験によって求められた、それぞれの入力動作を行った際の平均的な単位消費エネルギー量を外部メモリ13に格納しておき、プレイヤの入力動作の数と乗算して消費エネルギーを算出しておけばよい。
【図面の簡単な説明】
【0186】
【図1】本発明の実施の形態による情報処理装置の全体構成を示す図。
【図2】プレイヤが把持した状態で図1の手入力ユニット7を情報処理部1側、つまり地面側から見た図。
【図3】図1の情報処理部1、マットユニット3、及び手入力ユニット7の電気的構成を示すブロック図。
【図4】本発明の実施の形態による情報処理装置が表示する画面の例示図。
【図5】本発明の実施の形態による情報処理装置が表示する他の画面の例示図。
【図6】本発明の実施の形態による情報処理装置が表示するさらに他の画面の例示図。
【図7】本発明の実施の形態による情報処理装置が表示するさらに他の画面の例示図。
【図8】本発明の実施の形態による情報処理装置が表示するさらに他の画面の例示図。
【図9】本発明の実施の形態による情報処理装置が表示するさらに他の画面の例示図。
【図10】プロセッサ11が実行する処理の全体的な流れを示すフローチャート。
【図11】プロセッサ11が実行するアプリケーションの画面遷移図。
【図12】図11のステップS26−Nで実行される第Nステージの例として、図5で説明した跳び箱ゲームの実行ルーチンを示すフローチャート。
【図13】図11のステップS26−Nで実行される第Nステージの例として、図7で説明したロープを使って崖を登るゲーム画面の実行ルーチンを示すフローチャート。
【図14】図11のステップS36−Mで実行される第M課目の例として、図8で説明したスイング運動検出画面の実行ルーチンを示すフローチャート。
【図15】ステップS24やS34で実行されるデータ入力画面の例として、図9で説明した文字入力画面の、入力受付処理の全体の流れを説明するフローチャート。
【図16】図15のステップS303の行選択処理の流れの一例を示すフローチャート。
【図17】図15のステップS305の文字選択処理の流れの一例を示すフローチャート。
【図18】本発明の第2の実施の形態における第一の入力手段の例示図。
【図19】手入力ユニット2の内部構成を説明する図。
【図20】本発明の第2の実施の形態によるゲーム画面の例示図。
【図21】本発明の第2の実施の形態によるゲーム画面の他の例示図。
【図22】本発明の第2の実施の形態における第一の入力手段の他の例示図。
【図23】図22の手入力ユニット8の内部構成を示す図。
【図24】図20で説明した銃撃戦ゲームを実行する際の、図10で説明したプロセッサ11の処理の全体の流れの内、ステップS3に相当する部分の処理の流れの一例を説明するフローチャート。
【図25】図24のステップS404のプレイヤキャラクタ制御処理の流れの一例を示すフローチャート。
【図26】図24のステップS408の攻撃判定の処理の流れの一例を示すフローチャート。
【図27】図24のステップS410のダメージ判定処理の流れの一例を示すフローチャート。
【図28】図21で説明した音楽ゲームを実行する際に、図10で説明したプロセッサ11の処理の全体の流れの内、ステップS3に相当する部分の処理の流れの一例を説明するフローチャート。
【図29】図28の移動オブジェクト制御処理の流れの一例を示すフローチャート。
【図30】図29のステップS224の判定処理の流れの一例を示すフローチャート。
【図31】本発明の第3の実施の形態による入力装置を利用した情報処理装置の使用例を示す図。
【図32】図31の撮像ユニット404の拡大図。
【図33】情報処理部4、手入力ユニット6、及びマットユニット600の電気的構成を説明する図。
【図34】手入力ユニット6の変形例である、再帰反射体62を説明する図。
【図35】本発明の第1の実施例における、プレイヤの入力コマンドを説明する図。
【符号の説明】
【0187】
1、4…情報処理装置、3、600…マットユニット、5…テレビジョンモニタ、2、6、7、8…手入力ユニット、711…傾きセンサ、713…振動センサ、811…加速度センサ、404…撮像ユニット
【特許請求の範囲】
【請求項1】
プレイヤの3次元空間内での手の動きを検出し、当該検出の結果に応じた入力を行う第一の入力手段と、
前記プレイヤの3次元空間内での足の動きを検出し、当該検出の結果に応じた入力を行う第二の入力手段と、
前記第一の入力手段からの入力に応じて、画面中のキャラクタが所定の行動を行うように制御する行動制御手段と、
前記第二の入力手段からの入力に応じて、前記キャラクタの位置情報を制御する位置制御手段と、を備える情報処理装置。
【請求項2】
プレイヤの3次元空間内での手の動きを検出し、当該検出の結果に応じた入力を行う第一の入力手段と、
前記プレイヤの3次元空間内での足の動きを検出し、当該検出の結果に応じた入力を行う第二の入力手段と、
前記第一の入力手段からの入力に応じて、画面中のキャラクタの上半身の運動を制御し、前記第二の入力手段からの入力に応じて、前記キャラクタの下半身の運動を制御するキャラクタ制御手段と、を備える情報処理装置。
【請求項3】
前記第一の入力手段は、前記プレイヤの手を撮像する第一の撮像手段を含む、請求項1又は2記載の情報処理装置。
【請求項4】
前記第二の入力手段は、前記プレイヤの足を撮像する第二の撮像手段を含む、請求項1から3の何れかに記載の情報処理装置。
【請求項5】
前記第一の入力手段は、前記プレイヤの手の動きを検出するための、加速度センサ、傾きセンサ、振動センサ及び重力センサのうち、一つまたは任意の組み合わせを含む、請求項1から4の何れかに記載の情報処理装置。
【請求項6】
前記第二の入力手段は、前記プレイヤの足の動きを検出するための、加速度センサ、傾きセンサ、振動センサ及び重力センサのうち、一つまたは任意の組み合わせを含む、請求項1から5の何れかに記載の情報処理装置。
【請求項7】
前記第二の入力手段は、前記プレイヤの踏み込み動作を検出する踏み込み検出手段を含む、請求項1から6の何れかに記載の情報処理装置。
【請求項8】
前記第一の入力手段及び前記第二の入力手段からのそれぞれの入力に基づいて、プレイヤの動きによって消費されるエネルギーを算出する消費エネルギー算出手段をさらに備える、請求項1から7の何れか記載の情報処理装置。
【請求項9】
前記第一の入力手段は、プレイヤが両手で把持するための把持部を含む、請求項1から8の何れかに記載の情報処理装置。
【請求項10】
前記把持部は、押下するとオンになるスイッチを含む、請求項9に記載の情報処理装置。
【請求項11】
前記第一の入力手段は、
プレイヤの手の動きに応じた操作信号を送信する複数の送信手段を含み、
前記送信手段は、互いに異なる方向を向いていることを特徴とする、請求項9又は10記載の情報処理装置。
【請求項12】
前記送信手段は、赤外線発光ダイオードであることを特徴とする、請求項11記載の情報処理装置。
【請求項1】
プレイヤの3次元空間内での手の動きを検出し、当該検出の結果に応じた入力を行う第一の入力手段と、
前記プレイヤの3次元空間内での足の動きを検出し、当該検出の結果に応じた入力を行う第二の入力手段と、
前記第一の入力手段からの入力に応じて、画面中のキャラクタが所定の行動を行うように制御する行動制御手段と、
前記第二の入力手段からの入力に応じて、前記キャラクタの位置情報を制御する位置制御手段と、を備える情報処理装置。
【請求項2】
プレイヤの3次元空間内での手の動きを検出し、当該検出の結果に応じた入力を行う第一の入力手段と、
前記プレイヤの3次元空間内での足の動きを検出し、当該検出の結果に応じた入力を行う第二の入力手段と、
前記第一の入力手段からの入力に応じて、画面中のキャラクタの上半身の運動を制御し、前記第二の入力手段からの入力に応じて、前記キャラクタの下半身の運動を制御するキャラクタ制御手段と、を備える情報処理装置。
【請求項3】
前記第一の入力手段は、前記プレイヤの手を撮像する第一の撮像手段を含む、請求項1又は2記載の情報処理装置。
【請求項4】
前記第二の入力手段は、前記プレイヤの足を撮像する第二の撮像手段を含む、請求項1から3の何れかに記載の情報処理装置。
【請求項5】
前記第一の入力手段は、前記プレイヤの手の動きを検出するための、加速度センサ、傾きセンサ、振動センサ及び重力センサのうち、一つまたは任意の組み合わせを含む、請求項1から4の何れかに記載の情報処理装置。
【請求項6】
前記第二の入力手段は、前記プレイヤの足の動きを検出するための、加速度センサ、傾きセンサ、振動センサ及び重力センサのうち、一つまたは任意の組み合わせを含む、請求項1から5の何れかに記載の情報処理装置。
【請求項7】
前記第二の入力手段は、前記プレイヤの踏み込み動作を検出する踏み込み検出手段を含む、請求項1から6の何れかに記載の情報処理装置。
【請求項8】
前記第一の入力手段及び前記第二の入力手段からのそれぞれの入力に基づいて、プレイヤの動きによって消費されるエネルギーを算出する消費エネルギー算出手段をさらに備える、請求項1から7の何れか記載の情報処理装置。
【請求項9】
前記第一の入力手段は、プレイヤが両手で把持するための把持部を含む、請求項1から8の何れかに記載の情報処理装置。
【請求項10】
前記把持部は、押下するとオンになるスイッチを含む、請求項9に記載の情報処理装置。
【請求項11】
前記第一の入力手段は、
プレイヤの手の動きに応じた操作信号を送信する複数の送信手段を含み、
前記送信手段は、互いに異なる方向を向いていることを特徴とする、請求項9又は10記載の情報処理装置。
【請求項12】
前記送信手段は、赤外線発光ダイオードであることを特徴とする、請求項11記載の情報処理装置。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【図22】
【図23】
【図24】
【図25】
【図26】
【図27】
【図28】
【図29】
【図30】
【図31】
【図32】
【図33】
【図34】
【図35】
【図20】
【図21】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【図22】
【図23】
【図24】
【図25】
【図26】
【図27】
【図28】
【図29】
【図30】
【図31】
【図32】
【図33】
【図34】
【図35】
【図20】
【図21】
【公開番号】特開2008−49117(P2008−49117A)
【公開日】平成20年3月6日(2008.3.6)
【国際特許分類】
【出願番号】特願2007−123988(P2007−123988)
【出願日】平成19年5月8日(2007.5.8)
【出願人】(396025861)新世代株式会社 (138)
【Fターム(参考)】
【公開日】平成20年3月6日(2008.3.6)
【国際特許分類】
【出願日】平成19年5月8日(2007.5.8)
【出願人】(396025861)新世代株式会社 (138)
【Fターム(参考)】
[ Back to top ]