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