(57)【要約】【課題】ＨＭＤを使用してジェスチャー入力を実現する際のユーザビリティを向上させる新たな技術の実現。【解決手段】ジェスチャー入力が必要な場面では、ＨＭＤの表示画面に、ジェスチャー入力の操作内容に対応づけられた被選択体２４が視界の所定位置に固定または略固定して表示される。プレーヤ２が首を振っても視界内には被選択体２４が残存表示される。したがって、選択内容やジェスチャー入力の対象を見失うことがない。【選択図】図８
2015231445.tif 000002
【特許請求の範囲】
【請求項１】
ユーザの頭部に装着されるＨＭＤ（Head Mounted Display）と、前記ユーザの手或いは当該ユーザが把持するポインティングデバイス（以下包括して「操作指示物」という）及び前記ＨＭＤを含む実空間を撮影するために設置された撮像手段とに接続されたコンピュータを、
前記撮像手段の撮影画像を用いて、前記ＨＭＤの表示画像空間となる仮想空間における、前記実空間中の前記操作指示物の位置に対応する仮想位置を算出する算出手段、
前記仮想空間中の所与の位置に入力判定体を配置する入力判定体配置制御手段、
前記仮想位置と、前記入力判定体の配置位置とに基づき、前記入力判定体への入力を判定する入力判定手段、
として機能させるためのプログラム。
【請求項２】
前記ＨＭＤの前記実空間中の位置及び／又は姿勢を判定するＨＭＤ位置姿勢判定手段、
前記ＨＭＤに表示させる前記仮想空間の画像として、前記ＨＭＤ位置姿勢判定手段により判定された前記ＨＭＤの位置及び／又は姿勢に応じて視界が変化する前記仮想空間の画像を生成する仮想空間画像生成手段、
として前記コンピュータを更に機能させ、
前記入力判定体配置制御手段は、前記視界の変化に追従して当該視界内の所与の位置に前記入力判定体を配置させる、
請求項１に記載のプログラム。
【請求項３】
前記ＨＭＤの前記実空間中の位置及び／又は姿勢を判定するＨＭＤ位置姿勢判定手段、
前記ＨＭＤに表示させる前記仮想空間の画像として、前記ＨＭＤ位置姿勢判定手段により判定された前記ＨＭＤの位置及び／又は姿勢に応じて視界が変化する前記仮想空間の画像を生成する仮想空間画像生成手段、
として前記コンピュータを更に機能させ、
前記入力判定体配置制御手段は、前記視界の変化に関わらず、前記入力判定体の配置位置を前記仮想空間中の所定位置とする、
請求項１に記載のプログラム。
【請求項４】
前記仮想空間画像生成手段は、前記仮想空間内にキャラクタを配置した画像を生成し、
前記入力判定体配置制御手段は、前記入力判定体を前記キャラクタに付随させる、
請求項３に記載のプログラム。
【請求項５】
前記入力判定体配置制御手段は、所与の条件を満たした場合に、前記入力判定体の付随表示を中断して当該視界中の所定位置に前記入力判定体を位置させる、
請求項４に記載のプログラム。
【請求項６】
前記入力判定体配置制御手段は、前記キャラクタが前記視界内に位置した後、前記視界外となった場合を前記所与の条件を満たした場合とする、
請求項５に記載のプログラム。
【請求項７】
前記仮想位置に、前記操作指示物の前記実空間中の位置に対応する位置であることを示す指示オブジェクトを前記ＨＭＤに表示させる指示オブジェクト表示制御手段、
として前記コンピュータを機能させるための請求項２〜６の何れか一項に記載のプログラム。
【請求項８】
前記入力判定手段は、前記入力判定体の表示位置と前記指示オブジェクトの表示位置との相対位置関係に基づいて前記入力判定体への入力を判定する、
請求項７に記載のプログラム。
【請求項９】
前記ＨＭＤからみて、前記仮想位置が前記仮想空間において隠れた位置となる場合に、当該指示オブジェクトを表出させるように画像処理する第１の画像処理手段として前記コンピュータを更に機能させるための請求項７又は８に記載のプログラム。
【請求項１０】
前記ＨＭＤからみて、前記入力判定体が前記仮想空間において隠れた位置となる場合に、当該入力判定体を表出させるように画像処理する第２の画像処理手段として前記コンピュータを更に機能させるための請求項２〜９の何れか一項に記載のプログラム。
【請求項１１】
前記仮想空間画像生成手段は、前記仮想空間内にキャラクタを配置した画像を生成し、
前記仮想位置に基づいて前記キャラクタに対する操作入力を判定するキャラクタ対象操作入力判定手段、
前記入力判定体が表示されているときには前記キャラクタ対象操作入力判定手段を無効とし、表示されていないときに前記キャラクタ対象操作入力判定手段を有効とする手段、
として前記コンピュータを機能させるための請求項２〜１０の何れか一項に記載のプログラム。
【請求項１２】
前記実空間に対応するように前記仮想空間の座標系を初期設定する座標系初期設定手段、
として前記コンピュータを更に機能させるための請求項１〜１１の何れか一項に記載のプログラム。
【請求項１３】
前記座標系初期設定手段は、前記撮像手段の撮影画像中の前記操作指示物の位置を参照して、前記初期設定を実行する、
請求項１２に記載のプログラム。
【請求項１４】
前記算出手段は、前記実空間中の前記ＨＭＤと前記操作指示物との相対位置関係に基づいて、前記仮想位置を補正する仮想位置補正手段を有する、
請求項１〜１３の何れか一項に記載のプログラム。
【請求項１５】
前記仮想位置補正手段は、前記ＨＭＤの向きを基準にした前記相対位置関係が所定の補正条件を満たした場合に、当該補正条件に対応付けられた補正演算に従って前記仮想位置を補正する、
請求項１４に記載のプログラム。
【請求項１６】
ユーザの頭部に装着されるＨＭＤと、操作指示物及び前記ＨＭＤを含む実空間を撮影するために設置された撮像手段とに接続され、前記ＨＭＤに表示させる画像を生成するための画像生成装置であって、
前記撮像手段の撮影画像を用いて、前記ＨＭＤの表示画像空間となる仮想空間における、前記実空間中の前記操作指示物の位置に対応する仮想位置を算出する算出手段と、
前記仮想空間中の所与の位置に入力判定体を配置する入力判定体配置制御手段と、
前記仮想位置と、前記入力判定体の配置位置とに基づき、前記入力判定体への入力を判定する入力判定手段と、
を備えた画像生成装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、コンピュータに表示制御させるためのプログラム等に関する。
【背景技術】
【０００２】
頭部装着型ディスプレイであるヘッドマウントディスプレイ（Head Mounted Display：以下「ＨＭＤ」）は、臨場感と迫力の有る映像体験を提供するためのキーデバイスとして知られている。例えば、遊園地等のアトラクションやビデオゲームなどに採用する技術が知られている（例えば、特許文献１〜特許文献３を参照）。
【０００３】
また、ＨＭＤを用いながらユーザのジェスチャーを認識する技術も知られるところである（例えば、特許文献４を参照）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開平５−３０５１８１号公報
【特許文献２】特開２０００−２１０４６８号公報
【特許文献３】特開２００３−１２５３１３号公報
【特許文献４】特開２０１２−１８１８０９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
本発明は、ＨＭＤを使用してジェスチャー入力を実現する際のユーザビリティを向上させる新たな技術の実現を目的とする。
【課題を解決するための手段】
【０００６】
上述した課題を解決するための第１の発明は、ユーザの頭部に装着されるＨＭＤ（Head Mounted Display）と、前記ユーザの手或いは当該ユーザが把持するポインティングデバイス（以下包括して「操作指示物」という）及び前記ＨＭＤを含む実空間を撮影するために設置された撮像手段（例えば、図１の測距センサユニット１１００、カラーイメージセンサ１１０４）とに接続されたコンピュータを、
前記撮像手段の撮影画像を用いて、前記ＨＭＤの表示画像空間となる仮想空間における、前記実空間中の前記操作指示物の位置に対応する仮想位置を算出する算出手段（例えば、図９の処理部２００、ゲーム演算部２０２、手位置算出部２１４、図１２のステップＳ４）、
前記仮想空間中の所与の位置に入力判定体（例えば、図６の被選択体２４）を配置する入力判定体配置制御手段（例えば、図９のプレーヤ補助制御部２２０、被選択体制御部２２８、立体視画像生成制御部２３２、図１４のステップＳ１１２）、
前記仮想位置と、前記入力判定体の配置位置とに基づき、前記入力判定体への入力を判定する入力判定手段（例えば、図９のプレーヤ補助制御部２２０、ジェスチャー入力判定部２３８、図１４のステップＳ１７０〜Ｓ１７２）、
として機能させるためのプログラムである。
【０００７】
入力判定体とは、ジェスチャー入力を要求する際にユーザにジェスチャーの目安として提供する表示体である。例えば、手の位置の到達目標位置や到達目標領域であったり、動作開始ポイントから終了ポイント、更にはそれら両ポイント間を結ぶ動作軌跡、などを示すもの、ガイドなどのことである。到達目標位置や到達目標領域を示す意味で表示する場合には、ユーザの立場からすれば入力判定体は選択操作の対象と映るので“被選択体”と呼び換えることができる。勿論、ジェスチャー入力を要求する状況によっては、それがゲーム中に登場するキャラクタや背景物などを兼ねても良い。
【０００８】
第１の発明によれば、ジェスチャー入力する内容が割り当てられた入力判定体を、ＨＭＤの表示画面内に表示させることができる。ジェスチャー入力に慣れないと、どのようにジェスチャーすればその場で望まれている入力ができるか分かり難いものであるが、ユーザは入力判定体をジェスチャー入力の案内として利用できるので、スムーズにその時要求されているジェスチャー入力ができるようになる。つまり、ＨＭＤを使用してジェスチャー入力を実現する際のユーザビリティを向上させることが可能となる。
【０００９】
第２の発明は、前記ＨＭＤの前記実空間中の位置及び／又は姿勢を判定するＨＭＤ位置姿勢判定手段（例えば、図９のＨＭＤ位置姿勢算出部２１０、図１２のステップＳ４）、
前記ＨＭＤに表示させる前記仮想空間の画像として、前記ＨＭＤ位置姿勢判定手段により判定された前記ＨＭＤの位置及び／又は姿勢に応じて視界が変化する前記仮想空間の画像を生成する仮想空間画像生成手段（例えば、図９の立体視画像生成制御部２３２、図１２のステップＳ１５）、として前記コンピュータを更に機能させ、
前記入力判定体配置制御手段は、前記視界の変化に追従して当該視界内の所与の位置に前記入力判定体を配置させる第１の発明のプログラムである。
【００１０】
もし、入力判定体が仮想空間に対して固定位置に表示されると、ユーザが首を振ると入力判定体が視界外に外れてしまい、ゲーム内容によっては入力判定体が視界外に外れたままとなり、ユーザが操作入力するべきタイミングであることを失念することにもなりかねない。例えば、ＦＰＳ（ファーストパーソンシューティングゲーム）などではそうしたシチュエーションになりかねない。しかし、第２の発明によれば、ユーザがＨＭＤを被って首を振ったとしても入力判定体はＨＭＤの視界内に表示されるのでそうした心配はなくなる。
【００１１】
しかし、その一方でゲーム内容によっては入力判定体が仮想空間の所定位置にあった方が都合が良い場合もある。例えば、アドベンチャーゲームで秘密の部屋の鍵を解錠するための番号や操作を入力する場面がこれに該当するといえるであろう。
【００１２】
よって、第３の発明として、前記ＨＭＤの前記実空間中の位置及び／又は姿勢を判定するＨＭＤ位置姿勢判定手段、前記ＨＭＤに表示させる前記仮想空間の画像として、前記ＨＭＤ位置姿勢判定手段により判定された前記ＨＭＤの位置及び／又は姿勢に応じて視界が変化する前記仮想空間の画像を生成する仮想空間画像生成手段、として前記コンピュータを更に機能させ、前記入力判定体配置制御手段は、前記視界の変化に関わらず、前記入力判定体の配置位置を前記仮想空間中の所定位置とする、第１の発明のプログラムを構成してもよい。
【００１３】
第４の発明は、前記仮想空間画像生成手段が、前記仮想空間内にキャラクタ（例えば，図５の案内キャラクタ２０）を配置した画像を生成し、前記入力判定体配置制御手段は、前入力判定体を前記キャラクタに付随させる、第３の発明のプログラムである。
【００１４】
第４の発明によれば、例えば、キャラクタからの質問に対する返答をジェスチャー入力する場面などに好適である。
【００１５】
第５の発明は、前記入力判定体配置制御手段が、所与の条件を満たした場合に、前記入力判定体の付随表示を中断して当該視界中の所定位置に前記入力判定体を位置させる、第４の発明のプログラムである。
【００１６】
第５の発明によれば、入力判定体は視界内の所定位置にいわば固定表示（視界内に残存表示）されるので、ユーザビリティに優れる。
【００１７】
例えば、第６の発明として、前記入力判定体配置制御手段が、前記キャラクタが前記視界内に位置した後、前記視界外となった場合を前記所与の条件を満たした場合とする、第５の発明のプログラムを構成することもできる。
【００１８】
この場合、キャラクタが一旦視界内に位置する場合を条件にして適用すれば、そのあとユーザが首を振って当該キャラクタが視界外（画面外）となったとしても、入力判定体が常に視界内に維持されるので入力判定体を見失わず、また入力を要求されていることを忘れずにすむ。
【００１９】
第７の発明は、前記仮想位置に、前記操作指示物の前記実空間中の位置に対応する位置であることを示す指示オブジェクト（例えば、図５の左手オブジェクト１４、右手オブジェクト１６）を前記ＨＭＤに表示させる指示オブジェクト表示制御手段（例えば、図９の手オブジェクト制御部２２６、図１２のステップＳ４、図１３のステップＳ５２）、
として前記コンピュータを機能させるための第２〜第６の何れかの発明のプログラムである。
【００２０】
第７の発明によれば、実空間中の操作指示物の位置に対応する仮想空間の位置に、指示オブジェクトを表示させることができる。よって、指示オブジェクトの表示を頼りに操作指示物を入力判定体に近づけるといったジェスチャー入力がし易くなる。
【００２１】
第８の発明は、前記入力判定手段が、前記入力判定体の表示位置と前記指示オブジェクトの表示位置との相対位置関係に基づいて前記入力判定体への入力を判定する（例えば、図１４のステップＳ１７０〜Ｓ１７２）、第６の発明のプログラムである。
【００２２】
第８の発明によれば、ユーザは入力判定体に操作指示物を近づけたり、入力判定体に操作指示物を向けることで、当該入力判定体への入力が可能となり、優れたユーザビリティを実現できる。
【００２３】
第９の発明は、前記ＨＭＤからみて、前記仮想位置が前記仮想空間において隠れた位置となる場合に、当該指示オブジェクトを表出させるように画像処理する第１の画像処理手段（例えば、図９の表出処理部２３０、図１４のステップＳ１２２）として前記コンピュータを更に機能させるための第７又は第８の発明のプログラムである。
【００２４】
第９の発明によれば、指示オブジェクトの視認性を向上できる。
【００２５】
第１０の発明は、前記ＨＭＤからみて、前記入力判定体が前記仮想空間において隠れた位置となる場合に、当該入力判定体を表出させるように画像処理する第２の画像処理手段（例えば、図９の表出処理部２３０、図１４のステップＳ１２０）として前記コンピュータを更に機能させるための第２〜第９の何れかの発明のプログラムである。
【００２６】
第１０の発明によれば、入力判定体の視認性を向上できる。
【００２７】
第１１の発明は、前記仮想空間画像生成手段が、前記仮想空間内にキャラクタを配置した画像を生成し、
前記仮想位置に基づいて前記キャラクタに対する操作入力を判定するキャラクタ対象操作入力判定手段（例えば、図９のジェスチャー入力判定部２３８、図１２のステップＳ８）、
前記入力判定体が表示されているときには前記キャラクタ対象操作入力判定手段を無効とし、表示されていないときに前記キャラクタ対象操作入力判定手段を有効とする手段（例えば、図９の対キャラクタジェスチャー入力無効化制御部２４０、図１３のステップＳ９４、図１４のステップＳ１７４）、として前記コンピュータを機能させるための第２〜第１０の何れかの発明のプログラムである。
【００２８】
第１１の発明によれば、仮想空間内に入力判定体以外にもジェスチャー入力の対象が存在する場合に、入力判定体以外へのジェスチャー入力を無効化することで、入力判定体への入力を優先させるとともに意図しない入力を防止することができる。
【００２９】
実空間の座標系と仮想空間の座標系との関係に関しては、第１２の発明として、前記実空間に対応するように前記仮想空間の座標系を初期設定する座標系初期設定手段（例えば、図１６の座標系初期設定部２０４）、として前記コンピュータを更に機能させるための第１〜第１１の何れかの発明のプログラムを構成すると好適である。
【００３０】
例えば、第１３の発明として、前記座標系初期設定手段は、前記撮像手段の撮影画像中の前記操作指示物の位置を参照して、前記初期設定を実行する、第１２の発明のプログラムを構成すると、操作指示の精度が向上するので更に好適である。
【００３１】
また、ＨＭＤと操作指示物の相対位置関係を、実空間と仮想空間とで同じように制御する場合に限らず、第１４の発明として、前記算出手段が、前記実空間中の前記ＨＭＤと前記操作指示物との相対位置関係に基づいて、前記仮想位置を補正する仮想位置補正手段（例えば、図１６の仮想位置補正部２０６）を有する、第１〜第１３の何れかの発明のプログラムを構成するとしてもよい。
【００３２】
更には、第１５の発明として、前記仮想位置補正手段が、前記ＨＭＤの向きを基準にした前記相対位置関係が所定の補正条件を満たした場合に、当該補正条件に対応付けられた補正演算に従って前記仮想位置を補正する、第１４の発明のプログラムを構成することができる。
【００３３】
第１６の発明は、ユーザの頭部に装着されるＨＭＤと、操作指示物及び前記ＨＭＤを含む実空間を撮影するために設置された撮像手段とに接続され、前記ＨＭＤに表示させる画像を生成するための画像生成装置であって、
前記撮像手段の撮影画像を用いて、前記ＨＭＤの表示画像空間となる仮想空間における、前記実空間中の前記操作指示物の位置に対応する仮想位置を算出する算出手段（例えば、図１の制御基板１０５０、図９の処理部２００、ゲーム演算部２０２、手位置算出部２１４、図１２のステップＳ４）と、
前記仮想空間中の所与の位置に入力判定体を配置する入力判定体配置制御手段（例えば、図１の制御基板１０５０、図９のプレーヤ補助制御部２２０、被選択体制御部２２８、立体視画像生成制御部２３２、図１４のステップＳ１１２）と、
前記仮想位置と、前記入力判定体の配置位置とに基づき、前記入力判定体への入力を判定する入力判定手段（例えば、図１の制御基板１０５０、図９のプレーヤ補助制御部２２０、ジェスチャー入力判定部２３８、図１４のステップＳ１７０〜Ｓ１７２）と、
を備えた画像生成装置である。
【００３４】
第１６の発明によれば、第１の発明と同様の効果が得られる。
【図面の簡単な説明】
【００３５】
【図１】ゲームシステムの構成例を示す図。
【図２】ゲームコントローラの構成例を示す図。
【図３】ヘッドセットの構成の一例を示す図。
【図４】測距空間の座標系と測距・認識される要素について説明する図。
【図５】ＨＭＤに表示させるプ立体視画像（ゲーム画像）を生成するための仮想空間と、仮想空間に配置されるオブジェクトとの一例を示す図。
【図６】（１）ＨＭＤに表示される立体視画像（ゲーム画像；ゲーム画面）の例と、（２）その時の現実世界におけるプレーヤ及びその周囲の状態と、を示す図。
【図７】（１）ＨＭＤに表示される立体視画像（ゲーム画像；ゲーム画面）の例と、（２）その時の現実世界におけるプレーヤ及びその周囲の状態と、を示す図。
【図８】（１）ＨＭＤに表示される立体視画像（ゲーム画像；ゲーム画面）の例と、（２）その時の現実世界におけるプレーヤ及びその周囲の状態と、を示す図。
【図９】ゲームシステムの機能構成例を示す機能ブロック図。
【図１０】記憶部が記憶するプログラムやデータの例を示す図。
【図１１】仮想空間制御データのデータ構成例を示す図。
【図１２】ゲームシステムにおける処理の流れを説明するためのフローチャート。
【図１３】プレーヤ補助処理の流れを説明するためのフローチャート。
【図１４】図１３より続くフローチャート。
【図１５】ゲームシステムの構成の変形例を示す図。
【図１６】機能構成の変形例を示す図。
【図１７】ＨＭＤに表示させる立体視画像（ゲーム画像）を生成するための仮想空間と、仮想空間に配置されるオブジェクトとの変形例を示す図。
【発明を実施するための形態】
【００３６】
図１は、本実施形態におけるゲームシステムの構成の一例を示す図である。
本実施形態のゲームシステム１０００は、ゲーム装置本体１００２と、タッチパネル１００４と、測距センサユニット１１００と、ゲームコントローラ１２００と、ＨＭＤ１３１０を搭載したヘッドセット１３００と、を含む。ＨＭＤ１３１０は、非透過型（没入型とも称される）のＨＭＤとして説明するが、半透過型や透過型のＨＭＤであってもよい。
【００３７】
ゲーム装置本体１００２は、コンピュータの一種であって制御基板１０５０を内蔵する。
【００３８】
制御基板１０５０は、例えば、
１）ＣＰＵ（Central Processing Unit）１０５１やＧＰＵ（Graphics Processing Unit）、ＤＳＰ（Digital Signal Processor）などの各種マイクロプロセッサ、
２）ＶＲＡＭやＲＡＭ，ＲＯＭ等の各種ＩＣメモリ１０５２、
３）タッチパネル１００４や測距センサユニット１１００、ゲームコントローラ１２００、ヘッドセット１３００などの周辺機器と無線或いは有線により通信接続するための通信モジュール１０５３、
４）タッチパネル１００４などのドライバ回路１０５４、などを搭載する。
なお、制御基板１０５０の一部又は全部をＡＳＩＣ（Application Specific Integrated Circuit）やＦＰＧＡ（Field-Programmable Gate Array）で構成するとしてもよい。
【００３９】
そして、ゲーム装置本体１００２は、制御基板１０５０でＩＣメモリ１０５２に記憶されているプログラムおよびデータを読み出して演算処理することにより、ゲームシステム１０００を統合的に制御して、ビデオゲームを実行させることができる。
【００４０】
タッチパネル１００４は、タッチパネルを装備したビデオモニタであって、プレーヤ２の概ね正面に配置される。
【００４１】
測距センサユニット１１００は、例えばタッチパネル１００４の上部に、当該モニタの表示面正面方向へ向けて、ヘッドセット１３００及びゲームコントローラ１２００を撮影範囲に含めるように固定設置される。そして、タッチパネル１００４の前方に存在するプレーヤ２やその周辺の物体の画像を撮影し、画像データをゲーム装置本体１００２へ出力することできる。更に、当該画像を画像解析することでプレーヤ２やその周辺の物体までの距離を算出し、距離情報をゲーム装置本体１００２へ出力することができる。なお、図中の引き出し図は、測距センサユニット１１００の正面図である。
【００４２】
具体的には、測距センサユニット１１００は、例えば、赤外線（ＩＲ）を前方へ照射する赤外線照射器１１０２と、前方の物体からの赤外線反射画像を撮影することができるカラーイメージセンサ１１０４と、赤外線反射画像を解析して物体までの相対距離等を算出したり画像認識処理を行う単数又は複数のＬＳＩ１１０６とを搭載する。カラーイメージセンサ１１０４は、撮像手段の一種である。
【００４３】
測距センサユニット１１００は、カラーイメージセンサ１１０４で撮影した画像から、ゲームコントローラ１２００やヘッドセット１３００、プレーヤ２の身体の各部を画像認識して撮影された画像内の代表点位置を判定する。そして、代表点位置までを測距することができる。こうした測距は、公知のＩＲ式測距センサ技術により実現することができる。
なお、測距センサユニット１１００で採用する測距技術はＩＲ式に限らず適宜採用することができる。例えば、左右のカラーイメージセンサ１１０４を用いてステレオ撮影し、視差から距離を算出するとしてもよい。
【００４４】
また、測距センサユニット１１００には、公知の６軸センサ１１０８が搭載されている。
６軸センサ１１０８は、測距センサユニット１１００の前後（カラーイメージセンサ１１０４の光軸方向）・左右・上下の３軸方向の移動や各軸周りの回転を検出するモーショントレースのための公知のセンサであって、例えば、３軸方向の加速度と３軸周りの角速度とを検出する。或いは３軸方向の加速度と東西南北の地磁気方向を検出するとしてもよい。６軸センサ１１０８による検出結果から、測距空間の座標系の深度方向軸（Ｚ軸）の向きが分かるようになる。
【００４５】
また、測距センサユニット１１００は、ゲーム装置本体１００２と通信接続するための通信モジュールや、バッテリーなどを適宜搭載するものとする。
【００４６】
図２は、ゲームコントローラ１２００の構成例を示す図である。
本実施形態のゲームコントローラ１２００は、両手で把持して用いることを前提としてデザインされている。勿論、銃型コントローラのように片手での把持を前提としてデザインするとしてもよい。
ゲームコントローラ１２００は、その外面に発光マーカ１２０２が設けられている。また、スピーカ１２０４と、バイブレータ１２０６と、６軸センサ１２０８と、コントローラ基板１２５０と、図示されないバッテリー等を内蔵する。
【００４７】
発光マーカ１２０２は、例えばＬＥＤ等により実現され、コントローラ基板１２５０により発光制御される。通常は、常時点灯である。
【００４８】
６軸センサ１２０８は、ゲームコントローラ１２００の前後（Ｘ２軸）・左右（Ｙ２軸）・上下（Ｚ２軸）の３軸方向の移動や各軸周りの回転（Φｃ、θｃ、Ψｃ）を検出するモーショントレースのための公知のセンサであって、例えば、３軸方向の加速度と３軸周りの角速度とを検出する。或いは３軸方向の加速度と東西南北の地磁気方向を検出するとしてもよい。
【００４９】
コントローラ基板１２５０は、ＣＰＵ１２５１や、ＩＣメモリ１２５２、通信モジュール１２５３、インターフェース回路１２５４などを搭載し、ゲームコントローラ１２００の動作制御や外部との通信を制御する。インターフェース回路１２５４は、スピーカ１２０４やバイブレータ１２０６への制御信号の出力や、操作ボタンスイッチ１２６０や方向入力キー１２６２、ジョイスティック１２６４などからの信号の入力を制御する。
【００５０】
図３は、本実施形態におけるヘッドセット１３００の構成例を示す図であって、（１）正面図、（２）側面図に相当する。
ヘッドセット１３００は、プレーヤ２が頭部に装着する装備であって、画像と音声の情報をプレーヤ２に視聴可能に提供するとともに、ヘッドトラッキングを実現するための頭部の位置や姿勢を検出する機能を有する。例えば、ヘッドセット１３００は、ヘッドホン１３０２と、ＨＭＤ１３１０（頭部装着ディスプレイ：Head Mounted Display）と、ヘッドセット基板１３５０と、を有する。
【００５１】
ヘッドホン１３０２は、いわゆる密閉型のステレオヘッドホンとすると好適である。
【００５２】
ＨＭＤ１３１０は、提供する視野角が人の視野角に相当する非透過型・没入型のヘッドマウントディスプレイおよびそのドライバ回路により実現できる。
例えば、ヘッドセット基板１３５０から画像信号を受信する通信ＩＣと、受信した画像信号に基づく画像を装着者の両眼に肉眼の視野角相当で見せる画像表示デバイス及び光学素子と、６軸センサ１３０８と、６軸センサ１３０８で検出した頭部の加速度や姿勢の情報を算出処理するＩＣチップ１３０９と、ゲーム装置本体１００２と通信接続するための通信モジュール１３５２と、を含む。これらの一部は、ヘッドセット基板１３５０に含まれるとしてもよい。
【００５３】
６軸センサ１３０８は、ＨＭＤ１３１０すなわちプレーヤ２の頭部の前後（Ｘ３軸）・左右（Ｙ３軸）・上下（Ｚ３軸）の３軸の移動や各軸周りの回転（Φｈ、θｈ、Ψｈ）を検出するモーショントレースのための公知のセンサであって、例えば、３軸方向の加速度と３軸周りの角速度とを検出する。或いは３軸方向の加速度と東西南北の地磁気方向を検出するとしてもよい。
【００５４】
ヘッドセット基板１３５０は、ヘッドセット１３００の各部と接続され当該ヘッドセットにおける各種演算処理と、外部とのデータ通信制御に係る処理を行う制御基板である。例えば、ＣＰＵやＩＣメモリ、画像処理ＬＳＩ、通信ＩＣ、インターフェース回路などにより実現できる。
【００５５】
また、ＨＭＤ１３１０の正面３箇所に発光マーカ１３１２が設けられている。発光マーカ１３１２は、例えばＬＥＤ等により実現され、ヘッドセット基板１３５０により発光制御される。通常は、常時点灯である。発光マーカ１３１２は、測距センサユニット１１００のカラーイメージセンサ１１０４で撮影した画像からＨＭＤ１３１０の存在と位置を認識するためのマーカとして利用される。
【００５６】
図４は、測距空間の座標系と測距・認識される要素について説明する図である。
測距空間の座標系は、測距センサユニット１１００を座標原点とし、カラーイメージセンサ１１０４の光軸方向を深度軸（Ｚ軸）とする。そして、スケールは実空間と同様に設定されている。測距空間は実空間でもあるが、測距センサユニット１１００の設置姿勢に応じて座標系の各軸方向が定義される。測距センサユニット１１００の設置姿勢は、６軸センサ１１０８の検知結果から判断される。勿論、６軸センサ１１０９の検知結果から実空間の水平方向及び鉛直方向を求めることができるため、測距空間の座標軸の方向も、水平方向及び鉛直方向に沿って設定することが可能である。
【００５７】
本実施形態のゲームシステム１０００では、測距センサユニット１１００による測距によって測距空間における、ＨＭＤ１３１０の位置Ｐｈと、ゲームコントローラ１２００の位置Ｐｃと、プレーヤ２の右手位置Ｐｒ及び左手位置Ｐｌとを随時（例えば１００ｍｓ間隔などの所定周期で）得ることができる。
【００５８】
具体的には、測距センサユニット１１００のカラーイメージセンサ１１０４で撮影された画像から、ＨＭＤ１３１０の発光マーカ１３１２を認識することで、ＨＭＤ１３１０の存在を認識し、画像座標系における発光マーカ１３１２が写っている位置と、当該位置の測距結果とからＨＭＤ１３１０の位置Ｐｈを決定する。測距センサユニット１１００を基準とする発光マーカ１３１２の相対位置関係、相対距離、大きさから位置Ｐｈを割り出すとしても良い。ゲームコントローラ１２００についても同様に、画像座標系における発光マーカ１２０２が写っている位置と、当該位置の測距結果とからゲームコントローラ１２００の位置Ｐｃを決定することができる。
【００５９】
また、カラーイメージセンサ１１０４で撮影された画像中の複数の発光マーカ１３１２それぞれの大きさ・傾き・変形や、各発光マーカ１３１２を結んでできる図形の大きさ・傾き・変形から、ＨＭＤ１３１０の姿勢（Φｈ、θｈ、Ψｈ）、換言すれば、ＨＭＤ１３１０を装着したプレーヤの視線方向（顔の正面方向）を検出することができる。そして、ＨＭＤ１３１０の６軸センサ１３０８により位置Ｐｈにおける姿勢や姿勢の変化を知ることができる。ゲームコントローラ１２００についても同様で、カラーイメージセンサ１１０４で撮影された画像中の発光マーカ１２０２それぞれの大きさ・傾き・変形や、各発光マーカ１２０２を結んでできる図形の大きさ・傾き・変形からゲームコントローラ１２００の姿勢（Φｃ、θｃ、Ψｃ）を検出することができる。また、ゲームコントローラ１２００の６軸センサ１２０８により位置Ｐｃにおける姿勢や姿勢の変化を知ることができる。
【００６０】
なお、６軸センサ１３０８や６軸センサ１２０８が地磁気センサなどを含んで構成され、地磁気方向を基準とした姿勢を検出できるならば、発光マーカ１３１２や発光マーカ１２０２を用いた姿勢算出の補正情報として利用したり、発光マーカ１３１２や発光マーカ１２０２を利用せずに姿勢算出を実現することができる。
【００６１】
ジェスチャー入力の際の操作指示物となる左手位置Ｐｌ及び右手位置Ｐｒは、カラーイメージセンサ１１０４で撮影された画像から左手、右手が写っている部分を画像認識し、当該画像部分の位置座標と、当該位置座標に係る測距結果とから決定される。なお、手の画像認識は形状認識などの公知技術を適宜用いて実現できる。
【００６２】
そして、本実施形態のゲームシステム１０００は、これらのパラメータ値に基づいて、家庭用据置型ゲーム装置でＨＭＤを使用する際の不便を改善し、ユーザビリティを向上させる。具体的には、ヘッドセット１３００を装着した状態で、且つゲームコントローラ１２００が把持されない場合に、ヘッドセット１３００を装着して外界の様子を確認できない状態であっても、比較的容易にゲームコントローラ１２００を見つけて手に持てるように案内をしてプレーヤを補助する。
【００６３】
〔原理の説明〕
容易にゲームコントローラ１２００を見つけて手に持てるようにする案内の１つが、ＨＭＤ１３１０による案内表示の実施である。
【００６４】
図５は、ＨＭＤ１３１０にて表示させるプレーヤ補助表示用の立体視画像を生成するためのプレーヤ補助表示用仮想３次元空間と当該空間に配置されるオブジェクトとの例を示す図である。
【００６５】
本実施形態では、プレーヤ補助表示用仮想３次元空間は、実空間の水平方向及び鉛直方向に沿って座標軸方向を定めた座標系で定義され、スケールも実空間と同様に設定される。また、座標原点は、測距空間の原点と同じ位置とする。プレーヤ補助表示用仮想３次元空間は仮想空間の一例であり、以下適宜「仮想空間」と略称する。ＨＭＤ１３１０に表示するゲーム画像を生成するために、ＨＭＤ１３１０用の仮想視点（仮想ステレオカメラ１０）を基準とする視点座標系の仮想空間を別途設けるとしてもよい。また、プレーヤ補助表示用仮想３次元空間は、例えば、プレーヤが昆虫等のミクロの世界に入り込んだようなゲームを楽しむ場合には、実空間と異なるスケールとしてもよいことは勿論である。
【００６６】
プレーヤ補助表示用仮想３次元空間には、空間の方向感覚を補うために適宜床や壁、天井などの背景オブジェクト４と、仮想ステレオカメラ１０と、コントローラオブジェクト１２と、方向案内オブジェクト１３と、左手オブジェクト１４と、右手オブジェクト１６とが配置される。また、操作入力を促すなどのプレーヤ２に向けた何らかの操作案内表示を行う場合には、案内キャラクタ２０や、案内表示パネル２２、被選択体２４の各オブジェクトが配置される。
【００６７】
仮想ステレオカメラ１０は、ＨＭＤ１３１０にて立体視画像を生成するための左右一組の仮想カメラ群である。当該セットの右側カメラで撮影したプレーヤ補助表示用仮想３次元空間のレンダリング画像がＨＭＤ１３１０の右眼用の画像となり、左側カメラで撮影したレンダリング画像が左眼用の画像となる。
【００６８】
仮想ステレオカメラ１０は、測距座標系から仮想空間の座標系に適宜座標変換されたＨＭＤ１３１０の位置Ｐｈ’に配置される。そして、仮想ステレオカメラ１０の撮影画角は人の肉眼と同程度に設定され、光軸の方向はＨＭＤ１３１０の６軸センサ１３０８にて検出された前後軸（Ｘ３軸：図３）の方向とし、光軸周りの回転は６軸センサ１３０８にて検出された前後軸周りの回転と同一となるように制御される。つまり、仮想ステレオカメラ１０はプレーヤ２の頭部の動きをトレースするように制御される。こうした機能は、公知のＨＭＤに係るヘッドトラッキング技術を利用することができる。
【００６９】
コントローラオブジェクト１２は、ゲームコントローラ１２００の存在位置を示すオブジェクト（第１の案内表示の第１形態）であって、例えばゲームコントローラ１２００を簡略化したデザインを有する。そして、測距座標系から仮想空間の座標系に適宜座標変換されたゲームコントローラ１２００の位置Ｐｃ’に配置される。コントローラオブジェクト１２の大きさは、実物のゲームコントローラ１２００と同じまたは同程度とする。
【００７０】
方向案内オブジェクト１３は、仮想空間においてコントローラオブジェクト１２の位置を指し示すように制御されるオブジェクト（第１の案内表示の第２形態）である。ＨＭＤ１３１０の視界内（撮影画角内）に、コントローラオブジェクト１２が入らない場合に、ＨＭＤ１３１０の視界内の所定位置に表示されるように配置位置が自動調節される。具体的には、ＨＭＤ１３１０の表示画面の周部であって、ゲームコントローラ１２００の位置ＰＣ’に最近接する位置に方向案内オブジェクト１３が配置表示される（図６参照）。
【００７１】
左手オブジェクト１４及び右手オブジェクト１６は、本実施形態におけるジェスチャー入力の操作指示物である手の実空間（測距空間）中の位置に対応する仮想空間中の位置を示す指示オブジェクトであり、容易にゲームコントローラ１２００を手に取れるようにするための第２の案内表示である。具体的には、左手オブジェクト１４及び右手オブジェクト１６は、それぞれ測距座標系から仮想空間の座標系に適宜座標変換されたプレーヤ２の左手位置Ｐｌ’及び右手位置Ｐｒ’に配置制御される。つまり、左手オブジェクト１４及び右手オブジェクト１６は、それぞれプレーヤ２の左手及び右手の動きをトレースする。
【００７２】
案内キャラクタ２０や、案内表示パネル２２、被選択体２４は、仮想ステレオカメラ１０から見て奥側、言うなればプレーヤ２の正面方向に配置される。
【００７３】
仮想ステレオカメラ１０の位置や視線方向が変化したとしても（すなわち、ヘッドセット１３００が装着された頭部を動かしたとしても）、案内キャラクタ２０及び案内表示パネル２２の仮想空間における配置位置は変化しない。特に、案内キャラクタ２０は仮想空間中を移動し得るが、案内表示パネル２２は仮想空間中の固定位置に配置されるものとする。
案内表示パネル２２は、操作入力の目的や操作入力を促すテキストや図を表示する、例えば板状オブジェクトある。
【００７４】
被選択体２４は、例えば選択操作アイコンに相当し、対応付けられている選択肢を示すテキストや図を表示する。被選択体２４の配置位置は、仮想ステレオカメラ１０の撮影画角内（すまわちＨＭＤ１３１０で見える視界内）において固定または略固定となるように自動制御される（詳細は後述）。被選択体２４のデザインは、適宜設定可能であるが、本実施形態では案内キャラクタ２０の台詞を表示する“吹き出し”に相当するデザインとする。
【００７５】
図６〜図８は、（１）ＨＭＤ１３１０で表示される立体視画像（ゲーム画像；ゲーム画面）の例と、（２）その時の現実世界におけるプレーヤ２とその周囲の状態と、を示す図である。
図６〜図８に示す画像は、ゲーム開始前の準備段階にあって、プレーヤ２が両手でヘッドセット１３００を装着し、タッチパネル１００４すなわち正面を向いた状態で見ることができる。
【００７６】
仮想空間の座標原点付近に案内キャラクタ２０や、案内表示パネル２２、被選択体２４が初期配置されるため（図５参照）、図６に示すように仮想ステレオカメラ１０の立体視画像（ゲーム画面）Ｗ２の中央正面に、これらが表示される。このうち、被選択体２４は、必ずゲーム画面の所定位置に表示されるように、仮想ステレオカメラ１０の視線方向に追従して、仮想空間中の位置が調整される（図８参照）。
【００７７】
この段階ではまだプレーヤ２はゲームコントローラ１２００を把持していないので、プレーヤ２の手の位置によっては図６（１）に示すように左手オブジェクト１４及び右手オブジェクト１６が表示され得る。そして、この状態の仮想ステレオカメラ１０からは、コントローラオブジェクト１２が撮影画角内に入らないので（図６（２）参照）、第１の案内表示として方向案内オブジェクト１３が画面内に表示される（図６（１）参照）。
【００７８】
プレーヤ２はゲームコントローラ１２００を未だ手にしていないが、自身の手の位置により操作入力をすることができる。
図６（１）の例では、プレーヤ２にゲーム開始の意志確認を要求している。ゲームコントローラ１２００を手にとってゲームを始める意志があれば左の被選択体２４を手で触れるつもりで左側奥方へ腕を伸ばせばよい。左腕を延ばすに従い左手オブジェクト１４が移動表示され、図７（１）に示す立体視画像（ゲーム画像）Ｗ４のように、左の被選択体２４に到達または所定距離まで近接すると、左手オブジェクト１４の表示形態が別の表示形態に切り換えられる。図７（１）の例では、表示色が変更されている。そして、その状態が所定時間維持或いは所定動作（例えば、その場で手を振る動作をする）と、左手オブジェクト１４が左の被選択体２４を選択入力したと判定され、左の被選択体２４に対応づけられている選択肢の入力が確定する。つまり、ゲームプレイする意志がジェスチャー入力される。なお、図７（１）において、方向案内オブジェクト１３は、別の形態の例を示している。
【００７９】
図７（１）の状態から、プレーヤ２が方向案内オブジェクト１３を参考にして首を左方向に回転させれば、仮想空間における仮想ステレオカメラ１０の向きも左方向に回転することとなる。ＨＭＤ１３１０には、図８（１）の立体視画像（ゲーム画面）Ｗ６が表示されることになる。
【００８０】
図６（１）や図７（１）で表示されていた方向案内オブジェクト１３は、図８（１）の状態でコントローラオブジェクト１２が仮想ステレオカメラ１０の撮影範囲に入ったことで仮想空間から消去され、立体視画像（ゲーム画面）Ｗ６からは消えることになる。つまり、第１の案内表示が、方向案内オブジェクト１３からコントローラオブジェクト１２に切り替えられることになる。
【００８１】
被選択体２４は、立体視画像（ゲーム画面）の所定位置に固定的に表示されるので見失うことはない。また、被選択体２４には、プレーヤ２のゲームプレイポジションにおける正面方向（タッチパネル１００４の方向）を示す正面方向ガイド部２５（図８（１）の例では、吹き出しの指示部分（引き出し部分））が用意されており、プレーヤ２が首を振ったとしても正面方向を見失うことはない。
【００８２】
プレーヤ２の頭の向き（すなわち、仮想ステレオカメラ１０の視線方向）によっては、コントローラオブジェクト１２の一部又は全部が被選択体２４などの他オブジェクトの背後に隠れるケースも起こり得る。他オブジェクトは特に限定されない。例えば、案内キャラクタ２０や案内表示パネル２２、背景を構成するオブジェクトなども含まれる。そしてその場合、コントローラオブジェクト１２の表出処理を行う。具体的には、コントローラオブジェクト１２を隠しているオブジェクトを、図８（１）のように半透明表示するか、コントローラオブジェクト１２が見えるように当該隠しオブジェクトのモデルを一時的に変更する。例えば、のぞき穴を作る、角を削ると言った具合である。図８（１）の例では、被選択体２４が隠しオブジェクトとなる。
【００８３】
本実施形態では、仮想空間の水平方向及び鉛直方向はプレーヤ２が居る現実世界（実空間）と同じとし、スケールも現実世界（実空間）と同じとしている。そして、仮想ステレオカメラ１０の撮影画角は肉眼に合わせてある。よって、プレーヤ２（ユーザ）にとって、ＨＭＤ１３１０で見える立体視画像は、距離感が現実と同じ仮想現実の画像として認識される。よって、プレーヤ２は、コントローラオブジェクト１２が見えている位置へ向けて腕を伸ばせば、容易にゲームコントローラ１２００に手が届く。手が届くまでの過程においても、腕を延ばすのに伴って左手オブジェクト１４（または右手オブジェクト１６）が立体視画像内で移動表示されて最新の手の位置を示すので、普通に物を取る感覚で容易にゲームコントローラ１２００を手に取ることができる。
【００８４】
また、本実施形態では、ゲームコントローラ１２００への案内は、こうした立体視によるものの他にゲームコントローラ１２００のバイブレーションと、ヘッドホン１３０２による信号音（案内音）とにより複合的に提供される。
【００８５】
具体的には、図６（２）に示すように、ゲームコントローラ１２００が把持されていないと判断されると、バイブレータ１２０６（図２参照）を作動させてゲームコントローラ１２００を振動させる。把持されていないことを検出する条件は、例えば、１）６軸センサ１２０８で検出される信号が所定時間以上変化しない、２）所定時間以上操作ボタンスイッチ１２６０などからの操作入力が検出されない、３）ゲームコントローラ１２００の位置Ｐｃから左手位置Ｐｌや右手位置Ｐｒまでの相対距離が基準値以上離れた、と言った条件の単独又は組合せとすることができる。
【００８６】
ゲームコントローラ１２００が振動することにより発する音で、プレーヤ２はゲームコントローラ１２００がどちらの方向にあるか知る手がかりとなる。また、手が触れると振動でゲームコントローラ１２００であると直ぐに分かるので都合が良い。
【００８７】
また、ヘッドホン１３０２からは、ＨＭＤ１３１０の位置Ｐｈから見たゲームコントローラ１２００の位置Ｐｃの方向から音が聞こえるように信号音をサラウンドで放音する。
サラウンド機能そのものは、公知技術により実現される。プレーヤ２は、信号音の聞こえてくる方向からゲームコントローラ１２００がどちらにあるかを聴覚的に知り、ゲームコントローラ１２００を見つけ出して手に取ることが可能となる。このとき、手の位置（右手位置Ｐｒ，左手位置Ｐｌ）と、ゲームコントローラ１２００の位置Ｐｃとの相対距離に応じて、音量や音高を変化させたり、パルス音であればその周期を変化させるなどの音制御を行うと一層好適である。
【００８８】
〔機能構成の説明〕
次に、本実施形態を実現するための機能構成例について説明する。
図９は、本実施形態におけるゲームシステム１０００の機能構成例を示す機能ブロック図である。本実施形態におけるゲームシステム１０００は、操作入力部１００と、処理部２００と、音出力部３９０と、画像表示部３９２と、通信部３９４と、コントローラ発振部３９６と、記憶部５００とを備える。図９において、ゲーム装置本体１００２の主要な機能ブロックは、操作入力部１００、音出力部３９０、画像表示部３９２及びコントローラ発振部３９６を除いた構成となる。
【００８９】
操作入力部１００は、各種操作を入力するための手段である。ジョイスティック、プッシュスイッチ、レバー、ボリューム、ペダルスイッチ、キーボード、マウス、トラックパッド、トラックボール、ジェスチャー入力装置など、公知の操作入力デバイスにより実現できる。本実施形態では、タッチパネル１００４、ゲームコントローラ１２００がこれに該当する（図１参照）。
【００９０】
そして、本実施形態の操作入力部１００には、頭部姿勢変化検出部１０２と、測距部１０４と、が含まれる。
【００９１】
頭部姿勢変化検出部１０２は、プレーヤ２の頭部の姿勢及び姿勢の変化を検出し、検出信号を処理部２００へ出力する。例えば、ジャイロや加速度センサを用いたり、イメージセンサで撮影画像から人の頭部を認識するなどの公知のヘッドトラッキング技術などにより実現できる。本実施形態では、ヘッドセット１３００に内蔵されたＨＭＤ１３１０（図３参照）、より具体的には６軸センサ１３０８とＩＣチップ１３０９がこれに該当する。ＨＭＤ１３１０の姿勢を測距センサユニット１１００で撮影した画像処理から求める構成であれば、測距センサユニット１１００もこれに該当すると言える。
【００９２】
測距部１０４は、所定周期でプレーヤ２およびその周辺の様子を撮影し、存在する物体までの距離を測定し、撮影した画像データや測距結果を逐次処理部２００へ出力する。本実施形態では、測距センサユニット１１００が該当する（図１参照）。
【００９３】
処理部２００は、例えばＣＰＵやＧＰＵ等のマイクロプロセッサや、ＡＳＩＣ（特定用途向け集積回路）、ＦＰＧＡ、ＩＣメモリなどの電子部品によって実現され、操作入力部１００や記憶部５００を含む各機能部との間でデータの入出力制御を行う。そして、所定のプログラムやデータ、操作入力部１００などからの入力信号に基づいて各種の演算処理を実行して、ゲームシステム１０００の動作を統合的に制御する。本実施形態では制御基板１０５０がこれに該当する（図１参照）。
【００９４】
そして、処理部２００は、ゲーム演算部２０２と、音信号生成部２９０と、画像信号生成部２９２と、通信制御部２９４とを含む。
【００９５】
ゲーム演算部２０２は、ゲームプレイに係る各種処理を実行する。
例えば、
１）仮想空間に背景オブジェクトとプレーヤキャラクタオブジェクトと仮想ステレオカメラ１０とを配置する処理、
２）操作入力部１００からの操作入力信号に基づいてプレーヤキャラクタオブジェクトの動作を制御する処理、
３）頭部姿勢変化検出部１０２からの検出情報に基づいて仮想ステレオカメラ１０の姿勢をプレーヤ２の頭部の姿勢変化に連動させて、仮想ステレオカメラ１０で撮影したゲーム空間の画像をレンダリングしＨＭＤ１３１０にて立体視画像として表示させる処理、
４）ゲーム終了の判定処理、
５）ゲーム成績の算出処理、
６）計時処理、などを行うことができる。勿論、ゲーム内容に応じてこれら以外の処理を適宜実行することができる。
【００９６】
そして、本実施形態のゲーム演算部２０２は、ＨＭＤを用いる上でのユーザビリティ向上を目的として、ＨＭＤ位置姿勢算出部２１０と、コントローラ位置姿勢算出部２１２と、手位置算出部２１４と、コントローラ把持判定部２１６と、プレーヤ補助制御部２２０と、を有する。
【００９７】
ＨＭＤ位置姿勢算出部２１０は、実空間におけるＨＭＤ１３１０の位置と姿勢を所定周期（例えば、１０ｍｓ毎）で随時算出する。本実施形態では、測距部１０４で得られた画像や測距結果からＨＭＤ１３１０（或いはプレーヤ２の頭部）の位置Ｐｈを算出し、頭部姿勢変化検出部１０２からの検出情報に基づいて姿勢（Φｈ、θｈ、Ψｈ）を得る。
位置Ｐｈを求める方法は、適宜公知技術を用いることができる。例えば、測距部１０４で得られた画像に写っているＨＭＤ１３１０の３つの発光マーカ１３１２を抽出し、それらの中間位置の画像内の座標からＸ軸座標値及びＹ軸座標値を得て、その座標値に対応する測距結果からＺ軸座標値を決定するとしてもよい。また、姿勢については、カラーイメージセンサ１１０４で撮影した画像から、発光マーカ１３１２や、ＨＭＤ１３１０の正面や側面にプリントされている所定の幾何パターンをそれぞれ画像認識して算出する公知技術を用いるとしてもよい。
【００９８】
コントローラ位置姿勢算出部２１２は、ゲームコントローラ１２００の位置Ｐｃを所定周期（例えば、１０ｍｓ毎）で随時算出する。本実施形態では、測距部１０４で得られた画像や測距結果からゲームコントローラ１２００の位置Ｐｃを算出する。
位置Ｐｃを求める方法は、適宜公知技術を用いることができる。例えば、測距部１０４で得られた画像に写っているゲームコントローラ１２００の２つの発光マーカ１２０２を抽出し、抽出された位置の中間位置の画像内の座標からＸ軸座標値及びＹ軸座標値を得て、その座標値に対応する測距結果からＺ軸座標値を決定するとしてもよい。或いは、カラーイメージセンサ１１０４で撮影した画像からゲームコントローラ１２００を画像認識して決定するとしてもよい。
【００９９】
手位置算出部２１４は、ＨＭＤ１３１０の表示画像空間となる仮想空間（プレーヤ補助表示用仮想３次元空間）における、現実空間中のジェスチャー入力用の操作指示物の位置に対応する仮想位置を算出する。本実施形態では、プレーヤ２の左手位置Ｐｌと右手位置Ｐｒとを所定周期（例えば、１０ｍｓ毎）で随時算出する。つまり、プレーヤ２の手の位置をトラッキングする。
手位置（左手、右手の仮想位置）を算出する方法は、適宜公知技術を用いることができる。例えば、カラーイメージセンサ１１０４で撮影した画像から人の手を画像認識し、認識した画像の座標からＸ軸座標値及びＹ軸座標値を得て、その座標値に対応する手までの測距結果からＺ軸座標値を決定するとしてもよい。
【０１００】
コントローラ把持判定部２１６は、プレーヤ２がゲームコントローラ１２００を手に持っているかを判定する。把持されていることを検知するとも換言できる。判定方法・検知方法は適宜選択可能である。例えば、所定時間（例えば５秒間）操作入力が無い場合や、ゲームコントローラ１２００の姿勢変化が所定時間（例えば５秒間）無い場合に把持されていないと判定するとしてもよい。もしゲームコントローラ１２００の把持部に静電容量を検出するセンサを搭載できるならば、人の手の接触に伴う静電容量の変化から把持されているか否かを検知するとしてもよい。
【０１０１】
プレーヤ補助制御部２２０は、ＨＭＤを使用する際の不便を改善し、ユーザビリティを向上するための主たる制御を行う。
本実施形態では、仮想ステレオカメラ制御部２２１と、コントローラオブジェクト制御部２２２と、方向案内オブジェクト制御部２２４と、手オブジェクト制御部２２６と、被選択体制御部２２８と、表出処理部２３０と、立体視画像生成制御部２３２と、コントローラ振動制御部２３４と、擬似サラウンド制御部２３６と、ジェスチャー入力判定部２３８と、対キャラクタジェスチャー入力無効化制御部２４０と、を含む。
【０１０２】
仮想ステレオカメラ制御部２２１は、仮想空間における仮想ステレオカメラ１０の位置と姿勢を、実空間におけるＨＭＤ１３１０の位置と姿勢に対応するように制御する。すなわち、実空間におけるＨＭＤ１３１０を被ったプレーヤ２の頭の位置と視線方向（つまり顔正面方向）に連動・追従するように仮想ステレオカメラ１０の位置と姿勢を制御する。
【０１０３】
コントローラオブジェクト制御部２２２は、仮想空間にコントローラオブジェクト１２を配置し、その表示形態を制御する。表示形態は、ゲームコントローラ１２００とプレーヤ２の手との相対距離が所定の近接条件を満たすまでは標準の形態に設定し、近接条件を満たすと表示形態を特別な形態に変更する。
【０１０４】
方向案内オブジェクト制御部２２４は、仮想空間に方向案内オブジェクト１３を配置して、その移動と姿勢を制御する。具体的には、常にＨＭＤ１３１０の視界（ゲーム画面）の所定位置に留まるように方向案内オブジェクト１３の位置を制御し、ＨＭＤ１３１０から見たゲームコントローラ１２００の方向を指すようにその姿勢を制御する。
【０１０５】
手オブジェクト制御部２２６は、仮想空間に左手オブジェクト１４と右手オブジェクト１６を配置して、その移動を制御する。具体的には、実空間におけるＨＭＤ１３１０に対する左手位置、右手位置それぞれの相対位置に対応する仮想空間の位置に、左手オブジェクト１４と右手オブジェクト１６とが位置するように制御する。
【０１０６】
被選択体制御部２２８は、ジェスチャー入力を要求する際にユーザがジェスチャーの目安とすることのできる表示体を表示制御する。結果的には、この表示体とプレーヤの手などの操作指示物との位置関係でジェスチャー入力が判定されるので、“入力判定体”を表示制御すると言い換えることできる。本実施形態では、操作入力内容が対応付けられた被選択体２４を入力判定体の一種として用いて、案内キャラクタ２０の“吹き出し”として仮想空間に配置し、プレーヤの手の到達目標位置とする。そして、常にＨＭＤ１３１０の視界（ゲーム画面）の所定位置に留まるように被選択体２４の位置を制御する一方で、被選択体２４の正面を仮想ステレオカメラ１０へ向けるように制御する。また、正面方向ガイド部２５が仮想空間の所定位置（例えば座標原点位置）の方向を指し示すように制御する。本実施形態では、正面方向ガイド部２５の先端を案内キャラクタ２０の所定位置に固定して、被選択体２４と一続きとなるようにオブジェクトを変形制御することで、あたかも“吹き出し”が伸び縮み自在でありながら常に案内キャラクタ２０を指し示しているように見える。
【０１０７】
なお、被選択体２４の表示形態はゲーム内容等に応じて適宜設定可能である。例えば、手の動作開始ポイントから終了ポイント、更にはそれら両ポイント間を結ぶ動作軌跡のガイド、などとすることができる。勿論、それがゲーム中に登場するキャラクタや背景物などを兼ねても良い。
【０１０８】
表出処理部２３０は、仮想ステレオカメラ１０とコントローラオブジェクト１２の間に他のオブジェクトがあって、コントローラオブジェクト１２の一部又は全部が当該他オブジェクトの背後になって見えなくなる場合に、コントローラオブジェクト１２が見えるように表出させる画像処理をして可視化する。例えば、コントローラオブジェクト１２を隠している他オブジェクトを半透明化したり、他オブジェクトにのぞき穴を開けるなどのオブジェクトモデルの変更などを行う。
【０１０９】
また、同様に仮想ステレオカメラ１０と被選択体２４との間に他のオブジェクトがあって、被選択体２４の一部又は全部が当該他オブジェクトの背後になって見えなくなる場合に、被選択体２４が見えるように画像処理をして可視化する。
【０１１０】
また、同様に仮想ステレオカメラ１０と左手オブジェクト１４や右手オブジェクト１６と言った指示オブジェクトの間に他のオブジェクトがあって、指示オブジェクトの一部又は全部が当該他オブジェクトの背後になって見えなくなる場合も指示オブジェクトが見えるように画像処理をして可視化する。
【０１１１】
立体視画像生成制御部２３２は、ＨＭＤ１３１０の位置や姿勢に応じて視界が変化する仮想空間の画像を生成するための制御を行う。具体的には、仮想ステレオカメラ１０の左右のカメラで撮影した仮想空間の画像をレンダリングしてＨＭＤ１３１０の左眼用及び右眼用の画像とする。つまりゲーム画像（ゲーム画面）となる立体視画像を生成させる。立体視画像生成制御部２３２は、仮想空間画像生成手段の一例である。
【０１１２】
コントローラ振動制御部２３４は、プレーヤ２がゲームコントローラ１２００を把持していないときに、ゲームコントローラ１２００を振動させる制御を行う。
【０１１３】
擬似サラウンド制御部２３６は、プレーヤ２がゲームコントローラ１２００を把持していないときに、ＨＭＤ１３１０から見たゲームコントローラ１２００の方向から信号音が聞こえてくるようにステレオ音声を疑似的にサラウンド化する。本実施形態では、ヘッドホン１３０２にてプレーヤ２に音声を提供するので、公知の擬似サラウンド技術、バーチャルサラウンド技術を適宜利用することができる。
【０１１４】
ジェスチャー入力判定部２３８は、操作指示物である左手または右手の仮想位置（左手位置Ｐｌ、右手位置Ｐｒ）と、仮想空間内のオブジェクトの配置位置とに基づいて、当該オブジェクトへの操作入力を判定する。
本実施形態では、仮想空間中の操作指示物の位置と、被選択体２４の配置位置とに基づき、被選択体２４の選択入力を判定することができる。具体的には、仮想空間における左手位置Ｐｌ’又は右手位置Ｐｒ’と、被選択体２４の配置位置との関係が到達判定条件を満たす場合に、当該被選択体２４に対応づけられる選択入力を確定判定する。同様に、ジェスチャー入力判定部２３８は、案内キャラクタ２０に対するジェスチャー入力を判定することができる。
【０１１５】
対キャラクタジェスチャー入力無効化制御部２４０は、被選択体２４が配置・表示されているときには仮想空間内に配置されているキャラクタ（例えば、図５の案内キャラクタ２０）を対象とするジェスチャー入力（例えば、案内キャラクタ２０をなでて機嫌をとるなどの操作入力）の判定を無効とし、被選択体２４が配置・表示されていないときに有効とする。換言すると、被選択体２４の他に仮想空間内に配置されたジェスチャー入力の対象を一時的に操作対象外として、優先されるべき被選択体２４へのジェスチャー入力のみを許可し、それ以外のオブジェクトへの意図しない・望まれないジェスチャー入力を防止する。
【０１１６】
音信号生成部２９０は、例えばデジタルシグナルプロセッサ（ＤＳＰ）などのマイクロプロセッサやその制御プログラムなどの公知技術によって実現され、ゲーム演算部２０２による処理結果に基づいて効果音やＢＧＭ、各種操作音などを含むゲーム音の音信号を生成し音出力部３９０に出力する。
【０１１７】
音出力部３９０は、音信号生成部２９０から入力される音信号に基づいて効果音やＢＧＭ等を音出力する装置によって実現される。本実施形態では、ヘッドセット１３００に搭載されているヘッドホン１３０２がこれに該当する（図３参照）。
【０１１８】
画像信号生成部２９２は、立体視画像生成制御部２３２で生成された画像データや、ゲームシステム１０００の設定画面に係る画像データ等の画像信号を画像表示部３９２へ出力することができる。
【０１１９】
画像信号生成部３９２は、画像信号生成部２９２から入力される画像信号に基づいて各種画像を表示する。例えば、フラットパネルディスプレイ、ブラウン管（ＣＲＴ）、プロジェクターといった画像表示装置によって実現できる。本実施形態ではタッチパネル１００４（図１参照）や、ＨＭＤ１３１０（図３参照）が該当する。
【０１２０】
通信制御部２９４は、データ通信に係るデータ処理を実行し、通信部３９４を介して外部装置とのデータのやりとりを実現する。
【０１２１】
通信部３９４は、例えば、無線通信機、モデム、ＴＡ（ターミナルアダプタ）、有線用の通信ケーブルのジャックや制御回路等によって実現され、通信網を介して外部のサーバシステム等と接続して通信を実現する。また、ゲームコントローラ１２００等の無線接続機器との間の無線通信を実現する。
【０１２２】
コントローラ発振部３９６は、ゲーム演算部２０２から出力される振動制御信号に従って、ゲームコントローラ１２００を振動させる。本実施形態では、バイブレータ１２０６及びコントローラ基板１２５０がこれに該当する（図２参照）。
【０１２３】
記憶部５００は、処理部２００にゲームシステム１０００を統合的に制御させるための諸機能を実現するためのプログラムや各種データ等を記憶する。また、処理部２００の作業領域として用いられ、操作入力部１００から入力されたデータを一時的に記憶したり、処理部２００が実行した演算結果などを一時的に記憶する。この機能は、例えばＲＡＭやＲＯＭなどのＩＣメモリ、ハードディスク等の磁気ディスク、ＣＤ−ＲＯＭやＤＶＤなどの光学ディスクなどによって実現される。本実施形態ではＩＣメモリ１０５２がこれに該当する（図１参照）。
【０１２４】
図１０は、本実施形態の記憶部５００が記憶するプログラムやデータの例を示す図である。記憶部５００は、システムプログラム５０１と、ゲーム演算プログラム５０２と、ゲーム初期設定データ５１０と、プレイデータ５２０とを記憶する。勿論、これら以外の情報も適宜記憶することができる。
【０１２５】
システムプログラム５０１は、処理部２００が読み出して実行することで、ゲームシステム１０００にコンピュータとして必要な基本的な入出力機能を実現させる。
ゲーム演算プログラム５０２は、処理部２００にゲーム演算部２０２としての機能を実現させるためのプログラムである。
【０１２６】
ゲーム初期設定データ５１０は、ゲーム空間や、ゲームルール、ゲームに登場する各種オブジェクトを定義する各種初期設定データが格納されている。
【０１２７】
プレイデータ５２０は、プレーヤ補助制御のためのデータや、ゲーム進行状況を記述する各種データを格納する。本実施形態では、実空間である測距空間における、ＨＭＤ位置座標５２１（ＨＭＤ１３１０の位置Ｐｈ）と、ＨＭＤ姿勢データ５２２と、コントローラ位置座標５２３（ゲームコントローラ１２００の位置Ｐｃ）と、左手位置座標５２５（左手位置Ｐｌ）と、右手位置座標５２６（右手位置Ｐｒ）とを含む。また、仮想空間制御データ６３０を含む。勿論、これら以外の情報も適宜含めることができる。
【０１２８】
仮想空間制御データ６３０は、ゲーム空間を構成する仮想３次元空間（仮想空間）のデータであり、プレーヤ補助表示用のオブジェクトを配置管理するデータを含む。例えば、図１１に示すように、仮想ステレオカメラ制御データ６０２と、コントローラオブジェクト制御データ６０４と、方向案内オブジェクト制御データ６０６と、左手オブジェクト制御データ６０８と、右手オブジェクト制御データ６１０と、案内キャラクタ制御データ６１２と、案内表示パネル制御データ６１４と、被選択体制御データ６１６と、を含む。勿論、これら以外の情報も適宜含めることができる。
【０１２９】
［動作の説明］
図１２は、ゲームシステム１０００における処理の流れを説明するためのフローチャートであって、ゲーム演算プログラム５０２を実行することにより実現される。
【０１３０】
先ず、ゲームシステム１０００のゲーム装置本体１００２は、タッチパネル１００４、測距センサユニット１１００、ゲームコントローラ１２００、ヘッドセット１３００の各機器の機器認証を行う（ステップＳ２）。
【０１３１】
機器認証が済む事で、測距センサユニット１１００からはカラーイメージセンサ１１０４により随時所定周期で撮影された画像データと当該画像に基づく測距結果とがゲーム装置本体１００２へ逐次入力される。また、ゲームコントローラ１２００からは６軸センサ１２０８による検出結果が、ヘッドセット１３００からはＨＭＤ１３１０の６軸センサ１３０８よる検出結果が、それぞれゲーム装置本体１００２へ所定周期で入力される。
【０１３２】
次に、ゲーム装置本体１００２は、測距センサユニット１１００から入力された画像や測距結果に基づいて、ＨＭＤ１３１０の位置Ｐｈと、ゲームコントローラ１２００の位置Ｐｃと、プレーヤ２の左手位置Ｐｌ及び右手位置Ｐｒとを所定周期で随時算出する処理を開始する（ステップＳ４）。つまり、これらの各要素の実空間内におけるトラッキングが開始される。
【０１３３】
また、ゲームコントローラ１２００がプレーヤ２の手に把持されているかを所定周期で随時判定する処理を開始し（ステップＳ６）、ジェスチャー入力の判定を開始する（ステップＳ８）。
【０１３４】
次いで、ゲーム装置本体１００２は、タッチパネル１００４に起動画面を表示させ、ゲーム開始の操作入力を待機する。ゲームコントローラ１２００から所定のゲーム開始操作が入力されると（ステップＳ１０）、ゲーム装置本体１００２は、プレーヤ２へ向けてヘッドセット１３００を装着するように促す案内をタッチパネル１００４にて表示させる（ステップＳ１２）。そして、ゲームプレイの意志確認の受付を開始するとともに（ステップＳ１４）、仮想ステレオカメラ１０を仮想空間の初期位置に配置して仮想ステレオカメラ１０で撮影した仮想空間の様子を元にした立体視画像をＨＭＤ１３１０にて表示させる制御を開始し（ステップＳ１５）、プレーヤ補助処理を実行する（ステップＳ１６）。
【０１３５】
図１３〜図１４は、プレーヤ補助処理の流れを説明するためのフローチャートである。
図１３に示すように、プレーヤ補助処理では、ゲーム装置本体１００２はプ仮想空間制御データ６３０（図１１参照）を生成し、ＨＭＤ１３１０の実空間での位置・姿勢に連動するように仮想空間における仮想ステレオカメラ１０の移動と姿勢の制御を開始する（ステップＳ５０）。
【０１３６】
また、仮想空間内に左手オブジェクト１４及び右手オブジェクト１６（図５参照）を配置し、プレーヤ２の左手・右手それぞれの実空間での位置・姿勢に連動するように仮想空間でのそれらのオブジェクトの移動・姿勢制御を開始する（ステップＳ５２）。
【０１３７】
次に、ゲームコントローラ１２００がプレーヤ２に把持されていない場合（ステップＳ６０のＮＯ）、ゲーム装置本体１００２は、仮想空間内にコントローラオブジェクト１２（図５参照）を配置し、ゲームコントローラ１２００の実空間での位置・姿勢に連動するように当該オブジェクトの仮想空間での移動・姿勢制御を開始する（ステップＳ６２）。
【０１３８】
そして、コントローラオブジェクト１２の表示形態調整を開始する（ステップＳ６４）。
具体的には、コントローラオブジェクト１２と左手オブジェクト１４との相対距離、及びコントローラオブジェクト１２と右手オブジェクト１６との相対距離をそれぞれ算出し、小さい方の相対距離に応じてコントローラオブジェクト１２の表示形態（例えば、表示カラーの変更、明滅パターン、表示サイズの変更など）を設定・変更する。
【０１３９】
次に、ゲームシステム１０００のゲーム装置本体１００２は、方向案内オブジェクト１３の表示要否判定と、その判定結果に応じて当該オブジェクトの配置／配置解除を開始する（ステップＳ６６）。
【０１４０】
具体的には、コントローラオブジェクト１２が仮想ステレオカメラ１０の撮影範囲内に入っているかを判定する。そして、もし撮影範囲に入っていなければ、方向案内オブジェクト１３を表示要と見なし、即座に当該撮影範囲内の所定領域にコントローラオブジェクト１２を指し示す方向案内オブジェクト１３を配置する。換言すれば、ＨＭＤ１３１０の向き又は視界に応じて、方向案内オブジェクト１３の配置位置と姿勢とを制御する。反対に撮影範囲に入っていなければ、方向案内オブジェクト１３を表示不要と見なし、方向案内オブジェクト１３は配置せず、配置済みであれば即座に配置を解除する。
【０１４１】
また、これに伴って表示形態を、仮想ステレオカメラ１０に最寄りの左手オブジェクト１４又は右手オブジェクト１６との距離に応じて逐次変更制御するものとする。例えば、表示色を変更したり、寸法比率（例えば、矢印の長さ）を変更するなどとしてもよい。矢印のみのデザインであれば、距離が遠いほど矢印の数を増やして、コントローラオブジェクト１２の方向へ向けて直列に配置するとしてもよい。
【０１４２】
次に、ゲーム装置本体１００２は、ヘッドホン１３０２での信号音の擬似サラウンド出力を開始する（ステップＳ６８）。
具体的には、ＨＭＤ１３１０からゲームコントローラ１２００への相対方向と相対距離を算出し、ヘッドホン１３０２にて相対方向から相対距離に応じてパターン変更される信号音が聞こえてくるように擬似サラウンド制御する。
【０１４３】
次いで、ゲーム装置本体１００２は、ゲームコントローラ１２００での振動制御を開始する（ステップＳ７０）。振動パターンや振動強度は、コントローラオブジェクト１２と左手オブジェクト１４または右手オブジェクト１６との相対距離に応じて設定・変更するとしてもよい。
【０１４４】
次に、案内表示が必要であるかを判定する。ステップＳ１４にてゲームプレイの意志確認の操作入力の受付を開始しているので、ここでは案内表示が必要と判断される。
そして、案内表示が必要であれば（ステップＳ９０のＹＥＳ）、ゲーム装置本体１００２は、仮想ステレオカメラ１０の正面、具体的には仮想ステレオカメラ１０からみた奥行方向において仮想ステレオカメラ１０と仮想空間の座標原点との間に案内キャラクタ２０及び案内表示パネル２２を配置する（ステップＳ９２：図５参照）。ちなみに、ステップＳ１４にてゲームプレイの意志確認の操作入力の受付を開始しているので、案内表示パネル２２には意志確認のための操作入力を促すテキストが表示される（図６参照）。
【０１４５】
更に、ゲーム装置本体１００２は、案内キャラクタ２０へのジェスチャー入力の判定を無効化する（ステップＳ９４）。これにより、被選択体２４へのジェスチャー入力のつもりが、意図しない案内キャラクタ２０に対する操作入力と誤認されることがなくなる。
【０１４６】
図１４のフローチャートに移って、次に、ゲーム装置本体１００２は選択操作の入力が必要であるかを判定する。ステップＳ１４にてゲームプレイの意志確認の操作入力の受付を開始しているので、ここでは肯定判断される。
そして、肯定の場合（ステップＳ１１０のＹＥＳ）、ゲーム装置本体１００２は仮想空間内に、選択肢に対応付けられた被選択体２４を配置する（ステップＳ１１２）。具体的には、本実施形態の被選択体２４は“吹き出し”型をしているので、吹き出しの引き出し部の先端を案内キャラクタ２０近傍に設定し、吹き出しの本体部分を、案内キャラクタ２０の脇に位置するように設定する（図６参照）。
【０１４７】
次いで、ゲーム装置本体１００２は、仮想ステレオカメラ１０の位置や姿勢の変化に応じた被選択体２４の移動制御と、正面方向ガイド部２５の変形制御とを行う（ステップＳ１１４）。すなわち、被選択体２４が立体視画像（ゲーム画面）の所定位置に固定的に表示されるように移動制御し、被選択体２４の正面が常に仮想ステレオカメラ１０に向くように制御する。また、正面方向ガイド部２５が、案内キャラクタ２０の脇から伸びて被選択体２４に連結しているように変形制御する。
【０１４８】
なお、ステップＳ１１４は、仮想ステレオカメラ１０の位置や姿勢の変化が所与の条件を満たす場合にはスキップするとしてもよい。例えば、仮想ステレオカメラ１０の正面（ＨＭＤ１３１０の正面方向）が、現実空間の前後方向（測距センサユニット１１００の正面方向）から左右９０°以上になった場合にスキップする、或いは制御を直前の状態で保持するとしてもよい。
【０１４９】
そして、その被選択体２４毎に、最寄りの左手オブジェクト１４または右手オブジェクト１６との相対距離に応じた表示形態の自動調整を開始する（ステップＳ１１６）。
具体的には、被選択体２４と、左手オブジェクト１４または右手オブジェクト１６との相対距離が、当該被選択体２４を選択した（到達した）とみなす所定の近接条件を満たさなければ、標準の表示形態とし、近接条件を満たした場合に選択されたことを通知するための特別な表示形態とする。
【０１５０】
次に、ゲーム装置本体１００２は、コントローラオブジェクト１２の一部又は全体を仮想ステレオカメラ１０から見て隠している他オブジェクトを検出し、該当する他オブジェクトが有る場合に背後に隠されるコントローラオブジェクト１２を表出させて可視化する画像処理（表出処理）を開始する（ステップＳ１１８）。
具体的には、他オブジェクトの一部又は全体を半透明化表示したり、或いは、他オブジェクトのモデルの一部を非表示にしたり変形させて背後に隠れているコントローラオブジェクト１２を表出させる。
【０１５１】
また、ゲーム装置本体１００２は、被選択体２４の一部又は全体を仮想ステレオカメラ１０から見て隠している他オブジェクトを検出し、該当する他オブジェクトが有る場合に背後に隠される被選択体２４を表出させて可視化する画像処理（表出処理）を開始する（ステップＳ１２０）。
更に同様にして、左手オブジェクト１４及び右手オブジェクト１６についても、これらの一部又は全体を仮想ステレオカメラ１０から見て隠している他オブジェクトを検出し、該当する他オブジェクトが有る場合に背後に隠される左手オブジェクト１４及び右手オブジェクト１６を表出させて可視化する画像処理（表出処理）を開始する（ステップＳ１２２）。
【０１５２】
ここで、プレーヤ２の視界には図６（１）〜図８（１）で示したようなゲーム画像が見えることになる。
次いで、ジェスチャー入力による選択入力を判定する（ステップＳ１７０）。本実施形態では左手オブジェクト１４又は右手オブジェクト１６が、何れかの被選択体２４に到達するとジェスチャーにより選択入力されたと判定する。もし、選択入力がＹＥＳ／ＮＯのように２択であれば、ＨＭＤ１３１０の視界の左右方向にそれぞれＹＥＳ，ＮＯ（或いは選択肢）を割り当てておいて、左手オブジェクト１４又は右手オブジェクト１６によって、視界の左右何れの領域で所定のモーション（例えば、手を前に突き出す、手を振るなど）がなされたか、或いは、じゃんけんのチョキのように手を所定の形態にしたか、などを判定するとしてもよい。
【０１５３】
そして、もし選択入力されたと判定されたならば（ステップＳ１７０のＹＥＳ）、ゲーム装置本体１００２は該当する被選択体２４に対応する選択肢の入力を確定する（ステップＳ１７２）。また、この際、該当する被選択体２４の表示形態を所定形態に変更してプレーヤ２に選択肢の入力確定を通知する。
【０１５４】
そして、被選択体２４の表示を解除して、案内キャラクタ２０へのジェスチャー入力の判定を有効化する（ステップＳ１７４）。なお、被選択体２４が複数有る場合には、ステップＳ１７０で到達判定された被選択体２４を最後に画面から消すようにすると、プレーヤがどの被選択体２４を選択したかを明示する効果が生まれて好適である。また、被選択体２４が１つの場合（例えば確認ボタンとしての被選択体２４）でも同様にステップＳ１７２〜Ｓ１７４を実行することができる。
【０１５５】
次に、プレーヤ補助処理を開始してからゲームコントローラ１２００がプレーヤ２により把持されていることが検知されたならば（ステップＳ１８０のＹＥＳ）、ゲーム装置本体１００２はゲームコントローラ１２００での振動発生と、ヘッドホン１３０２での擬似サラウンド出力とを終了し（ステップＳ１８２）、プレーヤ補助処理を終了する。
【０１５６】
図１２に戻って、ステップＳ１６を終了した状態で、プレーヤ２はヘッドセット１３００を頭部に装着し、手にはゲームコントローラ１２００を把持した状態になっている。つまり、ゲームプレイのための準備が整っている。
よって、ゲーム装置本体１００２は、次にゲームプレイの制御を開始して、ＨＭＤ１３１０にてゲーム画面を表示させる制御と、ヘッドホン１３０２にてゲーム音を放音させる制御とを開始させる（ステップＳ２００）。
【０１５７】
ゲーム装置本体１００２は、ゲームプレイ中も周期的にプレーヤ補助発動条件が満たされているか判定する。プレーヤ補助発動条件は、ゲーム内容に応じて適宜設定可能であるが、本実施形態ではゲームコントローラ１２００が把持されていない場合、キーボードなどのゲームコントローラ１２００以外の機器による操作入力が行われた場合、プレーヤ２の手によるジェスチャー入力が必要とされる場合、などの単独又は組合せにより設定される。
【０１５８】
そして、プレーヤ補助発動条件が満たされているならば（ステップＳ２０２のＹＥＳ）、プレーヤ補助処理を再度実行する（ステップＳ２０４）。
【０１５９】
プレーヤ補助発動条件を満たさず、或いは、プレーヤ補助処理の後、ゲーム進行状況が所定のゲーム終了条件を満たすまで、プレーヤ補助発動条件を満たせばプレーヤ補助処理を実行し、ゲーム終了条件を満たすと（ステップＳ２１０のＹＥＳ）、ゲーム装置本体１００２は一連の処理を終了する。
【０１６０】
以上、本実施形態によれば、第１にゲーム装置等でＨＭＤを使用する際の不便を改善し、ユーザビリティを向上することができる。
すなわち、プレーヤ２がゲームコントローラ１２００を把持していない状態が検知されると、ＨＭＤ１３１０にはヘッドトラッキングされたプレーヤの視点位置から見た仮想空間の立体視画像がゲーム画像として写し出される。そして、その立体視画像では、ユーザ視点から見たゲームコントローラ１２００の位置にコントローラオブジェクト１２が表示されるとともに、モーショントレースされるプレーヤの左手オブジェクト１４及び右手オブジェクト１６が表示される。よって、プレーヤはＨＭＤを被って外界の様子が見えない状態であっても、立体視画像の仮想空間がいわば仮想現実空間となるため、ゲームコントローラ１２００の有る場所に手をのばし容易に手に取ることができる。手探りでコントローラを探すような不便さが解消される。
【０１６１】
また、ゲームコントローラ１２００がＨＭＤ１３１０の視界外にある場合には、方向案内オブジェクト１３がどちらに首を回せばゲームコントローラ１２００が見えるようになるか示すので、これを頼りにすればゲームコントローラ１２００が何処にあっても容易に手に取ることができる。しかも、コントローラオブジェクト１２が他オブジェクトの背後に隠れるような場合でも、自動的に他オブジェクトを半透明化したり切抜きするなど表出処理が行われコントローラオブジェクト１２がプレーヤから見えるようになるので、すぐに見つけることができる。
【０１６２】
また、本実施形態によれば、第２にＨＭＤを使用してジェスチャー入力を実現する際のユーザビリティを向上させることができる。
すなわち、ヘッドトラッキングされたＨＭＤ１３１０に表示される立体視画像には、ジェスチャー入力する内容が割り当てられた被選択体２４が、プレーヤが頭の向きを変えても同じ又は略同じ位置に残存表示される。ジェスチャー入力に慣れないと、どのようにジェスチャーすればその場で望まれている入力ができるか分かり難いものであるが、ユーザは被選択体をジェスチャー操作の案内として利用できるので、スムーズにその時要求されるジェスチャー入力ができるようになる。
【０１６３】
また、左手オブジェクト１４や右手オブジェクト１６が被選択体２４に到達するとジェスチャー入力が確定される。よって、左手オブジェクト１４や右手オブジェクト１６と、被選択体２４との位置関係から、誰でも容易にその時要求されるジェスチャー入力ができるようになる。
【０１６４】
しかも、被選択体２４が他オブジェクトの背後に隠れるような場合でも、自動的に他オブジェクトを半透明化したり切り抜きするなどの表出処理が行われて、被選択体２４がプレーヤから見えるようになるので、すぐに見つけることができる。
また、仮想空間内に被選択体以外にもジェスチャー入力の対象が存在する場合に、被選択体以外へのジェスチャー入力を無効化することで、被選択体への入力を優先させるとともに意図しない入力を防止することができる。
【０１６５】
〔変形例〕
なお、本発明の実施形態は上記に限らず、適宜構成要素の追加・省略・変更が可能である。
【０１６６】
［その１］
例えば、上記実施形態では、ＨＭＤを装着すると中からは外を見る事ができない非透過型ＨＭＤとして説明したが、ゲームの内容によって必ずしも非透過型ＨＭＤである必要は無い。例えば、半透過型のＨＭＤに対しても本発明は適用可能であり上記実施形態と同様の効果を得ることができる。
【０１６７】
［その２］
また、ヘッドセット１３００それ自体が、例えば、姿勢検出可能なセンサを搭載したメガネ型やゴーグル型のウェアラブルコンピュータであって、ゲーム装置本体１００２を兼ねる構成としてもよい。更に言えば、上記実施形態のゲームシステム１０００は、ＨＭＤを備えるコンピュータであれば家庭用据置型を想定したゲーム装置に限らず、遊園地や博物館などの施設に設置されるＨＭＤを用いたアトラクション装置、ＨＭＤを装着して行う航空機やヘリコプターなどの操縦シミュレーション装置、ＨＭＤを装着してスタジオ内で実物のゴルフクラブでスイングするなどしてスポーツを仮想体験するスポーツシミュレーション装置など、その他の形態の装置でもよい。
【０１６８】
［その３］
また、上記実施形態ではスタンドアローンのゲームシステム１０００を例示したが、図１５に示すように、クライアント・サーバ型のゲームシステム１０００で実現するとしてもよい。この場合、上記実施形態におけるゲーム演算部２０２（図９参照）は、通信回線９を介して接続されるサーバシステム１９００にて実現され、当該構成におけるゲーム装置本体１００２は、所定のクライアントプログラムを実行することで、操作入力部１００からの入力信号をサーバシステム１９００へ逐次送信する機能と、サーバシステム１９００から受信したデータに基づいて画像をＨＭＤ１３１０にて表示させる機能及びヘッドホン１３０２にて音出力させる機能とを実現する。つまり、ユーザ端末としての制御機能を担うようになる。
【０１６９】
［その４］
また、上記実施形態では、ＨＭＤ１３１０の姿勢を検知する方法は、測距センサユニット１１００で撮影した画像と、ＨＭＤ１３１０の６軸センサ１３０８の検出結果を用いる構成としたがこれに限らない。
例えば、図１５に示すように、ＨＭＤ１３１０に前方の外界を撮影するために赤外線撮影可能なイメージセンサ１３２０を姿勢検知用センサとして追加し、測距センサユニット１１００では赤外線照射器１１０２を所定の配置関係で複数配置する。そして、コントローラ位置姿勢算出部２１２を、コントローラ捕捉検出手段とする。具体的には、赤外線照射器１１０２を実空間中の所定位置に設置される固定マーカと見なして、測距センサユニット１１００による撮影画像中にこの赤外線照射器１１０２が写っていればゲームコントローラ１２００が写っていると判定し、当該撮影画像から赤外線照射器１１０２の撮像位置（距離を含む）を求め、各赤外線照射器１１０２の位置関係の回転や変形、各赤外線照射器１１０２間の距離、写っている赤外線照射器１１０２の大きさなどから、イメージセンサ１３２０の位置を基準としたＨＭＤ１３１０の位置Ｐｈおよび姿勢を幾何的に逆算して求める。そして、プレーヤ補助制御部２２０のコントローラオブジェクト制御部２２２が、コントローラ捕捉検出部２０８の検出結果に応じてコントローラオブジェクト１２を仮想空間に配置して所定の報知制御を行うようにすればよい。つまり、コントローラオブジェクト制御部２２２を捕捉時報知制御部として機能させればよい。報知の方法は、表示・音出力・振動など、適宜の方法で実現できる。
【０１７０】
［その５］
また、上記実施形態では、ゲームコントローラ１２００の位置Ｐｃは、測距空間の座標系（図４参照）における位置座標で記述したが、これに限らない。
例えば、ゲームコントローラ１２００の位置Ｐｃを認識空間におけるＨＭＤ１３１０の位置ＰｈとＨＭＤ１３１０の姿勢（換言すれば、ＨＭＤ１３１０を被ったプレーヤ２の視点と視線方向と）に基づく相対位置で記述する構成とすることも可能であり、上記実施形態の記述を適宜そのように読み替えることができる。
【０１７１】
［その６］
また、上記実施形態では、被選択体２４をＨＭＤ１３１０の視界内所定領域にて仮想ステレオカメラ１０に対向するように配置し、ＨＭＤ１３１０の位置や姿勢に応じて移動制御や姿勢制御を行うこととしたが、当該移動制御や姿勢制御を省略して、案内表示パネル２２と同様に、ＨＭＤ１３１０の位置や姿勢が変化しても、仮想空間の所定位置に所定姿勢で配置することとしてもよい。上記実施形態では、ＦＰＳ（ファーストパーソンシューティング）のように、ヘッドトラッキングが激しく、ともすれば被選択体２４を見失いそうになるゲーム内容に好適であるが、逆に、例えばアドベンチャーゲームで秘密の部屋の鍵を解錠するための番号や操作を入力するといった内容を含むゲームでは、被選択体２４が仮想空間の所定位置に動かずに固定配置され、ＨＭＤ１３１０が当該所定位置の方向を向いたときにのみその視界内に現れるほうが好適である。
【０１７２】
勿論、何れかの方式を選択しなければならいものではなく、両方の方式を採用してもよい。その場合、記憶部５００（図９参照）に選択入力イベントを定義するデータを記憶させ、当該データにて被選択体２４毎に選択入力内容とともに配置位置を固定するか否かを示す情報を対応づけておき、被選択体制御部２２８（図９参照）がこれに従って被選択体２４の配置や姿勢（向き）を制御すれば良い。
【０１７３】
［その７］
また、上記実施形態では、ジェスチャー入力に係る操作指示物としてプレーヤ２の手を用いる構成としたが、ゲーム内容によっては何らかのポインティングデバイスを用いるとしてもよい。ポインティングデバイスは、公知の銃型コントローラ（いわゆる「ガンコン」）や、公知のスティック型モーションコントローラなどを用いるとしてもよい。この場合、銃型コントローラやスティック型モーションコントローラの先端には、発光マーカ１３１２（図３参照）に相当するマーカを設け、これを測距センサユニット１１００で撮影することで、先端位置を検出し、搭載される６軸センサで姿勢変化を検出する構成とすると好適である。勿論、その場合、ポインティングデバイスはゲームコントローラ１２００を兼ねても良い。
【０１７４】
［その８］
また、上記実施形態では、ＨＭＤ１３１０に表示する画像を立体視画像として説明したが、平面視画像としてもよい。その場合、仮想ステレオカメラ１０の左右の仮想カメラの中間位置に１台の仮想カメラを配置して、仮想ステレオカメラ１０の代わりに利用してもよいし、左右の仮想カメラの何れか一方を利用してもよい。
【０１７５】
［その９］
また、上記実施形態では、仮想空間の座標系（図５参照）の座標原点を測距空間（実空間）の座標系（図４参照）の座標原点としたがこれに限らない。
例えば、図１６に示すように、ゲーム演算部２０２に、現実空間に対応するように仮想空間の座標系を初期設定する座標系初期設定部２０４を設けるとしてもよい。そして、座標系初期設定部２０４は、トラッキング開始時点の測距センサユニット１１００による測距結果に基づくＨＭＤ１３１０の位置Ｐｈを仮想空間の座標原点とし、トラッキング開始時点のＨＭＤ１３１０の姿勢に座標軸を合わせ、実空間の座標系と仮想空間の座標系とを同タイミングでマッチングしてイニシャライズする。
【０１７６】
或いは、図１７に示すように、トラッキング開始時点の測距センサユニット１１００による測距結果に基づく左手位置Ｐｌ及び右手位置Ｐｒの中間点を仮想空間の座標原点ＶＯとし、トラッキング開始時点のＨＭＤ１３１０の姿勢に座標軸を合わせるとしてもよい。
座標系の定義において、実空間と仮想空間とで前後および左右が反転する場合には、測距結果を仮想空間中のオブジェクトに反映させるときに（例えば、左手位置Ｐｌに基づいて、左手オブジェクト１４をモーショントレースさせる場合など）には適宜座標変換するものとする。
【０１７７】
［その１０］
また、上記実施形態では、トラッキングやモーショントレースのスケールを、実空間中のＨＭＤ１３１０の位置Ｐｈと、操作指示物（左手位置Ｐｌや右手位置Ｐｒ）との相対位置関係に基づいて補正する機能を追加してもよい。
具体的には、図１６に示すように、仮想位置補正部２０６を設ける。この仮想位置補正部２０６は、ＨＭＤ１３１０の向きを基準にした相対位置関係が所定の補正条件を満たした場合に、当該補正条件に対応付けられた補正演算に従って仮想位置を補正する。
より具体的には、補正条件としては、測距センサユニット１１００の正面方向（実空間の前後方向）に対して、ＨＭＤ１３１０の正面が左９０°以上、または右９０°以上の場合に、左９０°以上ならば左手位置Ｐｌのモーショントレースのスケールを所定倍率だけ上げる、右９０°以上ならば右手位置Ｐｒのモーショントレースのスケールを所定倍率だけ上げるとしてもよい。
【符号の説明】
【０１７８】
２…プレーヤ
１０…仮想ステレオカメラ
１２…コントローラオブジェクト
１３…方向案内オブジェクト
１４…左手オブジェクト
１６…右手オブジェクト
２０…案内キャラクタ
２２…案内表示パネル
２４…被選択体
２５…正面方向ガイド部
１００…操作入力部
１０２…頭部姿勢変化検出部
１０４…測距部
２００…処理部
２０２…ゲーム演算部
２１０…ＨＭＤ位置姿勢算出部
２１２…コントローラ位置姿勢算出部
２１４…手位置算出部
２１６…コントローラ把持判定部
２２０…プレーヤ補助制御部
２２１…仮想ステレオカメラ制御部
２２２…コントローラオブジェクト制御部
２２４…方向案内オブジェクト制御部
２２６…手オブジェクト制御部
２２８…被選択体制御部
２３０…表出処理部
２３２…立体視画像生成制御部
２３４…コントローラ振動制御部
２３６…擬似サラウンド制御部
２３８…ジェスチャー入力判定部
２４０…対キャラクタジェスチャー入力無効化制御部
３９６…コントローラ発振部
５００…記憶部
５０２…ゲーム演算プログラム
５１０…ゲーム初期設定データ
５２０…プレイデータ
５２１…ＨＭＤ位置座標
５２２…ＨＭＤ姿勢データ
５２３…コントローラ位置座標
５２５…左手位置座標
５２６…右手位置座標
６０２…仮想ステレオカメラ制御データ
６０４…コントローラオブジェクト制御データ
６０６…方向案内オブジェクト制御データ
６０８…左手オブジェクト制御データ
６１０…右手オブジェクト制御データ
６１２…案内キャラクタ制御データ
６１４…案内表示パネル制御データ
６１６…被選択体制御データ
６３０…仮想空間制御データ
１０００…ゲームシステム
１００２…ゲーム装置本体
１０５０…制御基板
１１００…測距センサユニット
１１０４…カラーイメージセンサ
１２００…ゲームコントローラ
１２０６…バイブレータ
１２０８…６軸センサ
１２５０…コントローラ基板
１３００…ヘッドセット
１３０２…ヘッドホン
１３０８…６軸センサ
１３１０…ＨＭＤ
１３１２…発光マーカ
１３２０…イメージセンサ
Ｐｈ…ＨＭＤの位置
Ｐｃ…ゲームコントローラの位置
Ｐｌ…左手位置
Ｐｒ…右手位置
【図１】
2015231445.tif 000003
【図２】
2015231445.tif 000004
【図３】
2015231445.tif 000005
【図４】
2015231445.tif 000006
【図５】
2015231445.tif 000007
【図６】
2015231445.tif 000008
【図７】
2015231445.tif 000009
【図８】
2015231445.tif 000010
【図９】
2015231445.tif 000011
【図１０】
2015231445.tif 000012
【図１１】
2015231445.tif 000013
【図１２】
2015231445.tif 000014
【図１３】
2015231445.tif 000015
【図１４】
2015231445.tif 000016
【図１５】
2015231445.tif 000017
【図１６】
2015231445.tif 000018
【図１７】
2015231445.tif 000019