(57)【要約】【課題】所定位置よりも仮想カメラに近い位置にあるオブジェクトの立体感を調整すると、所定位置を奥行き方向に通過するオブジェクトは、所定位置の前後（手前側と奥側）において不自然な立体感で視認されることがある。【解決手段】表示制御プログラムは、視差補正率設定手段を備える。視差補正率設定手段は、基準補正率に対して、仮想３次元空間において、第１の基準面から奥側の視差補正率を当該基準補正率よりも大きくし、かつ、当該第１の基準面において視差補正率を連続的に変化させる第１の設定と、第２の基準面から手前側の視差補正率を当該基準補正率よりも小さくし、かつ、当該第２の基準面において視差補正率を連続的に変化させる第２の設定のうち、少なくとも一方の設定を行った視差補正率を設定する。【選択図】図１９
2012175358.tif 000002
【特許請求の範囲】
【請求項１】
立体視表示可能な表示装置に、仮想ステレオカメラで撮像した仮想３次元空間の表示を行う表示制御装置のコンピュータで実行される表示制御プログラムであって、
前記コンピュータを、
前記仮想３次元空間において立体表示する際の、前記仮想ステレオカメラからの距離に応じて変化する視差に対する補正の割合であって、その割合の基準となる基準補正率を設定する基準補正率設定手段と、
前記視差を補正する際の補正の割合を示す視差補正率を設定する視差補正率設定手段と、
前記視差補正率に基づいて、前記仮想ステレオカメラから前記仮想３次元空間を撮像することにより立体視画像を生成する立体視画像生成手段と、
前記立体視画像を前記表示装置に表示させる表示制御手段として機能させ、
前記視差補正率設定手段は、前記基準補正率に対して、前記仮想３次元空間において、第１の基準面から奥側の視差補正率を当該基準補正率よりも大きくし、かつ、当該第１の基準面において視差補正率を連続的に変化させる第１の設定と、第２の基準面から手前側の視差補正率を当該基準補正率よりも小さくし、かつ、当該第２の基準面において視差補正率を連続的に変化させる第２の設定のうち、少なくとも一方の設定を行った視差補正率を設定する、表示制御プログラム。
【請求項２】
前記視差補正率設定手段は、前記基準補正率に対して、前記第１の基準面から奥側の視差補正率を当該基準補正率よりも大きくし、かつ、当該第１の基準面において視差補正率を滑らかに変化させる前記第１の設定と、前記第２の基準面から手前側の視差補正率を当該基準補正率よりも小さくし、かつ、当該第２の基準面において視差補正率を滑らかに変化させる前記第２の設定のうち、少なくとも一方の設定を行った前記視差補正率を設定する、請求項１に記載の表示制御プログラム。
【請求項３】
前記視差補正率設定手段は、前記基準補正率に対して、前記第１の基準面から奥側への距離が大きくなるほど、当該基準補正率と前記視差補正率との差が大きくなる前記第１の設定と、前記第２の基準面から手前側への距離が大きくなるほど、当該基準補正率と前記視差補正率との差が大きくなる前記第２の設定のうち、少なくとも一方の設定を行った前記視差補正率を設定する、請求項１又は２に記載の表示制御プログラム。
【請求項４】
前記視差補正率設定手段は、前記基準補正率に対して、前記第１の基準面から奥側への距離が大きくなるほど、当該基準補正率と前記視差補正率との差の変化量が大きくなる前記第１の設定と、前記第２の基準面から手前側への距離が大きくなるほど、当該基準補正率と前記視差補正率との差の変化量が大きくなる前記第２の設定のうち、少なくとも一方の設定を行った前記視差補正率を設定する、請求項１ないし３のいずれかに記載の表示制御プログラム。
【請求項５】
前記視差補正率設定手段は、前記基準補正率に対して、前記仮想３次元空間における深度に対する前記視差補正率の変化の割合を、前記第１の基準面を示す深度において、当該基準補正率の変化の割合に一致させる前記第１の設定と、前記第２の基準面を示す深度において、当該基準補正率の変化の割合に一致させる前記第２の設定のうち、少なくとも一方の設定を行った前記視差補正率を設定する、請求項１ないし４のいずれかに記載の表示制御プログラム。
【請求項６】
前記視差補正率設定手段は、前記基準補正率に対して、前記第１の基準面から奥側の視差補正率を、前記仮想３次元空間における深度の増加に対してｎが１以上のｎ次関数に従って当該基準補正率よりも大きくする前記第１の設定と、前記第２の基準面から手前側の視差補正率を、前記深度の減少に対してｍが１次以上のｍ次関数に従って当該基準補正率よりも小さくする前記第２の設定のうち、少なくとも一方の設定を行った前記視差補正率を設定する、請求項１ないし５のいずれかに記載の表示制御プログラム。
【請求項７】
前記仮想ステレオカメラは、仮想左カメラと仮想右カメラとを含み、
前記立体視画像生成手段は、前記仮想左カメラと前記仮想右カメラの間隔を、前記視差補正率に応じて変更し、当該仮想ステレオカメラに前記仮想３次元空間を撮像させることによって立体視画像を生成する、請求項１ないし６のいずれかに記載の表示制御プログラム。
【請求項８】
前記第１の基準面と前記第２の基準面は同一である、請求項１ないし７のいずれかに記載の表示制御プログラム。
【請求項９】
前記第１の基準面と前記第２の基準面のいずれか一方は、視差の生じない基準面である、請求項１ないし７のいずれかに記載の表示制御プログラム。
【請求項１０】
前記第１の基準面と前記第２の基準面は、同一であり、かつ、視差の生じない基準面である、請求項１ないし７のいずれかに記載の表示制御プログラム。
【請求項１１】
前記視差補正率設定手段は、前記基準補正率に対して、前記第１の基準面から奥側の視差補正率を当該基準補正率よりも大きくする前記第１の設定を行った前記視差補正率を設定する、請求項１ないし１０のいずれかに記載の表示制御プログラム。
【請求項１２】
前記視差補正率設定手段は、前記基準補正率に対して、前記第２の基準面から手前側の視差補正率を当該基準補正率よりも小さくする前記第２の設定を行った前記視差補正率を設定する、請求項１ないし１０のいずれかに記載の表示制御プログラム。
【請求項１３】
前記コンピュータを、ユーザからの入力を受け付ける入力受付手段としてさらに機能させ、
前記基準補正率設定手段は、前記入力受付手段で受け付けた入力に基づき、前記基準補正率を設定する、請求項１ないし１２のいずれかに記載の表示制御プログラム。
【請求項１４】
立体視表示可能な表示装置に、仮想ステレオカメラで撮像した仮想３次元空間の表示を行う表示制御装置であって、
前記仮想３次元空間において立体表示する際の、前記仮想ステレオカメラからの距離に応じて変化する視差に対する補正の割合であって、その割合の基準となる基準補正率を設定する基準補正率設定手段と、
前記視差を補正する際の補正の割合を示す視差補正率を設定する視差補正率設定手段と、
前記視差補正率に基づいて、前記仮想ステレオカメラから前記仮想３次元空間を撮像することにより立体視画像を生成する立体視画像生成手段と、
前記立体視画像を前記表示装置に表示させる表示制御手段とを備え、
前記視差補正率設定手段は、前記基準補正率に対して、前記仮想３次元空間において、第１の基準面から奥側の視差補正率を当該基準補正率よりも大きくし、かつ、当該第１の基準面において視差補正率を連続的に変化させる第１の設定と、第２の基準面から手前側の視差補正率を当該基準補正率よりも小さくし、かつ、当該第２の基準面において視差補正率を連続的に変化させる第２の設定のうち、少なくとも一方の設定を行った視差補正率を設定する、表示制御装置。
【請求項１５】
立体視表示可能な表示装置に、仮想ステレオカメラで撮像した仮想３次元空間の表示を行う表示制御システムであって、
前記仮想３次元空間において立体表示する際の、前記仮想ステレオカメラからの距離に応じて変化する視差に対する補正の割合であって、その割合の基準となる基準補正率を設定する基準補正率設定手段と、
前記視差を補正する際の補正の割合を示す視差補正率を設定する視差補正率設定手段と、
前記視差補正率に基づいて、前記仮想ステレオカメラから前記仮想３次元空間を撮像することにより立体視画像を生成する立体視画像生成手段と、
前記立体視画像を前記表示装置に表示させる表示制御手段とを備え、
前記視差補正率設定手段は、前記基準補正率に対して、前記仮想３次元空間において、第１の基準面から奥側の視差補正率を当該基準補正率よりも大きくし、かつ、当該第１の基準面において視差補正率を連続的に変化させる第１の設定と、第２の基準面から手前側の視差補正率を当該基準補正率よりも小さくし、かつ、当該第２の基準面において視差補正率を連続的に変化させる第２の設定のうち、少なくとも一方の設定を行った視差補正率を設定する、表示制御システム。
【請求項１６】
立体視表示可能な表示装置に、仮想ステレオカメラで撮像した仮想３次元空間の表示を行う表示制御方法であって、
前記仮想３次元空間において立体表示する際の、前記仮想ステレオカメラからの距離に応じて変化する視差に対する補正の割合であって、その割合の基準となる基準補正率を設定する基準補正率設定ステップと、
前記視差を補正する際の補正の割合を示す視差補正率を設定する視差補正率設定ステップと、
前記視差補正率に基づいて、前記仮想ステレオカメラから前記仮想３次元空間を撮像することにより立体視画像を生成する立体視画像生成ステップと、
前記立体視画像を前記表示装置に表示させる表示制御ステップとを備え、
前記視差補正率設定ステップでは、前記基準補正率に対して、前記仮想３次元空間において、第１の基準面から奥側の視差補正率を当該基準補正率よりも大きくし、かつ、当該第１の基準面において視差補正率を連続的に変化させる第１の設定と、第２の基準面から手前側の視差補正率を当該基準補正率よりも小さくし、かつ、当該第２の基準面において視差補正率を連続的に変化させる第２の設定のうち、少なくとも一方の設定を行った視差補正率を設定する、表示制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、表示制御プログラム、表示制御装置、表示制御方法及び表示制御システムに関し、より特定的には、立体視表示を行う表示制御プログラム、表示制御装置、表示制御方法及び表示制御システムに関する。
【背景技術】
【０００２】
従来、両画像間で視差を設けた左目用画像及び右目用画像を用いて立体視表示を行う装置がある。例えば、特許文献１に記載の装置は、左右両目に対して、視差を与えた画像をそれぞれ与えることにより人工的に立体感を感じさせるものである。また特許文献１には、この視差を調整することにより、ユーザに与える立体感を調整する技術が開示されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００４−００７３９６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
上記した従来の立体視表示によれば、仮想３次元空間に配置されたオブジェクトは、所定位置よりも仮想カメラに近い場合には、ディスプレイ面から手前に飛び出して視認されるように表示され、所定位置よりも仮想カメラから遠い場合には、ディスプレイ面から奥に引っ込んで視認されるように表示される。この手前への飛び出し具合は、左目用画像と右目用画像の視差の大きさに依るが、仮想カメラに近いオブジェクトの場合、左目用画像と右目用画像の視差が大き過ぎるため、ユーザに両画像を１つの立体視画像として視認させづらくなり、ユーザの目に負担がかかる可能性があるという課題がある。
【０００５】
この課題に対して、上記した従来の立体視表示では、所定位置よりも仮想カメラに近い位置にあるオブジェクトの立体感を調整する（すなわち、当該オブジェクトの左目用画像及び右目用画像の視差を調整する）ことにより、ユーザの目に負担がかかる可能性を軽減させることを提案している。しかし、その調整される立体感は、所定位置の前後（つまり、手前側と奥側）において視差が急激に変化するため、この所定位置を通過するオブジェクトは、所定位置の前後において不自然な立体感で視認されてしまうという課題があった。
【０００６】
それ故に、本発明の主たる目的は、ユーザの目に負担がかかる可能性を軽減しながらも、自然な立体感を与える立体視表示を実現する表示制御プログラム等を提供することである。
【課題を解決するための手段】
【０００７】
本発明は、上述の課題を解決するために、以下の構成を採用した。
【０００８】
本発明に係る表示制御プログラムは、立体視表示可能な表示装置に、仮想ステレオカメラで撮像した仮想３次元空間の表示を行う表示制御装置のコンピュータを、基準補正率設定手段と、視差補正率設定手段と、立体視画像生成手段と、表示制御手段として機能させる。基準補正率設定手段は、仮想３次元空間において立体表示する際の、仮想ステレオカメラからの距離に応じて変化する視差に対する補正の割合であって、その割合の基準となる基準補正率を設定する。視差補正率設定手段は、視差を補正する際の補正の割合を示す視差補正率を設定する。具体的には、視差補正率設定手段は、基準補正率に対して、仮想３次元空間において、第１の基準面から奥側の視差補正率を当該基準補正率よりも大きくし、かつ、当該第１の基準面において視差補正率を連続的に変化させる第１の設定と、第２の基準面から手前側の視差補正率を当該基準補正率よりも小さくし、かつ、当該第２の基準面において視差補正率を連続的に変化させる第２の設定のうち、少なくとも一方の設定を行った視差補正率を設定する。立体視画像生成手段は、視差補正率に基づいて、仮想ステレオカメラから仮想３次元空間を撮像することにより立体視画像を生成する。表示制御手段は、立体視画像を表示装置に表示させる。
【０００９】
本構成によれば、第１の設定が行われることにより、仮想３次元空間において、第１の基準面よりも奥側に位置するオブジェクトの視差補正率が基準補正率よりも大きく設定される。したがって、ユーザに近いオブジェクトの立体感が強くなり過ぎることを回避するために、立体感の基準となる基準補正率を予め小さく設定することによって、基準補正率によって補正される視差を小さくして、手前側の立体感を軽減させたとしても、第１の基準面よりも奥側においては、第１の設定によって当該基準補正率よりも大きな視差補正率が設定されるので、この視差補正率によって視差は大きくなるように補正され、ユーザは、第１の基準面よりも奥側に位置するオブジェクトに対して、十分な立体感を得ることができる。また、本構成によれば、第２の設定が行われることにより、仮想３次元空間において、第２の基準面よりも手前側に位置するオブジェクトの視差補正率が基準補正率よりも小さく設定される。したがって、ユーザから遠いオブジェクトの立体感を従来通り大きなままとするために、基準補正率を従来通りの値に設定したとしても、第２の基準面よりも手前側においては、第２の設定によって当該基準補正率よりも小さな視差補正率が設定されるので、この視差補正率によって視差は小さくなるように補正され、ユーザは、第２の基準面よりも手前側に位置する（すなわち、自身に近い）オブジェクトに対して、過度に強い立体感を覚えることがない。このため、オブジェクトの過度に強い立体感に起因してユーザの目に負担がかかる可能性が軽減される。さらに、本構成によれば、これらの設定された視差補正率は基準面（第１の基準面及び第２の基準面）において連続的に変化している。このことにより、ユーザは、当該基準面を通過するオブジェクトの立体感が当該基準面の奥側と手前側において急激に変わることによる不自然さを覚えることがなく、自然な立体感の変化を感じることができる。さらに、本構成によれば、第１の設定と第２の設定とが同時に行われることにより、ユーザは、自身に近いオブジェクトに対しては、過度に強い立体感を覚えることなく、かつ、自身から遠いオブジェクトに対しては、よりリアルな立体感を覚えることができ、より自然な立体視を楽しむことができる。
【００１０】
視差補正率設定手段による視差補正率の設定は以下のように行われてもよい。すなわち、視差補正率設定手段は、基準補正率に対して、第１の基準面から奥側の視差補正率を当該基準補正率よりも大きくし、かつ、当該第１の基準面において視差補正率を滑らかに変化させる第１の設定と、第２の基準面から手前側の視差補正率を当該基準補正率よりも小さくし、かつ、当該第２の基準面において視差補正率を滑らかに変化させる第２の設定のうち、少なくとも一方の設定を行った視差補正率を設定する。
【００１１】
本構成によれば、基準面（第１の基準面及び第２の基準面）において視差補正率が滑らかに変化する。このため、当該基準面の前後（奥側と手前側）で、視差補正率によって補正されたオブジェクトの視差は滑らかに変化する。このことにより、ユーザは、自身に近いオブジェクトに対して過度に強い立体感を覚えることがなく、かつ、その立体感の変化がより滑らかであるため、ユーザは、補正が行われていることを感じることなく、より自然な立体視を楽しむことができる。
【００１２】
視差補正率設定手段による視差補正率の設定は以下のように行われてもよい。すなわち、視差補正率設定手段は、基準補正率に対して、第１の基準面から奥側への距離が大きくなるほど、当該基準補正率と視差補正率との差が大きくなる第１の設定と、第２の基準面から手前側への距離が大きくなるほど、当該基準補正率と視差補正率との差が大きくなる第２の設定のうち、少なくとも一方の設定を行った視差補正率を設定する。
【００１３】
本構成によれば、基準補正率と視差補正率との差は、基準面（第１の基準面及び第２の基準面）付近では小さく、基準面から離れるほど大きくなる。したがって、当該基準面付近に位置するオブジェクトの視差補正率は、当該基準補正率に近い値となり、オブジェクトが第１の基準面から奥側に大きく離れるほど、当該オブジェクトの視差補正率は、当該基準補正率よりも大きな値となる。また、オブジェクトが第２の基準面から手前側に大きく離れるほど、当該オブジェクトの視差補正率は、当該基準補正率よりも小さな値となる。このことにより、ユーザは、基準面付近に位置するオブジェクトに対しては、視差補正率によって視差が補正される前の立体感に近い立体視が可能であり、オブジェクトが第１の基準面から奥側に離れるほど（すなわち、オブジェクトがユーザから遠ざかるほど）、奥行きの立体感が強く感じられる、よりリアルな立体視が可能である。また、オブジェクトが第２の基準面から手前側に離れるほど（すなわち、オブジェクトがユーザに近づくほど）、オブジェクトが近くにあるように見え過ぎること（過度な立体感）が軽減される。
【００１４】
視差補正率設定手段による視差補正率の設定は以下のように行われてもよい。すなわち、視差補正率設定手段は、基準補正率に対して、第１の基準面から奥側への距離が大きくなるほど、当該基準補正率と視差補正率との差の変化量が大きくなる第１の設定と、第２の基準面から手前側への距離が大きくなるほど、当該基準補正率と視差補正率との差の変化量が大きくなる第２の設定のうち、少なくとも一方の設定を行った視差補正率を設定する。
【００１５】
本構成によれば、基準補正率と視差補正率との差の変化量は、基準面（第１の基準面及び第２の基準面）付近では小さく、基準面から離れるほど大きくなる。したがって、当該基準面付近に位置するオブジェクトが、その付近で前後（奥側及び手前側）に移動したとしても、視差補正率は、基準補正率から大きく変化することがない。このことにより、ユーザは、基準面付近でオブジェクトが前後に移動したとしても、当該オブジェクトに対しては、視差補正率によって視差が補正される前の立体感とそれほど変わりのない自然な立体感を感じることができる。このため、本構成によれば、オブジェクトが近くにあるように見え過ぎること（過度な立体感）が軽減され、かつ、オブジェクトの移動に対しても、より自然な立体視が実現される。
【００１６】
視差補正率設定手段による視差補正率の設定は以下のように行われてもよい。すなわち、視差補正率設定手段は、基準補正率に対して、仮想３次元空間における深度に対する視差補正率の変化の割合を、第１の基準面を示す深度において、当該基準補正率の変化の割合に一致させる第１の設定と、第２の基準面を示す深度において、当該基準補正率の変化の割合に一致させる第２の設定のうち、少なくとも一方の設定を行った視差補正率を設定する。
【００１７】
本構成によれば、視差補正率の深度に対する変化の割合は、基準面（第１の基準面及び第２の基準面）において基準補正率の深度に対する変化の割合と一致する。したがって、オブジェクトが基準面付近で前後（奥側及び手前側）に移動したとしても、視差補正率は、滑らかに変化する。このことにより、ユーザは、基準面付近でオブジェクトが前後に移動したとしても、視差補正率による視差の補正が行われていることに対する不自然さを覚えることなく、より自然な立体視を楽しむことができる。
【００１８】
視差補正率設定手段による視差補正率の設定は以下のように行われてもよい。すなわち、視差補正率設定手段は、基準補正率に対して、第１の基準面から奥側の視差補正率を、仮想３次元空間における深度の増加に対してｎが１以上のｎ次関数に従って当該基準補正率よりも大きくする第１の設定と、第２の基準面から手前側の視差補正率を、深度の減少に対してｍが１次以上のｍ次関数に従って当該基準補正率よりも小さくする第２の設定のうち、少なくとも一方の設定を行った視差補正率を設定する。
【００１９】
本構成によれば、第１の基準面よりも奥側においては、視差補正率の値は、オブジェクトが当該第１の基準面から離れるほど（深度が増加するほど）、直線的に、或いは、曲線的（２次関数以上の高次関数的）に深度の増加に応じて、基準補正率の値よりも大きくなる。また、第２の基準面よりも手前側においては、視差補正率の値は、オブジェクトが当該第２の基準面から離れるほど（深度が減少するほど）、直線的に、或いは、曲線的（２次関数以上の高次関数的）に深度の減少に応じて、基準補正率の値よりも小さくなる。このことにより、ユーザは、基準面（第１の基準面及び第２の基準面）付近に位置するオブジェクトに対しては、視差補正率によって視差が補正される前の立体感に近い自然な立体視が可能であり、オブジェクトが第１の基準面から奥側に離れるほど、奥行きの立体感が強く感じられるよりリアルな立体視が可能となり、オブジェクトが第２の基準面から手前側に離れるほど、オブジェクトが近くにあるように見え過ぎること（過度な立体感）が軽減される。さらに、視差補正率が深度に対して曲線的に変化する場合には、基準面において、より自然な立体視が実現される。
【００２０】
仮想ステレオカメラは、仮想左カメラと仮想右カメラとを含んでもよい。この場合、立体視画像生成手段による立体視画像の生成は以下のように行われてもよい。すなわち、立体視画像生成手段は、仮想左カメラと仮想右カメラの間隔を、視差補正率に応じて変更し、当該仮想ステレオカメラに仮想３次元空間を撮像させることによって立体視画像を生成する。
【００２１】
本構成によれば、視差補正率設定手段によって設定された視差補正率は、仮想ステレオカメラ（仮想左カメラと仮想右カメラ）の間隔に反映される。すなわち、従来の仮想３次元空間の撮像処理（描画処理）において必要とされる仮想ステレオカメラの位置（両仮想カメラ間の距離）決めに対して、視差補正率の設定が反映される。このことにより、複雑な補正の工程を必要とすることなく、従来の撮像処理に用いられるステレオカメラの位置（両カメラ間の距離）決めだけで、オブジェクトの視差を補正するための視差補正率を調節することが可能となる。
【００２２】
第１の基準面と第２の基準面は同一であってもよい。
【００２３】
本構成によれば、第１の基準面と第２の基準面が同一であるので、第１の基準面と第２の基準面との間の領域が存在しない。このことにより、当該基準面から手前側に視差補正率が小さくなるように設定され、当該基準面から奥側に視差補正率が大きくなるように設定されても、当該基準面において互いの視差補正率の値は一致し、かつ連続的に変化する。このことにより、当該基準面を通過するオブジェクトの立体感が当該基準面の奥側と手前側において急激に変わることによる不自然さを覚えることがなく、自然な立体感の変化を感じることができる。
【００２４】
第１の基準面と第２の基準面のいずれか一方は、視差の生じない基準面であってもよい。
【００２５】
本構成によれば、第１の基準面と第２の基準面のいずれか一方の基準面においては視差が０（ゼロ）となる。そして、この視差が０（ゼロ）となる面の前後において、オブジェクトの立体感は反転する（すなわち、オブジェクトの飛び出し具合と引っ込み具合が入れ替わる）。したがって、例えば、第１の基準面が、視差が０（ゼロ）となる面（オブジェクトが非立体視される面）である場合、第１の基準面より奥側において視差補正率によって視差が補正されても（すなわち、引っ込み具合が補正されても）、第１の基準面においてオブジェクトは平面視（非立体視）されるので、ユーザは、この第１の基準面の前後で視差補正率によって視差の補正が行われていることに気がつきにくい。そのため、ユーザは、基準面前後のオブジェクトの移動に対しても、より自然な立体視が可能となる。
【００２６】
第１の基準面と第２の基準面は、同一であり、かつ、視差の生じない基準面であってもよい。
【００２７】
本構成によれば、第１基準面と第２基準面が同一であるので、第１の基準面と第２の基準面との間の領域が存在せず、かつ、当該基準面において視差は０（ゼロ）となる。このことにより、当該基準面から手前側に視差補正率が小さくなるように設定され、当該基準面から奥側に視差補正率が大きくなるように設定されても、当該基準面において互いの視差補正率の値は一致し、かつ連続的に変化する。また、当該基準面において視差補正率の値がどのような値であっても、視差は０（ゼロ）となり、当該基準面においてオブジェクトは平面視されるので、ユーザは、当該基準面の前後で視差補正率によって視差の補正が行われていることに気がつきにくい。これらのことにより、ユーザは、当該基準面前後のオブジェクトの移動に対して、より自然な立体視が可能となる。
【００２８】
視差補正率設定手段による視差補正率の設定は以下のように行われてもよい。すなわち、視差補正率設定手段は、基準補正率に対して、第１の基準面から奥側の視差補正率を当該基準補正率よりも大きくする第１の設定を行った視差補正率を設定する。
【００２９】
本構成によれば、この設定が行われることにより、仮想３次元空間において、第１の基準面よりも奥側に位置するオブジェクトの視差補正率が、基準補正率よりも大きく設定される。したがって、ユーザに近いオブジェクトの立体感が強くなり過ぎることを回避するために、立体感の基準となる基準補正率を予め小さく設定することによって、手前側の立体感を軽減させたとしても、第１の基準面よりも奥側においては、上記設定によって当該基準補正率よりも大きな視差補正率が設定されるので、ユーザは、第１の基準面よりも奥側に位置するオブジェクトに対して、十分な立体感を得ることができる。
【００３０】
視差補正率設定手段による視差補正率の設定は以下のように行われてもよい。すなわち、視差補正率設定手段は、基準補正率に対して、第２の基準面から手前側の視差補正率を当該基準補正率よりも小さくする第２の設定を行った視差補正率を設定する。
【００３１】
本構成によれば、この設定が行われることにより、仮想３次元空間において、第２の基準面よりも手前側に位置するオブジェクトの視差補正率が、基準補正率よりも小さく設定される。したがって、ユーザから遠いオブジェクトの立体感を従来通り大きなままとするために、当該基準補正率を従来通りの値に設定したとしても、第２の基準面よりも手前側においては、上記設定によって当該基準補正率よりも小さな視差補正率が設定されるので、ユーザは、第２の基準面よりも手前側に位置する（すなわち、自身に近い）オブジェクトに対して、過度に強い立体感を覚えることがない。
【００３２】
コンピュータを、ユーザからの入力を受け付ける入力受付手段としてさらに機能させてもよい。この場合、基準補正率設定手段は、入力受付手段で受け付けた入力に基づき、基準補正率を設定してもよい。
【００３３】
本構成によれば、基準補正率は、ユーザから受け付けられた入力に応じて決定される。このことにより、ユーザは、自身の最も立体視し易い基準補正率を設定することができ、より自然な立体視を楽しむことができる。
【００３４】
以上では、表示制御プログラムとして本発明を構成する場合について記載した。しかし、本発明は、表示制御装置、表示制御システム、又は表示制御方法として構成されてもよい。更には、本発明は、上記表示制御プログラムを記録したコンピュータで読み取り可能な記録媒体として構成されてもよい。
【発明の効果】
【００３５】
本発明によれば、ユーザの目に負担がかかる可能性を軽減しながらも、自然な立体感を与える立体視表示を実現する表示制御プログラム等を提供することができる。
【図面の簡単な説明】
【００３６】
【図１】開状態におけるゲーム装置１０の正面図
【図２】閉状態におけるゲーム装置１０の左側面図、正面図、右側面図及び背面図
【図３】ゲーム装置１０の内部構成を示すブロック図
【図４】本実施形態における立体視の概要について説明するための図
【図５】本実施形態における立体視の概要について説明するための図
【図６】仮想３次元空間における仮想カメラの位置及び描画範囲を説明するための図
【図７】オブジェクトの視差を説明するための図
【図８】視差と深度の関係を示すグラフ
【図９】基準補正率と深度との関係を示すグラフ
【図１０】従来技術による補正率と深度との関係を示すグラフ
【図１１】従来技術による補正後の視差と深度との関係を示すグラフ
【図１２】本実施形態における補正率と深度との関係の一例を示すグラフ
【図１３】本実施形態における補正後の視差と深度との関係の一例を示すグラフ
【図１４】本実施形態における補正率と深度との関係の一例を示すグラフ
【図１５】本実施形態における補正後の視差と深度との関係の一例を示すグラフ
【図１６】補正率決定式を表わした図
【図１７】ゲーム装置１０のメインメモリ３２のメモリマップの一例を示す図
【図１８】表示制御処理のフローチャートの一例
【図１９】図８のステップＳ５の座標変換処理のフローチャートの一例
【図２０】図１９のステップＳ１３の処理について説明するための図
【図２１】図１９のステップＳ１４の処理について説明するための図
【図２２】図１９のステップＳ１５の処理について説明するための図
【図２３】本実施形態における補正率と深度の関係の一例を示すグラフ
【図２４】図１９のステップＳ１７、Ｓ１８の処理について説明するための図
【図２５】補正後の視差の減少を模式的に表わした図
【図２６】変形例における補正率と深度との関係の一例を示すグラフ
【図２７】変形例における補正後の視差と深度との関係の一例を示すグラフ
【図２８】変形例における補正率と深度との関係の一例を示すグラフ
【図２９】変形例における補正後の視差と深度との関係の一例を示すグラフ
【図３０】変形例における補正率と深度との関係の一例を示すグラフ
【図３１】変形例における補正後の視差と深度との関係の一例を示すグラフ
【図３２】変形例における補正率と深度との関係の一例を示すグラフ
【図３３】変形例における補正後の視差と深度との関係の一例を示すグラフ
【図３４】変形例における補正率と深度との関係の一例を示すグラフ
【図３５】変形例における仮想カメラの描画範囲を説明するための図
【発明を実施するための形態】
【００３７】
（一実施形態）
以下、本発明の一実施形態に係る表示制御装置であるゲーム装置について説明する。なお、本発明は、このような装置に限定されるものではなく、このような装置の機能を実現する表示制御システムであってもよく、このような装置における表示制御方法であってもよく、このような装置において実行される表示制御プログラムであってもよい。更には、本発明は、この表示制御プログラムを記録したコンピュータ読み取り可能な記録媒体であってもよい。
【００３８】
（ゲーム装置の外観構成）
以下、本発明の一実施形態に係るゲーム装置について説明する。図１及び図２は、ゲーム装置１０の外観を示す平面図である。ゲーム装置１０は携帯型のゲーム装置であり、図１及び図２に示すように折り畳み可能に構成されている。図１は、開いた状態（開状態）におけるゲーム装置１０を示し、図２は、閉じた状態（閉状態）におけるゲーム装置１０を示している。図１は、開状態におけるゲーム装置１０の正面図である。ゲーム装置１０は、撮像部によって画像を撮像し、撮像した画像を画面に表示したり、撮像した画像のデータを保存したりすることが可能である。また、ゲーム装置１０は、交換可能なメモリカード内に記憶され、又は、サーバや他のゲーム装置から受信したゲームプログラムを実行可能であり、仮想空間に設定された仮想カメラで撮像した画像などのコンピュータグラフィックス処理により生成された画像を画面に表示したりすることができる。
【００３９】
まず、図１及び図２を参照して、ゲーム装置１０の外観構成について説明する。図１及び図２に示されるように、ゲーム装置１０は、下側ハウジング１１及び上側ハウジング２１を有する。下側ハウジング１１と上側ハウジング２１とは、開閉可能（折り畳み可能）に接続されている。
【００４０】
（下側ハウジングの説明）
まず、下側ハウジング１１の構成について説明する。図１及び図２に示すように、下側ハウジング１１には、下側ＬＣＤ（Ｌｉｑｕｉｄ  Ｃｒｙｓｔａｌ  Ｄｉｓｐｌａｙ：液晶表示装置）１２、タッチパネル１３、各操作ボタン１４Ａ〜１４Ｌ、アナログスティック１５、ＬＥＤ１６Ａ〜１６Ｂ、挿入口１７、及び、マイクロフォン用孔１８が設けられる。以下、これらの詳細について説明する。
【００４１】
図１に示すように、下側ＬＣＤ１２は下側ハウジング１１に収納される。下側ＬＣＤ１２の画素数は、例えば、３２０ｄｏｔ×２４０ｄｏｔ（横×縦）であってもよい。下側ＬＣＤ１２は、後述する上側ＬＣＤ２２とは異なり、画像を（立体視可能ではなく）平面的に表示する表示装置である。なお、本実施形態では表示装置としてＬＣＤを用いているが、例えばＥＬ（Ｅｌｅｃｔｒｏ  Ｌｕｍｉｎｅｓｃｅｎｃｅ：電界発光）を利用した表示装置など、他の任意の表示装置を利用してもよい。また、下側ＬＣＤ１２として、任意の解像度の表示装置を利用することができる。
【００４２】
図１に示されるように、ゲーム装置１０は、入力装置として、タッチパネル１３を備えている。タッチパネル１３は、下側ＬＣＤ１２の画面上に装着されている。なお、本実施形態では、タッチパネル１３は抵抗膜方式のタッチパネルである。ただし、タッチパネルは抵抗膜方式に限らず、例えば静電容量方式等、任意の方式のタッチパネルを用いることができる。本実施形態では、タッチパネル１３として、下側ＬＣＤ１２の解像度と同解像度（検出精度）のものを利用する。ただし、必ずしもタッチパネル１３の解像度と下側ＬＣＤ１２の解像度が一致している必要はない。また、下側ハウジング１１の上側面には挿入口１７（図１及び図２（ｄ）に示す点線）が設けられている。挿入口１７は、タッチパネル１３に対する操作を行うために用いられるタッチペン２８を収納することができる。なお、タッチパネル１３に対する入力は通常タッチペン２８を用いて行われるが、タッチペン２８に限らずユーザの指でタッチパネル１３に対する入力をすることも可能である。
【００４３】
各操作ボタン１４Ａ〜１４Ｌは、所定の入力を行うための入力装置である。図１に示されるように、下側ハウジング１１の内側面（主面）には、各操作ボタン１４Ａ〜１４Ｌのうち、十字ボタン１４Ａ（方向入力ボタン１４Ａ）、ボタン１４Ｂ、ボタン１４Ｃ、ボタン１４Ｄ、ボタン１４Ｅ、電源ボタン１４Ｆ、セレクトボタン１４Ｊ、ＨＯＭＥボタン１４Ｋ、及びスタートボタン１４Ｌが、設けられる。十字ボタン１４Ａは、十字の形状を有しており、上下左右の方向を指示するボタンを有している。ボタン１４Ａ〜１４Ｅ、セレクトボタン１４Ｊ、ＨＯＭＥボタン１４Ｋ、及びスタートボタン１４Ｌには、ゲーム装置１０が実行するプログラムに応じた機能が適宜割り当てられる。例えば、十字ボタン１４Ａは選択操作等に用いられ、各操作ボタン１４Ｂ〜１４Ｅは例えば決定操作やキャンセル操作等に用いられる。また、電源ボタン１４Ｆは、ゲーム装置１０の電源をオン／オフするために用いられる。
【００４４】
アナログスティック１５は、方向を指示するデバイスである。アナログスティック１５は、そのキートップが、下側ハウジング１１の内側面に平行にスライドするように構成されている。アナログスティック１５は、ゲーム装置１０が実行するプログラムに応じて機能する。例えば、仮想３次元空間に所定のオブジェクトが登場するゲームがゲーム装置１０によって実行される場合、アナログスティック１５は、当該所定のオブジェクトを仮想３次元空間内で移動させるための入力装置として機能する。この場合において、所定のオブジェクトはアナログスティック１５のキートップがスライドした方向に移動される。なお、アナログスティック１５として、上下左右及び斜め方向の任意の方向に所定量だけ傾倒することでアナログ入力を可能としたものを用いても良い。
【００４５】
また、下側ハウジング１１の内側面には、マイクロフォン用孔１８が設けられる。マイクロフォン用孔１８の下部には後述する音声入力装置としてのマイク４２（図３参照）が設けられ、当該マイク４２がゲーム装置１０の外部の音を検出する。
【００４６】
図２（ａ）は閉状態におけるゲーム装置１０の左側面図であり、図２（ｂ）は閉状態におけるゲーム装置１０の正面図であり、図２（ｃ）は閉状態におけるゲーム装置１０の右側面図であり、図２（ｄ）は閉状態におけるゲーム装置１０の背面図である。図２（ｂ）及び（ｄ）に示されるように、下側ハウジング１１の上側面には、Ｌボタン１４Ｇ及びＲボタン１４Ｈが設けられている。Ｌボタン１４Ｇ及びＲボタン１４Ｈは、例えば、撮像部のシャッターボタン（撮影指示ボタン）として機能することができる。また、図２（ａ）に示されるように、下側ハウジング１１の左側面には、音量ボタン１４Ｉが設けられる。音量ボタン１４Ｉは、ゲーム装置１０が備えるスピーカの音量を調整するために用いられる。
【００４７】
図２（ａ）に示されるように、下側ハウジング１１の左側面には開閉可能なカバー部１１Ｃが設けられる。このカバー部１１Ｃの内側には、ゲーム装置１０とデータ保存用外部メモリ４５とを電気的に接続するためのコネクタ（図示せず）が設けられる。データ保存用外部メモリ４５は、コネクタに着脱自在に装着される。データ保存用外部メモリ４５は、例えば、ゲーム装置１０によって撮像された画像のデータを記憶（保存）するために用いられる。
【００４８】
また、図２（ｄ）に示されるように、下側ハウジング１１の上側面には、ゲーム装置１０とゲームプログラムを記録した外部メモリ４４を挿入するための挿入口１１Ｄが設けられ、その挿入口１１Ｄの内部には、外部メモリ４４と電気的に着脱自在に接続するためのコネクタ（図示せず）が設けられる。当該外部メモリ４４がゲーム装置１０に接続されることにより、所定のゲームプログラムが実行される。
【００４９】
また、図１及び図２（ｃ）に示されるように、下側ハウジング１１の下側面にはゲーム装置１０の電源のＯＮ／ＯＦＦ状況をユーザに通知する第１ＬＥＤ１６Ａ、下側ハウジング１１の右側面にはゲーム装置１０の無線通信の確立状況をユーザに通知する第２ＬＥＤ１６Ｂが設けられる。ゲーム装置１０は他の機器との間で無線通信を行うことが可能であり、第２ＬＥＤ１６Ｂは、無線通信が確立している場合に点灯する。ゲーム装置１０は、例えば、ＩＥＥＥ８０２．１１ｂ／ｇの規格に準拠した方式により、無線ＬＡＮに接続する機能を有する。下側ハウジング１１の右側面には、この無線通信の機能を有効／無効にする無線スイッチ１９が設けられる（図２（ｃ）参照）。
【００５０】
なお、図示は省略するが、下側ハウジング１１には、ゲーム装置１０の電源となる充電式電池が収納され、下側ハウジング１１の側面（例えば、上側面）に設けられた端子を介して当該電池を充電することができる。
【００５１】
（上側ハウジングの説明）
次に、上側ハウジング２１の構成について説明する。図１及び図２に示すように、上側ハウジング２１には、上側ＬＣＤ（Ｌｉｑｕｉｄ  Ｃｒｙｓｔａｌ  Ｄｉｓｐｌａｙ：液晶表示装置）２２、外側撮像部２３（外側撮像部（左）２３ａ及び外側撮像部（右）２３ｂ）、内側撮像部２４、３Ｄ調整スイッチ２５、及び、３Ｄインジケータ２６が設けられる。以下、これらの詳細について説明する。
【００５２】
図１に示すように、上側ＬＣＤ２２は上側ハウジング２１に収納される。上側ＬＣＤ２２の画素数は、例えば、８００ｄｏｔ×２４０ｄｏｔ（横×縦）であってもよい。なお、本実施形態では上側ＬＣＤ２２は液晶表示装置であるとしたが、例えばＥＬ（Ｅｌｅｃｔｒｏ  Ｌｕｍｉｎｅｓｃｅｎｃｅ：電界発光）を利用した表示装置などが利用されてもよい。また、上側ＬＣＤ２２として、任意の解像度の表示装置を利用することができる。
【００５３】
上側ＬＣＤ２２は、立体視可能な画像（立体視画像）を表示することが可能な表示装置である。また、本実施形態では、実質的に同一の表示領域を用いて左目用画像と右目用画像が表示される。具体的には、左目用画像と右目用画像が所定単位で（例えば、１列ずつ）横方向に交互に表示される方式の表示装置である。又は、左目用画像と右目用画像とが時分割で交互に表示される方式の表示装置であってもよい。また、本実施形態では、裸眼立体視可能な表示装置である。そして、横方向に交互に表示される左目用画像と右目用画像とを左目及び右目のそれぞれに分解して見えるようにレンチキュラー方式やパララックスバリア方式（視差バリア方式）のものが用いられる。本実施形態では、上側ＬＣＤ２２はパララックスバリア方式のものとする。上側ＬＣＤ２２は、右目用画像と左目用画像とを用いて、裸眼で立体視可能な画像（立体視画像）を表示する。すなわち、上側ＬＣＤ２２は、視差バリアを用いてユーザの左目に左目用画像をユーザの右目に右目用画像を視認させることにより、ユーザにとって立体感のある立体視画像（立体視可能な画像）を表示することができる。また、上側ＬＣＤ２２は、上記視差バリアを無効にすることが可能であり、視差バリアを無効にした場合は、画像を平面的に表示することができる（上述した立体視とは反対の意味で平面視の画像を表示することができる。すなわち、表示された同一の画像が右目にも左目にも見えるような表示モードである）。このように、上側ＬＣＤ２２は、立体視可能な画像を表示する立体表示モードと、画像を平面的に表示する（平面視画像を表示する）平面表示モードとを切り替えることが可能な表示装置である。この表示モードの切り替えは、後述する３Ｄ調整スイッチ２５によって行われる。
【００５４】
外側撮像部２３は、上側ハウジング２１の外側面（上側ＬＣＤ２２が設けられた主面と反対側の背面）２１Ｄに設けられた２つの撮像部（２３ａ及び２３ｂ）の総称である。外側撮像部（左）２３ａと外側撮像部（右）２３ｂの撮像方向は、いずれも当該外側面２１Ｄの外向きの法線方向である。外側撮像部（左）２３ａと外側撮像部（右）２３ｂとは、ゲーム装置１０が実行するプログラムによって、ステレオカメラとして使用することが可能である。外側撮像部（左）２３ａ及び外側撮像部（右）２３ｂは、それぞれ所定の共通の解像度を有する撮像素子（例えば、ＣＣＤイメージセンサやＣＭＯＳイメージセンサ等）と、レンズとを含む。レンズは、ズーム機構を有するものでもよい。
【００５５】
内側撮像部２４は、上側ハウジング２１の内側面（主面）２１Ｂに設けられ、当該内側面の内向きの法線方向を撮像方向とする撮像部である。内側撮像部２４は、所定の解像度を有する撮像素子（例えば、ＣＣＤイメージセンサやＣＭＯＳイメージセンサ等）と、レンズとを含む。レンズは、ズーム機構を有するものでもよい。
【００５６】
３Ｄ調整スイッチ２５は、スライドスイッチであり、上述のように上側ＬＣＤ２２の表示モードを切り替えるために用いられるスイッチである。また、３Ｄ調整スイッチ２５は、上側ＬＣＤ２２に表示された立体視可能な画像（立体視画像）の立体感を調整するために用いられる。３Ｄ調整スイッチ２５のスライダ２５ａは、所定方向（上下方向）の任意の位置にスライド可能であり、当該スライダ２５ａの位置に応じて上側ＬＣＤ２２の表示モードが設定される。また、スライダ２５ａの位置に応じて、立体視画像の見え方が調整される。具体的には、スライダ２５ａの位置に応じて、右目用画像及び左目用画像におけるオブジェクトの横方向の位置のずれ量（後述する基準視差）が調整される。
【００５７】
３Ｄインジケータ２６は、上側ＬＣＤ２２が立体表示モードか否かを示す。３Ｄインジケータ２６は、ＬＥＤであり、上側ＬＣＤ２２の立体表示モードが有効の場合に点灯する。なお、３Ｄインジケータ２６は、上側ＬＣＤ２２が立体表示モードになっており、かつ、立体視画像を表示するプログラム処理が実行されているときに限り、点灯するようにしてもよい。
【００５８】
また、上側ハウジング２１の内側面には、スピーカ孔２１Ｅが設けられる。後述するスピーカ４３からの音声がこのスピーカ孔２１Ｅから出力される。
【００５９】
（ゲーム装置１０の内部構成）
次に、図３を参照して、ゲーム装置１０の内部の電気的構成について説明する。図３は、ゲーム装置１０の内部構成を示すブロック図である。図３に示すように、ゲーム装置１０は、上述した各部に加えて、情報処理部３１、メインメモリ３２、外部メモリインターフェイス（外部メモリＩ／Ｆ）３３、データ保存用外部メモリＩ／Ｆ３４、データ保存用内部メモリ３５、無線通信モジュール３６、ローカル通信モジュール３７、リアルタイムクロック（ＲＴＣ）３８、加速度センサ３９、電源回路４０、及びインターフェイス回路（Ｉ／Ｆ回路）４１等の電子部品を備えている。これらの電子部品は、電子回路基板上に実装されて下側ハウジング１１（又は上側ハウジング２１でもよい）内に収納される。
【００６０】
情報処理部３１は、所定のプログラムを実行するためのＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）３１１、画像処理を行うＧＰＵ（Ｇｒａｐｈｉｃｓ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）３１２等を含む情報処理手段である。情報処理部３１のＣＰＵ３１１は、ゲーム装置１０内のメモリ（例えば外部メモリＩ／Ｆ３３に接続された外部メモリ４４やデータ保存用内部メモリ３５）に記憶されているプログラムを実行することによって、当該プログラムに応じた処理を実行する。なお、情報処理部３１のＣＰＵ３１１によって実行されるプログラムは、他の機器との通信によって他の機器から取得されてもよい。また、情報処理部３１は、ＶＲＡＭ（Ｖｉｄｅｏ  ＲＡＭ）３１３を含む。情報処理部３１のＧＰＵ３１２は、情報処理部３１のＣＰＵ３１１からの命令に応じて画像を生成し、ＶＲＡＭ３１３に描画する。そして、情報処理部３１のＧＰＵ３１２は、ＶＲＡＭ３１３に描画された画像を上側ＬＣＤ２２及び／又は下側ＬＣＤ１２に出力し、上側ＬＣＤ２２及び／又は下側ＬＣＤ１２に当該画像が表示される。
【００６１】
情報処理部３１には、メインメモリ３２、外部メモリＩ／Ｆ３３、データ保存用外部メモリＩ／Ｆ３４、及び、データ保存用内部メモリ３５が接続される。外部メモリＩ／Ｆ３３は、外部メモリ４４を着脱自在に接続するためのインターフェイスである。また、データ保存用外部メモリＩ／Ｆ３４は、データ保存用外部メモリ４５を着脱自在に接続するためのインターフェイスである。
【００６２】
メインメモリ３２は、情報処理部３１（のＣＰＵ３１１）のワーク領域やバッファ領域として用いられる揮発性の記憶手段である。すなわち、メインメモリ３２は、上記プログラムに基づく処理に用いられる各種データを一時的に記憶したり、外部（外部メモリ４４や他の機器等）から取得されるプログラムを一時的に記憶したりする。本実施形態では、メインメモリ３２として例えばＰＳＲＡＭ（Ｐｓｅｕｄｏ−ＳＲＡＭ）を用いる。
【００６３】
外部メモリ４４は、情報処理部３１によって実行されるプログラムを記憶するための不揮発性の記憶手段である。外部メモリ４４は、例えば読み取り専用の半導体メモリで構成される。外部メモリ４４が外部メモリＩ／Ｆ３３に接続されると、情報処理部３１は外部メモリ４４に記憶されたプログラムを読み込むことができる。情報処理部３１が読み込んだプログラムを実行することにより、所定の処理が行われる。データ保存用外部メモリ４５は、不揮発性の読み書き可能なメモリ（例えばＮＡＮＤ型フラッシュメモリ）で構成され、所定のデータを格納するために用いられる。例えば、データ保存用外部メモリ４５には、外側撮像部２３で撮像された画像や他の機器で撮像された画像が記憶される。データ保存用外部メモリ４５がデータ保存用外部メモリＩ／Ｆ３４に接続されると、情報処理部３１はデータ保存用外部メモリ４５に記憶された画像を読み込み、上側ＬＣＤ２２及び／又は下側ＬＣＤ１２に当該画像を表示することができる。
【００６４】
データ保存用内部メモリ３５は、読み書き可能な不揮発性メモリ（例えばＮＡＮＤ型フラッシュメモリ）で構成され、所定のデータを格納するために用いられる。例えば、データ保存用内部メモリ３５には、無線通信モジュール３６を介した無線通信によってダウンロードされたデータやプログラムが格納される。
【００６５】
無線通信モジュール３６は、例えばＩＥＥＥ８０２．１１ｂ／ｇの規格に準拠した方式により、無線ＬＡＮに接続する機能を有する。また、ローカル通信モジュール３７は、所定の通信方式（例えば独自プロトコルによる通信や、赤外線通信）により同種のゲーム装置との間で無線通信を行う機能を有する。無線通信モジュール３６及びローカル通信モジュール３７は情報処理部３１に接続される。情報処理部３１は、無線通信モジュール３６を用いてインターネットを介して他の機器との間でデータを送受信したり、ローカル通信モジュール３７を用いて同種の他のゲーム装置との間でデータを送受信したりすることができる。
【００６６】
また、情報処理部３１には、加速度センサ３９が接続される。加速度センサ３９は、３軸（ｘｙｚ軸）方向に沿った直線方向の加速度（直線加速度）の大きさを検出する。加速度センサ３９は、下側ハウジング１１の内部に設けられる。加速度センサ３９は、図１に示すように、下側ハウジング１１の長辺方向をｘ軸、下側ハウジング１１の短辺方向をｙ軸、下側ハウジング１１の内側面（主面）に対して垂直な方向をｚ軸として、各軸の直線加速度の大きさを検出する。なお、加速度センサ３９は、例えば静電容量式の加速度センサであるとするが、他の方式の加速度センサを用いるようにしてもよい。また、加速度センサ３９は１軸又は２軸方向を検出する加速度センサであってもよい。情報処理部３１は、加速度センサ３９が検出した加速度を示すデータ（加速度データ）を受信して、ゲーム装置１０の姿勢や動きを検出することができる。なお、情報処理部３１には、上記した加速度センサ３９に加えて（又はその代わりに）角度センサや角速度センサ等の他のセンサが接続され、このセンサによってゲーム装置１０の姿勢や動きを検出してもよい。
【００６７】
また、情報処理部３１には、ＲＴＣ３８及び電源回路４０が接続される。ＲＴＣ３８は、時間をカウントして情報処理部３１に出力する。情報処理部３１は、ＲＴＣ３８によって計時された時間に基づき現在時刻（日付）を計算する。電源回路４０は、ゲーム装置１０が有する電源（下側ハウジング１１に収納される上記充電式電池）からの電力を制御し、ゲーム装置１０の各部品に電力を供給する。
【００６８】
また、情報処理部３１には、ＬＥＤ１６（１６Ａ、１６Ｂ）が接続される。情報処理部３１は、ＬＥＤ１６を用いて、ゲーム装置１０の電源のＯＮ／ＯＦＦ状況をユーザに通知し、又、ゲーム装置１０の無線通信の確立状況をユーザに通知する。
【００６９】
また、情報処理部３１には、Ｉ／Ｆ回路４１が接続される。Ｉ／Ｆ回路４１には、マイク４２及びスピーカ４３が接続される。具体的には、Ｉ／Ｆ回路４１には、図示しないアンプを介してスピーカ４３が接続される。マイク４２は、ユーザの音声を検知して音声信号をＩ／Ｆ回路４１に出力する。アンプは、Ｉ／Ｆ回路４１からの音声信号を増幅し、音声をスピーカ４３から出力させる。また、タッチパネル１３はＩ／Ｆ回路４１に接続される。Ｉ／Ｆ回路４１は、マイク４２及びスピーカ４３（アンプ）の制御を行う音声制御回路と、タッチパネルの制御を行うタッチパネル制御回路とを含む。音声制御回路は、音声信号に対するＡ／Ｄ変換及びＤ／Ａ変換を行ったり、音声信号を所定の形式の音声データに変換したりする。タッチパネル制御回路は、タッチパネル１３からの信号に基づいて所定の形式のタッチ位置データを生成して情報処理部３１に出力する。タッチ位置データは、タッチパネル１３の入力面において入力が行われた位置の座標を示す。なお、タッチパネル制御回路は、タッチパネル１３からの信号の読み込み、及び、タッチ位置データの生成を所定時間に１回の割合で行う。情報処理部３１は、タッチ位置データを取得することにより、タッチパネル１３に対して入力が行われた位置を知ることができる。
【００７０】
操作ボタン１４は、上記各操作ボタン１４Ａ〜１４Ｌからなり、情報処理部３１に接続される。操作ボタン１４から情報処理部３１へは、各操作ボタン１４Ａ〜１４Ｉに対する入力状況（押下されたか否か）を示す操作データが出力される。情報処理部３１は、操作ボタン１４から操作データを取得することによって、操作ボタン１４に対する入力に従った処理を実行する。
【００７１】
アナログスティック１５は情報処理部３１に接続される。アナログスティック１５から情報処理部３１へは、アナログスティック１５に対するアナログ入力（操作方向及び操作量）を示す操作データが出力される。情報処理部３１は、アナログスティック１５から操作データを取得することによって、アナログスティック１５に対する入力に従った処理を実行する。
【００７２】
下側ＬＣＤ１２及び上側ＬＣＤ２２は情報処理部３１に接続される。下側ＬＣＤ１２及び上側ＬＣＤ２２は、情報処理部３１（のＧＰＵ３１２）の指示に従って画像を表示する。本実施形態では、情報処理部３１は、上側ＬＣＤ２２に立体視画像（立体視可能な画像）を表示させる。
【００７３】
具体的には、情報処理部３１は、上側ＬＣＤ２２のＬＣＤコントローラ（図示せず）と接続され、当該ＬＣＤコントローラに対して視差バリアのＯＮ／ＯＦＦを制御する。上側ＬＣＤ２２の視差バリアがＯＮになっている場合、情報処理部３１のＶＲＡＭ３１３に格納された右目用画像と左目用画像とが、上側ＬＣＤ２２に出力される。より具体的には、ＬＣＤコントローラは、右目用画像について縦方向に１ライン分の画素データを読み出す処理と、左目用画像について縦方向に１ライン分の画素データを読み出す処理とを交互に繰り返すことによって、ＶＲＡＭ３１３から右目用画像と左目用画像とを読み出す。これにより、右目用画像及び左目用画像が、画素を縦に１ライン毎に並んだ短冊状画像に分割され、分割された右目用画像の短冊状画像と左目用画像の短冊状画像とが交互に配置された画像が、上側ＬＣＤ２２の画面に表示される。そして、上側ＬＣＤ２２の視差バリアを介して当該画像がユーザに視認されることによって、ユーザの右目に右目用画像が、ユーザの左目に左目用画像が視認される。以上により、上側ＬＣＤ２２の画面には立体視可能な画像が表示される。
【００７４】
外側撮像部２３及び内側撮像部２４は、情報処理部３１に接続される。外側撮像部２３及び内側撮像部２４は、情報処理部３１の指示に従って画像を撮像し、撮像した画像データを情報処理部３１に出力する。
【００７５】
３Ｄ調整スイッチ２５は、情報処理部３１に接続される。３Ｄ調整スイッチ２５は、スライダ２５ａの位置に応じた電気信号を情報処理部３１に送信する。
【００７６】
また、３Ｄインジケータ２６は、情報処理部３１に接続される。情報処理部３１は、３Ｄインジケータ２６の点灯を制御する。例えば、情報処理部３１は、上側ＬＣＤ２２が立体表示モードである場合、３Ｄインジケータ２６を点灯させる。以上がゲーム装置１０の内部構成の説明である。
【００７７】
（立体視の概要）
次に、図４及び図５を参照して、立体視の概要について説明する。図４及び図５は、上側ＬＣＤ２２に表示される立体視画像によって、オブジェクトがユーザに向かって飛び出して視認される場合の例を示す図である。なお、図４及び図５において、（１）は、立体視画像が表示される上側ＬＣＤ２２の画面をユーザが視認している状況を上方から見た概念図であり、（２）は、ユーザが視認する（１）の状況の上側ＬＣＤ２２の画面を示す図である。
【００７８】
図４（１）に示すように、上側ＬＣＤ２２に表示された立体視画像によって、オブジェクトＡ、Ｂ及びＣが、上側ＬＣＤ２２の画面からユーザに向かって飛び出しているように視認される。具体的には、上側ＬＣＤ２２によって、オブジェクトＡは上側ＬＣＤ２２の画面上よりもユーザに近い位置に視認される視差の立体視画像として表示され、オブジェクトＣはオブジェクトＡよりもユーザに近い位置に視認される視差の立体視画像として表示され、オブジェクトＢはオブジェクトＣよりもユーザに近い位置に視認される視差の立体視画像として表示されている。ここで、極端に大きく手前に飛び出して視認されるような視差（つまり、極端に大きい視差）でオブジェクトが表示（立体視表示）された場合、ユーザは、このオブジェクトを視認しづらくなる場合がある。具体的には、ユーザは、大きく飛び出してくるオブジェクトＣ及び更に大きく飛び出してくるオブジェクトＢを、図４（２）に例示するように、２つにぶれた画像として視認してしまう場合がある（すなわち、上側ＬＣＤ２２に表示される右目用画像と左目用画像を重ねた際、オブジェクトを１つの立体視画像として視認することができなくなる場合がある）。
【００７９】
そこで、本実施形態では、上側ＬＣＤ２２によって所定位置よりも手前に飛び出してくるように立体視表示されるオブジェクトについて、飛び出してくる程度を緩和する。具体的には、図５（１）に示すように、図４（１）に示したオブジェクトＣ及びＢの飛び出してくる程度（つまり、視差）を、それぞれ緩和する補正を行う。なお、図５（１）において、オブジェクトの補正前の位置を点線で示している。このことによって、本実施形態では、図５（２）に示すように、オブジェクトＡ、Ｂ及びＣを、ユーザに見やすく立体視させることができる。
【００８０】
また、従来の技術において、例えば所定位置から手前側のオブジェクトの飛び出してくる程度を緩和する補正を行う場合には、所定位置を前後方向（奥行き方向）に跨って移動するオブジェクトの立体感（つまり視差）が急激に変化するため、ユーザにとっては不自然な立体視表示となってしまうという問題があった。そこで、本実施形態では、上記した手前側のオブジェクトの飛び出してくる程度を緩和しながらも、所定位置を前後方向に跨って移動してくるオブジェクトの立体感の変化が自然である補正が行われる。この補正方法について、以下に詳述する。
【００８１】
まず、図６、図７を参照して立体視可能な画像（立体視画像）の生成方法（描画方法）について説明する。図６は、仮想３次元空間における仮想カメラの位置関係及び描画範囲を説明するための図であり、図７は、仮想左カメラ画像（左目用画像）と仮想右カメラ画像（右目用画像）におけるオブジェクトの視差を説明するための図である。
【００８２】
図６に示すように、仮想３次元空間には、オブジェクト５３、仮想左カメラ５０、仮想右カメラ５１及び仮想中間カメラ５２が配置される。仮想左カメラ５０及び仮想右カメラ５１（仮想ステレオカメラの一例）は、仮想中間カメラ５２を中心として、矢印６０Ｃで示す仮想中間カメラ５２の撮像方向と垂直な方向に所定の間隔を隔てて配置される。仮想中間カメラ５２と仮想左カメラ５０との間隔と、仮想中間カメラ５２と仮想右カメラ５１との間隔とは同一である。なお、本実施形態では、この２つの間隔は連動して設定されるものとする（すなわち、この２つの間隔は常に同一であるものとする）。また、仮想中間カメラ５２の位置を点ＯＣで示し、仮想左カメラ５０の位置を点ＯＬで示し、仮想右カメラ５１の位置を点ＯＲで示す。また、仮想左カメラ５０及び仮想右カメラ５１の撮像方向６０Ｌ及び６０Ｒは、仮想中間カメラ５２の撮像方向６０Ｃと、それぞれ同一である。そして、仮想中間カメラ５２、仮想左カメラ５０及び仮想右カメラ５１（以下、これらを総称して仮想カメラという場合がある）を用いて、撮像対象のオブジェクト５３が撮像（描画）される。
【００８３】
次に、仮想カメラによって撮像（描画）される描画領域について説明する。図６に示すように、仮想左カメラ５０及び仮想右カメラ５１は、所定の画角で仮想３次元空間を撮像（描画）し、ニアクリップ面８０Ｎとファークリップ面８０Ｆに挟まれた空間を仮想左カメラ画像及び仮想右カメラ画像（図７参照）として描画する。したがって、仮想左カメラ５０が描画する空間は台形型の領域７０Ｌとなり、仮想右カメラ５１が描画する空間は台形型の領域７０Ｒとなる。なお、ニアクリップ面８０Ｎとは、仮想３次元空間において、仮想カメラからの深度がＮである面を指し、ファークリップ面８０Ｆとは、仮想カメラからの深度がＦである面を指し、Ｆの値はＮの値よりも大きい。ここで、深度とは、仮想カメラからの当該仮想カメラの撮像方向における距離であり、具体的には、後述する図２１及び図２２等における仮想カメラのビュー座標系のｚ座標の値によって規定される距離である。
【００８４】
図６に示すように、視差ゼロ面８０Ｂは、仮想カメラからの深度がＢ０（このＢ０の値はＮの値よりも大きく、Ｆの値よりも小さい）である面を指す。この深度がＢ０の位置である視差ゼロ面８０Ｂにディスプレイ面（上側ＬＣＤ２２の表示画面）に対応するスクリーン面を設定することによって、当該視差ゼロ面８０Ｂに位置するオブジェクトは立体感のない（つまり視差がゼロである）平面画像としてディスプレイ面に表示される。このディスプレイ面の領域が図６に示す領域７５で示されるものとした場合、仮想左カメラ５０によって描画された領域７０Ｌのうち、領域７０Ｃ（領域７０Ｌと領域７０Ｒとが重なる領域）が切り取られて所定の変換の後、領域７５（上側ＬＣＤ２２の表示領域）に左目用画像として表示され、仮想右カメラ５１によって描画された領域７０Ｒのうち、領域７０Ｃが切り取られて所定の変換の後、領域７５に右目用画像として表示される（図７も参照）。
【００８５】
次に、オブジェクトの左目用画像における表示位置と右目用画像における表示位置との差（つまり、オブジェクトの視差）について説明する。図７は、深度ＤＰに位置するオブジェクト５３（図６参照）が仮想左カメラ５０及び仮想右カメラ５１によって撮像（描画）された画像を示す図である。図７に示すように、仮想左カメラ５０が撮像した仮想左カメラ画像のうち、左目用画像として切り取られる領域７５におけるオブジェクト５３の表示位置と、仮想右カメラ５１が撮像した仮想右カメラ画像のうち、右目用画像として切り取られる領域７５におけるオブジェクト５３の表示位置は、図７に示す左右方向に所定の量だけずれている。このずれの量がオブジェクト５３の視差であり、この視差によって、左目用画像と右目用画像が重なってディスプレイ面（上側ＬＣＤ２２の表示画面）に表示されたときに、オブジェクト５３が奥行き感（又は飛び出し感）のある立体視画像として視認される。なお、右目用画像におけるオブジェクト５３の表示位置が、左目用画像におけるオブジェクト５３の表示位置よりも左側にずれている場合（図７参照）には、オブジェクト５３は、手前に飛び出した立体視画像として視認され、右側にずれている場合（図示せず）には、オブジェクト５３は奥に引っ込んだ立体視画像として視認される。
【００８６】
（視差と深度の関係）
次に、図８を参照して、上記した視差と深度との関係について説明をする。図８は、ニアクリップ面８０Ｎ（深度ｚ＝Ｎ）からファークリップ面８０Ｆ（深度ｚ＝Ｆ）における視差（Ｄ）と深度（ｚ）の関係を表わしたグラフである。なお、右目用画像におけるオブジェクト５３の表示位置が、左目用画像におけるオブジェクト５３の表示位置よりも右側にずれている場合には、視差（Ｄ）の符号を正（プラス）と定義し、左側にずれている場合には、視差（Ｄ）の符号を負（マイナス）と定義する。また、以下の説明において単に「視差」と称する場合には、この符号は考慮しておらず、視差（Ｄ）の絶対値を示すものとする。
【００８７】
図８に示すように、深度（ｚ）がＢ０（視差ゼロ面８０Ｂ；以下、単に基準面という場合がある）よりも大きくなるにつれ、視差（Ｄ）の絶対値は大きくなり、深度（ｚ）がＦのときに視差（Ｄ）の値はＤｆとなる。また、深度（ｚ）がＢ０よりも小さくなるにつれ、視差（Ｄ）の絶対値は大きくなり、深度（ｚ）がＮのときに視差（Ｄ）の値はＤｎとなる。したがって、オブジェクトが、視差の生じない基準面からファークリップ面８０Ｆ側（以下、単に奥側という）に配置されるほど、その視差は大きくなり、また、オブジェクトが、視差の生じない基準面からニアクリップ面８０Ｎ側（以下、単に手前側という）に配置されるほど、その視差は大きくなる。このことにより、オブジェクトは奥側に配置されるほど奥行き感をもち、手前側に配置されるほど飛び出し感をもった立体視画像として視認される。なお、このオブジェクトの立体感（奥行き感の程度や、飛び出し感の程度）を決定する視差（Ｄ）は、深度（ｚ）に依存する関数に基づいて予め設定されている。
【００８８】
（補正率）
前述したように、３Ｄ調整スイッチ２５によって立体視画像の立体感（すなわち視差）は調整可能になっている。具体的には、３Ｄ調整スイッチ２５によって視差を増減させる補正率（視差補正率）が調整（変更）される。この補正率は、視差を補正するために、視差に乗じられる値であり、所定の範囲内（例えば０．０〜１．０）にシステムにより設定され、ユーザによって変更可能に設定されている。例えば、補正率が１．０のときには、視差に増減はなく、補正率が０．０のときには、視差はゼロとなる。なお、システムにより初期設定され、ユーザによって変更可能なこの補正率のことを基準補正率といい、この基準補正率が乗じられた視差のことを基準視差という。例えば、基準補正率が１．０（図９参照）であるときには、基準視差は補正されない標準の視差となる。
【００８９】
（従来の視差の補正）
これまでに述べたように、図８に示すような視差の場合、ユーザに近いオブジェクト（手前側のオブジェクト）の視差が大きくなり過ぎるため、ユーザは、当該オブジェクトを１つの立体視画像として視認しづらくなる場合がある。このため、例えば基準面から手前側の視差を補正することが考えられる。図１０は、従来技術により手前側の視差を軽減する補正が行われるときの補正率（Ｒ）と深度（ｚ）の関係を表わしたグラフである。図１０に示す補正率によれば、手前側の補正率が基準補正率よりも小さな値に設定されるので、手前側での視差は小さくなる（図１１に示す破線から実線に補正される）。しかし、このときの補正率は、基準面（深度Ｂ０）において不連続（図１０参照）であるため、基準面の前後において、視差は急激に変化する（図１１参照）。そのため、基準面を通過するオブジェクトは、基準面の前後において不自然な立体感で視認されてしまう（例えば、ユーザに一定の速さで近づくオブジェクトは、基準面を通過すると、急激にその速さが変化するように視認されてしまう）問題があった。
【００９０】
（本実施形態の特徴的な視差の補正）
図１２〜図１５を参照して、上記した問題を解決する、本実施形態の特徴的な視差を軽減する補正について説明する。図１２は、本実施形態の補正率（Ｒ）と深度（ｚ）との関係を示すグラフであり、図１３は、図１２に示す補正率（Ｒ）によって補正された視差（Ｄ）と深度（ｚ）の関係を示すグラフである。同様に、図１４は、本実施形態の補正率（Ｒ）と深度（ｚ）との関係を示すグラフであり、図１５は、図１４に示す補正率（Ｒ）によって補正された視差（Ｄ）と深度（ｚ）の関係を示すグラフである。
【００９１】
図１２に示すように、本実施形態の補正率は、基準面（深度ｚ＝Ｂ０）において連続的に変化している。具体的には、基準面よりも奥側（深度ｚ＞Ｂ０）においては、補正率は、基準補正率であり（その値は、ｍａｘＲ）、基準面よりも手前側（深度ｚ＜Ｂ０）においては、深度（ｚ）の減少と共に直線的に減少し、基準面においてｍａｘＲであった補正率は、ニアクリップ面８０Ｎ（深度ｚ＝Ｎ）においてｍｉｎＲとなる。なお、このｍｉｎＲには、所定の値が設定される。また、基準補正率の値であるｍａｘＲは、システムにより初期値（例えば１．０）として設定され、また、ユーザにより変更可能となっている。
【００９２】
このように、図１２に示す本実施形態の補正率は、基準面において連続的に変化しているため、ユーザは、当該基準面を通過するオブジェクトの立体感が当該基準面の奥側と手前側において急激に変わることによる不自然さを覚えることがなく、自然な立体感を得ることができる。
【００９３】
また、図１３に示すように、図１２に示す補正率によって視差が補正されるとき、補正後の視差は、基準面よりも手前側において基準視差よりも小さくなる。このため、ユーザに近いオブジェクト（手前側のオブジェクト）であっても、その視差が大きくなり過ぎることがなく、ユーザは、当該オブジェクトを立体視画像として視認し易くなる。また、上記したように、基準面で補正率は連続的に変化しているため、基準面近傍での視差は基準視差と比べて大きく変わることがない。このため、ユーザは、当該基準面近傍におけるオブジェクトの立体感に不自然さを覚えることなく、かつ、ユーザに近いオブジェクトに対しては従来よりも小さな視差（基準視差よりも小さな視差）で立体視することができ、オブジェクトを視認し易くなる。
【００９４】
図１４は、図１２に示す補正率よりも、基準面近傍において滑らかに変化する補正率を示している。図１４に示すように、補正率は、基準面（深度ｚ＝Ｂ０）において連続的に変化し、かつ、基準面よりも手前側においては曲線的に変化する。具体的には、基準面よりも奥側（深度ｚ＞Ｂ０）においては、補正率は、基準補正率であり（その値は、ｍａｘＲ）、基準面よりも手前側（深度ｚ＜Ｂ０）においては、深度（ｚ）の減少と共に曲線的に減少し、基準面においてｍａｘＲであった補正率は、ニアクリップ面８０Ｎ（深度ｚ＝Ｎ）においてｍｉｎＲとなる。また、この曲線は、基準面（深度ｚ＝Ｂ０）において、深度ｚ＞Ｂ０において表わされる直線Ｒ＝ｍａｘＲと滑らかに接続される。
【００９５】
このように、図１４に示す補正率は、基準面において連続的に変化し、かつ、図１２に示す補正率よりも、基準面近傍において滑らかに変化する。したがって、ユーザは、当該基準面を通過するオブジェクトの立体感が当該基準面の奥側と手前側において急激に変わることによる不自然さを覚えることがなく、かつ、その立体感の変化がより滑らかであるため、ユーザは、補正が行われていることに対する不自然さを更に覚えることなく、より自然な立体視を楽しむことができる。
【００９６】
また、図１５に示すように、図１４に示す補正率によって視差が補正されるとき、補正後の視差は、基準面よりも手前側において基準視差よりも小さくなる。このため、ユーザに近いオブジェクト（手前側のオブジェクト）であっても、その視差が大きくなり過ぎることがなく、ユーザは、当該オブジェクトを１つの立体視画像として視認し易くなる。また、上記したように、基準面近傍での視差は、図１３に示す視差よりも、より基準視差に近い視差となる。このため、ユーザは、当該基準面近傍におけるオブジェクトの立体感をこれまでとほとんど変わらず（基準視差とほとんど同じ視差で）視認することができる。したがって、ユーザは、補正が行われていることに対する不自然さを更に覚えることなく、かつ、ユーザに近いオブジェクトに対しては従来よりも小さな視差（基準視差よりも小さな視差）で立体視することができ、オブジェクトを視認し易くなる。
【００９７】
このように、本実施形態における特徴的な補正率によって視差が補正されることによって、ユーザに近いオブジェクトに対しては従来よりも視差を軽減しつつ、基準面付近での立体感に不自然さを与えることなく自然な立体視を可能とすることができる。
【００９８】
なお、この補正率（Ｒ）を決定する補正率決定式は、例えば以下の（式１）及び（式２）によって与えられる。
（式１）Ｒ＝ｍａｘＲ＋（ｍｉｎＲ−ｍａｘＲ）×
（Ｂ０−ｚ）n／（Ｂ０−Ｎ）n      （Ｎ≦ｚ≦Ｂ０）
（式２）Ｒ＝ｍａｘＲ                                      （Ｂ０≦ｚ≦Ｆ）
ここで、ｎは１以上の整数であり、ｎ＝１の場合が、図１２に示す補正率に対応し、ｎ＝２の場合が、図１４に示す補正率に対応する。また、（式１）からわかるように、ｎが２以上のとき、ｚ＝Ｂ０においてこの曲線の傾き（微分係数）は０となり、（式２）の直線（傾き０）と滑らかに接続される（ｚ＝Ｂ０における微分係数が一致する）。ここでｎの値を大きくすると、（式１）で示される曲線は、図１６に示す矢印の方向（ｎ＝１の直線より上方）により膨らむ曲線となる（図１６参照）。したがって、ｎの値を大きくすることにより、基準面近傍における補正率をより基準補正率に近づけることができ、その結果、基準面近傍における視差を、基準視差とほぼ一致させることができる。
【００９９】
（表示制御処理の詳細）
次に、ゲーム装置１０によってゲーム処理が実行される際に行われる表示制御処理の詳細を説明する。まず、ゲーム処理の際にメインメモリ３２に記憶されるデータについて説明する。図１７は、ゲーム装置１０のメインメモリ３２のメモリマップの一例を示す図である。図１７に示すように、メインメモリ３２は、プログラム記憶領域４００及びデータ記憶領域５００を含む。プログラム記憶領域４００及びデータ記憶領域５００のデータの一部は、例えば外部メモリ４４に記憶されており、ゲーム処理の実行時にはメインメモリ３２に読み込まれて記憶される。
【０１００】
プログラム記憶領域４００には、後述する図１８、図１９に示すフローチャートの処理を実行するゲーム処理プログラム４０１や描画処理プログラム４０２等のプログラムが記憶される。
【０１０１】
データ記憶領域５００には、操作データ５０１、仮想カメラデータ５０２、深度値データ５０６、補正率決定式データ５０７、及びオブジェクトデータ５０８等が記憶される。
【０１０２】
操作データ５０１は、各操作ボタン１４Ａ〜Ｅ、Ｇ〜Ｈ、アナログスティック１５、３Ｄ調整スイッチ２５、及びタッチパネル１３に対して行われたユーザの操作を示すデータである。この操作データ５０１は、ユーザがオブジェクトを移動させる操作を示すデータや、３Ｄ調整スイッチ２５におけるスライダ２５ａの位置を示すデータ等である。
【０１０３】
仮想カメラデータ５０２は、図６を参照して説明した各仮想カメラのデータ、すなわち、仮想左カメラデータ５０３、仮想右カメラデータ５０４、及び仮想中間カメラデータ５０５等を含む。
【０１０４】
仮想左カメラデータ５０３は、ユーザの左目に見せるための左目用画像を撮像（描画）する仮想左カメラ５０に関するデータであり、ゲームが展開される仮想３次元空間における仮想左カメラ５０の位置、撮像方向、及び撮像画角等を示すデータである。
【０１０５】
仮想右カメラデータ５０４は、ユーザの右目に見せるための右目用画像を撮像（描画）する仮想右カメラ５１に関するデータであり、ゲームが展開される仮想３次元空間における仮想右カメラ５１の位置、撮像方向、及び撮像画角等を示すデータである。
【０１０６】
仮想中間カメラデータ５０５は、図１２〜図１５を参照して説明した補正率によって視差を補正するために用いられる仮想中間カメラ５２に関するデータであり、ゲームが展開される仮想３次元空間における仮想中間カメラ５２の位置、撮像方向、及び撮像画角等を示すデータである。なお、これら３つの仮想カメラは、１つの仮想カメラが位置等を切り替えて撮像（描画）を行うことによって、実質的にこれら３つの仮想カメラとして機能しているものと考えてもよい。
【０１０７】
深度値データ５０６は、図６を参照して説明した３次元仮想空間におけるニアクリップ面８０Ｎ、ファークリップ面８０Ｆ、視差ゼロ面８０Ｂの位置（すなわち、深度の値）を決定するためのデータである。具体的には、深度値データ５０６は、ニアクリップ面８０Ｎの深度（Ｎ）を示すデータ、ファークリップ面８０Ｆの深度（Ｆ）を示すデータ、及び視差ゼロ面８０Ｂの深度（Ｂ０）を示すデータ等を含む。
【０１０８】
補正率決定式データ５０７は、図１２及び図１４を参照して説明した補正率を決定するための補正率Ｒと、深度ｚとの関係を規定する数式（補正率決定式）を示すデータであり、例えば、上述した（式１）及び（式２）で表わされる数式を示すデータである。なお、補正率決定式は、図１２及び図１４に示す関係を規定するテーブルに置き換えられてもよい。
【０１０９】
オブジェクトデータ５０８は、仮想３次元空間におけるオブジェクトの位置、向き、形状（ポリゴン形状）、及び色彩（テクスチャ）等を示すデータである。また、オブジェクトデータ５０８には、オブジェクトごとに、オブジェクトの重心位置と、重心位置に対する当該オブジェクトの各頂点（重心以外の点）の相対位置を示すデータが含まれている。
【０１１０】
次に、図１８を参照して、ゲーム装置１０によって実行されるゲーム処理の際に行われる表示制御処理のフローについて簡単に説明する。図１８は、ＣＰＵ３１１によって実行される表示制御処理のフローチャートの一例である。図１８のフローチャートで示す処理は、１フレーム（例えば１／６０秒）毎に繰り返し実行される。なお、以下の説明では、本発明とは直接関連しない処理についての説明は省略する。
【０１１１】
ゲーム装置１０の電源が投入されると、ゲーム装置１０のＣＰＵ３１１は、データ保存用内部メモリ３５等に記憶されている起動プログラムを実行し、これによってメインメモリ３２等の各ユニットが初期化される。そして、外部メモリ４４に記憶されたゲーム処理プログラム４０１等がメインメモリ３２に読み込まれ、ＣＰＵ３１１によってゲーム処理プログラム４０１が実行される。
【０１１２】
まず、ステップＳ１において、ＣＰＵ３１１は、仮想カメラデータ５０２を参照することによって仮想３次元空間における仮想カメラの位置情報等を取得する。その後、処理はステップＳ２に移る。
【０１１３】
ステップＳ２において、ＣＰＵ３１１は、３Ｄ調整スイッチ２５の操作があったか否かを判定する。具体的には、ＣＰＵ３１１は、操作データ５０１を参照し、３Ｄ調整スイッチ２５におけるスライダ２５ａの位置を示すデータに更新があったか否かを判定する。この判定の結果がＹＥＳの場合、処理はステップＳ３に移り、ＮＯの場合、処理はステップＳ４に移る。
【０１１４】
ステップＳ３において、ＣＰＵ３１１は、更新された３Ｄ調整スイッチ２５におけるスライダ２５ａの位置データに基づいて、仮想カメラの位置情報等を仮想カメラデータ５０２に更新し、更新した仮想カメラの位置情報等を取得する。その後、処理はステップＳ４に移る。
【０１１５】
ここで、ステップＳ１又はＳ３においてＣＰＵ３１１が取得する仮想カメラデータの位置情報によって、上述した基準補正率の値が決定される（図９参照）。詳しくは後述するが、仮想左カメラ５０と、仮想右カメラ５１の両者間の位置（間隔）に基づいて、上述した基準補正率が変化し、この結果として基準視差が変化する。したがって、ＣＰＵ３１１がステップＳ１又はＳ３の処理を実行することによって取得した仮想カメラデータ５０２に含まれる仮想カメラの位置情報に基づいて、基準補正率の値が決定される。このため、ユーザは、３Ｄ調整スイッチ２５を操作することによって、仮想カメラの位置を変更し（すなわち、基準補正率を変更し）、この結果としてオブジェクトの立体感（つまり、基準視差）を調整することができる。
【０１１６】
次に、ステップＳ４において、ＣＰＵ３１１は、オブジェクトデータ５０８に従って仮想３次元空間にオブジェクトを配置し、取得した仮想カメラデータ５０２に従って仮想３次元空間に仮想左カメラ５０、仮想右カメラ５１、及び仮想中間カメラ５２を配置し、操作データ５０１に従ってオブジェクトを制御してゲームを進行させる。その後、処理はステップＳ５に移る。
【０１１７】
以下、ステップＳ５及びＳ６の処理は、ＧＰＵ３１２が描画処理プログラム４０２を実行することによって、ゲームが進行している仮想３次元空間（ゲーム空間）を仮想カメラで描画して上側ＬＣＤ２２に表示させる処理である。
【０１１８】
ステップＳ５において、ＧＰＵ３１２は、座標変換処理を行う。図１９は、ＧＰＵ３１２によって実行される描画処理における座標変換処理のフローチャートの一例である。以下、図１９を参照して、ステップＳ５の座標変換処理について詳細に説明する。
【０１１９】
図１９に示すように、まず、ステップＳ１１において、ＧＰＵ３１２は、描画対象として、座標変換処理が行われていないオブジェクトを１つ選択する。なお、描画対象のオブジェクトとしては、図６に示す描画領域７０Ｃ内に位置するオブジェクトが対象となる（例えば、オブジェクト５３）。その後、処理はステップＳ１２に移る。
【０１２０】
ステップＳ１２において、ＧＰＵ３１２は、ステップＳ１１で選択したオブジェクト５３の仮想３次元空間における位置座標Ｐ（オブジェクト５３の重心の座標）を取得する。その後、処理はステップＳ１３に移る。
【０１２１】
ステップＳ１３において、ＧＰＵ３１２は、図２０に例示するように、仮想中間カメラ５２によって、ステップＳ１１で選択したオブジェクト５３の深度ＤＰを算出する。言い換えると、ＧＰＵ３１２は、仮想中間カメラ５２のビュー空間におけるオブジェクト５３のｚ座標を算出する。なお、ビュー空間は、ビューイング空間又はカメラ空間と言われる場合もあり、ビュー空間を規定する座標系をビュー座標系と呼ぶ。このビュー座標系において、ｚ軸の正方向は、矢印６０Ｃで示す仮想中間カメラ５２の撮像方向であり、ｘ軸の正方向はｚ軸の正方向を時計回りに９０度回転した方向であり、ｙ軸正方向は紙面に垂直に紙面裏側から表側を指す方向である（後述する図２１参照）。その後、処理はステップＳ１４に移る。
【０１２２】
ステップＳ１４において、ＧＰＵ３１２は、ステップＳ１２で選択したオブジェクトの位置座標Ｐを、仮想中間カメラ５２のビュー座標系における点Ｐ１に変換（ビュー変換）する。ここで、ステップＳ１３の処理によって、仮想中間カメラ５２のビュー座標系における点Ｐ１のｚ座標（すなわち、オブジェクト５３の深度ＤＰ）は既に算出されているので、ＧＰＵ３１２は、仮想中間カメラ５２のビュー座標系における点Ｐ１のｘ座標及びｙ座標を算出する処理を行うことによって、このビュー変換を行う。図２１は、ステップＳ１４の処理を説明するための図である。図２１に示すように、図２０に示した仮想３次元空間における点Ｐは、仮想中間カメラ５２のビュー座標系における点Ｐ１に変換されている。以下では、一例として、点Ｐ１のビュー座標を（−１．０，０．０，１２．５）として説明を行う。その後、処理はステップＳ１５に移る。
【０１２３】
ステップＳ１５において、ＧＰＵ３１２は、ステップＳ１２で取得した点Ｐを、仮想左カメラ５０のビュー座標系における点Ｐ２に変換（ビュー変換）し、また、この点Ｐを、仮想右カメラ５１のビュー座標系における点Ｐ３に変換（ビュー変換）する。このことにより、点Ｐが、左目用画像の生成に用いられる点Ｐ２と右目用画像の生成に用いられる点Ｐ３に変換される。図２２は、ステップＳ１５の処理を説明するための図である。図２２に示すように、図２０に示した仮想３次元空間における点Ｐは、仮想左カメラ５０のビュー座標系における点Ｐ２に変換され、また、この点Ｐは、仮想右カメラ５１のビュー座標系における点Ｐ３に変換される。ここで、仮想左カメラ５０、仮想右カメラ５１及び仮想中間カメラ５２は、図６を参照して説明した位置関係にあるので、ビュー座標系における点Ｐ２のｘ座標の値は、点Ｐ１のｘ座標の値よりも所定の値（仮想左カメラ５０と仮想中間カメラ５２との間隔）だけ大きい値となり、ビュー座標系における点Ｐ３のｘ座標の値は、点Ｐ１のｘ座標の値よりも所定の値（仮想右カメラ５１と仮想中間カメラ５２との間隔）だけ小さい値となる。ここで、本実施形態では、仮想左カメラ５０と仮想中間カメラ５２との間隔、及び仮想右カメラ５１と仮想中間カメラ５２との間隔を、何れも「１．０」とする。このようにすると、点Ｐ２の座標は点Ｐ１の座標がｘ軸方向に「１．０」平行移動されて（０．０，０．０，１２．５）となり、点Ｐ３の座標は点Ｐ１の座標がｘ軸方向に「−１．０」平行移動されて（−２．０，０．０，１２．５）となる。その後、処理はステップＳ１６に移る。
【０１２４】
ここで、オブジェクト５３のビュー座標系における点Ｐ２と点Ｐ３のｘ座標の差、仮想カメラの位置、及び補正率の関係について、図６、図９、図２２を参照して説明する。図２２を参照して説明したように、仮想左カメラ５０と、仮想右カメラ５１は、それぞれ、仮想中間カメラ５２と、ビュー座標系におけるｘ軸方向に「１．０」だけ隔てて配置されているため、ビュー座標系における点Ｐ２と点Ｐ３のｘ座標の値の差は「２．０」となる。しかし、例えば、仮想左カメラ５０と、仮想右カメラ５１が、それぞれ、仮想中間カメラ５２と、ビュー座標系におけるｘ軸方向に「０．８」だけ隔てて配置されていると仮定すると、ビュー座標系における点Ｐ２と点Ｐ３のｘ座標の値の差は「１．６」となる。すなわち、仮想左カメラ５０（又は、仮想右カメラ５１）と仮想中間カメラ５２との距離（言い換えると、仮想左カメラ５０と仮想右カメラ５１の間隔）が小さくなるほど、ビュー座標系における点Ｐ２と点Ｐ３のｘ座標の値の差が小さくなる。ところで、ビュー座標系における点Ｐ２と点Ｐ３の算出方法からわかるように、オブジェクト５３のｚ座標（深度ＤＰ）が変わったとしても（つまり、点Ｐ１のｚ座標が変わったとしても）、ビュー座標系における点Ｐ２及び点Ｐ３のｘ座標の値に変化はない。すなわち、図２２に示すカメラ位置の場合、どの深度に位置するオブジェクトに対しても、ビュー座標系における点Ｐ２と点Ｐ３のｘ座標の値の差は一定の値「２．０」となる。言い換えると、ビュー座標系における点Ｐ２と点Ｐ３のｘ座標の値の差は、仮想左カメラ５０と仮想右カメラ５１の間隔によって定まる一定値であり、この値が図９に示す補正率（基準補正率）に対応する（厳密には、所定の変倍等を考慮していないため補正率と比例関係にある）。
【０１２５】
このことから、仮想カメラの基準位置（補正が行われないときの仮想左カメラ５０と仮想右カメラ５１の基準間隔）が決定されることによって、基準補正率が決定され、仮想カメラの位置（仮想左カメラ５０と仮想右カメラ５１の間隔）を変更することで補正率（基準補正率）が変更されることが解る。なお、図６に示すように、仮想左カメラ５０と仮想右カメラ５１の間隔が広くなると、仮想左カメラ５０が描画する領域７０Ｌと仮想右カメラ５１が描画する領域７０Ｒとが重なる領域７０Ｃが小さくなり、領域７５に表示される画像（描画領域）が小さくなる。これを防ぐために、仮想左カメラ５０（或いは、仮想右カメラ５１）と仮想中間カメラ５２の間隔は所定の値以上大きくすることはできない（すなわち、基準補正率の値がｍａｘＲを超えることはできない）としてもよい。
【０１２６】
上記のことから、補正率（Ｒ）は、以下の式によって与えられることが解る。
（式３）Ｒ＝｜ｘａ−ｘｂ｜×ｋ
ここで、ｘａは、仮想左カメラ５０のビュー座標に変換された点Ｐのｘ座標であり、ｘｂは仮想右カメラ５１のビュー座標に変換された点Ｐのｘ座標であり、ｋは所定の比例係数（例えば０．５）である。ここで、図２２に示すように点Ｐが、仮想左カメラ５０のビュー座標系における点Ｐ２、及び仮想右カメラ５１のビュー座標系における点Ｐ３にビュー変換された場合、ｘａ＝０．０、ｘｂ＝−２．０であるから、｜ｘａ−ｘｂ｜＝２．０となり、補正率Ｒの値は１．０となる（図２３参照）。以上のように、仮想カメラの位置が変更されることにより、補正率（基準補正率）が変更され、反対に、補正率が決定されることによって、その補正率に応じた仮想カメラの位置（仮想左カメラ５０と仮想右カメラ５１の間隔）が決定される。
【０１２７】
説明は、図１９のフローチャートに戻り、ステップＳ１６において、ＧＰＵ３１２は、仮想３次元空間においてオブジェクト５３が基準面（視差ゼロ面８０Ｂ）よりも手前側（仮想カメラに近い側）にあるか否かを判定する。具体的には、ＧＰＵ３１２は、深度値データ５０６を参照して、ステップＳ１３で算出した深度ＤＰが深度Ｂ０よりも小さいか否かを判定する。ステップＳ１６での判定がＹＥＳの場合、処理はステップＳ１７に移り、この判定がＮＯの場合、処理はステップＳ２２に移る。
【０１２８】
ステップＳ１７において、ＧＰＵ３１２は、ステップＳ１４で求めた点Ｐ１とステップＳ１５で求めた点Ｐ２と補正率決定式データ５０７を用いて、３次元仮想空間における仮想左カメラ５０位置を補正する。また、ステップＳ１７において、ＧＰＵ３１２は、ステップＳ１４で求めた点Ｐ１とステップＳ１５で求めた点Ｐ３と補正率決定式データ５０７を用いて、仮想右カメラ５１の位置を補正する。その後、処理はステップＳ１８に移る。
【０１２９】
ステップＳ１８において、ＧＰＵ３１２は、ステップＳ１７によって補正された仮想左カメラ５０及び仮想右カメラ５１の位置に基づいて、ステップＳ１２で取得された点Ｐの座標を、仮想左カメラ５０のビュー座標系における補正点Ｐ４、及び仮想右カメラ５１のビュー座標系における補正点Ｐ５に補正する。その後、処理はステップＳ１９に移る。
【０１３０】
ステップＳ１９において、ＧＰＵ３１２は、ステップＳ１８によって取得された補正点Ｐ４及びＰ５のｘ座標の値を立体視用のｘ座標の値に変換することによって、点Ｐ４をＰ４ａに変換し、点Ｐ５をＰ５ａに変換する。以下に詳述するが、このことによって、オブジェクト５３の飛び出してくる程度（視差の大きさ）が緩和されることになる。その後、処理はステップＳ２０に移る。
【０１３１】
ここで、ステップＳ１７〜Ｓ１９の処理について、図２３〜図２５を参照して以下に具体的に説明する。図２３は、視差の補正に用いられる上述した（式１）及び（式２）においてｎ＝１としたときの補正率（Ｒ）と深度（ｚ）の関係を示すグラフであり、このグラフには、図２２に示すオブジェクト５３等の深度の値が例示されている。図２４は、ステップＳ１７、Ｓ１８の処理を説明するための図であり、図２２に示す仮想カメラの位置関係が補正された後のビュー座標系における補正点Ｐ４及びＰ５を例示している。図２５は、補正によって視差が減少する（緩和される）ことを説明した図である。
【０１３２】
まず、仮想左カメラ５０のビュー座標系における補正点Ｐ４を算出する手順について、説明する。ＧＰＵ３１２は、補正率決定式データ５０７が示す補正率決定式（上述の（式１）及び（式２）を参照）を用いて、深度ｚ＝ＤＰのときの補正率（Ｒ）を決定する。例えば、（式１）においてｎ＝１である補正率決定式に従う場合、ＧＰＵ３１２は、図２３に示すグラフに従って、補正率（Ｒ）を決定する。図２３から解るように、ＧＰＵ３１２は、深度（ｚ）の値がＢ０を超える場合には、補正率（Ｒ）の値を１．０（基準補正率ｍａｘＲ）とし、深度（ｚ）の値がＢ０（１５．０）より小さくなるに従い、補正率（Ｒ）の値を一定の割合で減少させ、深度（ｚ）の値がＮ（１０．０）になったところで、その値をｍｉｎＲ（０．７）とする。したがって、ＧＰＵ３１２は、深度ｚ＝ＤＰ（１２．５）の場合には、補正率Ｒ＝０．８５と決定する。
【０１３３】
ところで、前述したように、補正率は、仮想カメラの位置（仮想左カメラ５０と仮想右カメラ５１の間隔）に基づいて決定される。したがって、ＧＰＵ３１２は、補正率決定式に基づいて、深度ＤＰ（＝１２．５）におけるオブジェクトの補正率Ｒの値を「０．８５」とするために、仮想左カメラ５０の位置を変更する。具体的には、補正率が基準補正率（＝１．０）のときには、仮想左カメラ５０と仮想中間カメラ５２との間隔（すなわち、ビュー座標系における仮想中間カメラ５２とのｘ座標の値の差）が「１．０」であったので、比例配分により、この間隔が「０．８５」となるように仮想左カメラ５０の位置を変更する。すなわち、図２２（１）で示されていた仮想左カメラ５０の位置は、仮想中間カメラ５２に近づいて図２４（１）に示される仮想左カメラ５０の位置に補正される（図１９のステップＳ１７）。このことにより、仮想左カメラ５０のビュー座標系における点Ｐ２の座標（０．０，０．０，１２．５）は、補正されて、点Ｐ４の座標（−０．１５，０．０，１２．５）となる（図１９のステップＳ１８、図２４（１）参照）。なお、点Ｐ２のｙ座標及びｚ座標の値と、点Ｐ４のｙ座標及びｚ座標の値とは、それぞれ同一なので（つまり補正されないので）、補正点Ｐ４のｙ座標及びｚ座標の値は、点Ｐ２のｙ座標値「０．０」及びｚ座標値「１２．５」をそのまま使用することができる。
【０１３４】
次に、仮想右カメラ５１のビュー座標系における補正点Ｐ５を算出する手順について、説明する。補正点Ｐ５の算出手順についても、前述の補正点Ｐ４の算出手順と同様であり、ＧＰＵ３１２は、深度ＤＰ（＝１２．５）におけるオブジェクトの補正率Ｒの値を「０．８５」とするために、仮想右カメラ５１の位置を補正する（図１９のステップＳ１７、図２４（２）参照）。このことにより、仮想右カメラ５１のビュー座標系における点Ｐ３の座標（−２．０，０．０，１２．５）は、補正されて、点Ｐ５の座標（−１．８５，０．０，１２．５）となる（図１９のステップＳ１８，図２４（２）参照）。
【０１３５】
以上のように、ＧＰＵ３１２は、補正率決定式データ５０７に基づいて、図２４に示すように、仮想左カメラ５０及び仮想右カメラ５１の位置を変更する。このことにより、仮想左カメラ５０のビュー座標系において、点Ｐ２（０．０，０．０，１２．５）は補正点Ｐ４（−０．１５，０．０，１２．５）に補正され、仮想右カメラ５１のビュー座標系において、点Ｐ３（−２．０，０．０，１２．５）は点Ｐ５（−１．８５，０．０，１２．５）に補正される。この結果として、点Ｐ２のｘ座標値「０．０」と点Ｐ３のｘ座標値「−２．０」との差「２．０」は、点Ｐ４のｘ座標値「−０．１５」と点Ｐ５のｘ座標値「−１．８５」との差「１．７」に減少する。したがって、仮想カメラの位置が変更されることによって、補正率は、基準補正率の１．０から、０．８５に減少する。
【０１３６】
次に、点Ｐ４及び点Ｐ５から立体視用座標Ｐ４ａ及びＰ５ａを算出する（ステップＳ１９の）手順について、説明する。ＧＰＵ３１２は、深度（ｚ）に依存して決定される視差（Ｄ）からｚ＝ＤＰ（１２．５）のときの視差を算出する。具体的には、視差（Ｄ）は、例えば図８に示される深度（ｚ）に依存する関数で与えられており、深度ｚ＝ＤＰ（１２．５）のときの視差Ｄ＝−５．０を算出する。なお、この視差（Ｄ）を決定する決定式はデータ記憶領域５００に格納されている（図示せず）。そして、ＧＰＵ３１２は、この視差Ｄの半分の値「−２．５」を、Ｐ４のｘ座標の値に乗じることによって、Ｐ４の立体視用のｘ座標「−０．３７５」を算出し、Ｐ５のｘ座標の値に乗じることによって、Ｐ５の立体視用のｘ座標「−４．６２５」を算出する。そして、この算出された（視差が乗じられた）ｘ座標の値が用いられて、点Ｐ４は、立体視用座標Ｐ４ａ（−０．３７５，０．０，１２．５）に変換され、点Ｐ５は、立体視用座標Ｐ５ａ（−４．６２５，０．０，１２．５）に変換される。このことにより、仮想３次元空間において深度ＤＰに位置するオブジェクト５３（の点Ｐ）が仮想カメラ（位置を補正された仮想カメラ）によって撮像されたときの視差が、点Ｐ４ａと点Ｐ５ａのｘ座標の値の差（ｘ軸方向のずれ）で与えられる。すなわち、点Ｐがビュー空間における立体視用座標点Ｐ４ａと点Ｐ５ａに変換されて、視差は「５．０」から、「４．２５」に減少する（図２５参照）。この結果として、ステップＳ１１で処理対象として選択されたオブジェクト５３の左目用画像と右目画像における視差が緩和（減少）されて、上側ＬＣＤ２２に表示されることとなる。
【０１３７】
説明は、図１９のフローチャートに戻り、ステップＳ２０において、ＧＰＵ３１２は、ステップＳ１９で算出した点Ｐ４ａに基づき、オブジェクト５３を構成する各頂点を立体視用座標に変換し、ステップＳ１９で算出した点Ｐ５ａに基づき、オブジェクト５３の各頂点を立体視用座標に変換する。具体的には、ＧＰＵ３１２は、まず、オブジェクトデータ５０８を参照して、オブジェクト５３の各頂点の重心に対する相対位置を示すデータを取得する。次にＧＰＵ３１２は、点Ｐ４ａがオブジェクト５３の重心であるとして、当該オブジェクト５３の各頂点を、取得した相対位置を示すデータに基づいて仮想左カメラ５０のビュー空間において点Ｐ４ａの周りに配置する（立体視用座標に変換する）。同様にして、ＧＰＵ３１２は、オブジェクト５３の各頂点を、仮想右カメラ５１のビュー空間において点Ｐ５ａの周りに配置する（立体視用座標に変換する）。その後、処理はステップＳ２１に移る。
【０１３８】
ステップＳ２１において、ＧＰＵ３１２は、ステップＳ２０で算出した点Ｐ４ａの周りに配置された各頂点の座標を、左目用画像のスクリーン座標に変換し、ステップＳ２０で算出した点Ｐ５ａの周りに配置された各頂点の座標を、右目用画像のスクリーン座標に変換する。つまり、ＧＰＵ３１２は、点Ｐ４ａの周りに配置された各頂点の座標を左目用画像のスクリーンに描画し、点Ｐ５ａの周りに配置された各頂点の座標を右目用画像のスクリーンに描画する。その後、処理はステップＳ２５に移る。
【０１３９】
一方、ステップＳ２２において、ＧＰＵ３１２は、ステップＳ１５によって取得された点Ｐ２及び点Ｐ３のｘ座標の値を立体視用のｘ座標の値に変換することによって、点Ｐ２をＰ２ａに変換し、点Ｐ３をＰ３ａに変換する。すなわち、仮想３次元空間においてオブジェクト５３が基準面（視差ゼロ面８０Ｂ）よりも奥側にある場合（ステップＳ１６でＮＯ）、補正率は基準補正率のまま変わらないので、仮想カメラの位置が補正されることなく、点Ｐ２及び点Ｐ３が、そのまま立体視用の座標Ｐ２ａ及びＰ３ａに変換される。その後、処理はステップＳ２３に移る。
【０１４０】
ステップＳ２３において、ＧＰＵ３１２は、ステップＳ２２で算出した点Ｐ２ａに基づき、オブジェクト５３を構成する各頂点を立体視用座標に変換し、ステップＳ２２で算出した点Ｐ３ａに基づき、オブジェクト５３を構成する各頂点を立体視用座標に変換する。具体的にはステップＳ２０の処理と同様であるので、その説明を省略する。その後、処理はステップＳ２４に移る。
【０１４１】
ステップＳ２４において、ＧＰＵ３１２は、ステップＳ２３で算出した点Ｐ２ａの周りに配置された各頂点の座標を、左目用画像のスクリーン座標に変換し、ステップＳ２３で算出した点Ｐ３ａの周りに配置された各頂点の座標を、右目用画像のスクリーン座標に変換する。つまり、ＧＰＵ３１２は、点Ｐ２ａの周りに配置された各頂点の座標を左目用画像のスクリーンに描画し、点Ｐ３ａの周りに配置された各頂点の座標を右目用画像のスクリーンに描画する。その後、処理はステップＳ２５に移る。
【０１４２】
ステップＳ２５において、ＧＰＵ３１２は、仮想カメラの描画範囲（具体的には、図６に示す領域７０Ｃ）内の全てのオブジェクトに対して上記した変換処理を行ったか否かを判定する。ステップＳ２５での判定がＹＥＳの場合には図１９の座標変換処理は終了し、処理は図１８のステップＳ６に移り、この判定がＮＯの場合には処理はステップＳ１１に戻る。そして、処理がステップＳ１１に戻った場合には、ステップＳ１１において未処理のオブジェクトが選択されて、このオブジェクトについて上記した変換処理が行われる。つまり、このステップＳ２５の判定処理が行われることによって、仮想カメラの描画範囲内の全てのオブジェクトに対して、座標変換処理が行われることとなる。
【０１４３】
図１８のステップＳ６において、ＧＰＵ３１２は、オブジェクトデータ５０８を参照して、ステップＳ５によって座標変換処理された点（位置）に基づいて、各オブジェクトを構成するポリゴンにテクスチャを貼り付けて、左目用画像及び右目用画像を生成し、上側ＬＣＤ２２に出力する。このことによって、上側ＬＣＤ２２に立体視画像が表示されることとなる。その後、処理はステップＳ７に移る。
【０１４４】
ステップＳ７において、ＣＰＵ３１１は、表示制御処理が終了したか否かを判定する。具体的には、ＣＰＵ３１１は、仮想３次元空間で進行しているゲームが所定の終了状態になったか否か、及び操作データ５０１に基づいてユーザがゲームを終了させる操作を行ったか否かを判定し、所定の終了状態になった場合又はゲームを終了させる操作が行われた場合（ステップＳ７でＹＥＳ）には、表示制御処理を終了させる。一方、ステップＳ７でＮＯと判定した場合、ＣＰＵ３１１は、処理をＳ１に戻す。
【０１４５】
以上に説明したように、本実施形態によれば、上側ＬＣＤ２２に表示される立体視画像によって、所定位置よりも手前に飛び出してくるように視認されるオブジェクトについて、左目用画像と右目用画像との間の視差を低減する補正を行うことによって、飛び出してくる程度を緩和することができる。また、本実施形態によれば、補正率は、基準面において連続的に変化しているため、ユーザは、当該基準面を通過するオブジェクトの立体感が当該基準面の奥側と手前側において急激に変わることによる不自然さを覚えることがなく、自然な立体感を得ることができる。すなわち、本実施形態によれば、ユーザの目に負担がかかる可能性を軽減しながらも、自然な立体感を与える立体視表示が実現できる。
【０１４６】
（変形例１）
上記本実施形態では、ユーザに近いオブジェクトの飛び出してくる程度を緩和するために、基準面よりも手前側の補正率を基準補正率よりも小さくすることによって、ユーザに近いオブジェクトに対する視差を低減するものとした。しかし、これに代え、基準視差そのものを予め小さくする（基準補正率を小さくする、或いは視差そのものを小さく初期設定する）ことによって、ユーザに近いオブジェクトに対する視差を低減するものとしてもよい。この場合、ユーザに近いオブジェクトの飛び出してくる程度は緩和されるが、同時に、基準面よりも奥側での視差（基準視差）も低減されるため、ユーザから遠いオブジェクトの奥行き感の程度が従来よりも小さくなってしまう。そこで、変形例１では、基準面よりも奥側の視差を基準視差（低減された基準視差）よりも大きくする補正を行う。以下、この補正について図２６及び図２７を参照して説明する。
【０１４７】
図２６は、変形例１の補正率（Ｒ）と深度（ｚ）との関係を示すグラフであり、図２７は、図２６に示す補正率（Ｒ）によって補正された視差（Ｄ）と深度（ｚ）の関係を示すグラフである。図２６に示すように、変形例１の補正率は、基準面（深度ｚ＝Ｂ０）において連続的に変化している。具体的には、基準面よりも手前側（深度ｚ＜Ｂ０）においては、補正率は、基準補正率であり（その値は、ｍｉｎＲ）、基準面よりも奥側（深度ｚ＞Ｂ０）においては、深度（ｚ）の増加と共に線形に増加し（図２６の（１）参照）、或いは、曲線的に滑らかに増加し（図２６の（２）参照）、基準面においてｍｉｎＲであった補正率は、ファークリップ面８０Ｆ（深度ｚ＝Ｆ）においてｍａｘＲとなる。なお、基準補正率の値であるｍｉｎＲは、システムにより初期値（例えば０．７）として設定され、また、ユーザにより変更可能となっている。また、ｍａｘＲには、所定の値が設定される。
【０１４８】
このように、図２６に示す変形例１の補正率は、基準面において連続的に変化しているため、ユーザは、当該基準面を通過するオブジェクトの立体感が当該基準面の奥側と手前側において急激に変わることによる不自然さを覚えることがなく、自然な立体感を得ることができる。さらに補正率が、図２６の（２）に示す曲線に従って変化する場合、補正率は、図２６の（１）に示す直線に従って変化する時よりも、基準面近傍において滑らかに変化し、その結果、基準面近傍での立体感の変化は、より滑らかになる。このことにより、ユーザは、より自然な立体視を楽しむことができる。
【０１４９】
また、図２７に示すように、図２６に示す補正率によって視差が補正されるとき、補正後の視差は、基準面よりも奥側において手前側における基準視差よりも大きくなる。すなわち、ユーザに近いオブジェクト（手前側のオブジェクト）の視差を小さく設定しながらも、ユーザから遠いオブジェクト（奥側のオブジェクト）の視差を大きくすることができる。このことにより、ユーザは、ユーザに近いオブジェクトを１つの立体視画像として視認し易くなると同時に、ユーザから遠いオブジェクトを奥行きの十分ある立体感をもった立体視画像として視認することができる。なお、図２７の（１）の曲線で示される視差は、図２６の（１）に示される補正率によって補正された視差を示し、同様に図２７の（２）の曲線で示される視差は図２６の（２）に示される補正率によって補正された視差を示す。
【０１５０】
このように、変形例１における特徴的な補正率によって視差が補正されることによって、ユーザに近いオブジェクトに対しては従来よりも視差を軽減しつつ、基準面付近での立体感に不自然さを与えることなく自然な立体視を可能とし、かつ、ユーザから遠いオブジェクトに対しては従来どおり大きな視差を十分与えることができる。
【０１５１】
なお、この補正率（Ｒ）を決定する補正率決定式は、例えば以下の（式４）及び（式５）によって与えられる。
（式４）Ｒ＝ｍｉｎＲ                                      （Ｎ≦ｚ≦Ｂ０）
（式５）Ｒ＝ｍｉｎＲ＋（ｍａｘＲ−ｍｉｎＲ）×
（ｚ−Ｂ０）n／（Ｆ−Ｂ０）n    （Ｂ０≦ｚ≦Ｆ）
ここで、ｎは１以上の整数であり、ｎ＝１が、図２６及び図２７の（１）に対応し、ｎ＝２が、図２６及び図２７の（２）に対応する。また、（式５）からわかるように、ｎが２以上のとき、ｚ＝Ｂ０においてこの曲線の傾き（微分係数）は０となり、（式４）の直線（傾き０）と滑らかに接続される（ｚ＝Ｂ０における微分係数が一致する）。ここでｎの値を大きくすると、（式５）で示される曲線は、図２６の（２）に示す曲線（（式５）においてｎ＝２で表わされる曲線）よりも、より下方に膨らむ曲線となる（図示せず）。したがって、ｎの値を大きくすることにより、基準面近傍における補正率をより基準補正率に近づけることができ、その結果、基準面近傍における視差を、基準視差とほぼ一致させることができる。
【０１５２】
なお、変形例１では、表示制御処理において座標変換処理の一部が上記実施形態とは異なる。具体的には、図１９に示すフローチャートの一例において、ステップＳ１６の処理が異なる。上記変形例１では、ステップＳ１６において、ＧＰＵ３１２は、仮想３次元空間においてオブジェクト５３が基準面（視差ゼロ面８０Ｂ）よりも奥側（ユーザから遠い側）にあるか否かを判定する。具体的には、ＧＰＵ３１２は、深度値データ５０６を参照して、ステップＳ１３で算出した深度ＤＰが深度Ｂ０よりも大きいか否かを判定する。このステップＳ１６での判定がＹＥＳの場合、処理はステップＳ１７に移り、この判定がＮＯの場合、処理はステップＳ２２に移る。すなわち、変形例１では、仮想３次元空間においてオブジェクト５３が基準面よりも奥側にある場合、仮想カメラの位置の補正が行われ（すなわち、ステップＳ１７、Ｓ１８の処理が行われ）、基準面よりも手前側にある場合、仮想カメラの位置の補正は行われない。その他の処理は上記本実施形態と同様であるから、その説明は省略する。
【０１５３】
（変形例２）
変形例２では、上記本実施形態と上記変形例１の両者を組み合わせた実施形態であってもよい。すなわち、基準面よりも手前側においては、補正率によって視差を減少させる補正を行い、基準面よりも奥側においては、補正率によって視差を増加させる補正を行ってもよい。以下、この補正について図２８及び図２９を参照して説明する。
【０１５４】
図２８は、変形例２の補正率（Ｒ）と深度（ｚ）との関係を示すグラフであり、図２９は、図２８に示す補正率（Ｒ）によって補正された視差（Ｄ）と深度（ｚ）の関係を示すグラフである。図２８に示すように、変形例２の補正率は、基準面（深度ｚ＝Ｂ０）において連続的に変化している。具体的には、基準面よりも手前側（深度ｚ＜Ｂ０）においては、補正率は、深度（ｚ）の減少と共に曲線的に滑らかに減少し、基準面においてｍｉｄＲであった補正率は、ニアクリップ面８０Ｎ（深度ｚ＝Ｎ）においてｍｉｎＲとなる。一方、基準面よりも奥側（深度ｚ＞Ｂ０）においては、補正率は、深度（ｚ）の増加と共に曲線的に滑らかに増加し、基準面においてｍｉｄＲであった補正率は、ファークリップ面８０Ｆ（深度ｚ＝Ｆ）においてｍａｘＲとなる。なお基準面における補正率（基準補正率）であるｍｉｄＲは、システムにより初期値（例えば０．８５）として設定され、また、ユーザにより変更可能となっている。また、ｍａｘＲ及びｍｉｎＲには、所定の値が設定される。
【０１５５】
このように、図２８に示す変形例２の補正率は、基準面において連続的に変化しているため、ユーザは、当該基準面を通過するオブジェクトの立体感が当該基準面の奥側と手前側において急激に変わることによる不自然さを覚えることがなく、自然な立体感を得ることができる。さらに、補正率は、基準面近傍において滑らかに変化し、その結果、基準面近傍での立体感の変化は、より滑らかになる。このことにより、変形例２においても、ユーザは、より自然な立体視を楽しむことができる。
【０１５６】
また、図２９に示すように、図２８に示す補正率によって視差が補正されるとき、補正後の視差は、基準面よりも奥側において基準視差よりも大きくなり、基準面よりも手前側において基準視差よりも小さくなる。すなわち、ユーザに近いオブジェクト（手前側のオブジェクト）の視差を小さくする補正を行うことによって、ユーザに近いオブジェクトを立体視画像として視認し易くなると同時に、ユーザから遠いオブジェクト（奥側のオブジェクト）の視差を大きくする補正を行うことによって、ユーザから遠いオブジェクトを奥行きの十分ある立体感をもった立体視画像として視認することができる。
【０１５７】
このように、変形例２における特徴的な補正率によって視差が補正されることによって、ユーザに近いオブジェクトに対しては従来よりも視差を減少させつつ、基準面付近での立体感に不自然さを与えることなく自然な立体視を可能とし、かつ、ユーザから遠いオブジェクトに対しては視差を増加させることができる。
【０１５８】
なお、この補正率（Ｒ）を決定する補正率決定式は、例えば以下の（式６）及び（式７）によって与えられる。
（式６）Ｒ＝ｍｉｄＲ＋（ｍｉｎＲ−ｍｉｄＲ）×
（Ｂ０−ｚ）n／（Ｂ０−Ｎ）n      （Ｎ≦ｚ≦Ｂ０）
（式７）Ｒ＝ｍｉｄＲ＋（ｍａｘＲ−ｍｉｄＲ）×
（ｚ−Ｂ０）n／（Ｆ−Ｂ０）n      （Ｂ０≦ｚ≦Ｆ）
ここで、ｎは１以上の整数であり、ｎ＝２の場合が、図２８のグラフに対応する。ｎ＝１のときについては図示していないが、この場合には、図２８の補正率が直線的に変化する。また、（式６）及び（式７）からわかるように、ｎが２以上のとき、ｚ＝Ｂ０においてこの曲線の傾き（微分係数）は共に０となり、両曲線は基準面において滑らかに接続される（ｚ＝Ｂ０における微分係数が一致する）。ここでｎの値を大きくすると、（式５）及び（式６）で示される曲線は、基準面近傍において基準補正率を示す直線に近づく（図示せず）。したがって、ｎの値を大きくすることにより、基準面近傍における補正率をより基準補正率に近づけることができ、その結果、基準面近傍における視差を、基準視差とほぼ一致させることができる。
【０１５９】
なお、変形例２では、表示制御処理において座標変換処理の一部が上記本実施形態とは異なる。具体的には、図１９に示すフローチャートの一例において、ステップＳ１６、Ｓ２２〜Ｓ２４の処理が異なる。変形例２では、ステップＳ１６、Ｓ２２〜Ｓ２４の処理が行われない。変形例２では、全ての深度に位置するオブジェクトの補正率は、図２８に示される補正率（Ｒ）によって（或いは、（式６）及び（式７）に基づいて）決定される。このため、オブジェクトの深度によってＧＰＵ３１２が行う処理が分かれることはなく（すなわち、ステップＳ１６の処理が行われることはなく）、全ての深度に位置するオブジェクトに対して、深度に応じた仮想カメラの位置の補正が行われる。したがって、仮想カメラの位置の補正が行われないステップＳ２２〜Ｓ２４の処理も行われない。その他の処理は上記本実施形態と同様であるから、その説明は省略する。
【０１６０】
（変形例３）
上記本実施形態では、手前側のオブジェクトの視差を軽減するために、視差ゼロ面８０Ｂから手前側（すなわち、深度がＢ０よりも小さい位置）にあるオブジェクトに対して、補正率を基準補正率よりも小さくするものとした。しかし、変形例３では、深度がＢ１（Ｂ０よりも小さい深度）である面（以下、基準面Ｂ１という）から手前側（すなわち、深度がＢ１よりも小さい位置）にあるオブジェクトに対して、補正率を小さくするものとしてもよい（図３０参照）。この場合においても、補正率は、基準面Ｂ１において連続的に変化するため、ユーザは、当該基準面Ｂ１の奥側と手前側においてオブジェクトの立体感が急激に変わることによる不自然さを覚えることがない。さらに、視差ゼロ面８０Ｂ（深度Ｂ０）の近傍では補正率は基準補正率に一致するため、ディスプレイ上に平面視表示されるオブジェクトの近傍に多くのオブジェクトが配置されやすい場合には、上記実施形態よりも更に自然な立体視を実現でき、かつ、まれに配置される手前側のオブジェクトに対しても視差を軽減することができる（図３１参照）。
【０１６１】
（変形例４）
変形例１では、奥側のオブジェクトの視差を増加するために、視差ゼロ面８０Ｂから奥側（すなわち、深度がＢ０よりも大きい位置）にあるオブジェクトに対して、補正率を基準補正率よりも大きくするものとした。しかし、変形例４では、深度がＢ２（Ｂ０よりも大きい深度）である面（以下、基準面Ｂ２という）から奥側（すなわち、深度がＢ２よりも大きい位置）にあるオブジェクトに対して、補正率を大きくするものとしてもよい（図３２参照）。この場合においても、補正率は、基準面Ｂ２において連続的に変化するため、ユーザは、当該基準面Ｂ２の奥側と手前側においてオブジェクトの立体感が急激に変わることによる不自然さを覚えることがない。さらに、視差ゼロ面８０Ｂ（深度Ｂ０）の近傍では補正率は基準補正率に一致するため、ディスプレイ上に平面視表示されるオブジェクトの近傍に多くのオブジェクトが配置されやすい場合には、上記実施形態よりも更に自然な立体視を実現でき、かつ、まれに配置される奥側のオブジェクトに対しても視差を増加することができる（図３３参照）。
【０１６２】
（その他の変形例）
なお、他の変形例では、変形例３と変形例４の両者を組み合わせた実施形態であってもよい。すなわち、基準面Ｂ１から手前側にあるオブジェクトに対して、補正率を小さくするものとし、かつ、基準面Ｂ２から奥側にあるオブジェクトに対して、補正率を大きくするものとしてもよい。この場合においても、補正率は、基準面Ｂ１及び基準面Ｂ２において連続的に変化するため、ユーザは、当該基準面Ｂ１及び当該基準面Ｂ２の奥側と手前側においてオブジェクトの立体感が急激に変わることによる不自然さを覚えることがない。さらに、基準面Ｂ１と基準面Ｂ２の間（Ｂ１＜深度（ｚ）＜Ｂ２）に位置するオブジェクトに対する補正率は基準補正率に一致するため、深度Ｂ１から深度Ｂ２の間に多くのオブジェクトが配置されやすい場合には、上記実施形態よりも更に自然な立体視を実現でき、かつ、まれに配置される手前側のオブジェクトに対しては視差を軽減し、奥側に配置されるオブジェクトに対しては視差を増加することができる。
【０１６３】
また、上記実施形態では、オブジェクト５３の仮想３次元空間における位置が取得される際、例えばオブジェクト５３の重心座標である点Ｐの１点のみが取得されるものとした（図１９に示すステップＳ１２）。しかし、これに代え、オブジェクトを形成する各頂点が取得されるものとしてもよい。この場合、オブジェクトを形成する各頂点が、座標変換され、各頂点に対して、それぞれ左目用画像と右目用画像における視差が算出される。したがって、例えば大きな奥行きをもつ（深度方向に長い）オブジェクトが、大きく飛び出してくる場合であっても、オブジェクトの深度方向の各頂点に対して適切に視差が補正されるので、ユーザは更に視認しやすくなる。
【０１６４】
また、上記実施形態では、ｍｉｎＲの値やｍａｘＲの値は所定の固定値であるとした。しかし、例えば、図１２において、ｍｉｎＲの値を「ｍａｘＲ×０．７」として、基準補正率（ｍａｘＲ）の値に応じて変化するものとしてもよい。このようにすると、ユーザが基準補正率（ｍａｘＲ）を変更した場合であっても、適切な割合で視差を軽減させることができる。なお、同様に、図２６においては、ｍａｘＲの値を「ｍｉｎＲ×１．５」として、基準補正率（ｍｉｎＲ）の値に応じて変化するものとしてもよく、図２８においては、ｍａｘＲの値を「ｍｉｄＲ×１．２」、ｍｉｎＲの値を「ｍｉｄＲ×０．８」として、それぞれが基準補正率（ｍｉｄＲ）の値に応じて変化するものとしてもよい。
【０１６５】
また、上記実施形態では、仮想カメラの位置を変更することによって、補正率が変更され、結果としてオブジェクトの視差を補正するものとした。しかし、補正率決定式に基づいて、直接視差が算出される座標変換処理が行われてもよい。
【０１６６】
また、上記実施形態では、補正率は、（式１）や（式５）で与えられるｎ次関数であるものとした。しかし、基準面において滑らかに接続され、かつ、深度と共に補正率が減少する関数であれば、このような関数に限られるものでない。例えば指数関数であってもよいし、或いは、図３４に示すような変曲点をもつ関数であってもよい。図３４に示す補正率は、深度がＣである面の近傍に位置するオブジェクトが少ない場合に用いられると有効である。
【０１６７】
また、上記実施形態では、仮想カメラの描画範囲は図６に示される領域７０Ｃに固定されるものとした。しかし、ニアクリップ面８０Ｎの位置とファークリップ面８０Ｆの位置（すなわち、深度Ｎと深度Ｆの値）は変更可能であり、領域７０Ｃの大きさは深度方向に可変であるものとしてもよい。
【０１６８】
また、上記実施形態では、仮想３次元空間において、仮想中間カメラ５２が配置されるものとしたが、この仮想中間カメラ５２は、配置されなくてもよい。この場合、オブジェクト５３の深度ＤＰは、仮想左カメラ５０又は仮想右カメラ５１によって算出されればよい。
【０１６９】
また、上記実施形態では、図６を参照して説明したように、仮想左カメラ５０によって描画された領域７０Ｌのうち、領域７０Ｃが切り取られて所定の変換の後、領域７５に左目用画像として表示され、仮想右カメラ５１によって描画された領域７０Ｒのうち、領域７０Ｃが切り取られて所定の変換の後、領域７５に右目用画像として表示されるものとして説明した。しかし、図３５に示すように、仮想左カメラ５０によって描画される領域７０Ｌに対して所定の変換が行われることによって生成される左目用画像の領域が領域７５と一致するように仮想左カメラ５０の描画領域を予め設定し、また、仮想右カメラ５１によって描画される領域７０Ｒに対して所定の変換が行われることによって生成される右目用画像の領域が領域７５と一致するように仮想右カメラ５１の描画領域を予め設定してもよい。この様にした場合、図６の場合とは異なり、描画後に領域７０Ｃを切り出す処理が不要となる。
【０１７０】
また、上記実施形態では、上側ＬＣＤ２２に表示される立体視画像が、裸眼で立体視できる画像であるものとして説明した。しかし、上側ＬＣＤ２２には、立体視できる画像が表示されればよく、例えば、ユーザが立体視用の眼鏡をかけることによって立体視できる画像（つまり、左目用画像と右目用画像とが時分割で交互に表示される画像）が表示されてもよい。
【０１７１】
また、上記実施形態は、本発明をゲーム装置１０に適用したものであるが、本発明はゲーム装置１０に限定されない。例えば、携帯電話機、簡易型携帯電話機（ＰＨＳ）、ＰＤＡ等の携帯情報端末にも本発明の適用は可能である。また、据え置き型ゲーム機やパーソナルコンピュータ等にも本発明の適用は可能である。
【０１７２】
また、上記実施形態では、１つのゲーム装置１０で上述した処理を実行しているが、有線又は無線で通信可能な複数の装置で上記処理を分担してもよい。
【０１７３】
また、上記実施形態において、ゲーム装置１０の形状や、それに設けられている各種操作ボタン１４等、タッチパネル１３の形状、数、及び設置位置等は、単なる一例に過ぎず他の形状、数、及び設置位置であっても、本発明を実現できることは言うまでもない。また、上述した情報処理で用いられる処理順序、設定値、判定に用いられる値等は、単なる一例に過ぎず、本発明の範囲を逸脱しなければ他の順序や値であっても、本発明を実現できることは言うまでもない。
【０１７４】
また、上記実施形態のゲーム装置１０において実行される各種情報処理プログラムは、外部メモリ４４等の記憶媒体を通じてゲーム装置１０に供給されるだけでなく、有線又は無線の通信回線を通じてゲーム装置１０に供給されてもよい。また、上記プログラムは、ゲーム装置１０内部の不揮発性記憶装置（データ保存用内部メモリ３５等）に予め記録されていてもよい。なお、上記プログラムを記憶する情報記憶媒体としては、不揮発性メモリの他に、ＣＤ−ＲＯＭ、ＤＶＤ、或いはそれらに類する光学式ディスク状記憶媒体、フレキシブルディスク、ハードディスク、光磁気ディスク、磁気テープ等であってもよい。また、上記プログラムを記憶する情報記憶媒体としては、上記プログラムを一時的に記憶する揮発性メモリでもよい。
【０１７５】
以上、本発明を詳細に説明してきたが、上述の説明はあらゆる点において本発明の例示に過ぎず、その範囲を限定しようとするものではない。本発明の範囲を逸脱することなく種々の改良や変形を行うことができることは言うまでもない。
【符号の説明】
【０１７６】
１０  ゲーム装置
１１  下側ハウジング
１２  下側ＬＣＤ
１３  タッチパネル
１４  操作ボタン
１５  アナログスティック
１６  ＬＥＤ
２１  上側ハウジング
２２  上側ＬＣＤ
２３  外側撮像部
２３ａ  外側撮像部（左）
２３ｂ  外側撮像部（右）
２４  内側撮像部
２５  ３Ｄ調整スイッチ
２６  ３Ｄインジケータ
２８  タッチペン
３１  情報処理部
３２  メインメモリ
５０、５１、５２  仮想カメラ
３１１  ＣＰＵ
３１２  ＧＰＵ
３１３  ＶＲＡＭ
【図１】
2012175358.tif 000003
【図２】
2012175358.tif 000004
【図３】
2012175358.tif 000005
【図４】
2012175358.tif 000006
【図５】
2012175358.tif 000007
【図６】
2012175358.tif 000008
【図７】
2012175358.tif 000009
【図８】
2012175358.tif 000010
【図９】
2012175358.tif 000011
【図１０】
2012175358.tif 000012
【図１１】
2012175358.tif 000013
【図１２】
2012175358.tif 000014
【図１３】
2012175358.tif 000015
【図１４】
2012175358.tif 000016
【図１５】
2012175358.tif 000017
【図１６】
2012175358.tif 000018
【図１７】
2012175358.tif 000019
【図１８】
2012175358.tif 000020
【図１９】
2012175358.tif 000021
【図２０】
2012175358.tif 000022
【図２１】
2012175358.tif 000023
【図２２】
2012175358.tif 000024
【図２３】
2012175358.tif 000025
【図２４】
2012175358.tif 000026
【図２５】
2012175358.tif 000027
【図２６】
2012175358.tif 000028
【図２７】
2012175358.tif 000029
【図２８】
2012175358.tif 000030
【図２９】
2012175358.tif 000031
【図３０】
2012175358.tif 000032
【図３１】
2012175358.tif 000033
【図３２】
2012175358.tif 000034
【図３３】
2012175358.tif 000035
【図３４】
2012175358.tif 000036
【図３５】
2012175358.tif 000037