(57)【要約】【課題】ユーザがオブジェクトに直接触っているような感覚が得られる新規なゲーム装置、ゲームを提供する方法、ゲームプログラム、および、ゲームシステムを提供する。【解決手段】視差を利用してゲーム画像を立体視表示するゲーム装置を提供する。ゲーム装置は、立体視表示が可能な表示部と、撮像部と、オブジェクトの表示部に対する表示位置を設定するとともに、仮想空間内の対応する位置に当該オブジェクトを配置するオブジェクト設定部と、表示部の奥行き方向におけるオブジェクトの表示位置に基づいて視差を設定し、表示部にオブジェクトを立体視表示させる表示制御部と、撮像部によって撮像される所定の指示部材の画像に基づいて、当該指示部材の撮像部に対する相対位置を算出する指示位置算出部と、オブジェクトの表示位置と算出された相対位置との関係に基づいて、ゲーム処理を行うゲーム処理部とを含む。【選択図】図１
2012115414.tif 000002
【特許請求の範囲】
【請求項１】
視差を利用してゲーム画像を立体視表示するゲーム装置であって、
前記立体視表示が可能な表示部と、
撮像部と、
オブジェクトの前記表示部に対する表示位置を設定するとともに、仮想空間内の対応する位置に当該オブジェクトを配置するオブジェクト設定部と、
前記表示部の奥行き方向における前記オブジェクトの表示位置に基づいて視差を設定し、前記表示部に前記オブジェクトを立体視表示させる表示制御部と、
前記撮像部によって撮像される所定の指示部材の画像に基づいて、当該指示部材の前記撮像部に対する相対位置を算出する指示位置算出部と、
前記オブジェクトの表示位置と前記算出された相対位置との関係に基づいて、ゲーム処理を行うゲーム処理部とを備える、ゲーム装置。
【請求項２】
一方面に前記表示部が設けられる第１のハウジングをさらに備え、
前記撮像部は、前記第１のハウジングにおける前記表示部と同じ面に設けられる、請求項１に記載のゲーム装置。
【請求項３】
一方面に前記表示部が設けられる第１のハウジングをさらに備え、
前記撮像部は、前記第１のハウジングにおける前記表示部とは反対側の面に設けられる、請求項１に記載のゲーム装置。
【請求項４】
前記表示制御部は、前記撮像部によって撮像される画像を前記オブジェクトの画像と共に前記表示部に表示させる、請求項３に記載のゲーム装置。
【請求項５】
前記指示部材は、先端にマーカーを有するスタイラスであり、
前記指示位置算出部は、前記撮像部によって撮像される画像内の前記マーカーを示す画像の大きさに基づいて、前記表示部の奥行き方向における前記スタイラスの位置を算出する、請求項１〜４のいずれか１項に記載のゲーム装置。
【請求項６】
前記スタイラスは、振動を発生する振動発生部を含み、
前記ゲーム処理部は、前記算出されたスタイラスの位置に基づいて、ゲーム処理を行うとともに、当該ゲーム処理の進行に対応して前記振動発生部から振動を発生させる、請求項５に記載のゲーム装置。
【請求項７】
前記第１のハウジングと折り畳み可能に連結される第２のハウジングと、
前記第２のハウジングに設けられるタッチパネルとをさらに備え、
前記ゲーム処理部は、前記タッチパネルに対する入力に基づいて、さらにゲーム処理を行う、請求項２または３に記載のゲーム装置。
【請求項８】
前記撮像部に着脱可能に設けられ、前記撮像部を中心とする全周囲の画像を前記撮像部に導くためのレンズをさらに備える、請求項２または３に記載のゲーム装置。
【請求項９】
前記撮像部に着脱可能に設けられる広角レンズをさらに備える、請求項２または３に記載のゲーム装置。
【請求項１０】
前記撮像部に着脱可能に設けられ、前記撮像部の撮像範囲を可変とする反射光学系をさらに備える、請求項２または３に記載のゲーム装置。
【請求項１１】
立体視表示が可能な表示部を有するゲーム装置において、視差を利用してゲーム画像を立体視表示することを含むゲームを提供する方法であって、
オブジェクトの前記表示部に対する表示位置を設定するとともに、仮想空間内の対応する位置に当該オブジェクトを配置するオブジェクト設定ステップと、
前記表示部の奥行き方向における前記オブジェクトの表示位置に基づいて視差を設定し、前記表示部に前記オブジェクトを立体視表示させる表示制御ステップと、
撮像部によって撮像される所定の指示部材の画像に基づいて、当該指示部材の前記撮像部に対する相対位置を算出する指示位置算出ステップと、
前記オブジェクトの表示位置と前記算出された相対位置との関係に基づいて、ゲーム処理を行うゲーム処理ステップとを備える、ゲームを提供する方法。
【請求項１２】
前記表示制御ステップは、前記撮像部によって撮像される画像を前記オブジェクトの画像と共に前記表示部に表示させるステップを含む、請求項１１に記載のゲームを提供する方法。
【請求項１３】
前記指示部材は、先端にマーカーを有するスタイラスであり、
前記指示位置算出ステップは、前記撮像部によって撮像される画像内の前記マーカーを示す画像の大きさに基づいて、前記表示部の奥行き方向における前記スタイラスの位置を算出するステップを含む、請求項１１または１２に記載のゲームを提供する方法。
【請求項１４】
立体視表示が可能な表示部を有するゲーム装置で実行されることで、視差を利用してゲーム画像を立体視表示するゲームプログラムであって、前記ゲームプログラムは、前記ゲーム装置を、
オブジェクトの前記表示部に対する表示位置を設定するとともに、仮想空間内の対応する位置に当該オブジェクトを配置するオブジェクト設定手段と、
前記表示部の奥行き方向における前記オブジェクトの表示位置に基づいて視差を設定し、前記表示部に前記オブジェクトを立体視表示させる表示制御手段と、
撮像部によって撮像される所定の指示部材の画像に基づいて、当該指示部材の前記撮像部に対する相対位置を算出する指示位置算出手段と、
前記オブジェクトの表示位置と前記算出された相対位置との関係に基づいて、ゲーム処理を行うゲーム処理手段として機能させる、ゲームプログラム。
【請求項１５】
撮像部と、
視差を利用してゲーム画像を立体視表示するゲーム装置とを備えるゲームシステムであって、
前記ゲーム装置は、
前記立体視表示が可能な表示部と、
オブジェクトの前記表示部に対する表示位置を設定するとともに、仮想空間内の対応する位置に当該オブジェクトを配置するオブジェクト設定部と、
前記表示部の奥行き方向における前記オブジェクトの表示位置に基づいて視差を設定し、前記表示部に前記オブジェクトを立体視表示させる表示制御部と、
前記撮像部によって撮像される所定の指示部材の画像に基づいて、当該指示部材の前記撮像部に対する相対位置を算出する指示位置算出部と、
前記オブジェクトの表示位置と前記算出された相対位置との関係に基づいて、ゲーム処理を行うゲーム処理部とを含む、ゲームシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、視差を利用してゲーム画像を立体視表示するゲーム装置、ゲームを提供する方法、ゲームプログラム、および、ゲームシステムに関する。
【背景技術】
【０００２】
従来から、ユーザがタッチパネルに対して操作を行うことで、仮想空間内に表示されるオブジェクトを動かすようなインターフェイスが提供されている。例えば、特開２００６−１１９７７４号公報（特許文献１）には、表示画面上の２次元座標を入力するデバイスからの入力に基づいて仮想３次元空間に対する座標を算出することで、仮想空間内のオブジェクトの移動についての指示が生成される。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００６−１１９７７４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
上述の特開２００６−１１９７７４号公報（特許文献１）に開示される構成によれば、ユーザは平面上のタッチパネルに対してタッチ操作を行うので、仮想空間内でオブジェクトを動かしても、実際の空間内に存在するものを触っているような感覚にはなりにくい。
【０００５】
本発明は、ユーザがオブジェクトに直接触っているような感覚が得られる新規なゲーム装置、ゲームを提供する方法、ゲームプログラム、および、ゲームシステムを提供することである。
【課題を解決するための手段】
【０００６】
本発明の第１の局面に従えば、視差を利用してゲーム画像を立体視表示するゲーム装置を提供する。ゲーム装置は、立体視表示が可能な表示部と、撮像部と、オブジェクトの表示部に対する表示位置を設定するとともに、仮想空間内の対応する位置に当該オブジェクトを配置するオブジェクト設定部と、表示部の奥行き方向におけるオブジェクトの表示位置に基づいて視差を設定し、表示部にオブジェクトを立体視表示させる表示制御部と、撮像部によって撮像される所定の指示部材の画像に基づいて、当該指示部材の撮像部に対する相対位置を算出する指示位置算出部と、オブジェクトの表示位置と算出された相対位置との関係に基づいて、ゲーム処理を行うゲーム処理部とを含む。
【０００７】
本発明の第１の局面によれば、ユーザは、立体視表示されるオブジェクトを直接触っているような感覚が得られる。すなわち、従来のような平面上のタッチパネルに対するユーザ入力は、平面的な２次元座標での入力であり、このような２次元座標だけでユーザに距離感を与えることは難しかったが、本発明により提供されるユーザインターフェイスによれば、立体的な３次元座標での入力となる。さらに、立体視表示されるオブジェクトと関連付けてその入力が検出されるので、ユーザは、オブジェクトに対して、現実感のある直感的な入力をしているという感じを得ることができる。
【０００８】
このようなユーザインターフェイスにより提供される直接的な入力操作によって、ユーザは、実生活に近いモーションで所望の操作を行うことができ、かつ、現実感のある見た目の感触を得ることもできる。
【０００９】
本発明の第２の局面に従えば、上記第１の局面において、ゲーム装置は、一方面に表示部が設けられる第１のハウジングをさらに含み、撮像部は、第１のハウジングにおける表示部と同じ面に設けられる。
【００１０】
本発明の第２の局面によれば、表示部からユーザの側に飛び出して見えるオブジェクトに対して、ユーザが直接的に触って操作するようなユーザインターフェイスを実現することができる。
【００１１】
本発明の第３の局面に従えば、上記第１の局面において、ゲーム装置は、一方面に表示部が設けられる第１のハウジングをさらに含み、撮像部は、第１のハウジングにおける表示部とは反対側の面に設けられる。
【００１２】
本発明の第３の局面によれば、表示部からユーザとは反対の側に引き込まれて見えるオブジェクトに対して、ユーザが直接的に触って操作するようなユーザインターフェイスを実現することができる。
【００１３】
本発明の第４の局面に従えば、上記第３の局面において、表示制御部は、撮像部によって撮像される画像をオブジェクトの画像と共に表示部に表示させる。
【００１４】
本発明の第４の局面によれば、拡張現実（Augmented Reality）のようなユーザインターフェイスを提供することができる。
【００１５】
本発明の第５の局面に従えば、上記第１〜４のいずれかの局面において、指示部材は、先端にマーカーを有するスタイラスであり、指示位置算出部は、撮像部によって撮像される画像内のマーカーを示す画像の大きさに基づいて、表示部の奥行き方向におけるスタイラスの位置を算出する。
【００１６】
本発明の第５の局面によれば、一般的な撮像部を用いて指示部材であるマーカーを含む範囲を撮像することで、当該マーカーが存在する表示部の奥行き方向における位置を算出することができる。すなわち、特別な撮像部を用意することなく、マーカーの奥行き方向の位置を算出できるので、コストを抑制できる。このような構成を採用することで、ユーザからみれば、マーカーを有するスタイラスをもって動作をすることで、所望の指示を与えることができる。
【００１７】
本発明の第６の局面に従えば、上記第５の局面において、スタイラスは、振動を発生する振動発生部を含み、ゲーム処理部は、算出されたスタイラスの位置に基づいて、ゲーム処理を行うとともに、当該ゲーム処理の進行に対応して振動発生部から振動を発生させる。
【００１８】
本発明の第６の局面によれば、ユーザは、オブジェクトを実際に触っている感覚を得られるとともに、何らかの操作を行った場合に、そのレスポンス（フィードバック）として振動を感じることもできる。これにより、ユーザは、オブジェクトを直接的に触っている感覚を視覚的に得ることができるとともに、身体的にもその感覚を得ることができる。
【００１９】
本発明の第７の局面に従えば、上記第２または３の局面において、ゲーム装置は、第１のハウジングと折り畳み可能に連結される第２のハウジングと、第２のハウジングに設けられるタッチパネルとをさらに含み、ゲーム処理部は、タッチパネルに対する入力に基づいて、さらにゲーム処理を行う。
【００２０】
本発明の第７の局面によれば、ユーザは、指示部材を動かして操作するだけではなく、通常のタッチパネルを用いてもゲーム進行ができる。そのため、オブジェクトを直接的に触っている感覚を楽しむとともに、円滑なゲーム進行を指示することができる。
【００２１】
本発明の第８の局面に従えば、上記第２または３の局面において、ゲーム装置は、撮像部に着脱可能に設けられ、撮像部を中心とする全周囲の画像を撮像部に導くためのレンズをさらに含む。
【００２２】
本発明の第９の局面に従えば、上記第２または３の局面において、ゲーム装置は、撮像部に着脱可能に設けられる広角レンズをさらに含む。
【００２３】
本発明の第１０の局面に従えば、上記第２または３の局面において、ゲーム装置は、撮像部に着脱可能に設けられ、撮像部の撮像範囲を可変とする反射光学系をさらに含む。
【００２４】
本発明の第８〜第１０の局面によれば、ゲーム装置に装着されている撮像部が必ずしもユーザが動く範囲（指示部材が存在し得る範囲）の全体を視野範囲にしていない場合であっても、当該撮像部を用いて、本発明に係るゲームを楽しむことができる。そのため、撮像部を新たに追加するような場合に比較して、必要なコストを抑制することができる。
【００２５】
本発明の第１１の局面に従えば、立体視表示が可能な表示部を有するゲーム装置において、視差を利用してゲーム画像を立体視表示することを含むゲームを提供する方法を実現する。ゲームを提供する方法は、オブジェクトの表示部に対する表示位置を設定するとともに、仮想空間内の対応する位置に当該オブジェクトを配置するオブジェクト設定ステップと、表示部の奥行き方向におけるオブジェクトの表示位置に基づいて視差を設定し、表示部にオブジェクトを立体視表示させる表示制御ステップと、撮像部によって撮像される所定の指示部材の画像に基づいて、当該指示部材の撮像部に対する相対位置を算出する指示位置算出ステップと、オブジェクトの表示位置と算出された相対位置との関係に基づいて、ゲーム処理を行うゲーム処理ステップとを含む。
【００２６】
本発明の第１１の局面によれば、上記の第１の局面と同様の効果を得ることができる。
本発明の第１２の局面に従えば、上記第１１の局面において、表示制御ステップは、撮像部によって撮像される画像をオブジェクトの画像と共に表示部に表示させるステップを含む。
【００２７】
本発明の第１２の局面によれば、上記の第４の局面と同様の効果を得ることができる。
本発明の第１３の局面に従えば、上記第１１または１２の局面において、指示部材は、先端にマーカーを有するスタイラスであり、指示位置算出ステップは、撮像部によって撮像される画像内のマーカーを示す画像の大きさに基づいて、表示部の奥行き方向におけるスタイラスの位置を算出するステップを含む。
【００２８】
本発明の第１３の局面によれば、上記の第５の局面と同様の効果を得ることができる。
本発明の第１４の局面に従えば、立体視表示が可能な表示部を有するゲーム装置で実行されることで、視差を利用してゲーム画像を立体視表示するゲームプログラムを提供する。ゲームプログラムは、ゲーム装置を、オブジェクトの表示部に対する表示位置を設定するとともに、仮想空間内の対応する位置に当該オブジェクトを配置するオブジェクト設定手段と、表示部の奥行き方向におけるオブジェクトの表示位置に基づいて視差を設定し、表示部にオブジェクトを立体視表示させる表示制御手段と、撮像部によって撮像される所定の指示部材の画像に基づいて、当該指示部材の撮像部に対する相対位置を算出する指示位置算出手段と、オブジェクトの表示位置と算出された相対位置との関係に基づいて、ゲーム処理を行うゲーム処理手段として機能させる。
【００２９】
本発明の第１４の局面によれば、上記の第１の局面と同様の効果を得ることができる。
本発明の第１５の局面に従えば、撮像部と、視差を利用してゲーム画像を立体視表示するゲーム装置とを備えるゲームシステムを提供する。ゲーム装置は、立体視表示が可能な表示部と、オブジェクトの表示部に対する表示位置を設定するとともに、仮想空間内の対応する位置に当該オブジェクトを配置するオブジェクト設定部と、表示部の奥行き方向におけるオブジェクトの表示位置に基づいて視差を設定し、表示部にオブジェクトを立体視表示させる表示制御部と、撮像部によって撮像される所定の指示部材の画像に基づいて、当該指示部材の撮像部に対する相対位置を算出する指示位置算出部と、オブジェクトの表示位置と算出された相対位置との関係に基づいて、ゲーム処理を行うゲーム処理部とを含む。
【００３０】
本発明の第１５の局面によれば、上記の第１の局面と同様の効果を得ることができる。加えて、それ自体が撮像部を有していないゲーム装置であっても、他の主体が有する撮像部によって撮像された画像を用いることで、本発明に係るゲーム処理を実現することができる。
【発明の効果】
【００３１】
本発明によれば、ユーザがオブジェクトに直接触っているような感覚が得られる新規なゲーム装置、ゲームを提供する方法、ゲームプログラム、および、ゲームシステムを実現できる。
【図面の簡単な説明】
【００３２】
【図１】本実施の形態に従うゲーム装置によって提供されるユーザインターフェイスを説明するための模式図である。
【図２】本発明の実施の形態に従うゲーム装置の正面図（開状態）である。
【図３】図２に示すゲーム装置の上面側を中心とする投影図である。
【図４】図２に示すゲーム装置の底面側を中心とする投影図である。
【図５】本発明の実施の形態に従うゲーム装置の電気的構成を示すブロック図である。
【図６】本発明の実施の形態に従うゲーム装置での表示制御を実現するための電気的構成を示すブロック図である。
【図７】図６に示す上側ＬＣＤの断面模式図である。
【図８】本発明の実施の形態に従うゲーム装置において立体視表示に用いられる視差を有する一対の画像を生成する方法の一例について説明するための図である。
【図９】図８に示す方法によって生成された視差を有する一対の画像を用いて立体視表示を提供する方法について説明するための図である。
【図１０】本発明の実施の形態に従うゲーム装置で利用されるスタイラスの一例を示す図である。
【図１１】本発明の実施の形態に従うゲーム装置における位置検出の原理を説明するための図である。
【図１２】本実施の形態に従うマーカー位置の算出処理を説明するための図である。
【図１３】本実施の形態に従うマーカー位置の算出処理を説明するための図である。
【図１４】本実施の形態に従うゲーム装置において全方位カメラを用いた構成例を示す図である。
【図１５】図１４に示す全方位カメラにより取得される画像に対する画像処理の内容を説明するための図である。
【図１６】本実施の形態に従うゲーム装置において広角レンズを用いた構成例を示す図である。
【図１７】本実施の形態に従うゲーム装置において反射光学系を用いた構成例を示す図である。
【図１８】本実施の形態に従うゲーム装置において外側カメラを用いる場合を示す図である。
【図１９】図１８に示す構成において上側ＬＣＤに表示される画面例を示す図である。
【図２０】本実施の形態に従うゲーム装置において外側カメラを用いる場合を示す図である。
【図２１】本実施の形態に従うゲーム装置における機能ブロック図である。
【図２２】本発明の実施の形態に従うゲーム装置において実行される処理手順に係るフローチャートである。
【図２３】本実施の形態に従うスタイラスの外観図である。
【図２４】本実施の形態に従うスタイラスにおける機能ブロック図である。
【図２５】本実施の形態に従うゲーム装置によって提供されるスキンシップゲームの一例を示す図である。
【図２６】本実施の形態に従うゲーム装置によって提供されるスキンシップゲームの一例を示す図である。
【図２７】本実施の形態に従うゲーム装置によって提供されるシャボン玉運びゲームの一例を示す図である。
【図２８】本実施の形態に従うゲーム装置によって提供されるスケッチゲームの一例を示す図である。
【図２９】本実施の形態に従うゲーム装置によって提供される鉄球運びゲームの一例を示す図である。
【図３０】本実施の形態に従うゲーム装置によって提供される鉄球運びゲームの一例を示す図である。
【発明を実施するための形態】
【００３３】
本発明の実施の形態について、図面を参照しながら詳細に説明する。なお、図中の同一または相当部分については、同一符号を付してその説明は繰返さない。
【００３４】
本発明に係る情報処理装置の代表例として、以下では、コンピュータである携帯型のゲーム装置１について説明する。特に、本実施の形態に従うゲーム装置１は、後述するように、少なくとも１つの立体視表示が可能な表示部を有しており、この表示部を用いて、視差を利用してゲーム画像を立体視表示することが可能となっている。
【００３５】
本発明に係るゲーム装置としては、携帯型のゲーム装置１として具現化される場合に限られず、据置型のゲーム装置や、パーソナルコンピュータ、携帯電話、携帯端末などとして具現化することもできる。さらに、後述するように、本発明に係るゲームプログラムを格納した記録媒体と当該記録媒体を装着可能な処理装置本体とを含む情報処理システムとして具現化してもよい。
【００３６】
＜Ａ．用語＞
本明細書において、「立体視表示」、「３次元表示」、「３Ｄ表示」とは、ユーザが画像に含まれる少なくとも一部のオブジェクトを立体的に視認することができるように、当該画像を表現することを意味する。ユーザにオブジェクトを立体的に視認させるために、典型的には、人間の目や脳の生理的な働きを利用する。このような立体視表示は、ユーザにオブジェクトを立体的に視認させるために表示される画像（典型的には、視差を有するステレオ画像）を用いて実現される。
【００３７】
本明細書において、「平面表示」、「２次元表示」、「２Ｄ表示」とは、上述の「立体視表示」などと相対する用語であり、ユーザが画像に含まれるオブジェクトを立体的に視認できないような態様で、当該画像を表現することを意味する。
【００３８】
＜Ｂ．概要＞
本実施の形態に従うゲーム装置１は、視差を利用してゲーム画像を立体視表示することが可能である。すなわち、ゲーム装置１は、視差を利用してゲーム画像を立体視表示することを含むゲームを提供する。
【００３９】
特に、ゲーム装置１では、ゲーム画像の少なくとも一部として立体視表示されるオブジェクトをユーザが直接触って操作していると感じるユーザインターフェイスを提供する。すなわち、ユーザは、あたかも表示部の奥行き方向のある位置に存在しているように見える（現実には存在しないが）オブジェクトに対して、そのオブジェクトが見えている位置で現実に何らかの操作をすることで、表示部に表示されるオブジェクトをその操作に応じて動かしていると感じることができる。
【００４０】
図１は、本実施の形態に従うゲーム装置１によって提供されるユーザインターフェイスを説明するための模式図である。図１を参照して、ゲーム装置１は、折り畳み可能に構成された上側ハウジング２および下側ハウジング３からなり、上側ハウジング２には、立体視表示が可能な上側ＬＣＤ１１０が装着されている。この上側ＬＣＤ１１０では、典型的には、所定の視差を与えられたオブジェクト２００の画像を表示する。これにより、ユーザは、上側ＬＣＤ１１０の奥行き方向における、当該視差量に応じた位置にオブジェクト２００が存在すると視認することができる。
【００４１】
さらに、上側ハウジング２には、撮像部（典型的には、内側カメラ１３３）が装着されており、この撮像部の撮像によって得られた画像に基づいてユーザ操作が検出される。そして、この検出されるユーザ操作とユーザによって視認されるオブジェクト２００の位置とに基づいて判断処理が実行され、この判断処理による判断結果に従ってゲーム処理が進行する。より具体的には、ユーザ操作には、指示部材である位置検出用のマーカー３０２が装着されたスタイラス３００などが用いられ、撮像部によって取得されるマーカー３０２の画像に基づいて、マーカー３０２の位置が算出される。
【００４２】
このように、本実施の形態に従うゲーム装置１では、ユーザが立体的に視認しているオブジェクトをスタイラス３００などで直接触って操作するとことができ、これにより、実際には存在しないものを触ることができるという不思議な感じをユーザに与えることができる。
【００４３】
以下、このようなユーザインターフェイスを提供するための構成などについて詳述する。
【００４４】
＜Ｃ．ゲーム装置の全体構成＞
まず、本実施の形態に従うゲーム装置１の全体構成について説明する。
【００４５】
図２は、本発明の実施の形態に従うゲーム装置１の正面図（開状態）である。図３は、図２に示すゲーム装置１の上面側を中心とする投影図である。すなわち、図３（Ａ）は、ゲーム装置１の正面図（閉状態）を示し、図３（Ｂ）は、ゲーム装置１の前面図を示し、図３（Ｃ）は、ゲーム装置１の左側面図を示し、図３（Ｄ）は、ゲーム装置１の右側面図を示す。図４は、図２に示すゲーム装置１の底面側を中心とする投影図である。すなわち、図４（Ａ）は、ゲーム装置１の底面図を示し、図４（Ｂ）は、ゲーム装置１の背面図を示す。本明細書においては、便宜上、ゲーム装置１を図２に示すように配置した状態を基準として、「正面」、「前面」、「左側面」、「右側面」、「底面」、「背面」という用語を用いるが、これらの用語は形式的な呼称であり、ユーザによるゲーム装置１の使用形態の制約などを意図するものではない。
【００４６】
図２〜図４を参照して、本実施の形態に従う携帯型のゲーム装置１は、折り畳み可能に構成されている。ゲーム装置１は、開いた状態では、図２のような外観であり、閉じた状態では、図３（Ａ）のような外観となっている。ゲーム装置１は、開いた状態であっても、ユーザが両手または片手で把持することができるようなサイズであることが好ましい。
【００４７】
ゲーム装置１は、上側ハウジング２と下側ハウジング３とを有する。上側ハウジング２と下側ハウジング３とは、折り畳み可能（開閉可能）に連結されている。図２に示す例では、上側ハウジング２および下側ハウジング３の各々は、長方形の板状に形成され、互いの長辺部分でヒンジ４を介して回転可能に連結されている。ゲーム装置１は、ユーザによって使用するときに、開状態に維持され、使用されないときに、閉状態に維持される。
【００４８】
また、ゲーム装置１では、上側ハウジング２と下側ハウジング３との間の角度を、閉状態の位置と開状態の位置との間（略０°〜略１８０°）の任意の角度で維持することもできる。言い換えれば、上側ハウジング２を下側ハウジング３に対して任意の角度で静止させることができる。このハウジング間の静止には、上側ハウジング２と下側ハウジング３との連結部分に発生する摩擦力などが用いられる。摩擦力に加えて、あるいは、摩擦力に代えて、上側ハウジング２と下側ハウジング３との連結部内にラッチ機構を採用してもよい。
【００４９】
上側ハウジング２には、立体視表示が可能な表示部（表示手段）として、上側ＬＣＤ（Liquid Crystal Display：液晶表示装置）１１０が設けられている。上側ＬＣＤ１１０は、長方形状の表示領域を有し、その長辺方向が上側ハウジング２の長辺方向に一致するように配置される。本実施の形態に従うゲーム装置１では、ユーザが立体視表示をより楽しむことができるように、下側ＬＣＤ１２０の画面サイズに比較してより大きな画面サイズを有する上側ＬＣＤ１１０を採用する構成を示す。但し、必ずしも、このように画面サイズを異ならせる必要はなく、アプリケーションの用途やゲーム装置１のサイズなどに応じて、画面サイズは適宜設計することができる。上側ＬＣＤ１１０の詳細な構成については、後述する。
【００５０】
上側ハウジング２には、何らかの被写体を撮像するための撮像装置（撮像手段）が設けられている。より具体的には、上側ハウジング２には、一対の外側カメラ１３１Ｌおよび１３１Ｒ（図３（Ａ）参照）と、内側カメラ１３３（図２参照）とが設けられている。ここで、内側カメラ１３３は、上側ＬＣＤ１１０の上部に配置されており、一対の外側カメラ１３１Ｌおよび１３１Ｒは、内側カメラ１３３が配置されている内側主面とは反対側の面、すなわち上側ハウジング２の外側主面（ゲーム装置１が閉状態となった場合に外側となる面に相当）に配置されている。
【００５１】
このような位置関係によって、一対の外側カメラ１３１Ｌおよび１３１Ｒは、上側ハウジング２の外側主面が向く方向に存在する被写体を撮像することができ、一方、内側カメラ１３３は、外側カメラ１３１Ｌおよび１３１Ｒの撮像方向の逆方向、すなわち、上側ハウジング２の内側主面が向く方向に存在する被写体を撮像することができる。
【００５２】
一対の外側カメラ１３１Ｌおよび１３１Ｒは、所定の間隔だけ離して配置されており、これらの外側カメラ１３１Ｌおよび１３１Ｒが取得する一対の画像データを用いて、被写体を立体視表示することもできる。すなわち、外側カメラ１３１Ｌおよび１３１Ｒは、いわゆるステレオカメラとして機能する。外側カメラ１３１Ｌおよび１３１Ｒの撮像によって取得される一対の入力画像の間には、外側カメラ１３１Ｌと外側カメラ１３１Ｒとの相対的な位置関係に応じた、所定の視差が存在する。
【００５３】
一方、内側カメラ１３３の撮像によって取得される入力画像は、基本的には、非立体視表示（平面表示、通常表示）に用いられる。したがって、本実施の形態に従うゲーム装置１においては、外側カメラ１３１Ｌおよび１３１Ｒを有効化すると、立体視表示をするための一対の入力画像を取得でき、内側カメラ１３３を有効化すると、非立体視表示をするための入力画像を取得できる。
【００５４】
さらに、上側ハウジング２には、上側ＬＣＤ１１０の右側に立体視ボリューム１４５が設けられている。この立体視ボリューム１４５は、上側ＬＣＤ１１０における立体視表示を調整するために用いられる。
【００５５】
上側ハウジング２には、音声発生装置（音声発生手段）としてのスピーカ（図５に示すスピーカ１５１）が収納されている。より具体的には、上側ハウジング２の内側主面中央部に配置されている上側ＬＣＤ１１０に対して、左右両側に音抜き孔１５１Ｌおよび１５１Ｒがそれぞれ配置されている。スピーカ１５１で発生した音声は、スピーカ１５１と連通する音抜き孔１５１Ｌおよび１５１Ｒを通じて、ユーザへ向けて放射される。
【００５６】
一方、下側ハウジング３には、表示部（表示手段）として、下側ＬＣＤ１２０が設けられている。下側ＬＣＤ１２０は、長方形状の表示領域を有し、その長辺方向が下側ハウジング３の長辺方向と一致するように配置される。
【００５７】
下側ＬＣＤ１２０としては、後述するような立体視表示が可能な表示部を採用してもよいが、本実施の形態においては、各種情報などを非立体視表示する通常の表示部が採用される。そのため、下側ＬＣＤ１２０としては、例えば、ＥＬ（Electro Luminescence：電界発光）を利用した表示部というような、他の適切な形式の表示部を採用してもよい。さらに、表示部（表示手段）の解像度は、実行されるアプリケーションなどに応じて適切に設計される。
【００５８】
下側ハウジング３には、ユーザなどからの入力操作を受け付ける入力手段（入力装置）として、コントロールパッド１５４と、十字ボタン１６１と、ボタン群１４２，１６２とが設けられている。これらの入力部は、上側ハウジング２と下側ハウジング３とを折り畳んだときに内側となる、下側ハウジング３の主面上に設けられている。特に、コントロールパッド１５４および十字ボタン１６１は、ユーザがゲーム装置１を把持した際に、その左手で容易に操作できる位置に配置され、ボタン群１６２は、ユーザがゲーム装置１を把持した際に、その右手で容易に操作できる位置に配置される。
【００５９】
コントロールパッド１５４は、主として、ゲーム装置１における立体視表示を調整するための操作を受け付ける。特に、コントロールパッド１５４は、少なくとも２自由度の入力を同時に受け付けることが可能なアナログデバイスの一例である。より具体的には、コントロールパッド１５４は、ユーザの操作を受け付ける突起部を有するとともに、下側ハウジング３に対する相対的な位置関係を、少なくとも紙面上下方向および紙面左右方向に変更することが可能な構造となっている。図２に示すコントロールパッド１５４に代えて、アナログスティック、または、ジョイスティックなどを採用してもよい。
【００６０】
十字ボタン１６１は、２つの方向を独立して操作可能な入力部であり、ユーザがそれぞれの方向におけるボタン操作をすることで、それに応じた値をもつ２次元の値が出力される。
【００６１】
ボタン群１６２は、紙面上下左右方向にそれぞれ対応付けられた、４つの操作ボタン１６２Ａ，１６２Ｂ，１６２Ｘ，１６２Ｙを含む。すなわち、ボタン群１６２についても、２つの方向を独立して操作可能な入力部に相当し、ユーザがそれぞれの方向に対応付けて配置された操作ボタン１６２Ａ，１６２Ｂ，１６２Ｘ，１６２Ｙを操作することで、その操作状態を示す値が出力される。この操作状態を示す値も後述する「操作入力」として検出される。
【００６２】
十字ボタン１６１および／またはボタン群１６２が出力する操作入力は、ゲーム装置１における立体視表示の調整に用いられてもよい。あるいは、ゲーム装置１で実行される各種アプリケーションにおいては、これらの操作入力は、ゲーム進行などに係る、選択・決定・キャンセルといった操作に用いられる。
【００６３】
ボタン群１４２は、セレクトボタン１４２ａと、ＨＯＭＥボタン１４２ｂと、スタートボタン１４２ｃと、電源ボタン１４２ｄとを含む。セレクトボタン１４２ａは、典型的には、ゲーム装置１で実行されるアプリケーションを選択するために用いられる。ＨＯＭＥボタン１４２ｂは、典型的には、ゲーム装置１で実行されるメニューアプリケーションや各種アプリケーションを初期状態にするために用いられる。スタートボタン１４２ｃは、典型的には、ゲーム装置１においてアプリケーションの実行を開始するために用いられる。電源ボタン１４２ｄは、ゲーム装置１の電源をオン／オフするために用いられる。
【００６４】
下側ハウジング３内には、音声取得装置（音声取得手段）としてのマイク（図５に示すマイク１５３）が収納されている。そして、下側ハウジング３の主面上には、マイク１５３がゲーム装置１の周囲における音を取得するためのマイク用孔１５３ａが設けられている。なお、マイク１５３が収納される位置、および、当該マイク１５３と連通するマイク用孔１５３ａの位置は、下側ハウジング３の主面上に限られることなく、例えば、マイク１５３をヒンジ４内に収納するとともに、ヒンジ４の表面であって、マイク１５３の収納位置に対応する位置にマイク用孔１５３ａを設けてもよい。
【００６５】
ゲーム装置１には、コントロールパッド１５４、十字ボタン１６１、および、ボタン群１４２，１６２に加えて、別の入力部（入力手段）であるポインティングデバイスとして、タッチパネル１２２がさらに設けられている。タッチパネル１２２は、下側ＬＣＤ１２０の画面上を覆うように装着され、ユーザによる入力操作（位置指示操作、ポインティング操作）が行われた場合に、対応する２次元座標値を検出する。
【００６６】
すなわち、タッチパネル１２２は、下側ＬＣＤ１２０の表示領域内におけるユーザによる位置指示操作（２次元座標値）を受け付けるとともに、その位置指示操作が継続している間の２次元座標値の時間的な変化、すなわち一連の位置指示操作を受け付ける。
【００６７】
タッチパネル１２２としては、典型的には、抵抗膜方式を採用することができる。但し、抵抗膜方式に限らず、各種の押圧式のタッチパネルを採用することもできる。また、タッチパネル１２２の解像度（検出精度）は、下側ＬＣＤ１２０の解像度（表示精度）と同程度であることが好ましい。但し、タッチパネル１２２の解像度と下側ＬＣＤ１２０の解像度とを完全に一致させる必要はない。
【００６８】
タッチパネル１２２に対するポインティング操作は、通常、ユーザがスタイラス３００を用いることで行われるが、スタイラス３００に代えて、ユーザ自身の指などでポインティング操作（入力操作）を行うことも可能である。図２，図４（Ｃ）に示すように、下側ハウジング３の背面には、スタイラス３００の収納部１７６が設けられている。すなわち、タッチパネル１２２に対する入力操作を行うためのスタイラス３００は、通常、収納部１７６に格納されており、ユーザが必要に応じて取り出すことになる。
【００６９】
なお、ユーザからの位置指示操作を受け付ける受付手段であるポインティングデバイスとしては、タッチパネル１２２に代えて、あるいは、これに加えて、マウス、トラックボール、ペンタブレットなどを用いてもよい。また、表示部の表示面に対して遠隔から座標を指示できるポインタ装置（典型的には、Ｗｉｉ（登録商標）のコントローラなど）を採用してもよい。いずれのデバイスを用いた場合であっても、第２ＬＣＤ１２０の表示領域内の位置に関連付けられた位置指示操作を受け付けるように構成されることが好ましい。
【００７０】
図３（Ｃ），図３（Ｄ），図４（Ａ），図４（Ｂ）に示すように、下側ハウジング３の背面の左端部には、Ｌボタン１６２Ｌが設けられており、下側ハウジング３の背面の右端部には、Ｒボタン１６２Ｒが設けられている。Ｌボタン１６２ＬおよびＲボタン１６２Ｒについては、ゲーム装置１で実行される各種のアプリケーションにおいて、選択などの操作に用いられる。
【００７１】
図３（Ｃ）に示すように、下側ハウジング３の左側面には、音量ボリューム１４４が設けられている。音量ボリューム１４４は、ゲーム装置１に搭載されているスピーカ（図５に示すスピーカ１５１）からの音量を調整するために用いられる。
【００７２】
図３（Ｄ）に示すようには、下側ハウジング３の右側面には、無線スイッチ１４３が設けられている。無線スイッチ１４３は、ゲーム装置１における無線通信をオン状態（有効化状態）またはオフ状態（無効化状態）に切り替える。
【００７３】
ゲーム装置１に対しては、ゲームカード１７１および／またはメモリカード１７３が装着可能となっている。
【００７４】
すなわち、図４（Ｂ）に示すように、下側ハウジング３の背面には、ゲームカード１７１を装着するためのゲームカードスロット１７０が設けられている。ゲームカードスロット１７０の奥側には、ゲーム装置１とゲームカード１７１との間を電気的に接続するためのインターフェイスが設けられている。ゲームカードスロット１７０は、ゲームカード１７１を着脱自在に構成されている。ゲームカード１７１は、アプリケーションプログラムやゲームプログラム（いずれも命令セットを含む）などを保持する。
【００７５】
また、図３（Ｃ）に示すように、下側ハウジング３の左側面には、メモリカード１７３を装着するためのメモリカードスロット１７２が設けられている。メモリカードスロット１７２の奥側には、ゲーム装置１とメモリカード１７３との間を電気的に接続するためのインターフェイスが設けられている。メモリカードスロット１７２は、メモリカード１７３を着脱自在に構成されている。メモリカード１７３は、他の情報処理装置・ゲーム装置から取得したプログラムや画像データの読出し、ならびに、ゲーム装置１によって撮像および／または画像処理された画像データの記憶（保存）などに用いられる。ゲームカード１７１は、例えば、ＳＤ（Secure Digital）カードなどの不揮発性記録媒体からなる。
【００７６】
ゲーム装置１には、動作状態などをユーザに提示するための各種表示装置が設けられている。より具体的には、下側ハウジング３および上側ハウジング２には、表示部（表示手段）として、複数のＬＥＤ（Light Emitting Diode）からなるインジケータ群１４７が設けられている。インジケータ群１４７は、立体表示インジケータ１４７ａと、お知らせインジケータ１４７ｂと、無線インジケータ１４７ｃと、電源インジケータ１４７ｄと、充電インジケータ１４７ｅとを含む。立体表示インジケータ１４７ａは、上側ハウジング２の主面上に設けており、その他のインジケータは、下側ハウジング３の主面または側面に設けられている。
【００７７】
立体表示インジケータ１４７ａは、上側ＬＣＤ１１０において立体視表示が行われているか否かを通知する。典型的には、上側ＬＣＤ１１０での立体視表示が有効化されているときに、立体表示インジケータ１４７ａは点灯する。
【００７８】
お知らせインジケータ１４７ｂは、ユーザに通知すべき情報が存在するか否かを通知する。典型的には、ユーザに対して未読の電子メールが存在しているときや、各種のサーバから何らかのメッセージを受信しているときに、お知らせインジケータ１４７ｂは点灯する。
【００７９】
無線インジケータ１４７ｃは、ゲーム装置１における無線通信の状態を通知する。典型的には、無線通信が有効化されているときに、無線インジケータ１４７ｃは点灯する。
【００８０】
電源インジケータ１４７ｄは、ゲーム装置１における電源状態を通知する。ゲーム装置１は、図示しないバッテリを内蔵しており（典型的には、下側ハウジング３に収納される）、主として、このバッテリからの電力で駆動する。そのため、電源インジケータ１４７ｄは、ゲーム装置１における電源の投入状態、および／または、バッテリの残量の状態などを通知する。典型的には、ゲーム装置１の電源が投入状態（オン状態）であって、かつ、バッテリの残量が十分であるときに、電源インジケータ１４７ｄは、緑色に点灯し、ゲーム装置１の電源が投入状態（オン状態）であって、かつ、バッテリの残量が低下しているときに、赤色に点灯する。
【００８１】
充電インジケータ１４７ｅは、上述のバッテリに対する充電状態を通知する。典型的には、ゲーム装置１に対して充電アダプタ（図示しない）などが装着されて内蔵のバッテリが充電状態であるときに、充電インジケータ１４７ｅは点灯する。なお、充電アダプタは、図４（Ａ）に示すように、ゲーム装置１の背面に設けられている充電端子１７４に接続される。
【００８２】
また、本実施の形態に従うゲーム装置１は、赤外線通信の機能を搭載しており、ゲーム装置１の背面には、赤外線ポート１７９が設けられている。この赤外線ポート１７９は、データ通信の搬送波である赤外線を投光／受光する。
【００８３】
さらに、ゲーム装置１の前面には、ゲーム装置１を吊り下げるためのストラップを接続するためのフック３１，３２が設けられている。
【００８４】
また、下側ハウジング３の前面には、ヘッドホンおよび／またはマイクを接続するための接続端子１５８が設けられている。
【００８５】
＜Ｄ．ゲーム装置の電気的構成＞
次に、本実施の形態に従うゲーム装置１の電気的構成について説明する。
【００８６】
図５は、本発明の実施の形態に従うゲーム装置１の電気的構成を示すブロック図である。
【００８７】
図５を参照して、ゲーム装置１は、演算処理部１００と、上側ＬＣＤ１１０と、下側ＬＣＤ１２０と、タッチパネル１２２と、外側カメラ１３１Ｌ，１３１Ｒと、内側カメラ１３３と、無線モジュール１３４と、不揮発性メモリ１３６と、メインメモリ１３８と、マイコン１４０と、ボタン群１４２と、音量ボリューム１４４と、立体視ボリューム１４５と、電源管理ＩＣ（Integrated Circuit）１４６と、インジケータ群１４７と、加速度センサ１４８と、インターフェイス回路１５０と、スピーカ１５１と、ヘッドホン用アンプ１５２と、マイク１５３と、接続端子１５８と、十字ボタン１６１と、ボタン群１６２と、ゲームカードスロット１７０と、メモリカードスロット１７２と、赤外線モジュール１７８とを含む。また、ゲーム装置１は、図示しないバッテリおよび電源回路を含む。
【００８８】
演算処理部１００は、ゲーム装置１の全体の制御を司る。より具体的には、演算処理部１００は、不揮発性メモリ１３６に予め格納されているファームウェア（命令セット）、ゲームカードスロット１７０に装着されるゲームカード１７１から読出されるプログラム（命令セット）やデータ、メモリカードスロット１７２に装着されるメモリカード１７３から読出されるプログラム（命令セット）やデータなどを実行することで、上側ＬＣＤ１１０における立体視表示の制御を含む各種処理を実現する。
【００８９】
なお、演算処理部１００で実行されるプログラム（命令セット）がゲームカード１７１やメモリカード１７３を通じて提供される場合に加えて、ＣＤ−ＲＯＭやＤＶＤなどの光学式の記録媒体を通じて、ゲーム装置１へ提供されるようにしてもよい。さらに、ネットワークを通じて接続されるサーバ装置（図示しない）からプログラムが提供されるようにしてもよい。
【００９０】
より具体的には、演算処理部１００は、ＣＰＵ（Central Processing Unit）１０２と、ＧＰＵ（Graphical Processing Unit）１０４と、ＶＲＡＭ（Video Random Access Memory）１０６と、ＤＳＰ（Digital Signal Processor）１０８とを含む。これらの各部の処理については、後述する。また、演算処理部１００は、各部との間でデータを遣り取りする。
【００９１】
外側カメラ１３１Ｌおよび１３１Ｒならびに内側カメラ１３３の各々は、演算処理部１００に接続され、演算処理部１００からの指示に応答して、撮像により取得した入力画像を演算処理部１００へ出力する。これらのカメラの各々は、ＣＣＤ（Charge Coupled Device）やＣＩＳ（CMOS Image Sensor）といった撮像素子と、撮像素子で取得された画像データ（入力画像）を読出すための周辺回路とを含む。
【００９２】
無線モジュール１３４は、他のゲーム装置１や何らかの情報処理装置との間で無線信号を介してデータを遣り取りする。一例として、無線モジュール１３４は、ＩＥＥＥ８０２．１１ａ／ｂ／ｇ／ｎといった規格に準拠した無線ＬＡＮ方式により、他の装置との間でデータ通信を行う。
【００９３】
不揮発性メモリ１３６は、ゲーム装置１の基本動作に必要なファームウェアなどを格納しており、そのファームウェアを記述するコードがメインメモリ１３８に展開される。演算処理部１００のＣＰＵ１０２がメインメモリ１３８に展開されたコードを実行することで、ゲーム装置１での基本処理が実現される。また、不揮発性メモリ１３６には、ゲーム装置１において予め設定される各種パラメータに関するデータ（プリセットデータ）が格納されてもよい。一例として、不揮発性メモリ１３６は、フラッシュメモリからなる。
【００９４】
メインメモリ１３８は、演算処理部１００が処理を実行するためのワーク領域またはバッファ領域として用いられる。すなわち、メインメモリ１３８は、演算処理部１００での処理に必要なプログラム（コード）やデータを一時的に記憶する。一例として、メインメモリ１３８は、ＰＳＲＡＭ（Pseudo-SRAM）からなる。
【００９５】
マイコン１４０は、主として、ユーザインターフェイスに係る処理を提供する。より具体的には、マイコン１４０は、演算処理部１００と接続されるとともに、ボタン群１４２、音量ボリューム１４４、立体視ボリューム１４５、電源管理ＩＣ１４６、インジケータ群１４７、および、加速度センサ１４８と接続される。マイコン１４０は、ユーザによるボタン操作などを検知して、その検知結果を演算処理部１００へ出力するとともに、演算処理部１００からの信号に応答して、ユーザへ各種情報を通知するためのインジケータを点灯する。
【００９６】
また、マイコン１４０は、リアルタイムカウント（ＲＴＣ：Real Time Clock）１４１を有している。リアルタイムカウンタ１４１は、計時機能を提供する部位であり、予め定まった周期で時間をカウントする。このカウント結果は、逐次、演算処理部１００へ出力される。演算処理部１００は、リアルタイムカウンタ１４１によってカウントされたカウント値に基づいて、現在時刻（日付）等を算出することもできる。
【００９７】
電源管理ＩＣ１４６は、ゲーム装置１に搭載される電源（典型的には、上述のバッテリ）から各部へ電力を供給するとともに、その供給量を制御する。
【００９８】
加速度センサ１４８は、ゲーム装置１の変位を検出し、その検出結果は、マイコン１４０を通じて演算処理部１００へ出力される。加速度センサ１４８による検出結果は、ゲーム装置１で実行されるプログラム（ゲームアプリケーション）などに利用される。
【００９９】
赤外線モジュール１７８は、他のゲーム装置１との間で無線通信（赤外線通信）を行う。この赤外線モジュール１７８による無線通信は、無線モジュール１３４による無線通信に比較して到達可能距離が短くなっている。この赤外線通信の搬送波である赤外線は、赤外線ポート１７９（図４（Ｂ）参照）を通じて投光／受光される。
【０１００】
インターフェイス回路１５０は、演算処理部１００と接続されるとともに、スピーカ１５１、ヘッドホン用アンプ１５２、マイク１５３、コントロールパッド１５４、および、タッチパネル１２２と接続される。より具体的には、インターフェイス回路１５０は、スピーカ１５１、ヘッドホン用アンプ１５２、マイク１５３の制御を行うための音声制御回路（図示しない）と、タッチパネル１２２の制御を行うためのタッチパネル制御回路（図示しない）とを含む。
【０１０１】
スピーカ１５１は、インターフェイス回路１５０からの音声信号を増幅して、音抜き孔１５１Ｌおよび１５１Ｒから音声を出力する。ヘッドホン用アンプ１５２は、インターフェイス回路１５０からの音声信号を増幅して、接続されるヘッドホンから音声を出力する。マイク１５３は、ゲーム装置１に向かって発声されたユーザの音声などを検知して、検知した音声を示す音声信号をインターフェイス回路１５０に出力する。
【０１０２】
以上のように、インターフェイス回路１５０を構成する音声制御回路は、マイク１５３で検知されたアナログの音声信号に対してＡ／Ｄ（アナログ／デジタル）変換を行い、その結果得られたデジタルの音声信号を演算処理部１００へ出力するとともに、演算処理部１００などで生成されたデジタルの音声信号に対してＤ／Ａ（デジタル／アナログ）変換を行い、その結果得られたアナログの音声信号をスピーカ１５１および／または接続されるヘッドホンへ出力する。
【０１０３】
また、インターフェイス回路１５０を構成するタッチパネル制御回路は、タッチパネル１２２からの検出信号に応答して、ユーザが入力操作（ポインティング操作）した位置を示すタッチ位置データを生成して演算処理部１００へ出力する。すなわち、タッチパネル１２２は、そのタッチ面上でポインティングされた位置に対応する２次元座標値に応じた操作入力（タッチ位置データ）を出力する。
【０１０４】
ゲームカードスロット１７０およびメモリカードスロット１７２は、それぞれ、演算処理部１００と接続される。ゲームカードスロット１７０は、演算処理部１００からの指令に応答して、コネクタを介して、装着されたゲームカード１７１との間でデータの読出しおよび書込みを行う。メモリカードスロット１７２は、演算処理部１００からの指令に応答して、コネクタを介して、装着されたメモリカード１７３との間でデータの読出しおよび書込みを行う。
【０１０５】
下側ＬＣＤ１２０および上側ＬＣＤ１１０は、演算処理部１００からの指令に従って、それぞれ画像を表示する。ゲーム装置１の典型的な使用形態においては、下側ＬＣＤ１２０に各種操作を受け付けるための画像が表示されるとともに、上側ＬＣＤ１１０では、立体視表示が行われる。
【０１０６】
＜Ｅ．立体視表示を提供するための構成＞
次に、本実施の形態に従うゲーム装置１において立体視表示を提供するための構成について説明する。
【０１０７】
図６は、本発明の実施の形態に従うゲーム装置１での表示制御を実現するための電気的構成を示すブロック図である。図７は、図６に示す上側ＬＣＤ１１０の断面模式図である。
【０１０８】
図６を参照して、演算処理部１００は、ＣＰＵ１０２に加えて、主として、上側ＬＣＤ１１０および下側ＬＣＤ１２０においてそれぞれ画像を表示するための処理（画像処理）を行うためのＧＰＵ１０４を含む。ＧＰＵ１０４は、画像処理に特化した処理回路を有しており、ＣＰＵ１０２からの指令に応答して、上側ＬＣＤ１１０および下側ＬＣＤ１２０にそれぞれ表示すべき画像を逐次生成する。これらの画像は、上側ＬＣＤ１１０用のＶＲＡＭ１０６ａ、および、下側ＬＣＤ１２０用のＶＲＡＭ１０６ｂへそれぞれ転送される。
【０１０９】
このとき、上側ＬＣＤ１１０において立体視表示を行うための一対の画像（左目用画像および右目用画像）は互いに独立してＶＲＡＭ１０６ａへ書込まれる。これに対して、下側ＬＣＤ１２０においては平面表示（非立体視表示）が行われるので、単一の画像がＶＲＡＭ１０６ｂへ書込まれる。
【０１１０】
上側ＬＣＤ１１０は、ＬＣＤコントローラ１１１と、ＬＣＤパネル１１２と、バリア液晶１１３とを含む。これに対して、下側ＬＣＤ１２０は、ＬＣＤコントローラ１２１と、ＬＣＤパネル１２３とを含む。
【０１１１】
さらに、上側ＬＣＤ１１０の構造について説明する。
図７には、上側ＬＣＤ１１０の典型例として、パララックスバリア方式の液晶表示デバイスの構造を示す。上側ＬＣＤ１１０は、ガラス基板１１８とガラス基板１１９との間に配置されたＬＣＤパネル１１２を含む。
【０１１２】
ＬＣＤパネル１１２は、左目用画素群１１２Ｌおよび右目用画素群１１２Ｒを含む。ガラス基板１１８のガラス基板１１９の側とは反対側に、図示しないバックライトが設けられており、このバックライトからの光は左目用画素群１１２Ｌおよび右目用画素群１１２Ｒに向けて照射される。そして、左目用画素群１１２Ｌおよび右目用画素群１１２Ｒは、バックライトからの光を調節するための空間光変調器として機能する。ここで、左目用画素群１１２Ｌの各画素と右目用画素群１１２Ｒの各画素とは交互に配置される。
【０１１３】
ガラス基板１１８の左目用画素群１１２Ｌおよび右目用画素群１１２Ｒに接する側とは反対の側に、視差光学系であるバリア液晶１１３が設けられる。このバリア液晶１１３には、複数のスリット１１４が所定間隔で行列状に設けられている。各スリット１１４の中心位置を通り、かつガラス基板１１８の面に対して垂直方向の軸を基準として、左目用画素群１１２Ｌおよび右目用画素群１１２Ｒとが対称的に配置される。このように、各スリットに対応付けられる左目用画素群１１２Ｌおよび右目用画素群１１２Ｒの各組について、スリットとの間の位置関係を適切に設計することで、ユーザは、その左目で左目用画素群１１２Ｌだけを視認するとともに、その右目で右目用画素群１１２Ｒだけを視認することになる。
【０１１４】
すなわち、バリア液晶１１３に含まれる各スリット１１４が、ユーザの右目および左目による視界をそれぞれ対応する角度に制限する。その結果、ユーザの左目の視線ＡＸＬには左目用画素群１１２Ｌのみが存在し、一方、ユーザの右目の視線ＡＸＲには右目用画素群１１２Ｒのみが存在することになる。
【０１１５】
ここで、左目用画素群１１２Ｌおよび右目用画素群１１２Ｒに、所定の視差を有する一対の画像を表示させることで、所定の視差を有する画像をユーザに提示することができる。このような所定の視差を有する一対の画像を表示することで、ユーザから見れば、被写体を立体的に見ていると感じることになる。以下では、バリア液晶１１３のユーザ側の表面、すなわち、この画像が実際に表示される面を（上側ＬＣＤ１１０の）表示面とも称す。
【０１１６】
より具体的には、図６に示すように、ＧＰＵ１０４は、左目用画像および右目用画像をＶＲＡＭ１０６ａのアドレスを指定して順次書込む。ＬＣＤコントローラ１１１は、ＶＲＡＭ１０６ａに書込まれた左目用画像および右目用画像を構成する列方向の画像が、ＬＣＤパネル１１２に交互に並んで表示されるように、ＶＲＡＭ１０６ａの対象となるアドレスから各列の画像データを順次読出して、ＬＣＤパネル１１２を駆動する。
【０１１７】
なお、上側ＬＣＤ１１０では、画像を平面表示、すなわち、非立体視表示することもできる。この場合には、ＬＣＤコントローラ１１１に対して指令を与えることで、バリア液晶１１３を無効化する方法と、表示に用いられる左目用画像と右目用画像との間の視差を実質的にゼロとする方法とが存在する。
【０１１８】
前者の方法の場合、バリア液晶１１３が提供する複数のスリット１１４が無効化されるので、ユーザの左目および右目には、実質的に、左目用画素群１１２Ｌおよび右目用画素群１１２Ｒからの光が入射することになる。なお、この場合には、ユーザから見た解像度は、立体視表示のときの解像度に比べて、実質的に２倍となる。
【０１１９】
後者の方法の場合、ユーザの左目で視認される画像と、右目で視認される画像とが実質的に同一に制御されるので、ユーザは、同じ画像を左目および右目で視認することになる。
【０１２０】
一方、下側ＬＣＤ１２０においては、非立体視表示がなされる。すなわち、ＧＰＵ１０４は、表示すべき画像をＶＲＡＭ１０６ｂのアドレスを指定して順次書込み、ＬＣＤコントローラ１２１は、ＶＲＡＭ１０６ｂに書込まれた画像を順次読出して、ＬＣＤパネル１２３を駆動する。
【０１２１】
なお、図７には、立体視表示が可能な表示部の典型例として、パララックスバリア方式の表示デバイスを例示したが、例えば、レンチキュラ方式の表示デバイスなどを採用することもできる。これらの方式は、左目用画像の表示エリアと右目用画像の表示エリアとが一定のパターンで（典型的には交互に）配置される。
【０１２２】
なお、シャッタメガネ（時分割方式）を利用した方法のように、左目用画像の表示エリアと右目用画像の表示エリアとを共通としつつ、左目用画像と右目用画像とを交互に表示する形態を採用することもできる。
【０１２３】
＜Ｆ．立体視表示に係る制御ロジック＞
次に、本実施の形態に従うゲーム装置１において立体視表示に係る制御ロジックについて説明する。上述したように、所定の視差を有する一対の画像（ステレオ画像）を用いることで立体視表示を実現できるが、このステレオ画像を生成する方法としては、公知の方法を採用することができる。以下の説明では、仮想空間に配置されたオブジェクトを仮想カメラを用いて仮想的に撮像（レンダリング）することで、ステレオ画像を生成する場合の処理について説明する。このような構成に代えて、一対の外側カメラ１３１Ｌおよび１３１Ｒ（図３（Ａ）参照）を用いて現実の被写体を撮像することで、一対の画像（ステレオ画像）を取得することもできる。
【０１２４】
図８は、本発明の実施の形態に従うゲーム装置１において立体視表示に用いられる視差を有する一対の画像を生成する方法の一例について説明するための図である。図９は、図８に示す方法によって生成された視差を有する一対の画像を用いて立体視表示を提供する方法について説明するための図である。
【０１２５】
図８（Ａ）には、仮想空間においてオブジェクト２００が配置されており、このオブジェクト２００を一対の仮想カメラ２２０Ｌおよび２２０Ｒを用いて撮像（レンダリング）した場合を示す。なお、オブジェクト２００に対する仮想カメラ２２０Ｌおよび２２０Ｒの相対的な位置関係、および、仮想カメラ２２０Ｌと仮想カメラ２２０Ｒとの間の距離ｄ１については、アプリケーションなどによって任意に設定できるものとする。
【０１２６】
以下の説明においては、一対の仮想カメラ２２０Ｌおよび２２０Ｒを結ぶ直線が表示部（上側ＬＣＤ１１０）の表示面の水平方向に対応しているとする。このとき、水平方向をＸ方向と称し、垂直方向をＹ方向と称し、各仮想カメラ２２０Ｌおよび２２０Ｒのカメラ方向（撮像の光軸方向）をＺ方向と称す（以下同様である）。
【０１２７】
図８（Ｂ）には、図８（Ａ）に示すような位置関係において取得される一対の入力画像（ステレオ画像）の一例を示す。すなわち、仮想カメラ２２０Ｌがオブジェクト２００をレンダリングすることにより、左目用の入力画像ＰＩＭＧＬが生成され、仮想カメラ２２０Ｒがオブジェクト２００をレンダリングすることにより、右目用の入力画像ＰＩＭＧＲが生成される。
【０１２８】
この左目用の入力画像ＰＩＭＧＬと右目用の入力画像ＰＩＭＧＲとを比較すると、入力画像ＰＩＭＧＬ内におけるオブジェクト２００の位置と、入力画像ＰＩＭＧＲ内におけるオブジェクト２００の位置とは異なっていることがわかる。すなわち、入力画像ＰＩＭＧＬにおいては、オブジェクト２００を表す像が相対的に右側に位置しており、入力画像ＰＩＭＧＲにおいては、オブジェクト２００を表す像が相対的に左側に位置している。
【０１２９】
このような視差を有する一対の入力画像（ステレオ画像）を、上側ＬＣＤ１１０の表示面に表示することで、ユーザは、そのオブジェクト２００について、立体的に視認することができる。このような一対の入力画像に対して付与される視差量は、仮想カメラ２２０Ｌと仮想カメラ２２０Ｒとの間の距離ｄ１の大きさ（図８（Ａ））に依存して変化する。
【０１３０】
より具体的には、図９（Ａ）に示すように、仮想カメラ２２０Ｌと仮想カメラ２２０Ｒとの間の距離が拡大すると（ｄ２＞ｄ１）、入力画像ＰＩＭＧＬおよび入力画像ＰＩＭＧＲに付与される視差量も大きくなる。この結果、ユーザは、オブジェクト２００が上側ＬＣＤ１１０の表示面よりユーザ側に存在しているように視認する。いわば、ユーザは、オブジェクト２００の像が表示面から「飛び出している」ように感じる。
【０１３１】
これに対して、図９（Ｂ）に示すように、仮想カメラ２２０Ｌと仮想カメラ２２０Ｒとの間の距離が縮小すると（ｄ３＜ｄ１）、入力画像ＰＩＭＧＬおよび入力画像ＰＩＭＧＲに付与される視差量も小さくなる。この結果、ユーザは、オブジェクト２００が上側ＬＣＤ１１０の表示面より背面側に存在しているように視認する。いわば、ユーザは、オブジェクト２００の像が表示面から「引き込まれている」ように視認する。
【０１３２】
このように、上側ＬＣＤ１１０に表示される一対の画像に与える視差を調整することで、オブジェクトが存在しているとユーザが視認する表示部の奥行き方向での位置を制御することができる。すなわち、視差量を適宜制御することで、ユーザに対して、表示部から目的の距離にオブジェクトが存在すると視認させることができる。
【０１３３】
なお、一対の画像に対して付与する視差量をゼロに設定すると、ユーザの右目および左目には同一の画像が入射することになるので、表示面において平面的にオブジェクトが表示される。
【０１３４】
また、図８に示す方法では、オブジェクトを仮想的に撮像することで、表示部に表示される一対の画像に与える視差量を調整する方法について説明したが、ある一定値の視差量を与えられた一対の画像を用いて、これらの画像間の表示面における相対的な表示位置を変更することで、ユーザが視認するオブジェクトの位置を調整することもできる。
【０１３５】
＜Ｇ．位置検出および関連処理＞
次に、ユーザによる操作がなされた位置を検出する処理について説明する。
【０１３６】
本実施の形態に従うゲーム装置１では、ユーザ操作に関連付けられた指示部材を撮像部で撮像して得られた画像を用いて、位置検出が行われる。より具体的には、指示部材として、画像処理技術を用いてその位置を抽出できる特徴が付与された位置検出用のマーカーが用いられる。
【０１３７】
このようなマーカーとしては、その表面に現実世界に存在しないような色（典型的には、蛍光色）が塗布された部材や、その表面に予め定められた模様（パターン）が付された部材などが用いられる。このような部材を用いることで、撮像部によって撮像された画像内から特定の色または模様が存在する位置および領域を抽出することで、当該マーカーの位置を算出することができる。
【０１３８】
図１０は、本発明の実施の形態に従うゲーム装置１で利用されるスタイラス３００の一例を示す図である。図１０に示すように、本実施の形態に従うスタイラス３００は、その先端に指示部材として、球形のマーカー３０２が装着されているものとする。なお、このマーカー３０２をユーザの指などに直接的に装着してもよい。
【０１３９】
なお、指示部材であるマーカー３０２を球形にしたのは、後述するように、画像中における大きさ（サイズ）で撮像部からの距離を測定するためである。すなわち、球形のマーカー３０２を採用することで、撮像部によって取得された画像内においては、撮像部とマーカー３０２との間の相対的な位置関係に影響されず常に同一の形状（円）を維持できる。これにより、画像内のマーカー３０２に対応する画像の大きさを安定して計測することができる。
【０１４０】
図１１は、本発明の実施の形態に従うゲーム装置１における位置検出の原理を説明するための図である。図１１を参照して、本実施のゲーム装置１においては、撮像部によって撮像される所定の指示部材（マーカー３０２）の画像に基づいて、当該指示部材の撮像部に対する相対位置が算出される。より具体的には、撮像部によって撮像される画像内のマーカーを示す画像の大きさに基づいて、表示部（上側ＬＣＤ１１０）の奥行き方向（Ｚ方向）におけるマーカー３０２の位置が算出される。
【０１４１】
すなわち、撮像部によって取得された画像中においてマーカー３０２の大きさ（サイズ）が大きいほど撮像部に近いことを意味し、反対に、撮像部によって取得された画像中においてマーカー３０２の大きさ（サイズ）が小さいほど撮像部に遠いことを意味する。
【０１４２】
そこで、本実施の形態に従うゲーム装置１においては、内側カメラ１３３または外側カメラ１３１Ｌ，１３１Ｒの撮像によってマーカー３０２が存在する範囲を撮像し、この撮像によって取得された画像中におけるマーカー３０２に対応する領域の位置およびその大きさに基づいて、当該撮像部を基準とした座標系における位置が算出される。そして、その撮像部を基準とした座標系における位置を表示部（上側ＬＣＤ１１０）を基準とする座標系における位置に変換した上で、表示部によって立体視表示されるオブジェクトの位置と算出されたマーカー３０２の位置とが重なっているか、すなわち、両者が衝突しているか否かが判断される。最終的に、この判断結果に基づいて、ゲーム処理が進行される。より具体的には、以下のような手順で処理が実行される。
【０１４３】
１．ユーザに視認されるオブジェクトの表示位置（飛び出し量／引き込み量）の算出
２．マーカーの位置の算出
３．衝突判定
４．衝突判定の結果に応じてゲーム処理の実行（オブジェクト表示位置の変更）
以下、図１２および図１３を参照して、これらの処理の詳細について説明する。図１２および図１３は、本実施の形態に従うマーカー位置の算出処理を説明するための図である。
【０１４４】
（ｇ１：表示位置（飛び出し量／引き込み量）の算出）
まず、位置算出に用いる座標系を次のように設定する。すなわち、図１２および図１３に示すように、表示部（上側ＬＣＤ１１０）についての座標系として、上側ＬＣＤ１１０の表示面の中心点Ｏを原点として、水平方向をＸ軸、垂直方向をＹ軸、奥行き方向をＺ軸と設定する。計算の都合上、水平右向きにＸ軸の正方向、垂直上向きをＹ軸の正方向、奥行き方向の手前側をＺ軸の正方向とする。したがって、中心点Ｏ（ｘ，ｙ，ｚ）＝（０，０，０）となる。この座標系における単位は実距離（例えば、メートル）であるとする。
【０１４５】
次に、図１２および図１３に示すように、撮像部（内側カメラ１３３）についての座標系として、内側カメラ１３３の中心点Ｏ’を原点として、上側ハウジング２の表面に沿って水平方向をＸ’軸、垂直方向をＹ’軸と設定する。そして、上側ＬＣＤ１１０についての座標系であるＺ軸と平行にＺ’軸を設定する。計算の都合上、水平右向きにＸ’軸の正方向、垂直上向きをＹ’軸の正方向、奥行き方向の手前側をＺ’軸の正方向とする。
【０１４６】
後述するように、撮像部（内側カメラ１３３）についての座標系（Ｘ’−Ｙ’−Ｚ’座標系）と表示部（上側ＬＣＤ１１０）についての座標系（Ｘ−Ｙ−Ｚ座標系）との対応関係が予め既知であるので、Ｘ’−Ｙ’−Ｚ’座標系において算出された位置は、Ｘ−Ｙ−Ｚ座標系における位置に容易に変換することができる。
【０１４７】
まず、表示部の奥行き方向（Ｚ軸）におけるオブジェクト２００の表示位置が算出される。すなわち、ユーザが視認するオブジェクト２００の飛び出し量または引き込み量が算出される。
【０１４８】
より具体的には、人の左右の目の間の距離［ｍ］をＡとし、表示面におけるオブジェクト２００に与えられている視差量［ｍ］をＢとし、上側ＬＣＤ１１０の表示面からユーザの目までの距離をＣ［ｍ］とすると、立体視表示されるオブジェクト２００が視認される表示面からの距離（飛び出し量／引き込み量）Ｄ［ｍ］は、（１）式のように算出される。
【０１４９】
Ｄ＝Ｂ／（Ａ＋Ｂ）×Ｃ  …（１）
ここで、表示部（上側ＬＣＤ１１０）の表示面の中心点を原点（０，０）として、オブジェクト２００の表示面における表示位置を（ｘ１，ｙ１）とすると、Ｘ−Ｙ−Ｚ座標系におけるオブジェクト２００の表示位置は、（２）式のように表すことができる。
【０１５０】
（ｘ１，ｙ１，ｚ１）＝（ｘ１，ｙ１，Ｄ）  …（２）
なお、（１）式における人の左右の目の間の距離Ａ、および、表示面からユーザの目までの距離Ｂについては、個人差があるため、表示面からの距離Ｄは、ユーザによって差がでる（ばらつく）。なお、これらの距離ＡおよびＢについては、予め所定の設計値が与えられているとする。そのため、オブジェクトの表示位置（ｘ１，ｙ１，Ｄ）は、誤差を含むものとして扱う必要がある。具体的には、後述するような、衝突判定処理における衝突したか否かの判定を行うためのしきい値などに対して、これらの誤差を考慮したマージンを設定するなどの方法が考えられる。
【０１５１】
（ｇ２：マーカーの位置の算出）
次に、撮像部によって撮像された画像からマーカーの位置が算出される。
【０１５２】
まず、マーカー３０２が撮像部から単位距離の位置に存在する場合に、撮像部の撮像によって取得された画像中におけるマーカー３０２に対応する領域の大きさがＦ［ｍ］であるとする。そして、ある時点において、撮像部の撮像によって取得された画像中におけるマーカー３０２に対応する領域の大きさがＥ［ｍ］であれば、撮像部からマーカー３０２までの距離Ｇ［ｍ］は、（３）式のように算出される。
【０１５３】
Ｇ＝Ｅ／Ｆ  …（３）
ここで、大きさＥおよびＦは、画像処理を用いて、撮像部により取得された画像内でマーカーに対応する領域が占めるピクセル数、または、その領域の径などを抽出することで算出される。なお、マーカー３０２が撮像部の撮像範囲の端に存在し、それによりその一部が欠けているような場合には、その大きさを正確に算出することができない。このような場合には、画像補間などを行って、マーカー３０２を示す領域の画像を修正した上で、その大きさが算出される。
【０１５４】
また、撮像部により取得された画像内におけるマーカー３０２に対応する領域の座標が（ｘ２’’，ｙ２’’）であるとすると、Ｘ’−Ｙ’−Ｚ’座標系におけるマーカー３０２の位置（ｘ２’，ｙ２’，ｚ２’）は、（４）式に示されるベクトルＶｍ上に位置することになる。
【０１５５】
Ｖｍ（ｘ’，ｙ’，ｚ’）＝（｛ｔａｎ（θｈ／２）×ｘ２’’｝／（Ｐｈ／２），｛ｔａｎ（θｖ／２）×ｙ２’’｝／（Ｐｖ／２），１）  …（４）
但し、撮像部の解像度をＰｈ［ピクセル］×Ｐｖ［ピクセル］とし、その水平画角をθｈ［°］、その垂直画角をθｖ［°］とする。
【０１５６】
（３）式は、マーカー３０２が撮像部から単位距離の位置に存在する場合（ｚ＝１の場合）での、Ｘ’−Ｙ’−Ｚ’座標系における位置に相当する。（４）式に示すベクトルＶｍの大きさ（ノルム）をＨとすると、Ｘ’−Ｙ’−Ｚ’座標系におけるマーカー３０２の位置（ｘ２’，ｙ２’，ｚ２’）は、（５）式のように算出される。
【０１５７】
（ｘ２’，ｙ２’，ｚ２’）＝（｛ｔａｎ（θｈ／２）×ｘ２’’×Ｇ／Ｈ｝／（Ｐｈ／２），｛ｔａｎ（θｖ／２）×ｙ２’’×Ｇ／Ｈ｝／（Ｐｖ／２），Ｇ／Ｈ）  …（５）
さらに、Ｘ−Ｙ−Ｚ座標系の中心点ＯとＸ’−Ｙ’−Ｚ’座標系の中心点Ｏ’との間のオフセット量を（Ｘｆ，Ｙｆ，Ｚｆ）とすると、Ｘ−Ｙ−Ｚ座標系におけるマーカー３０２の位置（ｘ２，ｙ２，ｚ２）は、（６）式のように算出される。
【０１５８】
（ｘ２，ｙ２，ｚ２）＝（ｘ２’＋Ｘｆ，ｙ２’＋Ｙｆ，ｚ２’＋Ｚｆ）  …（６）
（ｇ３：衝突判定）
立体視表示されるオブジェクトの形状と算出されたマーカー３０２の位置との関係に基づいて、衝突判定が実行される。すなわち、上述の（２）式のように表されるオブジェクト２００の表示位置と、上述の（６）式のように表されるマーカー３０２の位置との近接度合いを評価する。このような衝突判定の処理には、公知のアルゴリズムを用いることができる。
【０１５９】
（ｇ４：ゲーム処理の実行）
上述の衝突判定における判定結果に応じて、表示されるオブジェクトの位置などを変更する。例えば、飛び出して見えるオブジェクトの位置を変更したり、ユーザに当該オブジェクトを触っていることを知らせるエフェクトを発生したりする。この内容については、後述するように、適用される各アプリケーションの内容に応じて適宜変更される。
【０１６０】
＜Ｈ．撮像部＞
次に、指示部材である位置検出用のマーカー３０２を撮像するための撮像部について説明する。
【０１６１】
（ｈ１：内側カメラ）
上述したように、基本的には、内側カメラ１３３（図１）によってマーカー３０２を含む領域を撮像し、その撮像により取得された画像に含まれるマーカー３０２に対応する領域を抽出する。すなわち、ゲーム装置１は、一方面に表示部である上側ＬＣＤ１１０が設けられる上側ハウジング２を有しており、マーカーの位置算出に用いられる撮像部である内側カメラ１３３は、当該上側ハウジング２における表示部と同じ面に設けられる。このように、内側カメラ１３３を用いることで、ユーザ操作を適切に検出することができる。
【０１６２】
但し、内側カメラ１３３の取り付け位置および／または仕様によっては、その視野範囲がオブジェクトの飛び出し量のすべてをカバーできない場合もある。このような場合には、以下に示すように、内側カメラ１３３にレンズを付加し、あるいは、代替のカメラを利用することで、その撮像範囲を拡大させることもできる。
【０１６３】
（ｈ２：全方位カメラ）
図１４は、本実施の形態に従うゲーム装置１において全方位カメラを用いた構成例を示す図である。図１５は、図１４に示す全方位カメラにより取得される画像に対する画像処理の内容を説明するための図である。
【０１６４】
図１４には、上側ハウジング２に装着されている内側カメラ１３３の撮像面側に全方位レンズ１９０を装着した構成例を示す。全方位レンズ１９０は、撮像部である内側カメラ１３３に着脱可能に設けられ、内側カメラ１３３を中心とする全周囲の画像を内側カメラ１３３に導くためのレンズである。
【０１６５】
より具体的には、全方位レンズ１９０は、双曲面ミラー１９０ａを含み、全方位レンズ１９０の全周囲からの光が双曲面ミラー１９０ａによって反射され、内側カメラ１３３のレンズ導かれる。これによって、全方位レンズ１９０の実質的に周囲３６０°にわたって撮像を行うことができる。すなわち、全方位レンズ１９０と内側カメラ１３３とを組み合わせることで、上側ハウジング２の周辺でユーザが行う操作を光学的に検出することができる。
【０１６６】
このように、内側カメラ１３３に全方位レンズ１９０を装着することで、全方位カメラを構成する。なお、全方位レンズ１９０を単に装着しただけでは、その撮像される画像が歪むので、これを補正した上で、上述のような位置算出処理を行う必要がある。
【０１６７】
より具体的には、図１４の構成によれば、内側カメラ１３３では図１５（Ａ）に示すような全方位画像が取得される。このような円形状の全方位画像を展開して、図１５（Ｂ）に示すようなパノラマ画像を生成する。さらに、所定の補間ロジックを含む画像処理を行うことで、図１５（Ｃ）に示すような方形状の撮像画像が生成される。この図１５（Ｃ）に示す撮像画像に対して、上述のようなマーカー位置の算出処理を行うことで、ユーザの操作を検知することができる。
【０１６８】
なお、図１４には、内側カメラ１３３に全方位レンズ１９０を装着して、全方位カメラを構成する例を示したが、内側カメラ１３３に代えて、全方位センサを上側ハウジング２に装着するようにしてもよい。
【０１６９】
（ｈ３：広角レンズ）
図１４に示すような全方位カメラ（全方位レンズ）を用いることで、内側カメラ１３３の全周囲を撮像することが可能となるが、図１５に示すように専用の画像処理が必要となる。そのため、内側カメラ１３３に広角レンズを装着することで、より簡素な構成で、より広い視野でユーザ操作を検出することができる。
【０１７０】
図１６は、本実施の形態に従うゲーム装置１において広角レンズを用いた構成例を示す図である。図１６に示すゲーム装置１では、上側ハウジング２に装着された内側カメラ１３３に対して、広角レンズ１９２が着脱可能に構成される。このような広角レンズ１９２が内側カメラ１３３の前段に装着されことで、その視野範囲（画角）が拡大し（広角化し）、より広い範囲でユーザの操作を検知することできる。
【０１７１】
広角レンズ１９２としては、上側ハウジング２に装着し易い、アタッチメントレンズが好ましい。このような広角レンズ１９２は、内側カメラ１３３の視野範囲（画角）を拡大できる光学系であれば任意のものを採用することができる。たとえば、いわゆる、広角レンズ、超広角レンズ、魚眼（フィッシュアイ）レンズなどを用いることができる。
【０１７２】
（ｈ４：反射光学系）
さらに、反射光学系を用いて、内側カメラ１３３の撮像範囲を可変にしてもよい。これにより、上側ハウジング２における内側カメラ１３３の装着位置にかかわらず、ユーザ操作を検出するために適切な範囲を撮像することができる。
【０１７３】
図１７は、本実施の形態に従うゲーム装置１において反射光学系を用いた構成例を示す図である。図１７に示すゲーム装置１では、上側ハウジング２に装着された内側カメラ１３３に対して、反射光学系１９４が装着される。この反射光学系１９４は、上述の広角レンズ１９２（図１６）と同様に、内側カメラ１３３に対して着脱可能に構成されることが好ましい。
【０１７４】
より具体的には、反射光学系１９４は、１次反射ミラー１９４ａと、２次反射ミラー１９４ｂとを含む。内側カメラ１３３の光軸は、１次反射ミラー１９４ａで反射されて２次反射ミラー１９４ｂに入射し、さらに、２次反射ミラー１９４ｂで反射されてユーザ操作が行われる範囲に向けられる。なお、２次反射ミラー１９４ｂを凹面鏡とすることで、視野範囲（画角）を拡大することができる。
【０１７５】
このように反射光学系１９４を装着することで、表示部のオブジェクト２００の飛び出し可能範囲１９６の全般をカバーすることができる。すなわち、ユーザが飛び出して見えるオブジェクト２００のいずれの部分を触ったとしても、そのユーザ操作を検知することができる。
【０１７６】
（ｈ５：外側カメラ）
上述の説明では、内側カメラ１３３を用いてユーザの操作を検知する方法について説明したが、外側カメラ１３１Ｌおよび１３１Ｒ（図３（Ａ））を用いることもできる。すなわち、ゲーム装置１は、一方面に表示部である上側ＬＣＤ１１０が設けられる上側ハウジング２を有しており、マーカーの位置算出に用いられる撮像部である外側カメラ１３１Ｌおよび１３１Ｒは、当該上側ハウジング２における表示部とは反対の面に設けられる。
【０１７７】
図１８は、本実施の形態に従うゲーム装置１において外側カメラ１３１Ｌ，１３１Ｒを用いる場合を示す図である。典型的には、図１８に示すように、ゲーム装置１を台に置いた状態（あるいは、ユーザが把持した状態）で、ユーザは上側ハウジング２より奥側の位置でスタイラス３００を操作する。このユーザによって操作されるスタイラス３００およびそれに装着されているマーカー３０２を外側カメラ１３１Ｌ，１３１Ｒによって撮像することで、外側カメラ１３１Ｌ，１３１Ｒに対するマーカー３０２の位置を検出することができる。
【０１７８】
特に、本実施の形態に従うゲーム装置１に装着されている外側カメラ１３１Ｌ，１３１Ｒは、ステレオカメラとして機能するので、上述したような計算ロジックを用いることなく、ステレオ撮像によりマーカー３０２の位置を直接的に算出することもできる。
【０１７９】
図１８に示す使用形態においては、マーカ３０２がユーザの目から直接見えない状態になるので、オブジェクトを間接的に操作しているような印象を受ける場合もあり得る。このような場合であっても、上側ＬＣＤ１１０における表示を工夫することで、ユーザは、オブジェクトを操作することを楽しむことができる。
【０１８０】
図１９は、図１８に示す構成において上側ＬＣＤ１１０に表示される画面例を示す図である。図１９に示すように、上側ＬＣＤ１１０の表示面に対して、より奥行きのある立体感をユーザに与えることができる。さらに、ゲーム処理によって生成されるオブジェクト２００と、外側カメラ１３１Ｌ，１３１Ｒによって撮像される画像とを合成して表示することで、拡張現実（Augmented Reality）のユーザインターフェイスを提供することができる。この場合には、図２０に示すように、ユーザの指先にマーカー３０２を付した上で、ユーザが自身の指で操作するような形態で使用することもできる。
【０１８１】
（ｈ６：他ゲーム装置のカメラ）
上述の説明では、自ゲーム装置に搭載された撮像部を用いて、マーカー３０２の位置を算出する方法について例示したが、複数のゲーム装置１を用いて、マーカー３０２の位置を算出してもよい。
【０１８２】
具体的には、２人のユーザがそれぞれゲーム装置１を把持した状態で、互いに対向しているとする。一方のゲーム装置１は、その搭載された撮像部（典型的には、外側カメラ１３１Ｌおよび１３１Ｒ）を用いて、他方のゲーム装置１を操作するユーザを撮像し、当該撮像によって得られる画像を他方のゲーム装置１へ送信する。他方のゲーム装置１についても同様に、一方のゲーム装置１を操作するユーザを撮像し、当該撮像によって得られる画像を一方のゲーム装置１へ送信する。また、対向して外側カメラ１３１Ｌおよび１３１Ｒを用いるだけでなく、２台の内側カメラ１３３を用いてもよい。互いの撮像可能な範囲を補えるような配置であれば、どのような配置で上記の処理を行ってもよい。
【０１８３】
これにより、それぞれのゲーム装置１が自装置を操作しているユーザの操作を検知することができる。
【０１８４】
このように、指示部材である位置検出用のマーカー３０２が存在する領域を撮像して、ユーザの操作を検出するための撮像部は、操作対象のゲーム装置１に必ずしも搭載されている必要はない。すなわち、本実施の形態に従うゲーム処理は、ゲーム装置１と、ゲーム装置１とは別体の撮像部とを組み合わせたゲームシステムとして実装することもできる。
【０１８５】
＜Ｉ．機能ブロック＞
図２１は、本実施の形態に従うゲーム装置１における機能ブロック図である。図２１に示す各機能ブロックは、演算処理部１００がゲームカード１７１などに格納されているアプリケーションプログラムやゲームプログラムを読み出して実行することで実現される。
【０１８６】
図２１を参照して、演算処理部１００は、その機能として、指示位置算出モジュール１０１０と、ゲーム処理モジュール１０１２と、オブジェクト設定モジュール１０１４と、表示制御モジュール１０１６とを含む。
【０１８７】
指示位置算出モジュール１０１０は、撮像部の撮像によって取得される撮像データを受け付けると、上述したような計算ロジックに従って、マーカー３０２の位置を算出する。すなわち、指示位置算出モジュール１０１０は、撮像部によって撮像される指示部材であるマーカー３０２の画像に基づいて、当該指示部材の撮像部に対する相対位置を算出する。さらに、指示位置算出モジュール１０１０は、表示部についての座標系における位置を算出することもできる。
【０１８８】
オブジェクト設定モジュール１０１４は、オブジェクトの表示部に対する表示位置を設定するとともに、仮想空間内の対応する位置に当該オブジェクトを配置する。すなわち、オブジェクト設定モジュール１０１４は、ゲーム進行などに応じて、上側ＬＣＤ１１０におけるオブジェクトの２次元位置に加えて、上側ＬＣＤ１１０の奥行き方向における位置（飛び出し量／引き込み量）を設定する。さらに、オブジェクト設定モジュール１０１４は、設定した３次元の位置情報に基づいて、仮想空間上にオブジェクトを配置する。
【０１８９】
ゲーム処理モジュール１０１２は、オブジェクト設定モジュール１０１４によって設定されるオブジェクトの表示位置と、指示位置算出モジュール１０１０によって算出されたマーカー３０２についての相対位置との関係に基づいて、ゲーム処理を行う。ゲーム処理モジュール１０１２によって提供されるゲーム処理（アプリケーション）の内容については、後述する。また、ゲーム処理モジュール１０１２は、タッチパネル１２２に対する入力に基づいて、ゲーム処理を行う。
【０１９０】
表示制御モジュール１０１６は、オブジェクト設定モジュール１０１４によって設定される、表示部の奥行き方向におけるオブジェクトの表示位置に基づいて視差を設定し、表示部にオブジェクトを立体視表示させる。すなわち、表示制御モジュール１０１６は、ゲーム処理モジュール１０１２から表示すべきオブジェクトの画像を取得するとともに、表示面において表示させる位置および与える視差量の情報を取得して、上側ＬＣＤ１１０に表示させる一対の画像（表示画像）を生成する。さらに、表示制御モジュール１０１６は、ゲーム処理モジュール１０１２からの指令に応じて、ユーザ操作によっていずれかのオブジェクトの表示位置を変更したり、オブジェクトの表示内容を変更したりする。
【０１９１】
＜Ｊ．処理手順＞
図２２は、本発明の実施の形態に従うゲーム装置１において実行される処理手順に係るフローチャートである。図２８に示す各フローチャートの各ステップは、典型的には、演算処理部１００がゲームカード１７１などに格納されているアプリケーションプログラムやゲームプログラムを読み出して実行することで提供される。なお、演算処理部１００で実行されるプログラムは、単一でなくともよく、基本的なＯＳ（Operating System）を提供するプログラム（あるいは、ファームウェア）とともに、一または複数のアプリケーションが実行されてもよい。さらに、以下に示す処理の全部または一部をハードウェアによって実現してもよい。
【０１９２】
まず、演算処理部１００は、上側ＬＣＤ１１０および／または下側ＬＣＤ１２０にメニュー画面を表示する（ステップＳ１００）。続いて、演算処理部１００は、ユーザなどからの入力操作を受け付ける入力手段（図２に示すタッチパネル１２２、十字ボタン１６１、ボタン群１６２）を介して、何らかの選択操作が行われたか否かを判断する（ステップＳ１０２）。何らの選択操作も行われなければ（ステップＳ１０２においてＮＯ）、ステップＳ１００以下の処理が繰返される。
【０１９３】
一方、何らかの選択操作が行われると（ステップＳ１０２においてＮＯ）、演算処理部１００は、本実施の形態に従う立体視表示のアプリケーションが選択されたか否かを判断する（ステップＳ１０４）。立体視表示のアプリケーション以外のアプリケーションが選択されると（ステップＳ１０４においてＮＯ）、演算処理部１００は、当該選択されたアプリケーションに従う処理を実行する（ステップＳ１０６）。
【０１９４】
一方、立体視表示のアプリケーションが選択されると（ステップＳ１０４においてＹＥＳ）、演算処理部１００は、選択されたアプリケーションの初期設定値を読出す（ステップＳ１０８）。そして、演算処理部１００は、オブジェクトの表示部に対する初期の表示位置を設定する（ステップＳ１０８）とともに、仮想空間内の対応する位置に当該オブジェクトを配置する（ステップＳ１１０）。
【０１９５】
さらに、演算処理部１００は、上側ＬＣＤ１１０の奥行き方向におけるオブジェクトの表示位置に基づいて視差を設定する（ステップＳ１１２）。さらに、演算処理部１００は、設定した視差に応じた一対の画像を生成し、上側ＬＣＤ１１０にオブジェクトを立体視表示させる（ステップＳ１１４）。このとき、演算処理部１００は、立体視表示されるオブジェクトの表示位置（飛び出し量／引き込み量）の算出しているものとする。
【０１９６】
続いて、演算処理部１００は、撮像部（典型的には、内側カメラ１３３）によって撮像されるマーカー３０２の画像に基づいて、マーカー３０２の撮像部に対する相対位置を算出する（ステップＳ１１６）。すなわち、演算処理部１００は、上述の（４）〜（６）式に従って、マーカー３０２の位置を算出する。
【０１９７】
続いて、演算処理部１００は、オブジェクトの表示位置と算出されたマーカー３０２の位置とに基づいて衝突判定を実行する（ステップＳ１１８）。すなわち、演算処理部１００は、共通のＸ−Ｙ−Ｚ座標系において、算出したオブジェクトの表示位置とマーカー３０２の位置とについて、両者の間の距離および／または算出される表示位置の軌跡などを評価して、ユーザがオブジェクトを触るような操作を行ったか否かを判断する。そして、演算処理部１００は、オブジェクトとマーカー３０２とが衝突状態であるか否かを判断する（ステップＳ１２０）。衝突状態でなければ（ステップＳ１２０においてＮＯ）、処理はステップＳ１３０へ進む。
【０１９８】
一方、衝突状態であれば（ステップＳ１２０においてＹＥＳ）、演算処理部１００は、オブジェクトとマーカー３０２とが衝突している位置を特定する（ステップＳ１２２）。続いて、演算処理部１００は、ステップＳ１２２において特定された位置に応じて、対象のオブジェクトに対する変更内容を決定する（ステップＳ１２４）。より具体的には、演算処理部１００は、対象のオブジェクトの移動量や変形量などを決定する。そして、演算処理部１００は、決定した移動量に応じて、オブジェクトの表示部に対する表示位置を更新する（ステップＳ１２６）とともに、仮想空間内の対応する位置に、決定した変形量を反映した形状のオブジェクトを配置する（ステップＳ１２８）。そして、ステップＳ１１２以下の処理が実行される。
【０１９９】
このように、演算処理部は、検出されたユーザ操作に応じて、ゲームを進行する。
ステップＳ１３０において、演算処理部１００は、ユーザなどからの入力操作を受け付ける入力手段（図２に示すタッチパネル１２２、十字ボタン１６１、ボタン群１６２）を介して、アプリケーションの終了が指示されたか否かを判断する（ステップＳ１３０）。アプリケーションの終了が指示されていなければ（ステップＳ１３０においてＮＯ）、ステップＳ１１６以下の処理が繰返される。
【０２００】
一方、アプリケーションの終了が指示されると（ステップＳ１３０においてＹＥＳ）、演算処理部１００は、アプリケーション（ゲーム処理）を終了する。
【０２０１】
＜Ｋ．フォースフィードバック機能＞
本実施の形態に従うゲーム装置１によって提供されるアプリケーションについての説明に先立って、フォースフィードバック機能付きのスタイラス３５０について説明する。
【０２０２】
図２３は、本実施の形態に従うスタイラス３５０の外観図である。図２４は、本実施の形態に従うスタイラス３５０における機能ブロック図である。
【０２０３】
本明細書においてフォースフィードバック機能とは、ユーザが何らかの操作を行った場合に、その操作に対して、五感で感じることのできるフィードバックをユーザに与えるものである。このようにユーザに与えられるフィードバックとしては、振動、音声、光、電流発生、温度変化などが挙げられる。なお、図２３および図２４に示すスタイラス３５０には、複数の種類のフィードバックが可能に構成した例を示すが、これらのうち、特定の種類のフィードバックのみを可能としてもよい。たとえば、ゲーム進行に応じて、ユーザに振動だけを与えるような構成を採用することもできる。
【０２０４】
図２３を参照して、スタイラス３５０は、ペン形状となっており、主軸部３５２を中心として、第１フォース発生部３５４と、第２フォース発生部３５６と、点灯部３５８と、スイッチ３６０と、マーカー３６２とからなる。
【０２０５】
主軸部３５２には、後述するように、各種の回路などが実装される。
第１フォース発生部３５４は、ユーザがスタイラス３５０を把持する際に、ユーザが人差し指および親指を押し付ける部分である。そこで、第１フォース発生部３５４では、（１）微弱電流による電気的ショック、および／または、（２）内部加熱による温度上昇などをユーザに与えることができる。たとえば、何らかのアプリケーションにおいて、ユーザが失敗すると、第１フォース発生部３５４に微弱電流を発生させてユーザに電気ショックを与え、あるいは、第１フォース発生部３５４を発熱させてユーザに温度変化を感じさせるような使用形態が想定される。
【０２０６】
第２フォース発生部３５６は、ユーザがスタイラス３５０を把持する際に、ユーザの親指の付け根に接触する部分である。そこで、第２フォース発生部３５６では、（１）振動、および／または、（２）効果音などの音声をユーザに与えることができる。たとえば、何らかのアプリケーションにおいて、ユーザが失敗すると、第２フォース発生部３５６からユーザに振動を与え、あるいは、第２フォース発生部３５６からユーザに向けて音声を出力するような使用形態が想定される。
【０２０７】
点灯部３５８は、ユーザがスタイラス３５０を把持した場合であっても、ユーザから見える部分である。そこで、点灯部３５８は、ゲーム装置１などからの指示に従って、点灯や点滅して、ゲーム進行に応じた光をフィードバックとしてユーザに与える。
【０２０８】
スイッチ３６０は、スタイラス３５０の上部に設けられており、ユーザの押下に応じて、電源のＯＮ／ＯＦＦが行われる。
【０２０９】
マーカー３６２は、図１に示すスタイラス３００のマーカー３０２と同様に、その表面に現実世界に存在しないような色（典型的には、蛍光色）が塗布されている。但し、スタイラス３５０には電源が搭載されているので、マーカー３０２の位置検出精度を高めるために、赤外線ＬＥＤからの赤外域の光を発光させるようにしてもよい。
【０２１０】
次に、図２４を参照して、スタイラス３５０の具体的な内部の構成について説明する。図２４を参照して、スタイラス３５０は、電池３７０と、スイッチ３７２と、無線モジュール３７４と、コントローラ３７６と、マーカー点灯用光源３７８と、発熱部３８０と、電流発生部３８２と、バイブレーションモータ３８４と、スピーカ３８６と、発光部３８８とを含む。
【０２１１】
電池３７０は、典型的には、ボタン型電池などの比較的小型のものが採用される。電池３７０は、再充電可能な２次電池とすることが好ましい。電池３７０から供給される電力は、スイッチ３７２を介して図示しないケーブルを通じて各部位へ供給される。
【０２１２】
スイッチ３７２は、図２３に示すように、スタイラス３５０の上部に設けられており、ユーザ操作（押圧）に応じて、電池３７０から各部への電力供給をＯＮ／ＯＦＦする。
【０２１３】
無線モジュール３７４は、ゲーム装置１の無線モジュール１３４（図５）と通信可能に構成されており、主として、ゲーム装置１から送信された無線信号をコントローラ３７６へ伝える。より具体的には、何らかのユーザ操作がなされると、ゲーム装置１でその操作内容を検知するとともに、その検知されたユーザ操作の内容に従ってゲーム処理を実行する。そして、ゲーム装置１は、ゲーム処理の実行結果の一部として、何らかのフォースフィードバックをユーザに与えるべきであると判断すると、無線信号を介して、対応する指示をスタイラス３５０へ伝送する。すると、コントローラ３７６がその指示に応答して、接続されているアクチュエータに対して対応する命令を与える。なお、無線モジュール３７４は、コントローラ３７６からの情報を無線信号に変調してゲーム装置１へ送信するようにしてもよい。この無線モジュール３７４としては、たとえばBluetooth(登録商標)等の専用プロトコルに従う無線通信、赤外線通信、および、無線ＬＡＮ（８０２．１１規格）などをサポートした構成を採用することができる。
【０２１４】
マーカー点灯用光源３７８は、スタイラス３５０のマーカー３６２の内部に配置され、コントローラ３７６からの指令に従って点灯する。このマーカー点灯用光源３７８としては、典型的には、赤外線ＬＥＤなどが用いられる。
【０２１５】
発熱部３８０は、第１フォース発生部３５４の表面と熱的に接続されており、コントローラ３７６からの指令に従って発熱する。発熱部３８０としては、典型的には、抵抗体などが用いられる。
【０２１６】
電流発生部３８２は、第１フォース発生部３５４の表面と電気的に接続されており、コントローラ３７６からの指令に従って、微小電流を発生する。
【０２１７】
バイブレーションモータ３８４は、スタイラス３５０の第２フォース発生部３５６に内蔵され、コントローラ３７６からの指令に従って回転することで、振動を発生する。このバイブレーションモータ３８４は、典型的には、偏心モータで構成される。
【０２１８】
スピーカ３８６は、スタイラス３５０の第２フォース発生部３５６などに内蔵され、コントローラ３７６からの指令に従って、効果音などを発生する。
【０２１９】
発光部３８８は、スタイラス３５０の点灯部３５８に内蔵され、コントローラ３７６からの指令に従って、点灯または点滅する。
【０２２０】
このように、本実施の形態に従うゲーム装置１では、このようなフォースフィードバック機能付のスタイラス３５０を使用することで、視覚だけからではなく、触覚や聴覚などからも、仮想空間内のオブジェクトに直接触っているような感覚を得ることができる。
【０２２１】
＜Ｌ．アプリケーション＞
次に、本実施の形態に従うゲーム装置１によって提供されるアプリケーションの例について説明する。以下に説明するアプリケーションは、基本的には、上述の図２２に示すフローチャートに沿って実行される。
【０２２２】
（ｌ１：スキンシップゲーム）
図２５および図２６は、本実施の形態に従うゲーム装置１によって提供されるスキンシップゲームの一例を示す図である。図２５に示すように、本実施の形態に従うゲーム装置１では、ペットを表すオブジェクト２１０を表示面から飛び出すように表示する。ユーザは、立体視表示されるオブジェクト２１０を視認する位置においてスタイラス３５０などで撫でるような操作を行うと、ペットを表すオブジェクト２１０が撫でられることに応じた表情をする。
【０２２３】
上述の図２２に示すフローチャートに沿って説明すれば、衝突判定処理によって、キャラクタのオブジェクトの表示位置と算出されたマーカー位置とが衝突していると判定されると、そのマーカー位置に対応するオブジェクト２１０の部分（例えば、頬や頭など）に応じた表情をするように、オブジェクト２１０の表示位置や表示内容を適宜更新する。
【０２２４】
なお、上述したように、フォースフィードバック機能を搭載したスタイラス３５０を用いている場合には、上述の衝突判定処理によってオブジェクト２１０に触れていると判定されると、それに応答して、スタイラス３５０で振動が生じるようにしてもよい。この場合には、ゲーム装置１からスタイラス３５０に対して、振動の発生を指示する無線信号が与えられる。すなわち、ゲーム装置１（図２１のゲーム処理モジュール１０１２）は、算出されたスタイラスの位置に基づいて、ゲーム処理を行うとともに、当該ゲーム処理の進行に対応してスタイラス３５０（バイブレーションモータ３８４）から振動を発生させる。
【０２２５】
さらに、図２６に示すように、このスキンシップゲームでは、スタイラス３５０に代えて、ユーザが指で操作するような形態がより直接触っているという感覚を得やすい。この場合には、ユーザが操作を行う指先に位置検出用のマーカー３０２を装着することで、スタイラス３５０の場合と同様の処理で対処できる。
【０２２６】
但し、このようにユーザ自身の指で操作をする場合には、肌色検知技術などを用いて、その指先の位置を算出することもできる。すなわち、撮像部（典型的には、内側カメラ１３３）の撮像によって取得された画像内における肌色領域を抽出するとともに、その形状などから指先の位置を特定する。そして、その特定された指先の座標を指示部材の位置として算出する。
【０２２７】
さらに、このような肌色検知技術を用いた場合には、複数の指に対して、それぞれ位置検出が可能となるので、ユーザが複数の指（右手および左手）でオブジェクト２１０に触れるような操作も可能となる。
【０２２８】
（ｌ２：シャボン玉運びゲーム）
図２７は、本実施の形態に従うゲーム装置１によって提供されるシャボン玉運びゲームの一例を示す図である。図２７に示すように、本実施の形態に従うゲーム装置１では、シャボン玉を表すオブジェクト２２０を表示面から飛び出すように表示する。ユーザは、立体視表示されるシャボン玉のオブジェクト２２０をスタイラス３５０などで触って、指定された目的値まで運ぶ。図２７に示すシャボン玉や煙といった、現実世界においても触った感触がない物に対する操作はスタイラス３５０による操作に適している。
【０２２９】
さらに、ユーザが無理に触ると割れるという判断処理を追加することで、ゲームの面白さを高めることができる。より具体的には、算出されるマーカー３６２の位置の時間的な変化を取得し、この時間的変化が所定のしきい値を超えた場合には、無理に触ったと判断することができる。
【０２３０】
（ｌ３：スケッチゲーム）
図２８は、本実施の形態に従うゲーム装置１によって提供されるスケッチゲームの一例を示す図である。図２８に示すように、本実施の形態に従うゲーム装置１では、ユーザのスタイラス３５０の操作に応じて、その軌跡を示すオブジェクト２３０が表示面から飛び出すように表示される。そして、ユーザ操作によって、このオブジェクト２３０が閉じられた途端に、空間上に描いたオブジェクト２３２が動き出すといったイフェクトが提供される。図２８には、ユーザがイルカの絵を空間上に描くと、そのイルカが動き出すような演出がなされる例を示す。
【０２３１】
（ｌ４：鉄球運びゲーム）
図２９および図３０は、本実施の形態に従うゲーム装置１によって提供される鉄球運びゲームの一例を示す図である。図２９に示すように、本実施の形態に従うゲーム装置１では、表示面の奥側からレールのオブジェクト２４０に沿って飛び出てくるように立体視表示された鉄球のオブジェクト２４２を、２つのスタイラス３５０−１および３５０−２を使ってつまんで運ぶようなゲームが提供される。すなわち、ユーザは、２つのスタイラスを「はし」のように使用してゲームを楽しむことができる。
【０２３２】
このようなゲームにおいては、立体視ボリューム１４５（図２）の操作に連動して、飛び出てくるように立体視表示される鉄球のオブジェクト２４２の表示位置を、平面表示においてより奥側に変更してもよい。
【０２３３】
すなわち、図３０に示すように、ユーザが立体視ボリューム１４５を平面表示側に操作することで、上側ＬＣＤ１１０に表示される画像に付与される視差量が実質的にゼロとなる。そのため、ユーザは、オブジェクトを立体視表示することができなくなる。これにともなって、レールのオブジェクト２４０に沿って表示されていた鉄球のオブジェクト２４２の表示位置（レールのオブジェクト２４０に対する相対的な位置）を、より奥側に視認できる位置に変更する。
【０２３４】
このように、立体視表示に設定されていた立体視ボリューム１４５を平面表示の変更することで、ユーザは直前まで触れることのできた立体視表示されていたオブジェクトを触ることができなくなる。この感覚を視覚的にも感じ取れるように、立体視ボリューム１４５を平面表示に変更した場合には、鉄球のオブジェクト２４２自体の表示位置も、レールのオブジェクト２４０に沿ってより奥側に移動するように表示する。これにより、ユーザは、視覚的にも鉄球のオブジェクト２４２が画面の奥側にあり、触れることができないことを直感的に感じ取ることができる。
【０２３５】
（ｌ５：その他）
上述したアプリケーション以外にも、以下のようなアプリケーションが想定される。
【０２３６】
（１）工作ゲーム
立体視表示される木のオブジェクトに対して、ユーザが彫刻の操作を行って像を彫り出すゲーム。あるいは、立体視表示される金属に対して、ユーザが打ち出す操作や、スプレーで塗装する操作を行い、所望する工芸品を作成するゲーム。
【０２３７】
（２）料理ゲーム
目的の料理を作る過程で、ユーザが、素材を切る、混ぜる、包丁を使う、鍋をさばくといった操作をリアルに行えるゲーム。
【０２３８】
（３）風船ゲーム
立体視表示される風船のオブジェクトに対してユーザがはじくような操作を行うことで、風船を高低差のある障害物を避けてゴールに導くゲーム。
【０２３９】
（４）美容院ゲーム
立体視表示される頭のオブジェクトに対して、立体的な視点で、髪型をカットして揃え、洗髪し、ブローで髪型を整えることができるゲーム。
【０２４０】
＜Ｍ．変形例＞
例えば、本発明は、上述したようなゲーム装置に内蔵された固定の（non-transitory）コンピュータ読取可能な記録媒体、あるいは、情報処理装置と着脱可能な固定のコンピュータ読取可能な記録媒体に格納されるゲームプログラム（命令セット）として具現化することもできる。
【０２４１】
前者の場合には、立体視表示が可能な表示部を有するゲーム装置に当該ゲームプログラムが読み込まれて、その処理がコンピュータで実行される。すなわち、当該ゲームプログラムは、立体視表示が可能な表示部を有するゲーム装置で実行されることで、視差を利用してゲーム画像を立体視表示させる。
【０２４２】
後者の場合には、立体視表示が可能な表示部を有するゲーム装置本体と、当該ゲーム装置本体にゲームプログラムを提供する記録媒体とを含むシステムとして構成される。
【０２４３】
なお、いずれの場合であっても、コンピュータ読取可能な記録媒体に格納されるゲームプログラムは、上述したゲーム装置によって提供される処理に必要なゲームプログラムのすべてを含む必要はない。すなわち、ゲーム装置などの処理装置本体が本来的に有している命令セットやライブラリを利用して、上述したような本実施の形態に従うゲーム装置が提供する機能を実現してもよい。
【０２４４】
さらに、上述の実施の形態においては、一連の処理が単一のゲーム装置において実行される場合を説明したが、上記一連の処理が複数の処理主体において分散的に実現されてもよい。例えば、ゲーム装置と、当該ゲーム装置とネットワークを介して通信可能なサーバ装置とを含むシステムにおいて、上記一連の処理のうち、一部の処理がサーバ装置によって実行されてもよい。
【０２４５】
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は、上記した説明ではなく、特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【符号の説明】
【０２４６】
１  ゲーム装置、２  上側ハウジング、３  下側ハウジング、４  ヒンジ、３１，３２  フック、１００  演算処理部、１０２  ＣＰＵ、１０６ａ，１０６ｂ  ＶＲＡＭ、１１０  上側ＬＣＤ、１１１，１２１  ＬＣＤコントローラ、１１２，１２３  ＬＣＤパネル、１１２Ｌ  左目用画素群、１１２Ｒ  右目用画素群、１１３  バリア液晶、１１４  スリット、１１８，１１９  ガラス基板、１２０  下側ＬＣＤ、１２２  タッチパネル、１３１Ｌ，１３１Ｒ  外側カメラ、１３３  内側カメラ、１３４，３７４  無線モジュール、１３６  不揮発性メモリ、１３８  メインメモリ、１４０  マイコン、１４１  リアルタイムカウンタ、１４２，１４２，１６２，１６２  ボタン群、１４２ａ  セレクトボタン、１４２ｂ  ＨＯＭＥボタン、１４２ｃ  スタートボタン、１４２ｄ  電源ボタン、１４３  無線スイッチ、１４４  音量ボリューム、１４５  立体視ボリューム、１４６  電源管理ＩＣ、１４７  インジケータ群、１４７ａ  立体表示インジケータ、１４７ｂ  お知らせインジケータ、１４７ｃ  無線インジケータ、１４７ｄ  電源インジケータ、１４７ｅ  充電インジケータ、１４８  加速度センサ、１５０  インターフェイス回路、１５１，３８６  スピーカ、１５１Ｌ，１５１Ｒ  音抜き孔、１５２  ヘッドホン用アンプ、１５３  マイク、１５３ａ  マイク用孔、１５４  コントロールパッド、１５８  接続端子、１６１  十字ボタン、１６２Ａ，１６２Ｂ，１６２Ｘ，１６２Ｙ  操作ボタン、１６２Ｌ  Ｌボタン、１６２Ｒ  Ｒボタン、１７０  ゲームカードスロット、１７１  ゲームカード、１７２  メモリカードスロット、１７３  メモリカード、１７４  充電端子、１７６  収納部、１７８  赤外線モジュール、１７９  赤外線ポート、１９０  全方位レンズ、１９０ａ  双曲面ミラー、１９２  広角レンズ、１９４  反射光学系、１９４ａ  １次反射ミラー、１９４ｂ  ２次反射ミラー、１９６  飛び出し可能範囲、２２０Ｌ，２２０Ｒ  仮想カメラ、３００，３５０  スタイラス、３０２，３６２  マーカー、３５２  主軸部、３５４  第１フォース発生部、３５６  第２フォース発生部、３５８  点灯部、３６０  スイッチ、３７０  電池、３７２  スイッチ、３７６  コントローラ、３７８  マーカー点灯用光源、３８０  発熱部、３８２  電流発生部、３８４  バイブレーションモータ、３８８  発光部、１０１０  指示位置算出モジュール、１０１２  ゲーム処理モジュール、１０１４  オブジェクト設定モジュール、１０１６  表示制御モジュール。
【図１】
2012115414.tif 000003
【図２】
2012115414.tif 000004
【図３】
2012115414.tif 000005
【図４】
2012115414.tif 000006
【図５】
2012115414.tif 000007
【図６】
2012115414.tif 000008
【図７】
2012115414.tif 000009
【図８】
2012115414.tif 000010
【図９】
2012115414.tif 000011
【図１０】
2012115414.tif 000012
【図１１】
2012115414.tif 000013
【図１２】
2012115414.tif 000014
【図１３】
2012115414.tif 000015
【図１４】
2012115414.tif 000016
【図１５】
2012115414.tif 000017
【図１６】
2012115414.tif 000018
【図１７】
2012115414.tif 000019
【図１８】
2012115414.tif 000020
【図１９】
2012115414.tif 000021
【図２０】
2012115414.tif 000022
【図２１】
2012115414.tif 000023
【図２２】
2012115414.tif 000024
【図２３】
2012115414.tif 000025
【図２４】
2012115414.tif 000026
【図２５】
2012115414.tif 000027
【図２６】
2012115414.tif 000028
【図２８】
2012115414.tif 000029
【図２７】
2012115414.tif 000030
【図２９】
2012115414.tif 000031
【図３０】
2012115414.tif 000032