(57)【要約】【課題】ユーザの現状の生体信号およびユーザの現状の動きや姿勢を用いて所定の提示を行うことによって、ユーザの状態変化を促すことができる情報処理プログラムおよび情報処理装置を提供する。【解決手段】ユーザから取得した生体信号に応じた情報を提示する情報処理装置のコンピュータで実行される情報処理プログラムである。情報処理プログラムは、生体信号取得手段、動き・姿勢情報取得手段、および提示手段として、コンピュータを機能させる。生体信号取得手段は、ユーザから生体信号を取得する。動き・姿勢情報取得手段は、ユーザの動きまたは姿勢の情報を検出する検出手段から、生体信号取得手段が取得した生体信号と関連させて当該情報を取得する。提示手段は、生体信号取得手段が取得した生体信号および動き・姿勢情報取得手段が取得した情報の両方に基づいて、所定の提示を行う。【選択図】図１７
2010231399.tif 000002
【特許請求の範囲】
【請求項１】
ユーザから取得した生体信号に応じた情報を提示する情報処理装置のコンピュータで実行される情報処理プログラムであって、
前記コンピュータを、
ユーザから生体信号を取得する生体信号取得手段と、
ユーザの動きまたは姿勢の情報を検出する検出手段から、前記生体信号取得手段が取得した生体信号と関連させて当該情報を取得する動き・姿勢情報取得手段と、
前記生体信号取得手段が取得した生体信号および前記動き・姿勢情報取得手段が取得した情報の両方に基づいて、所定の提示を行う提示手段として機能させる、情報処理プログラム。
【請求項２】
前記動き・姿勢情報取得手段が取得した情報に基づいて、ユーザが操作する入力装置の動きを判定する動き判定手段として、さらに前記コンピュータを機能させ、
前記提示手段は、前記生体信号取得手段が取得した生体信号および前記動き判定手段が判定した前記入力装置の動きの両方に基づいて、前記提示を行う、請求項１に記載の情報処理プログラム。
【請求項３】
ユーザに所定の動きまたは姿勢をさせるための指示を行う指示手段として、さらに前記コンピュータを機能させる、請求項１に記載の情報処理プログラム。
【請求項４】
前記提示手段は、前記指示手段による指示がされているときに取得された前記生体信号および前記動き・姿勢情報取得手段が取得した情報の両方に基づいて、前記提示を行う、請求項３に記載の情報処理プログラム。
【請求項５】
前記動き・姿勢情報取得手段により取得された情報に基づいて、ユーザが前記指示手段によって指示された動きまたは姿勢となっているか否かを判定する判定手段として、さらに前記コンピュータを機能させ、
前記提示手段は、ユーザが前記指示に応じた動きまたは姿勢となっていると前記判定手段が判定している間または判定した後に、前記生体信号取得手段が取得した前記生体信号に基づいた前記提示を行う、請求項３に記載の情報処理プログラム。
【請求項６】
前記指示手段は、所定の生体信号が出力される動きまたは姿勢をユーザに指示する、請求項３に記載の情報処理プログラム。
【請求項７】
前記提示手段は、前記動き判定手段が判定可能な前記入力装置の動きに沿った、当該入力装置を動かす動作を指示する提示を行う、請求項２に記載の情報処理プログラム。
【請求項８】
前記提示手段は、前記生体信号取得手段が取得した生体信号および前記動き・姿勢情報取得手段が取得した情報の両方に基づいて、ユーザの所定の動きまたは姿勢を指示する提示を行う、請求項１に記載の情報処理プログラム。
【請求項９】
前記提示手段は、前記生体信号取得手段が取得した生体信号に基づいて、当該生体信号に変化を与える動作または姿勢を指示する提示を行う、請求項８に記載の情報処理プログラム。
【請求項１０】
前記生体信号取得手段は、ユーザの脈拍または心拍に関する信号を前記生体信号として取得する、請求項１に記載の情報処理プログラム。
【請求項１１】
前記生体信号取得手段は、ユーザの脈波、心拍数、交感神経活動度、副交感神経活動度、心拍変動係数、心拍間隔、呼吸周期、脈波振幅から成る群から選ばれる少なくとも１つを前記生体信号として取得する、請求項１に記載の情報処理プログラム。
【請求項１２】
前記生体信号取得手段は、ユーザの脈波振幅を少なくとも取得して、
前記提示手段は、前記ユーザの脈波振幅の変化を用いて当該ユーザの苦しさを判断し、当該判断結果に基づいて動作を指示する提示を行う、請求項１１に記載の情報処理プログラム。
【請求項１３】
前記入力装置は、加速度センサを備え、
前記動き判定手段は、前記加速度センサから出力される加速度データが示す加速度を用いて、前記入力装置の動きを判定する、請求項２に記載の情報処理プログラム。
【請求項１４】
前記動き判定手段は、前記加速度センサから出力される加速度データが示す加速度を、前記入力装置に生じる重力の方向とし、当該重力の方向を基準とした前記入力装置の傾きに基づいて前記入力装置の動きを判定する、請求項１３に記載の情報処理プログラム。
【請求項１５】
前記入力装置は、ジャイロセンサを備え、
前記動き判定手段は、前記ジャイロセンサから出力される角速度データが示す角速度を用いて、前記入力装置の動きを判定する、請求項２に記載の情報処理プログラム。
【請求項１６】
前記提示手段は、前記生体信号取得手段が取得した生体信号および前記動き・姿勢情報取得手段が取得した情報の両方に基づいて生成した画像および文字の少なくとも一方を表示装置に表示することによって、前記提示を行う、請求項１に記載の情報処理プログラム。
【請求項１７】
前記提示手段は、前記生体信号取得手段が取得した生体信号および前記動き・姿勢情報取得手段が取得した情報の両方に基づいて生成したオブジェクトを表示装置に表示することによって、前記提示を行う、請求項１６に記載の情報処理プログラム。
【請求項１８】
前記提示手段は、前記生体信号取得手段が取得した生体信号および前記動き・姿勢情報取得手段が取得した情報の両方に基づいて、表示装置に表示された所定のオブジェクトの動作を制御することによって、前記提示を行う、請求項１に記載の情報処理プログラム。
【請求項１９】
前記提示手段は、前記生体信号取得手段が取得した生体信号に基づいて前記オブジェクトが仮想世界において第１の動作をする提示を行い、前記動き・姿勢情報取得手段が取得した情報に基づいて前記オブジェクトが当該仮想世界において当該第１の動作とは異なる第２の動作をする提示を行う、請求項１８に記載の情報処理プログラム。
【請求項２０】
前記提示手段は、前記第１の動作および前記第２の動作の一方として、前記仮想世界において前記オブジェクトの少なくとも一部を移動させ、前記第１の動作および前記第２の動作の他方として、前記仮想世界において前記オブジェクトの姿勢を変化させる、請求項１９に記載の情報処理プログラム。
【請求項２１】
前記提示手段は、前記第１の動作および前記第２の動作の一方として、前記仮想世界において前記オブジェクトの少なくとも一部を所定の第１方向へ移動させ、前記第１の動作および前記第２の動作の他方として、前記仮想世界において前記オブジェクトの少なくとも一部を所定の第２方向へ移動させる、請求項１２に記載の情報処理プログラム。
【請求項２２】
前記仮想世界における前記オブジェクトの動きを判定するオブジェクト動き判定手段として、さらに前記コンピュータを機能させる、請求項１７乃至２１の何れか１つに記載の情報処理プログラム。
【請求項２３】
前記オブジェクトの動きを指定するための地形オブジェクトを前記仮想世界に登場させることによって、ユーザに所定の動きまたは姿勢をさせるための指示を行う指示手段として、さらに前記コンピュータを機能させ、
前記オブジェクト動き判定手段は、前記オブジェクトと前記地形オブジェクトとの接触判定を行う、請求項２２に記載の情報処理プログラム。
【請求項２４】
前記指示手段は、前記生体信号取得手段により取得された生体信号に応じて前記地形オブジェクトを変化させる、請求項２３に記載の情報処理プログラム。
【請求項２５】
前記提示手段は、前記第１の動作として、前記生体信号取得手段が取得したユーザの呼吸に関する生体信号に応じて、前記オブジェクトの少なくとも一部を所定の方向へ移動させる、請求項１９に記載の情報処理プログラム。
【請求項２６】
前記提示手段は、前記生体信号取得手段が取得した生体信号から得られるユーザの呼吸周期に基づいて起伏して、前記所定の方向への前記オブジェクトの移動を限定する前記仮想世界の障害物をさらに前記表示装置に表示することによって、前記提示を行い、
前記仮想世界において、前記オブジェクトと前記起伏する障害物とが接触または重なる場合、マイナスの評価を行う評価手段として、さらに前記コンピュータを機能させる、請求項２５に記載の情報処理プログラム。
【請求項２７】
前記生体信号取得手段は、ユーザの脈波振幅を少なくとも取得して、
前記提示手段は、前記生体信号取得手段が取得した前記ユーザの脈波振幅の変化を用いて当該ユーザの苦しさを判定し、ユーザが苦しいと判断される場合、前記オブジェクトの表示態様を変化させることによって、前記提示を行う、請求項１９に記載の情報処理プログラム。
【請求項２８】
前記提示手段は、前記第２の動作として、前記動き・姿勢情報取得手段が取得した情報に基づいて、前記仮想世界において前記オブジェクトの姿勢を傾けて変化させ、
前記情報処理プログラムは、前記仮想世界において、前記オブジェクトが傾く動作をその傾斜角度によって限定する当該仮想世界の障害物と前記オブジェクトとが接触または重なる場合、マイナスの評価を行う評価手段として、さらに前記コンピュータを機能させ、
前記評価手段は、時間経過と共に前記障害物の傾斜角度を漸増的に変化させ、前記ユーザが苦しいと前記提示手段が判断した場合、前記障害物の傾斜角度を一定にする、請求項２７に記載の情報処理プログラム。
【請求項２９】
前記提示手段は、前記生体信号取得手段が取得した生体信号およびおよび前記動き・姿勢情報取得手段が取得した情報の両方に基づいた音声を出力することによって、前記提示を行う、請求項１に記載の情報処理プログラム。
【請求項３０】
ユーザから取得した生体信号に応じた情報を提示する情報処理装置であって、
ユーザから生体信号を取得する生体信号取得手段と、
ユーザの動きまたは姿勢の情報を検出する検出手段から、前記生体信号取得手段が取得した生体信号と関連させて当該情報を取得する動き・姿勢情報取得手段と、
前記生体信号取得手段が取得した生体信号および前記動き・姿勢情報取得手段が取得した情報の両方に基づいて、所定の提示を行う提示手段とを備える、情報処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理プログラムおよび情報処理装置に関し、より特定的には、利用者の生体信号に応じて所定の提示を行う情報処理プログラムおよび情報処理装置に関する。
【背景技術】
【０００２】
非特許文献１では、ストレスマネジメントやリラクゼーションを目的としたバイオフィードバックシステムが提案されている。上記システムは、計測したユーザの心拍情報に基づいて、リアルタイムにリラクゼーションレベルを推定して提示している。そして、上記システムは、ユーザのリラクゼーション効果を高めるようなはたらきかけを行うことによって、ユーザ個人に適応したバイオフィードバックを行う機能を有している。
【先行技術文献】
【非特許文献】
【０００３】
【非特許文献１】長谷川貴之、横山清子、「コンピュータと心拍情報との対話機能によるリラクゼーションバイオフィードバックシステム」、電子情報通信学会技術研究報告．ＭＢＥ、ＭＥとバイオサイバネティックス、社団法人電子情報通信学会、２００３年１１月２０日、Ｖｏｌ．１０３、Ｎｏ．４７０、ｐ．３５−３８
【発明の概要】
【発明が解決しようとする課題】
【０００４】
上記非特許文献１に記載されたバイオフィードバックシステムでは、利用者の心拍情報等に基づいて算出されるリラクゼーションレベルという値を、キャラクタの動作や箱庭の環境に反映させて表現している。これによって、上記バイオフィードバックシステムは、ユーザに対してリラクゼーション効果を高める語りかけを行っている。しかしながら、これらの表現は、ユーザに対して単にリラクゼーションレベルという値を視覚的に提示しているだけであり、結果的にユーザが現状のリラクゼーションレベルを認識できるだけとなる。
【０００５】
それ故に、本発明の目的は、ユーザの現状の生体信号およびユーザの現状の動きや姿勢を用いて所定の提示を行うことによって、ユーザの状態変化を促すことができる情報処理プログラムおよび情報処理装置を提供することである。
【課題を解決するための手段】
【０００６】
上記の目的を達成するために、本発明は以下の構成を採用した。なお、括弧内の参照符号やステップ番号等は、本発明の理解を助けるために後述する実施形態との対応関係を示したものであって、本発明の範囲を何ら限定するものではない。
【０００７】
第１の発明は、ユーザから取得した生体信号（Ｄｃ）に応じた情報を提示する情報処理装置（５）のコンピュータ（１０）で実行される情報処理プログラムである。情報処理プログラムは、生体信号取得手段（ステップ４２、４９、８２、および８４を実行するＣＰＵ１０；以下、単にステップ番号のみ記載する）、動き・姿勢情報取得手段（Ｓ８４）、および提示手段（Ｓ４４、Ｓ４６、Ｓ５１、Ｓ５２、Ｓ８６、Ｓ９０、Ｓ９２、Ｓ１０４、Ｓ１０７、Ｓ１１１）として、コンピュータを機能させる。生体信号取得手段は、ユーザから生体信号を取得する。動き・姿勢情報取得手段は、ユーザの動きまたは姿勢の情報を検出する検出手段（７０１）から、生体信号取得手段が取得した生体信号と関連させて当該情報を取得する。提示手段は、生体信号取得手段が取得した生体信号および動き・姿勢情報取得手段が取得した情報の両方に基づいて、所定の提示を行う。
【０００８】
第２の発明は、上記第１の発明において、動き判定手段（Ｓ８５）として、さらにコンピュータを機能させる。動き判定手段は、動き・姿勢情報取得手段が取得した情報に基づいて、ユーザが操作する入力装置（７０）の動きを判定する。提示手段は、生体信号取得手段が取得した生体信号および動き判定手段が判定した入力装置の動きの両方に基づいて、提示を行う。
【０００９】
第３の発明は、上記第１の発明において、指示手段として、さらにコンピュータを機能させる。指示手段は、ユーザに所定の動きまたは姿勢をさせるための指示を行う。
【００１０】
第４の発明は、上記第３の発明において、提示手段は、指示手段による指示がされているときに取得された生体信号および動き・姿勢情報取得手段が取得した情報の両方に基づいて、提示を行う。
【００１１】
第５の発明は、上記第３の発明において、判定手段として、さらにコンピュータを機能させる。判定手段は、動き・姿勢情報取得手段により取得された情報に基づいて、ユーザが指示手段によって指示された動きまたは姿勢となっているか否かを判定する。提示手段は、ユーザが指示に応じた動きまたは姿勢となっていると判定手段が判定している間または判定した後に、生体信号取得手段が取得した生体信号に基づいた提示を行う。
【００１２】
第６の発明は、上記第３の発明において、指示手段は、所定の生体信号が出力される動きまたは姿勢をユーザに指示する。
【００１３】
第７の発明は、上記第２の発明において、提示手段は、動き判定手段が判定可能な入力装置の動きに沿った、当該入力装置を動かす動作を指示する提示（天井Ｔ、地面Ｂ）を行う。
【００１４】
第８の発明は、上記第１の発明において、提示手段は、生体信号取得手段が取得した生体信号および動き・姿勢情報取得手段が取得した情報の両方に基づいて、ユーザの所定の動きまたは姿勢を指示する提示を行う。
【００１５】
第９の発明は、上記第８の発明において、提示手段は、生体信号取得手段が取得した生体信号に基づいて、当該生体信号に変化を与える動作または姿勢を指示する提示を行う。
【００１６】
第１０の発明は、上記第１の発明において、生体信号取得手段は、ユーザの脈拍または心拍に関する信号を生体信号として取得する。
【００１７】
第１１の発明は、上記第１の発明において、生体信号取得手段は、ユーザの脈波、心拍数、交感神経活動度、副交感神経活動度、心拍変動係数、心拍間隔、呼吸周期、脈波振幅から成る群から選ばれる少なくとも１つを生体信号として取得する。
【００１８】
第１２の発明は、上記第１１の発明において、生体信号取得手段は、ユーザの脈波振幅を少なくとも取得する。提示手段は、ユーザの脈波振幅の変化を用いて当該ユーザの苦しさを判断し、当該判断結果に基づいて動作を指示する提示を行う。
【００１９】
第１３の発明は、上記第２の発明において、入力装置は、加速度センサ（７０１）を備える。動き判定手段は、加速度センサから出力される加速度データ（Ｄａ）が示す加速度を用いて、入力装置の動きを判定する。
【００２０】
第１４の発明は、上記第１３の発明において、動き判定手段は、加速度センサから出力される加速度データが示す加速度を、入力装置に生じる重力の方向とし、当該重力の方向を基準とした入力装置の傾きに基づいて入力装置の動きを判定する。
【００２１】
第１５の発明は、上記第２の発明において、入力装置は、ジャイロセンサを備える。動き判定手段は、ジャイロセンサから出力される角速度データが示す角速度を用いて、入力装置の動きを判定する。
【００２２】
第１６の発明は、上記第１の発明において、提示手段は、生体信号取得手段が取得した生体信号および動き・姿勢情報取得手段が取得した情報の両方に基づいて生成した画像および文字の少なくとも一方を表示装置（２）に表示することによって、提示を行う。
【００２３】
第１７の発明は、上記第１６の発明において、提示手段は、生体信号取得手段が取得した生体信号および動き・姿勢情報取得手段が取得した情報の両方に基づいて生成したオブジェクト（ＰＣ）を表示装置に表示することによって、提示を行う。
【００２４】
第１８の発明は、上記第１の発明において、提示手段は、生体信号取得手段が取得した生体信号および動き・姿勢情報取得手段が取得した情報の両方に基づいて、表示装置に表示された所定のオブジェクトの動作を制御することによって、提示を行う。
【００２５】
第１９の発明は、上記第１８の発明において、生体信号取得手段が取得した生体信号に基づいてオブジェクトが仮想世界において第１の動作をする提示を行い、動き・姿勢情報取得手段が取得した情報に基づいてオブジェクトが当該仮想世界において当該第１の動作とは異なる第２の動作をする提示を行う。
【００２６】
第２０の発明は、上記第１９の発明において、提示手段は、第１の動作および第２の動作の一方として、仮想世界においてオブジェクトの少なくとも一部（ＰＣ２）を移動（昇降）させ、第１の動作および第２の動作の他方として、仮想世界においてオブジェクトの姿勢を変化させる。
【００２７】
第２１の発明は、上記第１２の発明において、提示手段は、第１の動作および第２の動作の一方として、仮想世界においてオブジェクトの少なくとも一部を所定の第１方向へ移動させ、第１の動作および第２の動作の他方として、仮想世界においてオブジェクトの少なくとも一部を所定の第２方向へ移動させる。
【００２８】
第２２の発明は、上記第１７〜第２１の発明の何れか１つにおいて、オブジェクト動き判定手段として、さらにコンピュータを機能させる。オブジェクト動き判定手段は、仮想世界におけるオブジェクトの動きを判定する。
【００２９】
第２３の発明は、上記第２２の発明において、指示手段として、さらにコンピュータを機能させる。指示手段は、オブジェクトの動きを指定するための地形オブジェクトを仮想世界に登場させることによって、ユーザに所定の動きまたは姿勢をさせるための指示を行う。オブジェクト動き判定手段は、オブジェクトと地形オブジェクトとの接触判定を行う。
【００３０】
第２４の発明は、上記第２３の発明において、指示手段は、生体信号取得手段により取得された生体信号に応じて地形オブジェクトを変化させる。
【００３１】
第２５の発明は、上記第１９の発明において、提示手段は、第１の動作として、生体信号取得手段が取得したユーザの呼吸に関する生体信号に応じて、オブジェクトの少なくとも一部を所定の方向へ移動させる。
【００３２】
第２６の発明は、上記第２５の発明において、提示手段は、生体信号取得手段が取得した生体信号から得られるユーザの呼吸周期に基づいて起伏して、所定の方向へのオブジェクトの移動を限定する仮想世界の障害物（天井Ｔ）をさらに表示装置に表示することによって、提示を行う。評価手段（Ｓ１０１、Ｓ１０２）として、さらにコンピュータを機能させる。評価手段は、仮想世界において、オブジェクトと起伏する障害物とが接触または重なる場合、マイナスの評価を行う。
【００３３】
第２７の発明は、上記第１９の発明において、生体信号取得手段は、ユーザの脈波振幅を少なくとも取得する。提示手段は、生体信号取得手段が取得したユーザの脈波振幅の変化を用いて当該ユーザの苦しさを判定し、ユーザが苦しいと判断される場合、オブジェクトの表示態様を変化させることによって、提示を行う。
【００３４】
第２８の発明は、上記第２７の発明において、提示手段は、第２の動作として、動き・姿勢情報取得手段が取得した情報に基づいて、仮想世界においてオブジェクトの姿勢を傾けて変化させる。情報処理プログラムは、評価手段として、さらにコンピュータを機能させる。評価手段は、仮想世界において、オブジェクトが傾く動作をその傾斜角度によって限定する当該仮想世界の障害物（地面Ｂ）とオブジェクトとが接触または重なる場合、マイナスの評価を行う。評価手段は、時間経過と共に障害物の傾斜角度を漸増的に変化させ、ユーザが苦しいと提示手段が判断した場合、障害物の傾斜角度を一定にする。
【００３５】
第２９の発明は、上記第１の発明において、提示手段は、生体信号取得手段が取得した生体信号およびおよび動き・姿勢情報取得手段が取得した情報の両方に基づいた音声を出力することによって、提示を行う。
【００３６】
第３０の発明は、ユーザから取得した生体信号に応じた情報を提示する情報処理装置である。情報処理装置は、生体信号取得手段、動き・姿勢情報取得手段、および提示手段を備える。生体信号取得手段は、ユーザから生体信号を取得する。動き・姿勢情報取得手段は、ユーザの動きまたは姿勢の情報を検出する検出手段から、生体信号取得手段が取得した生体信号と関連させて当該情報を取得する。提示手段は、生体信号取得手段が取得した生体信号および動き・姿勢情報取得手段が取得した情報の両方に基づいて、所定の提示を行う。
【発明の効果】
【００３７】
上記第１の発明によれば、ユーザの現状の生体信号だけでなく、ユーザの現状の動きや姿勢も用いて所定の提示が行われるため、ユーザは自分自身の身体の状態がより理解できると共に、ユーザの動きや姿勢を組み合わせることによってユーザの身体状態の変化を促すことができる。
【００３８】
上記第２の発明によれば、ユーザが入力装置を動かすことによって、ユーザの現状の動きや姿勢を検出することができる。
【００３９】
上記第３の発明によれば、ユーザに適切な動きをさせたり適切な姿勢をとらせたりすることができる。
【００４０】
上記第４の発明によれば、ユーザが指示された動きをしたり指示された姿勢をとったりしているときに得られる情報に基づいた提示が可能となる。
【００４１】
上記第５の発明によれば、ユーザが指示された動きをしたり指示された姿勢をとったりしたことによる、生体信号の変化を提示することができる。
【００４２】
上記第６の発明によれば、適切な生体信号が得られるような動作や姿勢をユーザに指示することができる。
【００４３】
上記第７の発明によれば、入力装置を動かすようにユーザが促されるため、当該入力装置を動かすユーザの動作によってユーザの身体状態の変化を促すことができる。
【００４４】
上記第８の発明によれば、ユーザ自身の生体信号に基づいた動きや姿勢をユーザに促すことができるので、ユーザの動きや姿勢によって当該生体信号に関わるユーザの身体状態の変化を促すことができる。
【００４５】
上記第９の発明によれば、ユーザ自身の生体信号が変化する動きや姿勢をユーザに促すことができる。
【００４６】
上記第１０の発明によれば、ユーザの脈拍や心拍に関する提示を行うことができる。
【００４７】
上記第１１の発明によれば、脈波、心拍数、交感神経活動度、副交感神経活動度、心拍変動係数、心拍間隔、呼吸周期、または脈波振幅を用いた提示をユーザに対して行うことができる。
【００４８】
上記第１２の発明によれば、ユーザの苦しさが判断されるため、当該判断結果を用いてユーザにとって適度な動作や姿勢を指示することができる。
【００４９】
上記第１３の発明によれば、入力装置に生じる加速度を用いて、当該入力装置の動きを判定することができる。
【００５０】
上記第１４の発明によれば、入力装置に生じる重力方向を基準とした当該入力装置の傾きを判定することができる。
【００５１】
上記第１５の発明によれば、入力装置の回転を用いて、当該入力装置の動きを判定することができる。
【００５２】
上記第１６の発明によれば、ユーザの生体信号および動きや姿勢に基づいた画像または文字を提示することによって、ユーザは自分自身の身体の状態がより理解できると共に、ユーザの動きや姿勢を組み合わせることによってユーザの身体状態の変化を促すことができる。
【００５３】
上記第１７および第１８の発明によれば、仮想世界において、ユーザの生体信号および動きや姿勢に基づいたオブジェクトを提示することによって、ユーザは自分自身の身体の状態がより理解できると共に、ユーザの動きや姿勢を組み合わせることによってユーザの身体状態の変化を促すことができる。
【００５４】
上記第１９の発明によれば、仮想世界のオブジェクトが、ユーザの生体信号および動きや姿勢に基づいてそれぞれ異なる動作を行うため、ユーザは、自分自身の生体信号に基づいた提示と動きや姿勢に基づいた提示とを区別して理解することができ、自分自身の動きや姿勢によってオブジェクトを動作させながら自分自身の生体信号によってもオブジェクトを動作させることができる。
【００５５】
上記第２０の発明によれば、自分自身の動きや姿勢と自分自身の生体信号とによって仮想空間のオブジェクトを傾けたり、オブジェクトの少なくとも一部を移動させたりすることができる。
【００５６】
上記第２１の発明によれば、仮想世界のオブジェクトが、ユーザの生体信号および動きや姿勢に基づいてそれぞれ異なる方向へ移動するため、ユーザは、自分自身の生体信号に基づいた提示と動きや姿勢に基づいた提示とを区別して理解することができ、自分自身の動きや姿勢によってオブジェクトを動作させながら自分自身の生体信号によってもオブジェクトを動作させることができる。
【００５７】
上記第２２の発明によれば、オブジェクトの動きを用いて、ユーザの生体信号やユーザの動きや姿勢を評価することができる。
【００５８】
上記第２３の発明によれば、地形オブジェクトに応じた操作が要求されるため、当該操作に合った生体信号を生じさせたり、当該操作に合った動きをしたり、当該操作に合った姿勢をとったりすることによって、ユーザの身体状態の変化を促すことができる。
【００５９】
上記第２４の発明によれば、ユーザの生体信号に基づいて、適度な操作を指示することができる。
【００６０】
上記第２５の発明によれば、ユーザ自身の呼吸によって、オブジェクトの少なくとも一部を所定の方向に移動させることができる。
【００６１】
上記第２６の発明によれば、ユーザは、障害物を避けるようにオブジェクトを操作しなければならないため、障害物を避けるような呼吸が要求される。一方、障害物の形状が自分自身の呼吸周期に基づいて決定される。したがって、自分自身の呼吸周期より遅くなるように障害物の形状を決定することによって、結果的にユーザの呼吸周期を徐々に遅くするように促すことができる。一方、自分自身の呼吸周期より速くなるように障害物の形状を決定することによって、結果的にユーザの呼吸周期を徐々に速くするように促すことができる。
【００６２】
上記第２７の発明によれば、ユーザの苦しさをオブジェクトの表示態様で提示することができる。
【００６３】
上記第２８の発明によれば、ユーザは、障害物を避けるようにオブジェクトを操作しなければならないため、障害物を避けるような動きや姿勢が要求される。そして、ユーザが障害物の傾きに応じた動作を行い、ユーザにとってその動作が苦しくなると障害物の傾きが一定となるため、ユーザの苦しさに応じた制御が可能となる。
【００６４】
上記第２９の発明によれば、ユーザの生体信号および動きや姿勢に基づいた音声を提示することによって、ユーザは自分自身の身体の状態がより理解できると共に、ユーザの動きや姿勢を組み合わせることによってユーザの身体状態の変化を促すことができる。
【００６５】
本発明の情報処理装置によれば、上述した情報処理プログラムと同様の効果を得ることができる。
【図面の簡単な説明】
【００６６】
【図１】本発明の一実施形態に係るゲームシステム１の一例を示す外観図
【図２】図１のゲーム装置本体５の一例を示すブロック図
【図３】図１のコアユニット７０の上面後方から見た一例を示す斜視図
【図４】図３のコアユニット７０を下面前方から見た一例を示す斜視図
【図５】図３のコアユニット７０の上筐体を外した状態の一例を示すを示す斜視図
【図６】図４のコアユニット７０の下筐体を外した状態の一例を示すを示す斜視図
【図７】図３のコアユニット７０の構成の一例を示すを示すブロック図
【図８】バイタルセンサ７６の構成の一例を示すブロック図
【図９】バイタルセンサ７６から出力される生体情報の一例である脈波情報の例を示す図
【図１０】モニタ２に表示される一連の画像の一例を示す図
【図１１】モニタ２に表示される一連の画像の一例を示す図
【図１２】モニタ２に表示される一連の画像の一例を示す図
【図１３】モニタ２に表示される一連の画像の一例を示す図
【図１４】モニタ２に表示される一連の画像の一例を示す図
【図１５】モニタ２に表示される一連の画像の一例を示す図
【図１６】モニタ２に表示される一連の画像の一例を示す図
【図１７】モニタ２に表示される一連の画像の一例を示す図
【図１８】モニタ２に表示される一連の画像の一例を示す図
【図１９】ゲーム装置本体５のメインメモリに記憶される主なデータおよびプログラムの一例を示す図
【図２０】ゲーム装置本体５において実行される情報処理の一例を示すフローチャート
【図２１】図２０のステップ４８のストレッチゲーム処理における前半の動作の一例を示すフローチャート
【図２２】図２０のステップ４８のストレッチゲーム処理における後半の動作の一例を示すフローチャート
【発明を実施するための形態】
【００６７】
図１を参照して、本発明の一実施形態に係る情報処理プログラムを実行する装置について説明する。以下、説明を具体的にするために、当該装置の一例である据置型のゲーム装置本体５を含むゲームシステムを用いて説明する。なお、図１は据置型のゲーム装置３を含むゲームシステム１の一例を示す外観図であり、図２はゲーム装置本体５の一例を示すブロック図である。以下、当該ゲームシステム１について説明する。
【００６８】
図１において、ゲームシステム１は、表示手段の一例の家庭用テレビジョン受像機（以下、モニタと記載する）２と、当該モニタ２に接続コードを介して接続する据置型のゲーム装置３とから構成される。モニタ２は、ゲーム装置３から出力された音声信号を音声出力するためのスピーカ２ａを備える。また、ゲーム装置３は、本発明の情報処理プログラムの一例であるゲームプログラムを記録した光ディスク４と、当該光ディスク４のゲームプログラムを実行してゲーム画面をモニタ２に表示出力させるためのコンピュータを搭載したゲーム装置本体５と、ゲーム画面に表示されたキャラクタ等を操作するゲームに必要な操作情報をゲーム装置本体５に与えるためのコントローラ７とを備えている。
【００６９】
また、ゲーム装置本体５は、無線コントローラモジュール１９（図２参照）を内蔵する。無線コントローラモジュール１９は、コントローラ７から無線送信されるデータを受信し、ゲーム装置本体５からコントローラ７へデータを送信して、コントローラ７とゲーム装置本体５とを無線通信によって接続する。さらに、ゲーム装置本体５には、当該ゲーム装置本体５に対して交換可能に用いられる情報記憶媒体の一例の光ディスク４が脱着される。
【００７０】
また、ゲーム装置本体５には、セーブデータ等のデータを固定的に記憶するバックアップメモリとして機能するフラッシュメモリ１７（図２参照）が搭載される。ゲーム装置本体５は、光ディスク４に記憶されたゲームプログラム等を実行することによって、その結果をゲーム画像としてモニタ２に表示する。また、ゲームプログラム等は、光ディスク４に限らず、フラッシュメモリ１７に予め記録されたものを実行するようにしてもよい。さらに、ゲーム装置本体５は、フラッシュメモリ１７に記憶されたセーブデータを用いて、過去に実行されたゲーム状態を再現して、ゲーム画像をモニタ２に表示することもできる。そして、ゲーム装置３のユーザは、モニタ２に表示されたゲーム画像を見ながら、コントローラ７を操作することによって、ゲーム進行を楽しむことができる。
【００７１】
コントローラ７は、無線コントローラモジュール１９を内蔵するゲーム装置本体５へ、例えばＢｌｕｅｔｏｏｔｈ（ブルートゥース；登録商標）の技術を用いて操作情報および生体情報等の送信データを無線送信する。コントローラ７は、コアユニット７０およびバイタルセンサ７６を備えており、コアユニット７０およびバイタルセンサ７６が屈曲自在な接続ケーブル７９を介して互いに接続されて構成されている。コアユニット７０は、主にモニタ２の表示画面に表示されるオブジェクト等を操作するための操作手段である。バイタルセンサ７６は、ユーザの身体（例えば、指）に装着されてユーザの生体信号を取得し、接続ケーブル７９を介してコアユニット７０へ生体情報を送る。コアユニット７０は、片手で把持可能な程度の大きさのハウジングと、当該ハウジングの表面に露出して設けられた複数個の操作ボタン（十字キーやスティック等を含む）とが設けられている。また、後述により明らかとなるが、コアユニット７０は、当該コアユニット７０から見た画像を撮像する撮像情報演算部７４を備えている。また、撮像情報演算部７４の撮像対象の一例として、モニタ２の表示画面近傍に２つのＬＥＤモジュール（以下、マーカと記載する）８Ｌおよび８Ｒが設置される。これらマーカ８Ｌおよび８Ｒは、それぞれモニタ２の前方に向かって例えば赤外光を出力する。また、コントローラ７（例えば、コアユニット７０）は、ゲーム装置本体５の無線コントローラモジュール１９から無線送信された送信データを通信部７５で受信して、当該送信データに応じた音や振動を発生させることもできる。
【００７２】
なお、本実施例では、コアユニット７０とバイタルセンサ７６とを屈曲自在な接続ケーブル７９で接続したが、バイタルセンサ７６に無線ユニットを搭載することで、接続ケーブル７９をなくすこともできる。例えば、無線ユニットとしてＢｌｕｅｔｏｏｔｈ（登録商標）ユニットをバイタルセンサ７６に搭載することで、バイタルセンサ７６からコアユニット７０やゲーム装置本体５へ生体情報を送信することが可能になる。また、コアユニット７０にバイタルセンサ７６を固定して設けることによって、コアユニット７０とバイタルセンサ７６とを一体構成してもかまわない。この場合、ユーザは、コアユニット７０と一体でバイタルセンサ７６を扱うことができる。
【００７３】
次に、図２を参照して、ゲーム装置本体５の内部構成について説明する。図２は、ゲーム装置本体５の構成を示すブロック図である。ゲーム装置本体５は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）１０、システムＬＳＩ（Ｌａｒｇｅ  Ｓｃａｌｅ  Ｉｎｔｅｇｒａｔｉｏｎ）１１、外部メインメモリ１２、ＲＯＭ／ＲＴＣ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ／Ｒｅａｌ  Ｔｉｍｅ  Ｃｌｏｃｋ）１３、ディスクドライブ１４、およびＡＶ−ＩＣ（Ａｕｄｉｏ  Ｖｉｄｅｏ−Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）１５等を有する。
【００７４】
ＣＰＵ１０は、光ディスク４に記憶されたゲームプログラムを実行することによってゲーム処理を実行するものであり、ゲームプロセッサとして機能する。ＣＰＵ１０は、システムＬＳＩ１１に接続される。システムＬＳＩ１１には、ＣＰＵ１０の他、外部メインメモリ１２、ＲＯＭ／ＲＴＣ１３、ディスクドライブ１４、およびＡＶ−ＩＣ１５が接続される。システムＬＳＩ１１は、それに接続される各構成要素間のデータ転送の制御、表示すべき画像の生成、外部装置からのデータの取得等の処理を行う。なお、システムＬＳＩ１１の内部構成については、後述する。揮発性の外部メインメモリ１２は、光ディスク４から読み出されたゲームプログラムや、フラッシュメモリ１７から読み出されたゲームプログラム等のプログラムを記憶したり、各種データを記憶したりするものであり、ＣＰＵ１０のワーク領域やバッファ領域として用いられる。ＲＯＭ／ＲＴＣ１３は、ゲーム装置本体５の起動用のプログラムが組み込まれるＲＯＭ（いわゆるブートＲＯＭ）と、時間をカウントするクロック回路（ＲＴＣ）とを有する。ディスクドライブ１４は、光ディスク４からプログラムデータやテクスチャデータ等を読み出し、後述する内部メインメモリ３５または外部メインメモリ１２に読み出したデータを書き込む。
【００７５】
また、システムＬＳＩ１１には、入出力プロセッサ３１、ＧＰＵ（Ｇｒａｐｈｉｃｓ  Ｐｒｏｃｅｓｓｏｒ  Ｕｎｉｔ）３２、ＤＳＰ（Ｄｉｇｉｔａｌ  Ｓｉｇｎａｌ  Ｐｒｏｃｅｓｓｏｒ）３３、ＶＲＡＭ（Ｖｉｄｅｏ  ＲＡＭ）３４、および内部メインメモリ３５が設けられる。図示は省略するが、これらの構成要素３１〜３５は、内部バスによって互いに接続される。
【００７６】
ＧＰＵ３２は、描画手段の一部を形成し、ＣＰＵ１０からのグラフィクスコマンド（作画命令）に従って画像を生成する。ＶＲＡＭ３４は、ＧＰＵ３２がグラフィクスコマンドを実行するために必要なデータ（ポリゴンデータやテクスチャデータ等のデータ）を記憶する。画像が生成される際には、ＧＰＵ３２は、ＶＲＡＭ３４に記憶されたデータを用いて画像データを作成する。
【００７７】
ＤＳＰ３３は、オーディオプロセッサとして機能し、内部メインメモリ３５や外部メインメモリ１２に記憶されるサウンドデータや音波形（音色）データを用いて、音声データを生成する。
【００７８】
上述のように生成された画像データおよび音声データは、ＡＶ−ＩＣ１５によって読み出される。ＡＶ−ＩＣ１５は、ＡＶコネクタ１６を介して、読み出した画像データをモニタ２に出力するとともに、読み出した音声データをモニタ２に内蔵されるスピーカ２ａに出力する。これによって、画像がモニタ２に表示されるとともに音がスピーカ２ａから出力される。
【００７９】
入出力プロセッサ（Ｉ／Ｏプロセッサ）３１は、それに接続される構成要素との間でデータの送受信を実行したり、外部装置からのデータのダウンロードを実行したりする。入出力プロセッサ３１は、フラッシュメモリ１７、無線通信モジュール１８、無線コントローラモジュール１９、拡張コネクタ２０、および外部メモリカード用コネクタ２１に接続される。無線通信モジュール１８にはアンテナ２２が接続され、無線コントローラモジュール１９にはアンテナ２３が接続される。
【００８０】
入出力プロセッサ３１は、無線通信モジュール１８およびアンテナ２２を介してネットワークに接続し、ネットワークに接続される他のゲーム装置や各種サーバと通信することができる。入出力プロセッサ３１は、定期的にフラッシュメモリ１７にアクセスし、ネットワークへ送信する必要があるデータの有無を検出し、当該データが有る場合には、無線通信モジュール１８およびアンテナ２２を介して当該データをネットワークに送信する。また、入出力プロセッサ３１は、他のゲーム装置から送信されてくるデータやダウンロードサーバからダウンロードしたデータを、ネットワーク、アンテナ２２、および無線通信モジュール１８を介して受信し、受信したデータをフラッシュメモリ１７に記憶する。ＣＰＵ１０は、ゲームプログラムを実行することにより、フラッシュメモリ１７に記憶されたデータを読み出してゲームプログラムで利用する。フラッシュメモリ１７には、ゲーム装置本体５と他のゲーム装置や各種サーバとの間で送受信されるデータの他、ゲーム装置本体５を利用してプレイしたゲームのセーブデータ（ゲームの結果データまたは途中データ）が記憶されてもよい。
【００８１】
また、入出力プロセッサ３１は、アンテナ２３および無線コントローラモジュール１９を介して、コントローラ７から送信される操作データ等を受信し、内部メインメモリ３５または外部メインメモリ１２のバッファ領域に記憶（一時記憶）する。なお、内部メインメモリ３５には、外部メインメモリ１２と同様に、光ディスク４から読み出されたゲームプログラムや、フラッシュメモリ１７から読み出されたゲームプログラム等のプログラムを記憶したり、各種データを記憶したりしてもよく、ＣＰＵ１０のワーク領域やバッファ領域として用いられてもかまわない。
【００８２】
さらに、入出力プロセッサ３１には、拡張コネクタ２０および外部メモリカード用コネクタ２１が接続される。拡張コネクタ２０は、ＵＳＢやＳＣＳＩのようなインターフェースのためのコネクタであり、外部記憶媒体のようなメディアを接続したり、他のコントローラのような周辺機器を接続したり、有線の通信用コネクタを接続することによって無線通信モジュール１８に替えてネットワークとの通信を行ったりすることができる。外部メモリカード用コネクタ２１は、メモリカードのような外部記憶媒体を接続するためのコネクタである。例えば、入出力プロセッサ３１は、拡張コネクタ２０や外部メモリカード用コネクタ２１を介して、外部記憶媒体にアクセスし、データを保存したり、データを読み出したりすることができる。
【００８３】
また、ゲーム装置本体５（例えば、前部主面）には、当該ゲーム装置本体５の電源ボタン２４、ゲーム処理のリセットボタン２５、光ディスク４を脱着する投入口、およびゲーム装置本体５の投入口から光ディスク４を取り出すイジェクトボタン２６等が設けられている。電源ボタン２４およびリセットボタン２５は、システムＬＳＩ１１に接続される。電源ボタン２４がオンされると、ゲーム装置本体５の各構成要素に対して、図示しないＡＣアダプタを介して電力が供給される。リセットボタン２５が押されると、システムＬＳＩ１１は、ゲーム装置本体５の起動プログラムを再起動する。イジェクトボタン２６は、ディスクドライブ１４に接続される。イジェクトボタン２６が押されると、ディスクドライブ１４から光ディスク４が排出される。
【００８４】
図３および図４を参照して、コアユニット７０について説明する。なお、図３は、コアユニット７０の上面後方から見た一例を示す斜視図である。図４は、コアユニット７０を下面前方から見た一例を示す斜視図である。
【００８５】
図３および図４において、コアユニット７０は、例えばプラスチック成型によって形成されたハウジング７１を有しており、当該ハウジング７１に複数の操作部７２が設けられている。ハウジング７１は、その前後方向を長手方向とした略直方体形状を有しており、全体として大人や子供の片手で把持可能な大きさである。
【００８６】
ハウジング７１上面の中央前面側に、十字キー７２ａが設けられる。この十字キー７２ａは、十字型の４方向プッシュスイッチであり、４つの方向（前後左右）に対応する操作部分が十字の突出片にそれぞれ９０°間隔で配置される。ユーザが十字キー７２ａのいずれかの操作部分を押下することによって前後左右いずれかの方向を選択される。例えばユーザが十字キー７２ａを操作することによって、仮想ゲーム世界に登場するプレイヤキャラクタ等の移動方向を指示したり、複数の選択肢から選択指示したりすることができる。
【００８７】
なお、十字キー７２ａは、上述したユーザの方向入力操作に応じて操作信号を出力する操作部であるが、他の態様の操作部でもかまわない。例えば、十字方向に４つのプッシュスイッチを配設し、ユーザによって押下されたプッシュスイッチに応じて操作信号を出力する操作部を設けてもかまわない。さらに、上記４つのプッシュスイッチとは別に、上記十字方向が交わる位置にセンタスイッチを配設し、４つのプッシュスイッチとセンタスイッチとを複合した操作部を設けてもかまわない。また、ハウジング７１上面から突出した傾倒可能なスティック（いわゆる、ジョイスティック）を倒すことによって、傾倒方向に応じて操作信号を出力する操作部を十字キー７２ａの代わりに設けてもかまわない。さらに、水平移動可能な円盤状部材をスライドさせることによって、当該スライド方向に応じた操作信号を出力する操作部を、上記十字キー７２ａの代わりに設けてもかまわない。また、タッチパッドを、十字キー７２ａの代わりに設けてもかまわない。
【００８８】
ハウジング７１上面の十字キー７２ａより後面側に、複数の操作ボタン７２ｂ〜７２ｇが設けられる。操作ボタン７２ｂ〜７２ｇは、ユーザがボタン頭部を押下することによって、それぞれの操作ボタン７２ｂ〜７２ｇに割り当てられた操作信号を出力する操作部である。例えば、操作ボタン７２ｂ〜７２ｄには、１番ボタン、２番ボタン、およびＡボタン等としての機能が割り当てられる。また、操作ボタン７２ｅ〜７２ｇには、マイナスボタン、ホームボタン、およびプラスボタン等としての機能が割り当てられる。これら操作ボタン７２ａ〜７２ｇは、ゲーム装置本体５が実行するゲームプログラムに応じてそれぞれの操作機能が割り当てられる。なお、図３に示した配置例では、操作ボタン７２ｂ〜７２ｄは、ハウジング７１上面の中央前後方向に沿って並設されている。また、操作ボタン７２ｅ〜７２ｇは、ハウジング７１上面の左右方向に沿って操作ボタン７２ｂおよび７２ｄの間に並設されている。そして、操作ボタン７２ｆは、その上面がハウジング７１の上面に埋没しており、ユーザが不意に誤って押下することのないタイプのボタンである。
【００８９】
また、ハウジング７１上面の十字キー７２ａより前面側に、操作ボタン７２ｈが設けられる。操作ボタン７２ｈは、遠隔からゲーム装置本体５の電源をオン／オフする電源スイッチである。この操作ボタン７２ｈも、その上面がハウジング７１の上面に埋没しており、ユーザが不意に誤って押下することのないタイプのボタンである。
【００９０】
また、ハウジング７１上面の操作ボタン７２ｃより後面側に、複数のＬＥＤ７０２が設けられる。ここで、コアユニット７０は、他のコントローラと区別するためにコントローラ種別（番号）が設けられている。例えば、ＬＥＤ７０２は、コアユニット７０に現在設定されている上記コントローラ種別をユーザに通知するために用いられる。具体的には、無線コントローラモジュール１９からコアユニット７０へ、複数のＬＥＤ７０２のうち、上記コントローラ種別に対応するＬＥＤを点灯させるための信号が送信される。
【００９１】
また、ハウジング７１上面には、操作ボタン７２ｂおよび操作ボタン７２ｅ〜７２ｇの間に後述するスピーカ（図５に示すスピーカ７０６）からの音を外部に放出するための音抜き孔が形成されている。
【００９２】
一方、ハウジング７１下面には、凹部が形成されている。ハウジング７１下面の凹部は、ユーザがコアユニット７０の前面をマーカ８Ｌおよび８Ｒに向けて片手で把持したときに、当該ユーザの人差し指や中指が位置するような位置に形成される。そして、上記凹部の傾斜面には、操作ボタン７２ｉが設けられる。操作ボタン７２ｉは、例えばＢボタンとして機能する操作部である。
【００９３】
また、ハウジング７１前面には、撮像情報演算部７４の一部を構成する撮像素子７４３が設けられる。ここで、撮像情報演算部７４は、コアユニット７０が撮像した画像データを解析してその中で輝度が高い場所を判別してその場所の重心位置やサイズなどを検出するためのシステムであり、例えば、最大２００フレーム／秒程度のサンプリング周期であるため比較的高速なコアユニット７０の動きでも追跡して解析することができる。この撮像情報演算部７４の詳細な構成については、後述する。また、ハウジング７１の後面には、コネクタ７３が設けられている。コネクタ７３は、例えばエッジコネクタであり、例えば接続ケーブルと嵌合して接続するために利用される。
【００９４】
ここで、以下の説明を具体的にするために、コアユニット７０に対して設定する座標系について定義する。図３および図４に示すように、互いに直交するＸＹＺ軸をコアユニット７０に対して定義する。具体的には、コアユニット７０の前後方向となるハウジング７１の長手方向をＺ軸とし、コアユニット７０の前面（撮像情報演算部７４が設けられている面）方向をＺ軸正方向とする。また、コアユニット７０の上下方向をＹ軸とし、ハウジング７１の上面（操作ボタン７２ａが設けられた面）方向をＹ軸正方向とする。さらに、コアユニット７０の左右方向をＸ軸とし、ハウジング７１の右側面（図３では表されている側面）方向をＸ軸正方向とする。
【００９５】
次に、図５および図６を参照して、コアユニット７０の内部構造について説明する。なお、図５は、コアユニット７０の上筐体（ハウジング７１の一部）を外した状態を後面側から見た一例を示す斜視図である。図６は、コアユニット７０の下筐体（ハウジング７１の一部）を外した状態を前面側から見た一例を示す斜視図である。ここで、図６に示す基板７００は、図５に示す基板７００の裏面から見た斜視図となっている。
【００９６】
図５において、ハウジング７１の内部には基板７００が固設されており、当該基板７００の上主面上に操作ボタン７２ａ〜７２ｈ、加速度センサ７０１、ＬＥＤ７０２、およびアンテナ７５４等が設けられる。そして、これらは、基板７００等に形成された配線（図示せず）によってマイコン７５１等（図６、図７参照）に接続される。また、無線モジュール７５３（図７参照）およびアンテナ７５４によって、コアユニット７０がワイヤレスコントローラとして機能する。なお、ハウジング７１内部には図示しない水晶振動子が設けられており、後述するマイコン７５１の基本クロックを生成する。また、基板７００の上主面上に、スピーカ７０６およびアンプ７０８が設けられる。また、加速度センサ７０１は、操作ボタン７２ｄの左側の基板７００上（つまり、基板７００の中央部ではなく周辺部）に設けられる。したがって、加速度センサ７０１は、コアユニット７０の長手方向を軸とした回転に応じて、重力加速度の方向変化に加え、遠心力による成分が含まれる加速度を検出することができるので、所定の演算により、検出される加速度データからコアユニット７０の動きを良好な感度でゲーム装置本体５等が判定することができる。
【００９７】
一方、図６において、基板７００の下主面上の前端縁に撮像情報演算部７４が設けられる。撮像情報演算部７４は、コアユニット７０の前方から順に赤外線フィルタ７４１、レンズ７４２、撮像素子７４３、および画像処理回路７４４によって構成されており、それぞれ基板７００の下主面に取り付けられる。また、基板７００の下主面上の後端縁にコネクタ７３が取り付けられる。さらに、基板７００の下主面上にサウンドＩＣ７０７およびマイコン７５１が設けられている。サウンドＩＣ７０７は、基板７００等に形成された配線によってマイコン７５１およびアンプ７０８と接続され、ゲーム装置本体５から送信されたサウンドデータに応じてアンプ７０８を介してスピーカ７０６に音声信号を出力する。
【００９８】
そして、基板７００の下主面上には、バイブレータ７０４が取り付けられる。バイブレータ７０４は、例えば振動モータやソレノイドである。バイブレータ７０４は、基板７００等に形成された配線によってマイコン７５１と接続され、ゲーム装置本体５から送信された振動データに応じてその作動をオン／オフする。バイブレータ７０４が作動することによってコアユニット７０に振動が発生するので、それを把持しているユーザの手にその振動が伝達され、いわゆる振動対応ゲームが実現できる。ここで、バイブレータ７０４は、ハウジング７１のやや前方寄りに配置されるため、ユーザが把持している状態において、ハウジング７１が大きく振動することになり、振動を感じやすくなる。
【００９９】
次に、図７を参照して、コントローラ７の内部構成について説明する。なお、図７は、コントローラ７の構成の一例を示すを示すブロック図である。
【０１００】
図７において、コアユニット７０は、上述した操作部７２、撮像情報演算部７４、加速度センサ７０１、バイブレータ７０４、スピーカ７０６、サウンドＩＣ７０７、およびアンプ７０８の他に、その内部に通信部７５を備えている。また、バイタルセンサ７６は、接続ケーブル７９とコネクタ７９１および７３とを介して、マイコン７５１と接続される。
【０１０１】
撮像情報演算部７４は、赤外線フィルタ７４１、レンズ７４２、撮像素子７４３、および画像処理回路７４４を含んでいる。赤外線フィルタ７４１は、コアユニット７０の前方から入射する光から赤外線のみを通過させる。レンズ７４２は、赤外線フィルタ７４１を透過した赤外線を集光して撮像素子７４３へ出射する。撮像素子７４３は、例えばＣＭＯＳセンサやあるいはＣＣＤのような固体撮像素子であり、レンズ７４２が集光した赤外線を撮像する。したがって、撮像素子７４３は、赤外線フィルタ７４１を通過した赤外線だけを撮像して画像データを生成する。撮像素子７４３で生成された画像データは、画像処理回路７４４で処理される。具体的には、画像処理回路７４４は、撮像素子７４３から得られた画像データを処理して高輝度部分を検知し、それらの位置座標や面積を検出した結果を示す処理結果データを通信部７５へ出力する。なお、これらの撮像情報演算部７４は、コアユニット７０のハウジング７１に固設されており、ハウジング７１自体の方向を変えることによってその撮像方向を変更することができる。
【０１０２】
コアユニット７０は、３軸（Ｘ、Ｙ、Ｚ軸）の加速度センサ７０１を備えていることが好ましい。この３軸の加速度センサ７０１は、３方向、すなわち、上下方向（図３に示すＹ軸）、左右方向（図３に示すＸ軸）、および前後方向（図３に示すＺ軸）で直線加速度を検知する。また、少なくとも１軸方向（例えば、Ｚ軸方向）に沿った直線加速度を検知する加速度検出手段を使用してもよい。例えば、これらの加速度センサ７０１は、アナログ・デバイセズ株式会社（Ａｎａｌｏｇ  Ｄｅｖｉｃｅｓ，  Ｉｎｃ．）またはＳＴマイクロエレクトロニクス社（ＳＴＭｉｃｒｏｅｌｅｃｔｒｏｎｉｃｓ  Ｎ．Ｖ．）から入手可能であるタイプのものでもよい。加速度センサ７０１は、シリコン微細加工されたＭＥＭＳ（Ｍｉｃｒｏ  Ｅｌｅｃｔｒｏ  Ｍｅｃｈａｎｉｃａｌ  Ｓｙｓｔｅｍｓ：微小電子機械システム）の技術に基づいた静電容量式（静電容量結合式）であることが好ましい。しかしながら、既存の加速度検出手段の技術（例えば、圧電方式や圧電抵抗方式）あるいは将来開発される他の適切な技術を用いて、加速度センサ７０１が提供されてもよい。
【０１０３】
加速度センサ７０１に用いられるような加速度検出手段は、加速度センサ７０１の持つ各軸に対応する直線に沿った加速度（直線加速度）のみを検知することができる。つまり、加速度センサ７０１からの直接の出力は、それら３軸のそれぞれに沿った直線加速度（静的または動的）を示す信号である。このため、加速度センサ７０１は、非直線状（例えば、円弧状）の経路に沿った動き、回転、回転運動、角変位、傾斜、位置、または姿勢等の物理特性を直接検知することはできない。
【０１０４】
しかしながら、加速度センサ７０１から出力される加速度の信号に基づいて、ゲーム装置のプロセッサ（例えばＣＰＵ１０）またはコントローラのプロセッサ（例えばマイコン７５１）等のコンピュータが処理を行うことによって、コアユニット７０に関するさらなる情報を推測または算出（判定）することができることは、当業者であれば本明細書の説明から容易に理解できるであろう。
【０１０５】
例えば、加速度センサ７０１を搭載するコアユニット７０が静的な状態であることを前提としてコンピュータ側で処理する場合（すなわち、加速度センサ７０１によって検出される加速度が重力加速度のみであるとして処理する場合）、コアユニット７０が現実に静的な状態であれば、検出された加速度に基づいてコアユニット７０の姿勢が重力方向に対して傾いているか否か、またはどの程度傾いているかを知ることができる。具体的には、加速度センサ７０１の検出軸が鉛直下方向を向いている状態を基準としたとき、当該検出軸方向に１Ｇ（重力加速度）が作用しているか否かだけでコアユニット７０が鉛直下方向に対して傾いているか否かを知ることができる。また、上記検出軸方向に作用している加速度の大きさによって、コアユニット７０が鉛直下方向に対してどの程度傾いているかも知ることができる。また、多軸方向の加速度を検出可能な加速度センサ７０１の場合には、さらに各軸に対して検出された加速度の信号に対して処理を施すことによって、重力方向に対してコアユニット７０がどの程度傾いているかをより詳細に知ることができる。この場合において、加速度センサ７０１からの出力に基づいて、プロセッサがコアユニット７０の傾き角度のデータを算出する処理を行ってもよいが、当該傾き角度のデータを算出する処理を行うことなく、加速度センサ７０１からの出力に基づいて、おおよそのコアユニット７０の傾き具合を推定するような処理としてもよい。このように、加速度センサ７０１をプロセッサと組み合わせて用いることによって、コアユニット７０の傾き、姿勢、または位置を判定することができる。
【０１０６】
一方、加速度センサ７０１が動的な状態であることを前提とする場合には、当該加速度センサ７０１が重力加速度成分に加えて加速度センサ７０１の動きに応じた加速度を検出するので、重力加速度成分を所定の処理により除去すれば、コアユニット７０の動き方向等を知ることができる。具体的には、加速度センサ７０１を備えるコアユニット７０がユーザの手で動的に加速されて動かされる場合に、加速度センサ７０１によって生成される加速度信号を処理することによって、コアユニット７０の様々な動きおよび／または位置を算出することができる。なお、加速度センサ７０１が動的な状態であることを前提とする場合であっても、加速度センサ７０１の動きに応じた加速度を所定の処理により除去すれば、重力方向に対するコアユニット７０の傾きを知ることが可能である。
【０１０７】
他の実施例では、加速度センサ７０１は、信号をマイコン７５１に出力する前に内蔵の加速度検出手段から出力される加速度信号に対して所望の処理を行うための、組込み式の信号処理装置または他の種類の専用の処理装置を備えていてもよい。例えば、組込み式または専用の処理装置は、加速度センサ７０１が静的な加速度（例えば、重力加速度）を検出するためのものである場合、検知された加速度信号をそれに相当する傾斜角（あるいは、他の好ましいパラメータ）に変換するものであってもよい。加速度センサ７０１でそれぞれ検知された加速度を示すデータは、通信部７５に出力される。
【０１０８】
また、他の実施例では、加速度センサ７０１の代わりに、少なくとも一方を回転素子または振動素子などを内蔵したジャイロセンサを用いてもよい。この実施形態で使用されるＭＥＭＳジャイロセンサの一例として、アナログ・デバイセズ株式会社から入手可能なものがある。加速度センサ７０１と異なり、ジャイロセンサは、それが内蔵する少なくとも１つのジャイロ素子の軸を中心とした回転（または角速度）を直接検知することができる。このように、ジャイロセンサと加速度センサとは基本的に異なるので、個々の用途のためにいずれの装置が選択されるかによって、これらの装置からの出力信号に対して行う処理を適宜変更する必要がある。
【０１０９】
具体的には、加速度センサの代わりにジャイロセンサを用いて傾きや姿勢を算出する場合には、大幅な変更を行う。すなわち、ジャイロセンサを用いる場合、検出開始の状態において傾きの値を初期化する。そして、当該ジャイロセンサから出力される角速度データを積分する。次に、初期化された傾きの値からの傾きの変化量を算出する。この場合、算出される傾きは、角度に対応する値が算出されることになる。一方、加速度センサによって傾きを算出する場合には、重力加速度のそれぞれの軸に関する成分の値を、所定の基準と比較することによって傾きを算出するので、算出される傾きはベクトルで表すことが可能であり、初期化を行わずとも、加速度検出手段を用いて検出される絶対的な方向を検出することが可能である。また、傾きとして算出される値の性質は、ジャイロセンサが用いられる場合には角度であるのに対して、加速度センサが用いられる場合にはベクトルであるという違いがある。したがって、加速度センサに代えてジャイロセンサが用いられる場合、当該傾きのデータに対して、２つのデバイスの違いを考慮した所定の変換を行う必要がある。加速度検出手段とジャイロスコープとの基本的な差異と同様にジャイロスコープの特性は当業者に公知であるので、本明細書ではさらなる詳細を省略する。ジャイロセンサは、回転を直接検知できることによる利点を有する一方、一般的には、加速度センサは、本実施形態で用いるようなコントローラに適用される場合、ジャイロセンサに比べて費用効率が良いという利点を有する。
【０１１０】
通信部７５は、マイクロコンピュータ（Ｍｉｃｒｏ  Ｃｏｍｐｕｔｅｒ：マイコン）７５１、メモリ７５２、無線モジュール７５３、およびアンテナ７５４を含んでいる。マイコン７５１は、処理の際にメモリ７５２を記憶領域として用いながら、送信データを無線送信する無線モジュール７５３を制御する。また、マイコン７５１は、アンテナ７５４を介して無線モジュール７５３が受信したゲーム装置本体５からのデータに応じて、サウンドＩＣ７０７およびバイブレータ７０４の動作を制御する。サウンドＩＣ７０７は、通信部７５を介してゲーム装置本体５から送信されたサウンドデータ等を処理する。また、マイコン７５１は、通信部７５を介してゲーム装置本体５から送信された振動データ（例えば、バイブレータ７０４をＯＮまたはＯＦＦする信号）等に応じて、バイブレータ７０４を作動させる。
【０１１１】
コアユニット７０に設けられた操作部７２からの操作信号（キーデータ）、加速度センサ７０１からの３軸方向の加速度信号（Ｘ、Ｙ、およびＺ軸方向加速度データ）、および撮像情報演算部７４からの処理結果データは、マイコン７５１に出力される。また、接続ケーブル７９を介して、バイタルセンサ７６からの生体信号（生体情報データ）は、マイコン７５１に出力される。マイコン７５１は、入力した各データ（キーデータ、Ｘ、Ｙ、およびＺ軸方向加速度データ、処理結果データ、生体情報データ）を無線コントローラモジュール１９へ送信する送信データとして一時的にメモリ７５２に格納する。ここで、通信部７５から無線コントローラモジュール１９への無線送信は、所定の周期毎に行われるが、ゲームの処理は１／６０秒を単位として行われることが一般的であるので、それよりも短い周期で送信を行うことが必要となる。具体的には、ゲームの処理単位は１６．７ｍｓ（１／６０秒）であり、ブルートゥース（登録商標）で構成される通信部７５の送信間隔は５ｍｓである。マイコン７５１は、無線コントローラモジュール１９への送信タイミングが到来すると、メモリ７５２に格納されている送信データを一連の操作情報として出力し、無線モジュール７５３へ出力する。そして、無線モジュール７５３は、例えばブルートゥース（登録商標）の技術を用いて、操作情報を示す電波信号を所定周波数の搬送波を用いてアンテナ７５４から放射する。つまり、コアユニット７０に設けられた操作部７２からのキーデータと、加速度センサ７０１からのＸ、Ｙ、およびＺ軸方向加速度データと、撮像情報演算部７４からの処理結果データと、バイタルセンサ７６からの生体情報データとがコアユニット７０から送信される。そして、ゲーム装置本体５の無線コントローラモジュール１９でその電波信号を受信し、ゲーム装置本体５で当該電波信号を復調や復号することによって、一連の操作情報（キーデータ、Ｘ、Ｙ、およびＺ軸方向加速度データ、処理結果データ、生体情報データ）を取得する。そして、ゲーム装置本体５のＣＰＵ１０は、取得した操作情報とゲームプログラムとに基づいて、ゲーム処理を行う。なお、ブルートゥース（登録商標）の技術を用いて通信部７５を構成する場合、通信部７５は、他のデバイスから無線送信された送信データを受信する機能も備えることができる。
【０１１２】
次に、図８および図９を参照して、バイタルセンサ７６について説明する。なお、図８は、バイタルセンサ７６の構成の一例を示すブロック図である。図９は、バイタルセンサ７６から出力される生体情報の一例である脈波情報の例を示す図である。
【０１１３】
図８において、バイタルセンサ７６は、制御部７６１、発光部７６２、および受光部７６３を備えている。
【０１１４】
発光部７６２および受光部７６３は、ユーザの生体信号を得るセンサの一例であり、透過型指尖容積脈波センサを構成する。発光部７６２は、例えば赤外線ＬＥＤで構成され、所定波長（例えば、９４０ｎｍ）の赤外線を受光部７６３に向けて照射する。一方、受光部７６３は、発光部７６２が照射する波長に応じて照射される光を受光し、例えば赤外線フォトレジスタで構成される。そして、発光部７６２と受光部７６３とは、所定の間隙（空洞）を介して配置されている。
【０１１５】
ここで、人体の血液中に存在するヘモグロビンは、赤外線を吸光する性質をもっている。例えば、上述した発光部７６２および受光部７６３間の間隙にユーザの身体の一部（例えば、指先）を挿入する。これによって、発光部７６２から照射された赤外線は、挿入した指先内に存在するヘモグロビンで吸光された後、受光部７６３で受光される。一方、人体の動脈は、脈拍動しているため、当該脈拍動に応じて動脈の太さ（血流量）が変化する。したがって、挿入した指先内の動脈も同様の脈拍動が生じており、当該脈拍動に応じて血流量が変化するため、当該血流量に応じて吸光される赤外線の量も変化する。具体的には、挿入した指先内の血流量が多い場合、ヘモグロビンで吸光される量も増加するために受光部７６３で受光する赤外線の光量が相対的に少なくなる。一方、挿入した指先内の血流量が少ない場合、ヘモグロビンで吸光される量も減少するために受光部７６３で受光する赤外線の光量が相対的に多くなる。発光部７６２および受光部７６３は、このような動作原理を利用し、受光部７６３で受光する赤外線の光量を光電信号に変換することによって、人体の脈拍動（以下、脈波と記載する）を検出している。例えば、図９に示すように、挿入した指先内の血流量が増加した場合に受光部７６３の検出値が上昇し、挿入した指先内の血流量が減少した場合に受光部７６３の検出値が下降する。このように、受光部７６３の検出値が脈動する脈波部分が、脈波信号として生成される。なお、受光部７６３の回路構成によって、挿入した指先内の血流量が増加した場合に受光部７６３の検出値が下降し、挿入した指先内の血流量が減少した場合に受光部７６３の検出値が上昇するような脈波信号を生成してもかまわない。
【０１１６】
制御部７６１は、例えばＭＣＵ（Ｍｉｃｒｏ  Ｃｏｎｔｒｏｌｌｅｒ  Ｕｎｉｔ）で構成される。制御部７６１は、発光部７６２から照射される赤外線の光量を制御する。また、制御部７６１は、受光部７６３から出力された光電信号（脈波信号）をＡ／Ｄ変換して脈波データ（生体情報データ）を生成する。そして、制御部７６１は、接続ケーブル７９を介して、脈波データ（生体情報データ）をコアユニット７０へ出力する。
【０１１７】
次に、ゲーム装置本体５が行う具体的な処理を説明する前に、図１０〜図１８を用いて本ゲーム装置本体５で行う処理の概要について説明する。なお、図１０〜図１８は、それぞれモニタ２に表示される一連の画像の一例を示す図である。
【０１１８】
図１０において、モニタ２には、バイタルセンサ７６を使用しているユーザの現状の生体状態が表示される。例えば、図１０では、ユーザの自律神経量の代表として副交感神経の活動度がリラックス汁の量として示されている。リラックス汁の量は、ユーザの心拍変動係数（ＣＶＲＲ：ｃｏｅｆｆｉｃｉｅｎｔ  ｏｆ  ｖａｒｉａｎｃｅ  ｏｆ  Ｒ−Ｒ  ｉｎｔｅｒｖａｌ）に基づいて算出される。例えば、心拍変動係数は、バイタルセンサ７６から得られる脈波が示す過去１００拍における心拍間隔（Ｒ−Ｒ間隔；図９参照）を用いて算出される。具体的には、
心拍変動係数＝（１００拍分のＲ−Ｒ間隔の標準偏差／１００拍分のＲ−Ｒ間隔の平均値）×１００
で算出される。そして、算出された心拍変動係数に基づいて、リラックス汁の液面高さを変動させることによってリラックス汁の量を変化させて、ユーザに現状の生体情報を提示する。
【０１１９】
次に、図１１において、モニタ２には、ユーザの現状リラックス汁量と比較するために、ユーザと同年齢におけるリラックス汁の量の標準値が表示される。ここで、リラックス汁の量は、ユーザの副交感神経が活性化すると低下する性質をもっている。つまり、ユーザに運動的な負荷が加わっていない状態でリラックス汁の量が低下していれば、ユーザは、自律神経系のバランスを崩していることが考えられる。しかしながら、リラックス汁の量は、年齢と共に低下する傾向にあるため、ユーザ自身の副交感神経の活動度がどのようなレベルにあるのか比較対照を容易にするために、同年齢の標準値が現状リラックス汁量と並べて表示される。
【０１２０】
次に、図１２において、モニタ２には、表示しているユーザの生体状態を向上させるためのゲームが提示される。例えば、ユーザの柔軟度を高めるストレッチゲームは、リラックス汁を増量させる即効性のある手段であるため、ユーザに対してストレッチゲームが選択肢としてモニタ２に表示される。そして、ユーザが提示されたストレッチゲームの実行を選択した場合、モニタ２の画面がストレッチゲームに移行する。
【０１２１】
ストレッチゲームに移行すると、モニタ２には、ゲームを行う際のユーザの操作姿勢や操作方法の説明が表示される。例えば、図１３の例では、バイタルセンサ７６を装着し、両肘を左右に張った状態でコアユニット７０の長手方向が両肘を張る方向となるようにコアユニット７０を両手で挟んだ姿勢が、ストレッチゲームの操作姿勢として表示されている。そして、モニタ２には、「画面を鏡とし、地面の傾きに合わせて傾けましょう」とする操作方法が表示される。また、モニタ２には、「天井の起伏に応じて、呼吸しましょう」とする操作方法が表示される。つまり、ユーザは、図１３に示したような操作姿勢および操作方法を説明する画面を見ることによって、ストレッチゲームを行う際の操作姿勢と操作方法とを知ることができる。
【０１２２】
図１４に示すように、ストレッチゲームでは、ユーザの生体信号（脈波信号）およびユーザの動きや姿勢（コアユニット７０の傾き）に基づいて、例えばプレイヤキャラクタＰＣが動作するゲームが行われる。プレイヤキャラクタＰＣは、仮想ゲーム世界内において、例えば左から右へスクロールして移動する天井Ｔと地面Ｂとが障害物となった天井Ｔと地面Ｂとの間の空間（例えば、洞窟内）を飛行することが求められる。プレイヤキャラクタＰＣは、第１プレイヤキャラクタＰＣ１と、第１プレイヤキャラクタＰＣ１の上部に配置されている第２プレイヤキャラクタＰＣ２とに分離可能に構成されている。
【０１２３】
図１５において、第２プレイヤキャラクタＰＣ２は、第１プレイヤキャラクタＰＣ１に対して天井Ｔの高さを限度として上昇することができる。ここで、第２プレイヤキャラクタＰＣ２は、ユーザの呼吸状態に応じて昇降する。例えば、第２プレイヤキャラクタＰＣ２は、ユーザが吐く呼吸をした場合に第１プレイヤキャラクタＰＣ１に対して上昇し、ユーザが吸う呼吸をした場合に第１プレイヤキャラクタＰＣ１に向かって下降する。本実施形態においては、上記脈波信号を用いてユーザの心拍数ＨＲを算出し、心拍数ＨＲが上昇中であればユーザが吸う呼吸をしていると判断し、心拍数ＨＲが下降中であればユーザが吐く呼吸をしていると判断する。心拍数ＨＲは、６０秒間の鼓動回数で示されるが、本実施形態においては心拍間隔（Ｒ−Ｒ間隔；例えば、脈波の極小値から次の極小値までの時間；図９参照）で、６０秒を除算することによって算出している。
【０１２４】
また、天井Ｔの起伏は、ユーザの呼吸周期に基づいて算出される。例えば、本実施形態では、ユーザの心拍数ＨＲが上昇／下降する周期を用いてユーザの現時点の呼吸周期を算出し、当該呼吸周期を所定割合遅くした（例えば８０％）の周期となるように天井Ｔの起伏周期を調整する。そして、天井Ｔと第２プレイヤキャラクタＰＣ２とが接触した場合、ストレッチゲームの得点が減じられる。つまり、天井Ｔの起伏に合わせて第２プレイヤキャラクタＰＣ２を昇降させることによって、自身の呼吸周期の８０％とした周期で呼吸するような呼吸動作、すなわち自身の呼吸周期を徐々に遅くするような呼吸が要求されることになる。
【０１２５】
図１６において、プレイヤキャラクタＰＣは、地面Ｂに沿って傾斜して飛行することができる。ここで、プレイヤキャラクタＰＣは、コアユニット７０の傾きに応じてその飛行姿勢が傾く。例えば、図１３に示したような操作姿勢でユーザがコアユニット７０をモニタ２に向かって右に角度α１傾けた場合、当該傾き動作と同期してプレイヤキャラクタＰＣも右に角度α１傾いて表示される。また、図１７に示すように、図１３に示したような操作姿勢でユーザがコアユニット７０をモニタ２に向かって右に角度α２傾けた場合、当該傾き動作と同期してプレイヤキャラクタＰＣも右に角度α２傾いて表示される。つまり、ユーザは、コアユニット７０を傾けることによって、あたかもプレイヤキャラクタＰＣを傾けているような操作感覚となる。
【０１２６】
図１７において、地面Ｂの傾斜は、時間経過と共にその傾斜角度が大きくなり、地面ＢとプレイヤキャラクタＰＣとが接触した場合、ストレッチゲームの得点が減じられる。そして、ユーザは、地面Ｂの傾きに合わせてプレイヤキャラクタＰＣを傾けるためには、コアユニット７０を地面Ｂの傾きと同様の傾きまで傾けることが必要となる。つまり、ユーザは、コアユニット７０を把持したり、装着したりしているユーザ自身の身体の部位を曲げたり捻ったりするようなストレッチ動作が要求されることになる。そして、地面Ｂの傾斜は、ユーザが苦しいと感じた時点でその傾斜角度に固定される。例えば、本実施形態では、上記脈波信号から得られる脈波振幅ＰＡ（例えば、脈波の極大値から次の極小値まで高さの差；図９参照）を用いて、ユーザの苦楽度を判断し、当該苦楽度に応じてプレイヤキャラクタＰＣの顔色や表情を変化させる。
【０１２７】
図１６の例では、右へ傾斜角度５°傾いた地面Ｂが表示されており、ユーザが地面Ｂの傾きに応じてコアユニット７０をモニタ２に向かって右に角度α１（例えば、５°）傾けることによって、当該傾き動作と同期してプレイヤキャラクタＰＣも右に角度α１（例えば、５°）傾いて表示される。この場合、ユーザがまだ楽な状態であるため、プレイヤキャラクタＰＣが穏やかな表情で表示されている。一方、図１７の例では、右へ傾斜角度４２°傾いた地面Ｂが表示されており、ユーザが地面Ｂの傾きに応じてコアユニット７０をモニタ２に向かって右に角度α２（例えば、４２°）傾けることによって当該傾き動作と同期してプレイヤキャラクタＰＣも右に角度α２（例えば、４２°）傾いて表示される。この場合、ユーザがかなり苦しい状態となっており、プレイヤキャラクタＰＣが苦しい表情で表示されている。
【０１２８】
例えば、上記ストレッチゲーム開始時点と比較して、ユーザの脈波振幅ＰＡが９０％以上を確保している状態は、「ユーザは苦しくない」と判断する。また、上記ストレッチゲーム開始時点と比較して、ユーザの脈波振幅ＰＡが５０％〜９０％に縮小した状態は、「ユーザが苦しくなっている」と判断する。さらに、上記ストレッチゲーム開始時点と比較して、ユーザの脈波振幅ＰＡが５０％以下に縮小した状態は、「ユーザがかなり苦しい」と判断する。そして、脈波振幅ＰＡが５０％以下となった時点が、ユーザの限界であると判断して、当該時点の傾斜角度（限界傾斜角度）をユーザの身体のしなやか度を算出する尺度とする。
【０１２９】
上記ストレッチゲームが終了した後、再度、ユーザの現状リラックス汁量が算出される。そして、図１８に示すように、モニタ２には、ユーザのストレッチゲーム後のリラックス汁量と比較するために、現状リラックス汁量と共に、当該ストレッチゲーム前のリラックス汁の量（図１８においては、「５分前」として表示）も表示される。そして、上記ストレッチゲーム後に増減したリラックス汁の量が数値で示される。例えば、本実施形態では、ユーザのストレッチゲーム前の心拍変動係数とストレッチゲーム後の心拍変動係数とを比較し、その差を１０倍した値を増減容積値（ｍｌ）として示している。
【０１３０】
また、ストレッチゲーム終了後においては、ユーザの身体のしなやか度を示す値が表示されてもよい。例えば、上記限界傾斜角度を用いて、ユーザのしなやか度（しなやか点）が表示される。具体的には、上記ストレッチゲームにおける傾斜角度の理想値と比較して、ユーザの限界傾斜角度との差に応じてユーザのしなやか度（しなやか点）を算出して表示される。
【０１３１】
次に、ゲームシステム１において行われるゲーム処理の詳細を説明する。まず、図１９を参照して、ゲーム処理において用いられる主なデータについて説明する。なお、図１９は、ゲーム装置本体５の外部メインメモリ１２および／または内部メインメモリ３５（以下、２つのメインメモリを総称して、単にメインメモリと記載する）に記憶される主なデータおよびプログラムの一例を示す図である。
【０１３２】
図１９に示すように、メインメモリのデータ記憶領域には、加速度データＤａ、キーデータＤｂ、脈波データＤｃ、加速度ベクトルデータＤｄ、リラックス汁量データＤｅ、標準値データＤｆ、初期リラックス汁量データＤｇ、コントローラ傾きデータＤｈ、心拍数データＤｉ、脈波振幅データＤｊ、初期脈波振幅データＤｋ、点数データＤｌ、ゆらぎ周期データＤｍ、起伏周期データＤｎ、地面角度データＤｏ、限界地面角度データＤｐ、プレイヤキャラクタデータＤｑ、および画像データＤｒ等が記憶される。なお、メインメモリには、図１９に示す情報に含まれるデータの他、ゲームに登場するプレイヤキャラクタＰＣ以外の他のオブジェクト等に関するデータ（位置データ等）や仮想ゲーム世界に関するデータ（背景のデータ等）等、ゲーム処理に必要なデータが記憶される。また、メインメモリのプログラム記憶領域には、ゲームプログラムを構成する各種プログラム群Ｐａが記憶される。
【０１３３】
加速度データＤａは、コアユニット７０に生じた加速度を示すデータであり、コアユニット７０から送信データとして送信されてくる一連の操作情報に含まれる加速度データが格納される。この加速度データＤａには、加速度センサ７０１がＸ軸成分に対して検出した加速度を示すＸ軸方向加速度データＤａ１、Ｙ軸成分に対して検出した加速度を示すＹ軸方向加速度データＤａ２、およびＺ軸成分に対して検出した加速度を示すＺ軸方向加速度データＤａ３が含まれる。なお、ゲーム装置本体５に備える無線コントローラモジュール１９は、コアユニット７０から所定周期（例えば、１／２００秒毎）に送信される操作情報に含まれる加速度データを受信し、無線コントローラモジュール１９に備える図示しないバッファに蓄えられる。その後、上記バッファに蓄えられた加速度データがゲーム処理周期である１フレーム毎（例えば、１／６０秒毎）に読み出されて、メインメモリの加速度データＤａが更新される。
【０１３４】
このとき、操作情報を受信する周期と処理周期とが異なるために、上記バッファには複数の時点に受信した操作情報が記述されていることになる。後述する処理の説明においては、後述する各ステップにおいて、複数の時点に受信した操作情報のうち最新の操作情報のみを常に用いて処理して、次のステップに進める態様を用いる。
【０１３５】
また、後述する処理フローでは、加速度データＤａがゲーム処理周期である１フレーム毎に更新される例を用いて説明するが、他の処理周期で更新されてもかまわない。例えば、コアユニット７０からの送信周期毎に加速度データＤａを更新し、当該更新された加速度データＤａをゲーム処理周期毎に利用する態様でもかまわない。この場合、加速度データＤａに記憶する加速度データＤａ１〜Ｄａ３を更新する周期と、ゲーム処理周期とが異なることになる。
【０１３６】
キーデータＤｂは、コアユニット７０の複数の操作部７２がそれぞれ操作されたことを示すデータであり、コアユニット７０から送信データとして送信されてくる一連の操作情報に含まれるキーデータが格納される。なお、キーデータＤｂが更新される方法は、加速度データＤａと同様であるため詳細な説明を省略する。
【０１３７】
脈波データＤｃは、バイタルセンサ７６から得られる必要な時間長さ分の脈波信号を示すデータであり、コアユニット７０から送信データとして送信されてくる一連の操作情報に含まれる脈波データが格納される。なお、脈波データＤｃに格納される脈波データは、後述する処理において必要な時間長さ分だけ脈波信号の履歴が格納され、操作情報の受信に応じて適宜更新される。
【０１３８】
加速度ベクトルデータＤｄは、Ｘ軸方向加速度データＤａ１、Ｙ軸方向加速度データＤａ２、およびＺ軸方向加速度データＤａ３が示す加速度を用いて算出される加速度ベクトルを示すデータであり、コアユニット７０に作用している加速度の方向および大きさを示すデータが格納される。
【０１３９】
リラックス汁量データＤｅは、現状のユーザの心拍変動係数を用いて算出されたリラックス汁の量を示すデータが格納される。標準値データＤｆは、予め統計的に算出された年齢別のリラックス汁の量の標準値を示すデータが格納される。初期リラックス汁量データＤｇは、ストレッチゲーム開始前に算出されたユーザのリラックス汁の量を示すデータが格納される。
【０１４０】
コントローラ傾きデータＤｈは、重力方向を基準としてコアユニット７０の傾きを示すデータが格納される。心拍数データＤｉは、ユーザの心拍数ＨＲ（例えば、６０秒を心拍間隔（Ｒ−Ｒ間隔）の周期で除算した値）の所定時間分の履歴を示すデータが格納される。脈波振幅データＤｊは、ユーザの脈波振幅ＰＡの所定時間分の履歴を示すデータが格納される。初期脈波振幅データＤｋは、ストレッチゲーム開始前に算出されたユーザの脈波振幅ＰＡを示すデータが格納される。
【０１４１】
点数データＤｌは、ストレッチゲームにおける得点を示すデータが格納される。ゆらぎ周期データＤｍは、ユーザの呼吸周期を示すデータが格納される。起伏周期データＤｎは、ユーザの呼吸周期に応じて算出されたストレッチゲームにおける天井Ｔの起伏周期を示すデータが格納される。地面角度データＤｏは、ストレッチゲームにおける地面Ｂの傾斜角度を示すデータが格納される。限界地面角度データＤｐは、ストレッチゲームの地面Ｂの傾斜角度において、ユーザの限界傾斜角度を示すデータが格納される。
【０１４２】
プレイヤキャラクタデータＤｑは、プレイヤキャラクタＰＣに関するデータが格納され、傾きデータＤｑ１、上昇高さデータＤｑ２、状況データＤｑ３、および位置データＤｑ４を含んでいる。傾きデータＤｑ１は、コアユニット７０の傾きに応じて傾けるプレイヤキャラクタＰＣの傾斜角度を示すデータが格納される。上昇高さデータＤｑ２は、第１プレイヤキャラクタＰＣ１に対して第２プレイヤキャラクタＰＣ２が上昇する高さを示すデータが格納される。状況データＤｑ３は、ユーザの苦楽度に応じたプレイヤキャラクタＰＣの顔色や表情を示すデータが格納される。位置データＤｑ４は、仮想ゲーム世界におけるプレイヤキャラクタＰＣの位置を示すデータが格納される。
【０１４３】
画像データＤｒは、生体画像データＤｒ１、プレイヤキャラクタ画像データＤｒ２、および障害物画像データＤｒ３等を含んでいる。生体画像データＤｒ１は、ユーザの生体情報をモニタ２に表示するためのデータが格納される。プレイヤキャラクタ画像データＤｒ２は、仮想ゲーム世界にプレイヤキャラクタＰＣを配置してゲーム画像を生成するためのデータが格納される。障害物画像データＤｒ３は、仮想ゲーム世界に障害物（天井Ｔや地面Ｂ）を配置してゲーム画像を生成するためのデータが格納される。
【０１４４】
次に、図２０〜図２２を参照して、ゲーム装置本体５において行われる情報処理の詳細を説明する。なお、図２０は、ゲーム装置本体５において実行される情報処理の一例を示すフローチャートである。図２１は、図２０のステップ４８のストレッチゲーム処理における前半の動作の一例を示すフローチャートである。図２２は、図２０のステップ４８のストレッチゲーム処理における後半の動作の一例を示すフローチャートである。なお、図２０〜図２２に示すフローチャートにおいては、ゲーム処理のうち、バイタルセンサ７６からの生体情報およびコアユニット７０の傾きを用いる処理について主に説明し、本願発明と直接関連しない他のゲーム処理については詳細な説明を省略する。また、図２０〜図２２では、ＣＰＵ１０が実行する各ステップを「Ｓ」と略称する。
【０１４５】
ゲーム装置本体５の電源が投入されると、ゲーム装置本体５のＣＰＵ１０は、ＲＯＭ／ＲＴＣ１３に記憶されている起動用のプログラムを実行し、これによってメインメモリ等の各ユニットが初期化される。そして、光ディスク４に記憶されたゲームプログラムがメインメモリに読み込まれ、ＣＰＵ１０によって当該ゲームプログラムの実行が開始される。図２０〜図２２に示すフローチャートは、以上の処理が完了した後に行われるゲーム処理を示すフローチャートである。
【０１４６】
図２０において、ＣＰＵ１０は、情報処理の初期設定を行い（ステップ４１）、次のステップに処理を進める。例えば、上記ステップ４１における初期設定では、ユーザの年齢の設定や現在までの処理結果の設定等の初期設定を行う。また、上記ステップ４１における処理の初期設定では、以降の情報処理で用いる各パラメータを初期化する。
【０１４７】
次に、ＣＰＵ１０は、コアユニット７０から操作情報を示すデータを取得して（ステップ４２）、次のステップに処理を進める。例えば、ＣＰＵ１０は、コアユニット７０から受信した操作情報を取得し、当該操作情報に含まれる最新の加速度データが示す加速度を用いて加速度データＤａを更新する。具体的には、ＣＰＵ１０は、コアユニット７０から受信した最新の操作情報に含まれるＸ軸方向の加速度データが示す加速度を用いて、Ｘ軸方向加速度データＤａ１を更新する。また、ＣＰＵ１０は、最新の操作情報に含まれるＹ軸方向の加速度データが示す加速度を用いて、Ｙ軸方向加速度データＤａ２を更新する。そして、ＣＰＵ１０は、最新の操作情報に含まれるＺ軸方向の加速度データが示す加速度を用いて、Ｚ軸方向加速度データＤａ３を更新する。また、ＣＰＵ１０は、コアユニット７０から受信した操作情報に含まれる最新のキーデータが示す操作部７２に対する操作内容を用いてキーデータＤｂを更新する。さらに、ＣＰＵ１０は、コアユニット７０から受信した操作情報に含まれる最新の生体情報データが示す脈波信号を用いて脈波データＤｃを更新する。
【０１４８】
次に、ＣＰＵ１０は、ユーザのリラックス汁の量を算出して（ステップ４３）、次のステップに処理を進める。例えば、ＣＰＵ１０は、ユーザの心拍変動係数に基づいて、リラックス汁の量を算出する。ここで、心拍変動係数は、脈波データＤｃに格納された脈波信号が示す過去１００拍における心拍間隔（Ｒ−Ｒ間隔；図９参照）を用いて算出され、具体的には、
心拍変動係数＝（１００拍分のＲ−Ｒ間隔の標準偏差／１００拍分のＲ−Ｒ間隔の平均値）×１００
で算出される。そして、ＣＰＵ１０は、算出されたユーザの心拍変動係数に基づいて、リラックス汁の量を算出（例えば、心拍変動係数の１０倍の値をリラックス汁の量とする）し、算出されたリラックス汁の量を用いてリラックス汁量データＤｅを更新する。
【０１４９】
次に、ＣＰＵ１０は、現時点のユーザのリラックス汁量を液面で示す生体情報を画像で生成し、当該画像をモニタ２に表示する（ステップ４４；図１０参照）。そして、ＣＰＵ１０は、現時点のユーザのリラックス汁量と標準量とを比較するか否かを判断する（ステップ４５）。例えば、ＣＰＵ１０は、標準量と比較することを示す操作があった場合や現時点のユーザのリラックス汁量をモニタ２に表示した後に所定の時間が経過した場合、現時点のユーザのリラックス汁量と標準量とを比較すると判断する。そして、ＣＰＵ１０は、現時点のユーザのリラックス汁量と標準量とを比較する場合、次のステップ４６に処理を進める。一方、ＣＰＵ１０は、現時点のユーザのリラックス汁量と標準量とを比較しない場合、次のステップ４７に処理を進める。
【０１５０】
ステップ４６において、ＣＰＵ１０は、現時点のユーザのリラックス汁量と標準量とを比較表示する画像を生成し、当該画像をモニタ２に表示して（図１１参照）、次のステップ４７へ処理を進める。例えば、ＣＰＵ１０は、標準値データＤｆを参照してユーザの年齢に応じたリラックス汁の量の標準値を取得し、当該標準値を液面で示す生体情報を画像で生成して、当該画像をモニタ２に表示する。ここで、上記標準値は、上記ステップ４１にて設定されたユーザの年齢に基づいて標準値データＤｆから取得してもいいし、当該ステップ４６においてユーザが年齢を入力することによって標準値データＤｆから取得してもかまわない。なお、上記ステップ４６では、ユーザと同じ年齢におけるリラックス汁の量の標準値が取得されるが、異なる標準値を取得してもかまわない。例えば、現時点のユーザのリラックス汁量と同レベルとなっている標準値を取得してもかまわない。この場合、ユーザの年齢とは異なる年齢のリラックス汁量の標準値を取得することになるが、ユーザにとって自分自身のリラックス汁量がどのような年齢時における標準値と同じレベルなのか比較することができる。
【０１５１】
ステップ４７において、ＣＰＵ１０は、ストレッチゲームに移行するか否かを判断する。例えば、ＣＰＵ１０は、モニタ２に表示しているユーザのリラックス汁を増量させるためのゲームの選択肢を提示し（図１２参照）、当該選択肢からストレッチゲームを選択する操作が行われたか否かによって、ストレッチゲームに移行するか否かを判断する。そして、ＣＰＵ１０は、ストレッチゲームに移行する場合、次のステップ４８に処理を進める。一方、ＣＰＵ１０は、ストレッチゲームに移行しない場合、次のステップ５３に処理を進める。
【０１５２】
ステップ４８において、ＣＰＵ１０は、ストレッチゲーム処理を行って、次のステップに処理を進める。以下、図２１および図２２を参照して、上記ステップ４８で行うストレッチゲーム処理について説明する。
【０１５３】
図２１において、ＣＰＵ１０は、ストレッチゲーム処理の初期設定を行い（ステップ８１）、次のステップに処理を進める。例えば、上記ステップ８１におけるストレッチゲーム処理の初期設定では、仮想ゲーム世界の設定やプレイヤキャラクタＰＣや天井Ｔおよび地面Ｂ等の初期設定を行う。また、上記ステップ８１におけるストレッチゲーム処理の初期設定では、以降のストレッチゲーム処理で用いる各パラメータを初期化する。例えば、ＣＰＵ１０は、点数データＤｌについて満点を示す点数（例えば、１００点）に初期設定する。
【０１５４】
次に、ＣＰＵ１０は、コアユニット７０から操作情報を示すデータを取得して（ステップ８２）、次のステップに処理を進める。なお、上記ステップ８２における処理は、上述したステップ４２の処理と同様であるため、詳細な説明を省略する。
【０１５５】
次に、ＣＰＵ１０は、ストレッチゲーム開始前のユーザの脈波振幅ＰＡおよびリラックス汁量を算出し、それぞれの値を用いて初期脈波振幅データＤｋおよび初期リラックス汁量データＤｇを更新し（ステップ８３）、次のステップに処理を進める。例えば、ＣＰＵ１０は、脈波データＤｃの脈波信号を参照して、脈波信号から得られる現時点の脈波振幅ＰＡ（図９参照）を初期脈波振幅ＰＡｉとして算出する。そして、ＣＰＵ１０は、算出された初期脈波振幅ＰＡｉを用いて初期脈波振幅データＤｋを更新する。また、ＣＰＵ１０は、脈波データＤｃの脈波信号を参照して、脈波信号から得られる心拍変動係数に基づいて現時点のリラックス汁の量を算出する。そして、ＣＰＵ１０は、算出されたリラックス汁の量を用いて初期リラックス汁量データＤｇを更新する。
【０１５６】
次に、ＣＰＵ１０は、コアユニット７０から操作情報を示すデータを取得して（ステップ８４）、次のステップに処理を進める。なお、上記ステップ８４における処理は、上述したステップ４２の処理と同様であるため、詳細な説明を省略する。
【０１５７】
次に、ＣＰＵ１０は、重力方向に対するコアユニット７０の傾きを算出し（ステップ８５）、次のステップに処理を進める。例えば、ＣＰＵ１０は、Ｘ軸方向加速度データＤａ１に格納されたＸ軸方向加速度、Ｙ軸方向加速度データＤａ２に格納されたＹ軸方向加速度、およびＺ軸方向加速度データＤａ３に格納されたＺ軸加速度を用いて、それぞれの方向の加速度成分を有する加速度ベクトルを算出し、当該加速度ベクトルを用いて加速度ベクトルデータＤｄを更新する。また、ＣＰＵ１０は、加速度ベクトルデータＤｄの加速度ベクトルが示す方向が、コアユニット７０に作用する重力加速度の方向であると仮定する。そして、ＣＰＵ１０は、加速度ベクトルが示す方向を基準としたコアユニット７０の傾き（コントローラの傾き）を算出し、算出されたコアユニット７０の傾きを用いてコントローラ傾きデータＤｈを更新する。具体的には、図１３に示したような操作姿勢でユーザがコアユニット７０を操作する場合、すなわち、コアユニット７０のＸ軸方向を中心にコアユニット７０のＺ軸を傾けるように操作されることを前提とする場合、上記重力加速度の方向に対してコアユニット７０のＺ軸が傾いている方向がコアユニット７０の傾き（コントローラの傾き）として算出される。
【０１５８】
次に、ＣＰＵ１０は、コアユニット７０の傾きに応じてプレイヤキャラクタＰＣを仮想ゲーム世界に対して傾けてモニタ２に表示して（ステップ８６）、次のステップに処理を進める。例えば、コアユニット７０のＸ軸方向を中心にコアユニット７０のＺ軸を傾けるように操作されることを前提とする場合、ユーザがコアユニット７０をモニタ２に向かってＺ軸を右に角度α傾けた場合、当該傾き動作と同期して仮想ゲーム世界においてプレイヤキャラクタＰＣも向かって右に角度α傾くように傾き角度を算出し、算出された傾き角度を用いて傾きデータＤｑ１を更新する。そして、ＣＰＵ１０は、傾きデータＤｑ１が示す傾き角度に応じて、プレイヤキャラクタＰＣを仮想ゲーム世界において傾けてモニタ２に表示する（図１６および図１７参照）。
【０１５９】
次に、ＣＰＵ１０は、ユーザの心拍数ＨＲを算出して心拍数データＤｉの履歴を更新し（ステップ８７）、次のステップに処理を進める。例えば、ＣＰＵ１０は、脈波データＤｃの脈波信号を参照して、現時点の心拍間隔（Ｒ−Ｒ間隔；図９参照）を算出する。そして、ＣＰＵ１０は、６０秒を心拍間隔で除算することによって心拍数ＨＲを算出し、新たに算出された心拍数ＨＲを示すデータを心拍数データＤｉに追加して、心拍数ＨＲの履歴を更新する。なお、後述により明らかとなるが、心拍数ＨＲの履歴は、所定時間分が確保されていれば処理が可能となるため、新しい心拍数ＨＲを追加する際、当該時間を超える過去の履歴を削除してもかまわない。
【０１６０】
次に、ＣＰＵ１０は、ユーザの脈波振幅ＰＡを算出して脈波振幅データＤｊの履歴を更新し（ステップ８８）、次のステップに処理を進める。例えば、ＣＰＵ１０は、脈波データＤｃの脈波信号を参照して、上記脈波信号から得られる現時点の脈波振幅ＰＡ（図９参照）を算出する。そして、ＣＰＵ１０は、新たに算出された脈波振幅ＰＡを示すデータを脈波振幅データＤｊに追加して、脈波振幅ＰＡの履歴を更新する。なお、後述により明らかとなるが、脈波振幅ＰＡの履歴は、所定時間分が確保されていれば処理が可能となるため、新しい脈波振幅ＰＡを追加する際、当該時間を超える過去の履歴を削除してもかまわない。
【０１６１】
次に、ＣＰＵ１０は、上記ステップ８７で算出された心拍数ＨＲが前回算出された心拍数ＨＲｂより小さいか否か（ステップ８９）、および上記ステップ８７で算出された心拍数ＨＲが前回算出された心拍数ＨＲｂより大きいか否か（ステップ９１）を判断する。そして、ＣＰＵ１０は、上記ステップ８７で算出された心拍数ＨＲが前回算出された心拍数ＨＲｂより小さい場合（ステップ８９でＹｅｓ）、次のステップ９０に処理を進める。また、ＣＰＵ１０は、上記ステップ８７で算出された心拍数ＨＲが前回算出された心拍数ＨＲｂより大きい場合（ステップ９１でＹｅｓ）、次のステップ９２に処理を進める。一方、ＣＰＵ１０は、上記ステップ８７で算出された心拍数ＨＲが前回算出された心拍数ＨＲｂと同じである場合（ステップ８９およびステップ９１が何れもＮｏ）、次のステップ１０１（図２２参照）に処理を進める。
【０１６２】
ステップ９０において、ＣＰＵ１０は、第１プレイヤキャラクタＰＣ１に対して第２プレイヤキャラクタＰＣ２を仮想ゲーム世界において所定量上昇させてモニタ２に表示し、次のステップ１０１（図２２参照）に処理を進める。例えば、ＣＰＵ１０は、仮想ゲーム世界における第１プレイヤキャラクタＰＣ１と第２プレイヤキャラクタＰＣ２との距離を所定長さ離間させて第２プレイヤキャラクタＰＣ２の上昇長さを算出し、当該上昇長さを用いて上昇高さデータＤｑ２を更新する。そして、ＣＰＵ１０は、第１プレイヤキャラクタＰＣ１に対して、上昇高さデータＤｑ２が示す上昇高さだけ離間するように第２プレイヤキャラクタＰＣ２を仮想ゲーム世界において上昇させて、モニタ２に表示する（図１５参照）。なお、上記ステップ９０において離間させる第１プレイヤキャラクタＰＣ１と第２プレイヤキャラクタＰＣ２との距離は、一定量離間距離を増加させてもいいし、心拍数ＨＲｂと心拍数ＨＲとの差分値に応じて増加させる離間距離を変化させてもかまわない。
【０１６３】
一方、ステップ９１において、ＣＰＵ１０は、第１プレイヤキャラクタＰＣ１に対して第２プレイヤキャラクタＰＣ２を仮想ゲーム世界において所定量下降させてモニタ２に表示し、次のステップ１０１（図２２参照）に処理を進める。例えば、ＣＰＵ１０は、仮想ゲーム世界における第１プレイヤキャラクタＰＣ１と第２プレイヤキャラクタＰＣ２との距離を所定長さ短縮させて第２プレイヤキャラクタＰＣ２の上昇長さを算出し、当該上昇長さを用いて上昇高さデータＤｑ２を更新する。そして、ＣＰＵ１０は、第１プレイヤキャラクタＰＣ１に対して、上昇高さデータＤｑ２が示す上昇高さだけ離間するように第２プレイヤキャラクタＰＣ２を仮想ゲーム世界において上昇させて、モニタ２に表示する。なお、第１プレイヤキャラクタＰＣ１に対して第２プレイヤキャラクタＰＣ２を仮想ゲーム世界において下降させる量は、第２プレイヤキャラクタＰＣ２が第１プレイヤキャラクタＰＣ１と重ならないことを限度として決定する。つまり、仮想ゲーム世界において、第２プレイヤキャラクタＰＣ２は、第１プレイヤキャラクタＰＣ１と重なる位置まで下降することはない。また、上記ステップ９１において短縮させる第１プレイヤキャラクタＰＣ１と第２プレイヤキャラクタＰＣ２との距離は、一定量離間距離を減少させてもいいし、心拍数ＨＲと心拍数ＨＲｂとの差分値に応じて減少させる離間距離を変化させてもかまわない。
【０１６４】
図２２に進み、ステップ１０１において、ＣＰＵ１０は、仮想ゲーム世界においてプレイヤキャラクタＰＣが天井Ｔまたは地面Ｂと接触したか否かを判断する。例えば、プレイヤキャラクタＰＣが飛行中に第１プレイヤキャラクタＰＣ１が地面Ｂと接触する、または第２プレイヤキャラクタＰＣ２が天井Ｔと接触した場合、ＣＰＵ１０は、プレイヤキャラクタＰＣが天井Ｔまたは地面Ｂと接触したと判断する。そして、ＣＰＵ１０は、プレイヤキャラクタＰＣが天井Ｔまたは地面Ｂと接触した場合、次のステップ１０２に処理を進める。一方、ＣＰＵ１０は、プレイヤキャラクタＰＣが天井Ｔおよび地面Ｂの何れにも接触していない場合、次のステップ１０３に処理を進める。
【０１６５】
ステップ１０２において、ＣＰＵ１０は、ストレッチゲームの得点から所定の点数を減点して、次のステップ１０３に処理を進める。例えば、ＣＰＵ１０は、点数データＤｌが示す点数から天井Ｔまたは地面Ｂとの接触に応じた点数を減点し、減点後の点数を用いて点数データＤｌを更新する。ここで、減点する点数は、プレイヤキャラクタＰＣが天井Ｔまたは地面Ｂとの接触状況に応じて変化させてもかまわない。第１の例として、プレイヤキャラクタＰＣが天井Ｔまたは地面Ｂと接触している時間に応じて減点数を増加させる。第２の例として、プレイヤキャラクタＰＣが天井Ｔまたは地面Ｂと接触して重複している量に応じて減点数を増加させる。第３の例として、プレイヤキャラクタＰＣが天井Ｔまたは地面Ｂと接触した回数に応じて減点数を増加させる。第４の例として、プレイヤキャラクタＰＣが天井Ｔと接触している場合と地面Ｂと接触している場合とによって、減点数を変化させる。第５の例として、上記第１〜第４の例の少なくとも２つを組み合わせて、減点数を変化させる。
【０１６６】
なお、上述した処理では、プレイヤキャラクタＰＣが天井Ｔまたは地面Ｂと接触または重複した場合、ストレッチゲームの得点を減点することによってマイナスの評価が与えられ、ストレッチゲームの得点が低い程、当該ストレッチゲームの評価が悪くなることになるが、他の方式によって得点を変化させてもかまわない。第１の例として、ストレッチゲームの開始時の得点を０点とし、プレイヤキャラクタＰＣが天井Ｔまたは地面Ｂと接触または重複した場合、ストレッチゲームの得点を加点することによってマイナスの評価が与えられる。この場合、ストレッチゲームの得点が高い程、当該ストレッチゲームの評価が悪くなることになる。第２の例として、ストレッチゲームの開始時の得点を０点とし、ストレッチゲームの時間経過と共に加点されていく。そして、ストレッチゲーム中にプレイヤキャラクタＰＣが天井Ｔまたは地面Ｂと接触または重複した場合、上記加点を行わないことによってマイナスの評価が与えられる。この場合、ストレッチゲームの得点が低い程、当該ストレッチゲームの評価が悪くなることになる。
【０１６７】
ステップ１０３において、ＣＰＵ１０は、心拍数ＨＲの履歴を用いて、心拍数ＨＲが上昇／下降する周期（ゆらぎ周期）を算出し、次のステップに処理を進める。例えば、ＣＰＵ１０は、心拍数データＤｉを参照して、現時点までのユーザの心拍数ＨＲの履歴を取得する。そして、ＣＰＵ１０は、心拍数ＨＲの履歴から当該心拍数ＨＲのゆらぎ周期を算出して、算出されたゆらぎ周期を用いてゆらぎ周期データＤｍを更新する。ここで、本実施形態が算出している心拍数ＨＲは、上昇中であればユーザが吸う呼吸をしており、下降中であればユーザが吐く呼吸をしていると判断することができる。すなわち、上記ゆらぎ周期を算出することは、ユーザが呼吸している周期（呼吸周期）を算出することになる。
【０１６８】
次に、ＣＰＵ１０は、上記ステップ１０３で算出されたゆらぎ周期を用いて、天井Ｔを起伏させる周期（起伏周期）を算出し（ステップ１０４）、次のステップに処理を進める。例えば、ＣＰＵ１０は、ゆらぎ周期データＤｍが示すゆらぎ周期を所定割合遅くした周期（例えば、ゆらぎ周期の８０％）を起伏周期として算出し、算出された起伏周期を用いて起伏周期データＤｎを更新する。
【０１６９】
次に、ＣＰＵ１０は、所定拍分の脈波振幅ＰＡの平均値ＰＡａを算出する（ステップ１０５）。そして、ＣＰＵ１０は、算出された平均値ＰＡａが初期脈波振幅ＰＡｉの９０％以下であるか否か（ステップ１０６）を判断する。そして、ＣＰＵ１０は、ＰＡａ≦０．９ＰＡｉである場合、次のステップ１０７へ処理を進める。一方、ＣＰＵ１０は、０．９ＰＡｉ＜ＰＡａである場合、次のステップ１１０へ処理を進める。
【０１７０】
ステップ１０７において、ＣＰＵ１０は、仮想ゲーム世界で表示されるプレイヤキャラクタＰＣの色および表情を苦況状態として状況データＤｑ３を設定し、当該苦況状態に応じた状態でプレイヤキャラクタＰＣをモニタ２に表示して、次のステップに処理を進める。ここで、上記ステップ１０７を実行する状態は、ストレッチゲーム開始時点と比較して、ユーザの脈波振幅ＰＡが９０％以下に縮小した状態であり、「ユーザが苦しくなっている」と判断することができる。ストレッチゲームにおいて、ユーザが苦しくなっていると判断できる場合、ＣＰＵ１０は、当該ユーザの苦楽度に応じてプレイヤキャラクタＰＣの色や表情を変化させる（図１７参照）。
【０１７１】
ステップ１０８において、ＣＰＵ１０は、算出された平均値ＰＡａが初期脈波振幅ＰＡｉの５０％以下であるか否かを判断する。そして、ＣＰＵ１０は、ＰＡａ＞０．５ＰＡｉである場合、次のステップ１１０へ処理を進める。また、ＣＰＵ１０は、ＰＡａ≦０．５ＰＡｉである場合、次のステップ１０９へ処理を進める。
【０１７２】
ステップ１０９において、ＣＰＵ１０は、現時点の地面Ｂの傾斜角度を限界傾斜角度として記録し、次のステップ１１１に処理を進める。ここで、上記ステップ１０９を実行する状態は、ストレッチゲーム開始時点と比較して、ユーザの脈波振幅ＰＡが５０％以下まで縮小した状態であり、「ユーザがかなり苦しい」と判断することができる。ストレッチゲームにおいて、ユーザがかなり苦しい状態であると判断できる場合、ＣＰＵ１０は、現時点の地面Ｂの傾斜角度がユーザの限界であると判断して、当該傾斜角度を用いて限界地面角度データＤｐを更新する。
【０１７３】
一方、ステップ１１０において、ＣＰＵ１０は、地面Ｂの傾斜角度を所定角度増加させて、次のステップ１１１に処理を進める。例えば、ＣＰＵ１０は、地面角度データＤｏが示す傾斜角度に対して、さらに所定の角度を加算して新たな傾斜角度を算出し、算出された傾斜角度を用いて地面角度データＤｏを更新する。
【０１７４】
ステップ１１１において、ＣＰＵ１０は、起伏周期データＤｎが示す起伏周期および地面角度データＤｏが示す傾斜角度に基づいて、天井Ｔおよび地面Ｂ（障害物画像）を生成してモニタ２に表示し、次のステップに処理を進める。例えば、ＣＰＵ１０は、仮想ゲーム世界においてプレイヤキャラクタＰＣが飛行する際の天井Ｔが、起伏周期データＤｎが示す起伏周期で起伏するように天井Ｔの形状を調整してスクロールさせてモニタ２に表示する。また、ＣＰＵ１０は、仮想ゲーム世界において、地面角度データＤｏが示す傾斜角度だけ地面Ｂを傾けてモニタ２に表示する。
【０１７５】
次に、ＣＰＵ１０は、ストレッチゲームを終了するか否かを判断する（ステップ１１２）。ストレッチゲームを終了する条件としては、例えば、ゲームオーバーとなる条件が満たされたことや、ユーザがストレッチゲームを終了する操作を行ったこと等がある。ＣＰＵ１０は、ストレッチゲームを終了しない場合に上記ステップ８４（図２１参照）に戻って処理を繰り返し、ストレッチゲームを終了する場合に当該サブルーチンによる処理を終了する。
【０１７６】
図２０に戻り、上記ステップ４８のストレッチゲーム処理の後、ＣＰＵ１０は、コアユニット７０から操作情報を示すデータを取得して（ステップ４９）、次のステップに処理を進める。なお、上記ステップ４９における処理は、上述したステップ４２の処理と同様であるため、詳細な説明を省略する。
【０１７７】
次に、ＣＰＵ１０は、上記ストレッチゲーム後におけるユーザのリラックス汁の量を算出して（ステップ５０）、次のステップに処理を進める。なお、ユーザのリラックス汁量の算出処理は、上記ステップ４３と同様であるため、詳細な説明を省略する。
【０１７８】
次に、ＣＰＵ１０は、現時点（ストレッチゲーム後）のユーザのリラックス汁量と、ストレッチゲーム開始前のリラックス汁量とを、それぞれ液面で示す生体情報を画像で生成し、当該画像をモニタ２に表示し（ステップ５１；図１８参照）、次のステップに処理を進める。例えば、ＣＰＵ１０は、リラックス汁量データＤｅが示すリラックス汁量を現時点のユーザのリラックス汁量とし、初期リラックス汁量データＤｇが示すリラックス汁量をストレッチゲーム開始前のユーザのリラックス汁量として、それぞれの汁量を液面高さで示す生体情報画像を生成する。また、現時点のユーザのリラックス汁量と、ストレッチゲーム開始前のリラックス汁量とを比較して、その増減量を算出する。そして、ＣＰＵ１０は、上記生体情報画像および増減量を示す画像をモニタ２に表示する。これによって、ユーザは、上記ストレッチゲームを行うことによって、自身のリラックス汁の量がどのように変化したのか知ることができる。
【０１７９】
次に、ＣＰＵ１０は、上記ストレッチゲームにおけるユーザの体的結果を算出して、当該体的結果をモニタ２に表示し（ステップ５２）、次のステップに処理を進める。例えば、ＣＰＵ１０は、上記ストレッチゲームの結果を用いて、ユーザの身体のしなやか度を体的結果として算出する。具体的には、ＣＰＵ１０は、限界地面角度データＤｐが示す限界傾斜角度を用いて、ユーザのしなやか度（しなやか点）を表示する。一例として、ＣＰＵ１０は、上記ストレッチゲームにおける傾斜角度の理想値と比較して、ユーザの限界傾斜角度との差に応じてユーザのしなやか度（しなやか点）を算出して表示する。
【０１８０】
次に、ＣＰＵ１０は、処理を終了するか否かを判断する（ステップ５３）。処理を終了する条件としては、例えば、処理終了となる条件が満たされたことや、ユーザが処理を終了する操作を行ったこと等がある。ＣＰＵ１０は、処理を終了しない場合に上記ステップ４２に戻って処理を繰り返し、処理を終了する場合に当該フローチャートによる処理を終了する。
【０１８１】
このように、上述した情報処理によれば、ユーザの現状の生体信号だけでなく、ユーザの現状の動きや姿勢も用いて所定の提示が行われるため、ユーザは自分自身の身体の状態がより理解できると共に、ユーザの動きや姿勢を組み合わせることによってユーザの身体状態の変化を促すことができる。例えば、上記ストレッチゲームにおいては、ユーザの生体信号（脈波信号から得られる呼吸周期）に基づいて、障害物画像（天井Ｔ）が生成される。また、上記ストレッチゲームにおいては、ユーザの生体信号（脈波信号から得られる吸う／吐く動作）に基づいて、第２プレイヤキャラクタＰＣ２が昇降動作する。さらに、上記ストレッチゲームにおいては、ユーザの生体信号（脈波信号からユーザの苦楽度）に基づいて、プレイヤキャラクタＰＣの色や表情が変化し、障害物画像（地面Ｂ）の傾斜角度が制御される。一方、上記ストレッチゲームにおいては、ユーザの現状の動きや姿勢（コアユニット７０の傾き）に基づいて、プレイヤキャラクタＰＣが傾斜する。
【０１８２】
なお、上述したストレッチゲームにおいては、障害物画像（天井Ｔおよび地面Ｂ）によって、ユーザに所定の動きまたは姿勢をさせるための指示が行われている。ここで、天井Ｔの起伏や地面Ｂの傾斜角度は、ユーザの生体信号に基づいて制御されているが、天井Ｔの起伏や地面Ｂの傾斜角度は、ユーザの生体信号とは無関係に制御されてもかまわない。例えば、天井Ｔの起伏周期を予め定められた周期によって制御し、地面Ｂの傾斜角度も予め定められた角度まで漸増するように制御することによって、ユーザの生体信号とは無関係に制御することも可能である。この場合、ユーザに所定の動きまたは姿勢をさせるための指示がユーザの生体信号やコアユニット７０から得られる情報とは無関係に行われることになるが、プレイヤキャラクタＰＣの制御（昇降動作、傾き動作、色や表情等）は、ユーザの生体信号およびユーザの現状の動きや姿勢（コアユニット７０の傾き）の両方に基づいて行われることになる。なお、本発明を他のゲームに適用させた場合は、様々な指示態様や制御態様が考えられることは言うまでもない。
【０１８３】
なお、上述した説明では、ユーザの生体信号（脈波信号）から得られる心拍変動係数、リラックス汁量、心拍間隔（Ｒ−Ｒ間隔）、心拍数ＨＲ、呼吸周期、脈波振幅ＰＡ、および苦楽度等のパラメータを用いて所定の提示を行っているが、ユーザの生体信号（脈波信号）から得られる他のパラメータを用いてもかまわない。第１の例として、ユーザの生体信号（脈波信号）から得られる血流量を用いて所定の提示を行ってもかまわない。例えば、脈波信号から得られる脈波面積ＰＷＡ（図９参照）を心拍数ＨＲで除算することによって、血流量を得ることができる。第２の例として、生体信号（脈波信号）から得られるユーザの緊張度や活発度（交感神経の活動度）を用いて所定の提示を行ってもかまわない。例えば、ユーザが安静状態における心拍数ＨＲと、現時点の心拍数ＨＲとを比較して、ユーザの緊張度や活発度（例えば、（現時点の心拍数ＨＲ／安静状態の心拍数ＨＲ）×１００）を算出する。
【０１８４】
また、上述した説明では、ユーザの身体の一部（例えば、指先）に赤外線を照射し、当該身体の一部を透過して受光された赤外線の光量に基づいてユーザの生体信号（脈波信号）を得る、いわゆる光学方式によって血管の容積変化を検出して容積脈波を得ている。しかしながら、本発明では、ユーザが身体活動する際に起こる生理的な情報が得られる他の形式のセンサを用いて、ユーザの生体信号を取得してもかまわない。例えば、動脈の脈動による血管内の圧力変位を検出（例えば、圧電方式）して圧脈波を得ることによって、ユーザの生体信号を取得してもかまわない。また、ユーザの筋電位や心電位を、ユーザの生体情報として取得してもかまわない。筋電位や心電位は、電極を用いた一般的な検出方法により検出することができ、例えば、ユーザの身体における微細な電流の変化等に基づいて、ユーザの生体信号を取得することができる。また、ユーザの血流を、ユーザの生体情報として取得してもかまわない。血流は、電磁法や超音波法等を用いて１心拍ごとの脈動血流として測定され、当該脈動血流をユーザの生体信号として取得することができる。当然ながら、上述した各種生体信号を得るために、ユーザの指部以外の箇所（例えば、胸部、腕、耳たぶ等）にバイタルセンサを装着してもかまわない。取得する生体信号によっては、厳密には脈拍と心拍との差が生じることになるが、心拍数と脈拍数という見方をした場合ほぼ同じ値と考えられるので、取得される生体信号を上述した処理と同様に取り扱うことができる。
【０１８５】
また、上述した説明では、バイタルセンサ７６から脈波信号を示すデータをゲーム装置本体５に送信し、ゲーム装置本体５において当該脈波信号から様々なパラメータを算出したが、他の処理段階のデータをゲーム装置本体５に送信してもかまわない。例えば、バイタルセンサ７６において、心拍変動係数、リラックス汁量（副交感神経活動度）、心拍間隔（Ｒ−Ｒ間隔）、心拍数ＨＲ、呼吸周期、脈波振幅ＰＡ、交感神経活動度、および苦楽度等のパラメータを算出して、当該パラメータを示すデータをゲーム装置本体５に送信してもかまわない。また、上記脈波信号から上記パラメータを算出する途中段階のデータをバイタルセンサ７６からゲーム装置本体５に送信してもかまわない。
【０１８６】
また、上述した説明では、加速度センサ７０１から得られる３軸方向の加速度データが示す加速度を用いて、ユーザの現状の動きや姿勢（コアユニット７０の動き）を検出している。しかしながら、コアユニット７０に固設される他の形式のセンサから出力されるデータを用いて、ユーザの現状の動きや姿勢を検出してもかまわない。例えば、重力方向に対してコアユニット７０の傾き（以下、単に「傾き」と言う）に応じたデータを出力するセンサ（加速度センサ、傾きセンサ）、コアユニット７０の方位に応じたデータを出力するセンサ（磁気センサ）、コアユニット７０の回転運動に応じたデータを出力するセンサ（ジャイロセンサ）等から出力されるデータを用いることができる。また、加速度センサおよびジャイロセンサは、多軸検出可能なものだけなく１軸検出のものでもよい。また、これらのセンサを組み合わせて、より正確な検出を行うものであってもかまわない。なお、コアユニット７０に固定されたカメラ（例えば、撮像情報演算部７４）を、上記センサとして利用することも可能である。この場合、コアユニット７０の動きに応じてカメラが撮像する撮像画像が変化するので、この画像を解析することにより、コアユニット７０の動きを判断することができる。
【０１８７】
また、上記センサは、その種類によっては、コアユニット７０の外部に別設されてもよい。一例として、センサとしてのカメラでコアユニット７０の外部からコアユニット７０全体を撮影し、撮像画像内に撮像されたコアユニット７０の画像を解析することにより、コアユニット７０の動きを判断することが可能である。さらに、コアユニット７０に固設されたユニットとコアユニット７０外部に別設されたユニットとの協働によるシステムを用いてもよい。この例としては、コアユニット７０外部に発光ユニットを別設し、コアユニット７０に固設されたカメラで発光ユニットからの光を撮影する。このカメラで撮像された撮像画像を解析することにより、コアユニット７０の動きを判断することができる。また、他の例としては、コアユニット７０外部に磁場発生装置を別設し、コアユニット７０に磁気センサを固設するようなシステムなどが挙げられる。
【０１８８】
また、上記センサがコアユニット７０の外部に別設可能である場合、コアユニット７０を用いなくてもかまわない。一例として、センサとしてのカメラで単にユーザを撮影し、撮像画像内に撮像されたユーザの画像を解析することにより、ユーザの動きや姿勢を判断することが可能である。また、ユーザが乗って操作する入力装置（例えば、ボード型コントローラ）に設けられ、当該入力装置上に作用している重量や物体の有無等を検知するセンサを用いて、当該入力装置を操作するユーザの動きや姿勢を判断することも可能である。これらの態様のセンサを用いて、ユーザの動きや姿勢を判断する場合、コアユニット７０を用いなくてもかまわない。
【０１８９】
また、上述した説明では、ユーザの現状の生体信号およびユーザの現状の動きや姿勢に応じて、プレイヤキャラクタＰＣの動作を変化させたり、プレイヤキャラクタＰＣの表示態様を変化させたり、障害物画像を変化させたりして、現状のユーザの状態を示す画像やユーザの状態変化を促すための指示画像等を提示しているが、他の態様でユーザに提示してもかまわない。例えば、ユーザの現状の生体信号およびユーザの現状の動きや姿勢に応じて、現状のユーザの動きや姿勢を示す情報やユーザの状態変化を促すための指示等を音声や光等で提示してもかまわない。例えば、ゲームシステム１においては、スピーカ２ａやスピーカ７０６を介して、音声を発することができる。具体的には、天井Ｔの起伏によって指示していたユーザの呼吸周期について、「吸って」「吐いて」を交互に音声で繰り返してユーザの呼吸周期を指示してもかまわない。また、地面Ｂの傾斜によって指示していたユーザへの動作指示について、限界傾斜角度まで「もう少し傾けて」と繰り返し音声で指示し、限界傾斜角度に到達した時点で「そこで止めてください」と音声でユーザに動作指示してもかまわない。
【０１９０】
また、上述した説明では、ユーザの脈波信号およびコアユニット７０の傾きに応じて、２次元の仮想ゲーム世界においてプレイヤキャラクタＰＣが移動するゲームを用いたが、本発明は、３次元の仮想ゲーム空間においてプレイヤキャラクタＰＣが移動したり、プレイヤキャラクタＰＣの表示態様が変化したりするゲームにも適用できることは言うまでもない。
【０１９１】
また、上記実施例では、据置型のゲーム装置３に本願発明を適用した例を説明したが、バイタルセンサと、ユーザの動作や姿勢を検出する加速度センサや傾斜センサ等のセンサと、これらのセンサから得られる情報に応じた処理を実行する情報処理装置とがあればよく、例えば一般的なパーソナルコンピュータ、携帯電話機、ＰＤＡ（Ｐｅｒｓｏｎａｌ  Ｄｉｇｉｔａｌ  Ａｓｓｉｓｔａｎｔ）、携帯ゲーム装置等のデバイスにも適用することができる。
【０１９２】
また、上述した説明では、コアユニット７０とゲーム装置本体５とが無線通信によって接続された態様を用いたが、コアユニット７０とゲーム装置本体５とがケーブルを介して電気的に接続されてもかまわない。この場合、コアユニット７０に接続されたケーブルをゲーム装置本体５の接続端子に接続する。
【０１９３】
また、コントローラ７を構成するコアユニット７０およびバイタルセンサ７６のうち、コアユニット７０のみに通信部７５を設けたが、バイタルセンサ７６にゲーム装置本体５へ生体情報データを無線送信する通信部を設けてもかまわない。また、コアユニット７０およびバイタルセンサ７６それぞれに上記通信部を設けてもかまわない。例えば、コアユニット７０およびバイタルセンサ７６に設けられた通信部がそれぞれゲーム装置本体５へ生体情報データや操作データを無線送信してもいいし、バイタルセンサ７６の通信部からコアユニット７０へ生体情報データを無線送信してコアユニット７０の通信部７５で受信した後、コアユニット７０の通信部７５がバイタルセンサ７６の生体情報データと共にコアユニット７０の操作データをゲーム装置本体５へ無線送信してもいい。これらの場合、コアユニット７０とバイタルセンサ７６とを電気的に接続する接続ケーブル７９が不要となる。
【０１９４】
また、上述したコアユニット７０の形状や、それに設けられている操作部７２の形状、数、および設置位置等は、単なる一例に過ぎず他の形状、数、および設置位置であっても、本発明を実現できることは言うまでもない。また、上述したバイタルセンサ７６の形状や、それに設けられている構成要素の種類、数、および設置位置等は、単なる一例に過ぎず他の種類、数、および設置位置であっても、本発明を実現できることは言うまでもない。また、上述した処理で用いられる係数、判定値、数式、処理順序等は、単なる一例に過ぎず他の値や数式や処理順序であっても、本発明を実現できることは言うまでもない。
【０１９５】
また、本発明のゲームプログラムは、光ディスク４等の外部記憶媒体を通じてゲーム装置本体５に供給されるだけでなく、有線または無線の通信回線を通じてゲーム装置本体５に供給されてもよい。また、ゲームプログラムは、ゲーム装置本体５内部の不揮発性記憶装置に予め記録されていてもよい。なお、ゲームプログラムを記憶する情報記憶媒体としては、ＣＤ−ＲＯＭ、ＤＶＤ、あるいはそれらに類する光学式ディスク状記憶媒体の他に、不揮発性半導体メモリでもよい。
【０１９６】
以上、本発明を詳細に説明してきたが、前述の説明はあらゆる点において本発明の例示にすぎず、その範囲を限定しようとするものではない。本発明の範囲を逸脱することなく種々の改良や変形を行うことができることは言うまでもない。
【産業上の利用可能性】
【０１９７】
本発明に係る情報処理プログラムおよび情報処理装置は、ユーザの現状の生体信号およびユーザの現状の動きや姿勢を用いて所定の提示を行うことによって、ユーザの状態変化を促すことができ、ユーザの生体情報等を管理する情報処理プログラムおよび情報処理装置やユーザの生体情報や動作情報を用いてゲームを進行するゲームプログラムやゲーム装置等として有用である。
【符号の説明】
【０１９８】
１…ゲームシステム
２…モニタ
２ａ、７０６…スピーカ
３…ゲーム装置
４…光ディスク
５…ゲーム装置本体
１０…ＣＰＵ
１１…システムＬＳＩ
１２…外部メインメモリ
１３…ＲＯＭ／ＲＴＣ
１４…ディスクドライブ
１５…ＡＶ−ＩＣ
１６…ＡＶコネクタ
１７…フラッシュメモリ
１８…無線通信モジュール
１９…無線コントローラモジュール
２０…拡張コネクタ
２１…外部メモリカード用コネクタ
２２、２３…アンテナ
２４…電源ボタン
２５…リセットボタン
２６…イジェクトボタン
３１…入出力プロセッサ
３２…ＧＰＵ
３３…ＤＳＰ
３４…ＶＲＡＭ
３５…内部メインメモリ
７…コントローラ
７０…コアユニット
７１…ハウジング
７２…操作部
７３…コネクタ
７４…撮像情報演算部
７４１…赤外線フィルタ
７４２…レンズ
７４３…撮像素子
７４４…画像処理回路
７５…通信部
７５１…マイコン
７５２…メモリ
７５３…無線モジュール
７５４…アンテナ
７００…基板
７０１…加速度センサ
７０２…ＬＥＤ
７０４…バイブレータ
７０７…サウンドＩＣ
７０８…アンプ
７６…バイタルセンサ
７６１…制御部
７６２…発光部
７６３…受光部
８…マーカ
【図１】
2010231399.tif 000003
【図２】
2010231399.tif 000004
【図３】
2010231399.tif 000005
【図４】
2010231399.tif 000006
【図５】
2010231399.tif 000007
【図６】
2010231399.tif 000008
【図７】
2010231399.tif 000009
【図８】
2010231399.tif 000010
【図９】
2010231399.tif 000011
【図１０】
2010231399.tif 000012
【図１１】
2010231399.tif 000013
【図１２】
2010231399.tif 000014
【図１３】
2010231399.tif 000015
【図１４】
2010231399.tif 000016
【図１５】
2010231399.tif 000017
【図１６】
2010231399.tif 000018
【図１７】
2010231399.tif 000019
【図１８】
2010231399.tif 000020
【図１９】
2010231399.tif 000021
【図２０】
2010231399.tif 000022
【図２１】
2010231399.tif 000023
【図２２】
2010231399.tif 000024
【手続補正書】
【提出日】平成22年6月30日(2010.6.30)
【手続補正１】
【補正対象書類名】図面
【補正対象項目名】図２１
【補正方法】変更
【補正の内容】
【図２１】
2010231399.tif 000025