説明

表示制御プログラム、表示制御装置、表示制御方法および表示制御システム

【課題】新規な、表示制御プログラム、表示制御装置、表示制御方法および表示制御システムを提供すること。
【解決手段】立体表示モードが選択されている場合には、3D調整スイッチからの出力信号に基づいて、一対の透視投影仮想カメラのそれぞれの画角と、これらの透視投影仮想カメラの間隔を決定し、これらの透視投影仮想カメラに基づいて右目用画像および左目用画像を描画して、立体視画像を生成する。平面表示モードが選択されている場合には、1つの正射影仮想カメラを用いて平面視画像を生成する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、表示制御プログラム、表示制御装置、表示制御方法および表示制御システムに関し、特に、立体視表示を行うための表示制御プログラム、表示制御装置、表示制御方法および表示制御システムに関する。
【背景技術】
【0002】
従来、視差を有する2つの画像を用いて立体表示を行う方法が知られている。例えば、特許文献1には、3次元仮想空間内に2つの仮想カメラを設定し、各仮想カメラに基づいて仮想オブジェクトなどの被写体を含む画像を描画して立体表示を行う技術が開示されている。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2003−107603号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
特許文献1に記載されている技術では、2つの仮想カメラの間隔を広げることによって立体感を大きくすることができ、2つの仮想カメラの間隔を0にすると平面表示に切り換えることができる。ただし、立体表示でも平面表示でも同じ仮想カメラを用いて描画される。
【0005】
この発明の主たる目的は、新規な、表示制御プログラム、表示制御装置、表示制御方法および表示制御システムを提供することである。
【課題を解決するための手段】
【0006】
上記目的を達成するために、本発明は例えば以下の構成を採用し得る。
【0007】
本発明の表示制御プログラムの一構成例は、表示制御装置のコンピュータを、立体視の強さを調整する調整手段、上記調整手段によって調整された強さに応じて仮想カメラの画角を設定する仮想カメラ制御手段、および、仮想空間に配置された仮想オブジェクトを上記仮想カメラ制御手段によって設定された上記仮想カメラに基づいて描画する描画手段として機能させる。
【0008】
なお、上記の「立体視の強さ」とは、ユーザにとって仮想空間が画面に対して垂直な方向に広がっているように視認される度合いである。
【0009】
上記構成例によれば、立体視の強さが変化したときに、仮想カメラの画角を変化させて仮想空間に配置された仮想オブジェクトを描画するので、仮想カメラの画角によって立体感の変化を強調することができる。
【0010】
さらに他の構成例として、上記仮想カメラ制御手段は、上記調整手段によって立体視の強さが第1の値に調整された場合には上記仮想カメラの画角を第1の画角に設定し、上記調整手段によって立体視の強さが第2の値に調整された場合には上記仮想カメラの画角を第2の画角に設定してもよい。そして、上記描画手段は、上記カメラ制御手段によって上記仮想カメラの画角が第1の画角に設定されたときには、立体視画像を描画し、上記カメラ制御手段によって上記仮想カメラの画角が第2の画角に設定されたときには、平面視画像を描画してもよい。
【0011】
さらに他の構成例として、上記第1の値は上記第2の値よりも大きく、上記第1の画角は上記第2の画角よりも大きくてもよい。
【0012】
さらに他の構成例として、上記仮想カメラ制御手段は、上記調整手段によって調整された強さがより大きいほど、上記仮想カメラの画角をより大きくしてもよい。
【0013】
さらに他の構成例として、上記仮想カメラ制御手段は、上記調整手段によって調整された強さに応じて一対の透視投影仮想カメラの間隔を変更し、上記描画手段は、上記一対の仮想カメラに基づいて上記仮想オブジェクトを撮像した左目用画像と右目用画像を描画することにより立体視画像を描画してもよい。
【0014】
さらに他の構成例として、上記仮想カメラ制御手段は、上記調整手段によって調整された強さが大きいほど、上記一対の仮想カメラの間隔を大きくしてもよい。
【0015】
さらに他の構成例として、上記一対の仮想カメラは透視投影仮想カメラであり、上記仮想カメラ制御手段は、上記調整手段によって立体視の強さが最小値に調整された場合には、上記一対の透視投影仮想カメラの画角を最小値に設定することにより正射影に近い画角に設定するとともに、上記一対の透視投影仮想カメラの間隔を0または0に近い値に設定してもよい。
【0016】
さらに他の構成例として、上記仮想カメラ制御手段は、上記調整手段によって調整された強さに応じて、上記仮想オブジェクトから上記仮想カメラまでの距離を変更してもよい。
【0017】
さらに他の構成例として、上記仮想カメラ制御手段は、上記調整手段によって調整された強さが大きいほど、上記仮想カメラを上記仮想オブジェクトに近づけてもよい。
【0018】
本発明の表示制御装置の一構成例は、立体視の強さを調整する調整手段、上記調整手段によって調整された強さに応じて仮想カメラの画角を設定する仮想カメラ制御手段、および、仮想空間に配置された仮想オブジェクトを上記仮想カメラ制御手段によって設定された上記仮想カメラに基づいて描画する描画手段を備える。
【0019】
本発明の表示制御方法の一構成例は、立体視の強さを調整する調整ステップ、上記調整ステップにおいて調整された強さに応じて仮想カメラの画角を設定する仮想カメラ制御ステップ、および、仮想空間に配置された仮想オブジェクトを上記仮想カメラ制御ステップにおいて設定された上記仮想カメラに基づいて描画する描画ステップを備える。
【0020】
本発明の表示制御システムの一構成例は、立体視の強さを調整する調整手段、上記調整手段によって調整された強さに応じて仮想カメラの画角を設定する仮想カメラ制御手段、および、仮想空間に配置された仮想オブジェクトを上記仮想カメラ制御手段によって設定された上記仮想カメラに基づいて描画する描画手段を備える。
【0021】
本発明の表示制御プログラムの他の構成例は、表示制御装置のコンピュータを、立体視の強さを調整する調整手段、上記調整手段によって調整された強さに応じて仮想カメラの種類を設定する仮想カメラ制御手段、および、仮想空間に配置された仮想オブジェクトを上記仮想カメラ制御手段によって設定された仮想カメラに基づいて描画する描画手段として機能させる。
【0022】
他の構成例として、上記仮想カメラ制御手段は、上記調整手段によって立体視の強さが第1の値に調整された場合には、第1の仮想カメラを設定し、上記調整手段によって立体視の強さが第2の値に調整された場合には、上記第1の仮想カメラとは種類の異なる第2の仮想カメラを設定してもよい。そして、上記描画手段は、上記第1の仮想カメラに基づいて上記仮想オブジェクトを撮像した立体視画像を描画し、上記第2の仮想カメラに基づいて上記仮想オブジェクトを撮像した平面視画像を描画してもよい。
【0023】
なお、上記の「立体視画像」とは、裸眼により、もしくはメガネやヘッドマウントディスプレイを通じて、仮想オブジェクトを立体的に(すなわち、仮想オブジェクトが画面の手前または奥に位置しているようにユーザに知覚されるように)表示するために生成される画像である。立体視画像は、典型的には、異なる視点から仮想オブジェクトを描画することによって得られる複数の画像、もしくは、これらの複数の画像を合成した画像である。また、上記の「平面視画像」とは、仮想オブジェクトを平面的に(すなわち、仮想オブジェクトが画面の手前または奥に位置しているようにユーザに知覚されることがなく)表示するために生成される画像である。
【0024】
上記構成例によれば、平面視画像の描画と立体視画像の描画がそれぞれ異なる種類の仮想カメラを用いて行われるので、例えば、平面視画像と立体視画像との見え方の差を仮想カメラの種類によっても強調することができる。
【0025】
さらに他の構成例として、上記仮想カメラ制御手段は、上記調整手段によって立体視の強さが第1の値に調整された場合には、透視投影仮想カメラを設定し、上記調整手段によって立体視の強さが第2の値に調整された場合には、正射影仮想カメラ、または、疑似正射影仮想カメラを設定してもよい。そして、上記描画手段は、上記透視投影仮想カメラに基づいて上記仮想オブジェクトを撮像した立体視画像を描画し、上記正射影仮想カメラ、または、疑似正射影仮想カメラに基づいて、上記仮想オブジェクトを撮像した平面視画像を描画してもよい。
【0026】
上記構成例によれば、立体視画像を描画するときには透視投影仮想カメラが用いられ、平面視画像を描画するときには正射影仮想カメラ、または、疑似正射影仮想カメラ(すなわち、ほぼ正射影に近い画角を有する透視投影仮想カメラ)が用いられるので、平面視画像を表示したときと比較して、立体視画像を表示したときの立体感を大きく増すことができる。また、例えば、正射影仮想カメラに基づいて生成された画像を表示する、平面表示にのみに対応した既存のアプリケーションソフト(ゲームプログラムなど)を、平面表示と立体表示の両方に対応したアプリケーションソフトへと改良(グレードアップ)する場合に、平面表示時は、既存のアプリケーションソフトにおける画像の見た目を維持しつつ、立体表示時は、視差によって感じられる奥行き感に加えて、透視投影によって感じられる奥行き感もユーザに感じさせることができ、立体感を強調することができる。
【0027】
さらに他の構成例として、上記第1の値は上記第2の値よりも大きくてもよい。
【0028】
さらに他の構成例として、上記仮想カメラ制御手段は、上記調整手段によって調整された強さに応じて上記透視投影仮想カメラの画角を設定してもよい。そして、上記描画手段は、上記仮想カメラ制御手段によって設定された画角の上記透視投影仮想カメラに基づいて、上記仮想オブジェクトを撮像した立体視画像を描画してもよい。
【0029】
さらに他の構成例として、上記仮想カメラ制御手段は、上記調整手段によって調整された強さが最小値であるときには、透視投影仮想カメラの画角を最小値に設定することにより、正射影に近い画角に設定し、上記調整手段によって調整された強さが大きいほど、上記透視投影仮想カメラの画角を大きくしてもよい。
【0030】
上記構成例によれば、例えば、ユーザが立体視の強さを徐々に大きくして所望の強さへと調整する場合に、仮想カメラの画角がスムーズに変化するため、画像の見た目が急激に変化することなくユーザは快適に調整することができる。
【0031】
さらに他の構成例として、上記仮想カメラ制御手段は、上記調整手段によって調整された強さに応じて一対の透視投影仮想カメラの間隔を設定してもよい。そして、上記描画手段は、上記一対の透視投影仮想カメラに基づいて上記仮想オブジェクトを撮像した左目用画像と右目用画像を描画することにより立体視画像を描画してもよい。
【0032】
さらに他の構成例として、上記描画手段は、上記調整手段によって立体視の強さが上記第1の値に調整された場合には、一対の透視投影仮想カメラに基づいて上記仮想オブジェクトを撮像した左目用画像と右目用画像を描画することにより立体視画像を描画し、上記調整手段によって立体視の強さが上記第2の値に調整された場合には、1つの正射影仮想カメラに基づいて上記仮想オブジェクトを撮像した平面視画像を描画してもよい。
【0033】
さらに他の構成例として、上記仮想カメラ制御手段は、上記調整手段によって調整された強さが大きいほど、上記一対の透視投影仮想カメラの間隔を大きくしてもよい。
【0034】
さらに他の構成例として、上記仮想カメラ制御手段は、上記調整手段によって調整された強さに応じて、上記仮想オブジェクトから上記仮想カメラまでの距離を変更してもよい。
【0035】
さらに他の構成例として、上記仮想カメラ制御手段は、上記調整手段によって調整された強さが大きいほど、上記仮想カメラを上記仮想オブジェクトに近づけてもよい。
【0036】
本発明の表示制御装置の一構成例は、立体視の強さを調整する調整手段、上記調整手段によって調整された強さに応じて仮想カメラの種類を設定する仮想カメラ制御手段、および、仮想空間に配置された仮想オブジェクトを上記仮想カメラ制御手段によって設定された仮想カメラに基づいて描画する描画手段を備えている。
【0037】
本発明の表示制御方法の一構成例は、立体視の強さを調整する調整ステップ、上記調整ステップにおいて調整された強さに応じて仮想カメラの種類を設定する仮想カメラ制御ステップ、および、仮想空間に配置された仮想オブジェクトを上記仮想カメラ制御手段において設定された仮想カメラに基づいて描画する描画ステップを備えている。
【0038】
本発明の表示制御システムの一構成例は、立体視の強さを調整する調整手段、上記調整手段によって調整された強さに応じて仮想カメラの種類を設定する仮想カメラ制御手段、および、仮想空間に配置された仮想オブジェクトを上記仮想カメラ制御手段によって設定された仮想カメラに基づいて描画する描画手段を備える。
【発明の効果】
【0039】
本発明によれば、新規な、表示制御プログラム、表示制御装置、表示制御方法および表示制御システムを提供することができる。
【図面の簡単な説明】
【0040】
【図1】開状態におけるゲーム装置10の正面図
【図2A】閉状態におけるゲーム装置10の左側面図
【図2B】閉状態におけるゲーム装置10の正面図
【図2C】閉状態におけるゲーム装置10の右側面図
【図2D】閉状態におけるゲーム装置10の背面図
【図3A】3D調整スイッチ25のスライダ25aが最下点(第3の位置)に存在する様子を示す図
【図3B】3D調整スイッチ25のスライダ25aが最下点よりも上方位置(第1の位置)に存在する様子を示す図
【図3C】3D調整スイッチ25のスライダ25aが最上点(第2の位置)に存在する様子を示す図
【図4】ゲーム装置10の内部構成を示すブロック図
【図5】平面表示モードにおけるゲーム画像例
【図6】平面視画像を生成するときの仮想カメラを示す図
【図7】3Dボリューム値が最大値であるときのゲーム画像例
【図8】立体視画像を生成するときの仮想カメラを示す図
【図9】3Dボリューム値が最大値であるときにユーザによって知覚されるライダーと観客席の奥行き位置を示す図
【図10】3Dボリューム値が最小値と最大値のほぼ中間であるときのゲーム画像例
【図11】3Dボリューム値が最小値と最大値のほぼ中間であるときにユーザによって知覚されるライダーと観客席の奥行き位置を示す図
【図12】3Dボリューム値と仮想カメラの画角および間隔との対応関係を示す図
【図13】3Dボリューム値に応じて生成される左目用画像および右目用画像の例
【図14】メインメモリ32のメモリマップ
【図15】ゲーム装置10の動作を示すフローチャート
【発明を実施するための形態】
【0041】
(ゲーム装置の構成)
以下、本発明の一実施形態に係るゲーム装置について説明する。図1および図2A〜図2Dは、ゲーム装置10の外観を示す平面図である。ゲーム装置10は携帯型のゲーム装置であり、図1および図2A〜図2Dに示すように折り畳み可能に構成されている。図1は、開いた状態(開状態)におけるゲーム装置10を示し、図2A〜図2Dは、閉じた状態(閉状態)におけるゲーム装置10を示している。図1は、開状態におけるゲーム装置10の正面図である。ゲーム装置10は、撮像部によって画像を撮像し、撮像した画像を画面に表示したり、撮像した画像のデータを保存したりすることが可能である。また、ゲーム装置10は、交換可能なメモリカード内に記憶され、または、サーバーや他のゲーム装置から受信したゲームプログラムを実行可能であり、仮想空間に設定された仮想カメラで撮像した画像などのコンピュータグラフィックス処理により生成された画像を画面に表示したりすることができる。
【0042】
まず、図1および図2A〜図2Dを参照して、ゲーム装置10の外観構成について説明する。図1および図2A〜図2Dに示されるように、ゲーム装置10は、下側ハウジング11および上側ハウジング21を有する。下側ハウジング11と上側ハウジング21とは、開閉可能(折り畳み可能)に接続されている。
【0043】
(下側ハウジングの説明)
まず、下側ハウジング11の構成について説明する。図1および図2A〜図2Dに示すように、下側ハウジング11には、下側LCD(Liquid Crystal Display:液晶表示装置)12、タッチパネル13、各操作ボタン14A〜14L、アナログスティック15、LED16A〜16B、挿入口17、および、マイクロフォン用孔18が設けられる。以下、これらの詳細について説明する。
【0044】
図1に示すように、下側LCD12は下側ハウジング11に収納される。下側LCD12の画素数は、例えば、320dot×240dot(横×縦)であってもよい。下側LCD12は、後述する上側LCD22とは異なり、画像を(立体視可能ではなく)平面的に表示する表示装置である。なお、本実施形態では表示装置としてLCDを用いているが、例えばEL(Electro Luminescence:電界発光)を利用した表示装置など、他の任意の表示装置を利用してもよい。また、下側LCD12として、任意の解像度の表示装置を利用することができる。
【0045】
図1に示されるように、ゲーム装置10は、入力装置として、タッチパネル13を備えている。タッチパネル13は、下側LCD12の画面上に装着されている。なお、本実施形態では、タッチパネル13は抵抗膜方式のタッチパネルである。ただし、タッチパネルは抵抗膜方式に限らず、例えば静電容量方式等、任意の方式のタッチパネルを用いることができる。本実施形態では、タッチパネル13として、下側LCD12の解像度と同解像度(検出精度)のものを利用する。ただし、必ずしもタッチパネル13の解像度と下側LCD12の解像度が一致している必要はない。また、下側ハウジング11の上側面には挿入口17(図1および図2Dに示す点線)が設けられている。挿入口17は、タッチパネル13に対する操作を行うために用いられるタッチペン28を収納することができる。なお、タッチパネル13に対する入力は通常タッチペン28を用いて行われるが、タッチペン28に限らずユーザの指でタッチパネル13に対する入力をすることも可能である。
【0046】
各操作ボタン14A〜14Lは、所定の入力を行うための入力装置である。図1に示されるように、下側ハウジング11の内側面(主面)には、各操作ボタン14A〜14Lのうち、十字ボタン14A(方向入力ボタン14A)、ボタン14B、ボタン14C、ボタン14D、ボタン14E、電源ボタン14F、セレクトボタン14J、HOMEボタン14K、およびスタートボタン14Lが、設けられる。十字ボタン14Aは、十字の形状を有しており、上下左右の方向を指示するボタンを有している。ボタン14A〜14E、セレクトボタン14J、HOMEボタン14K、およびスタートボタン14Lには、ゲーム装置10が実行するプログラムに応じた機能が適宜割り当てられる。例えば、十字ボタン14Aは選択操作等に用いられ、各操作ボタン14B〜14Eは例えば決定操作やキャンセル操作等に用いられる。また、電源ボタン14Fは、ゲーム装置10の電源をオン/オフするために用いられる。
【0047】
アナログスティック15は、方向を指示するデバイスである。アナログスティック15は、そのキートップが、下側ハウジング11の内側面に平行にスライドするように構成されている。アナログスティック15は、ゲーム装置10が実行するプログラムに応じて機能する。例えば、3次元仮想空間に所定のオブジェクトが登場するゲームがゲーム装置10によって実行される場合、アナログスティック15は、当該所定のオブジェクトを3次元仮想空間内で移動させるための入力装置として機能する。この場合において、所定のオブジェクトはアナログスティック15のキートップがスライドした方向に移動される。なお、アナログスティック15として、上下左右および斜め方向の任意の方向に所定量だけ傾倒することでアナログ入力を可能としたものを用いても良い。
【0048】
また、下側ハウジング11の内側面には、マイクロフォン用孔18が設けられる。マイクロフォン用孔18の下部には後述する音声入力装置としてのマイク42(図4参照)が設けられ、当該マイク42がゲーム装置10の外部の音を検出する。
【0049】
図2Aは閉状態におけるゲーム装置10の左側面図であり、図2Bは閉状態におけるゲーム装置10の正面図であり、図2Cは閉状態におけるゲーム装置10の右側面図であり、図2Dは閉状態におけるゲーム装置10の背面図である。図2Bおよび図2Dに示されるように、下側ハウジング11の上側面には、Lボタン14GおよびRボタン14Hが設けられている。Lボタン14GおよびRボタン14Hは、例えば、撮像部のシャッターボタン(撮影指示ボタン)として機能することができる。また、図2Aに示されるように、下側ハウジング11の左側面には、音量ボタン14Iが設けられる。音量ボタン14Iは、ゲーム装置10が備えるスピーカの音量を調整するために用いられる。
【0050】
図2Aに示されるように、下側ハウジング11の左側面には開閉可能なカバー部11Cが設けられる。このカバー部11Cの内側には、ゲーム装置10とデータ保存用外部メモリ45とを電気的に接続するためのコネクタ(図示せず)が設けられる。データ保存用外部メモリ45は、コネクタに着脱自在に装着される。データ保存用外部メモリ45は、例えば、ゲーム装置10によって撮像された画像のデータを記憶(保存)するために用いられる。
【0051】
また、図2Dに示されるように、下側ハウジング11の上側面には、ゲーム装置10とゲームプログラムを記録した外部メモリ44を挿入するための挿入口11Dが設けられ、その挿入口11Dの内部には、外部メモリ44と電気的に着脱自在に接続するためのコネクタ(図示せず)が設けられる。当該外部メモリ44がゲーム装置10に接続されることにより、所定のゲームプログラムが実行される。
【0052】
また、図1および図2Cに示されるように、下側ハウジング11の下側面にはゲーム装置10の電源のON/OFF状況をユーザに通知する第1LED16A、下側ハウジング11の右側面にはゲーム装置10の無線通信の確立状況をユーザに通知する第2LED16Bが設けられる。ゲーム装置10は他の機器との間で無線通信を行うことが可能であり、第2LED16Bは、無線通信が確立している場合に点灯する。ゲーム装置10は、例えば、IEEE802.11b/gの規格に準拠した方式により、無線LANに接続する機能を有する。下側ハウジング11の右側面には、この無線通信の機能を有効/無効にする無線スイッチ19が設けられる(図2C参照)。
【0053】
なお、図示は省略するが、下側ハウジング11には、ゲーム装置10の電源となる充電式電池が収納され、下側ハウジング11の側面(例えば、上側面)に設けられた端子を介して当該電池を充電することができる。
【0054】
(上側ハウジングの説明)
次に、上側ハウジング21の構成について説明する。図1および図2A〜図2Dに示すように、上側ハウジング21には、上側LCD(Liquid Crystal Display:液晶表示装置)22、外側撮像部23(外側撮像部(左)23aおよび外側撮像部(右)23b)、内側撮像部24、3D調整スイッチ25、および、3Dインジケータ26が設けられる。以下、これらの詳細について説明する。
【0055】
図1に示すように、上側LCD22は上側ハウジング21に収納される。上側LCD22の画素数は、例えば、800dot×240dot(横×縦)であってもよい。なお、本実施形態では上側LCD22は液晶表示装置であるとしたが、例えばEL(Electro Luminescence:電界発光)を利用した表示装置などが利用されてもよい。また、上側LCD22として、任意の解像度の表示装置を利用することができる。
【0056】
上側LCD22は、立体視可能な画像を表示することが可能な表示装置である。また、本実施例では、実質的に同一の表示領域を用いて左目用画像と右目用画像が表示される。具体的には、左目用画像と右目用画像が所定単位で(例えば、1列ずつ)横方向に交互に表示される方式の表示装置である。または、左目用画像と右目用画像とが交互に表示される方式の表示装置であってもよい。また、本実施例では、裸眼立体視可能な表示装置である。そして、横方向に交互に表示される左目用画像と右目用画像とを左目および右目のそれぞれに分解して見えるようにレンチキュラー方式やパララックスバリア方式(視差バリア方式)のものが用いられる。本実施形態では、上側LCD22はパララックスバリア方式のものとする。上側LCD22は、右目用画像と左目用画像とを用いて、裸眼で立体視可能な画像(立体画像)を表示する。すなわち、上側LCD22は、視差バリアを用いてユーザの左目に左目用画像をユーザの右目に右目用画像を視認させることにより、ユーザにとって立体感のある立体画像(立体視可能な画像)を表示することができる。また、上側LCD22は、上記視差バリアを無効にすることが可能であり、視差バリアを無効にした場合は、画像を平面的に表示することができる(上述した立体視とは反対の意味で平面視の画像を表示することができる。すなわち、表示された同一の画像が右目にも左目にも見えるような表示モードである)。このように、上側LCD22は、立体視可能な画像を表示する立体表示モードと、画像を平面的に表示する(平面視画像を表示する)平面表示モードとを切り替えることが可能な表示装置である。この表示モードの切り替えは、後述する3D調整スイッチ25によって行われる。
【0057】
外側撮像部23は、上側ハウジング21の外側面(上側LCD22が設けられた主面と反対側の背面)21Dに設けられた2つの撮像部(23aおよび23b)の総称である。外側撮像部(左)23aと外側撮像部(右)23bの撮像方向は、いずれも当該外側面21Dの外向きの法線方向である。外側撮像部(左)23aと外側撮像部(右)23bとは、ゲーム装置10が実行するプログラムによって、ステレオカメラとして使用することが可能である。外側撮像部(左)23aおよび外側撮像部(右)23bは、それぞれ所定の共通の解像度を有する撮像素子(例えば、CCDイメージセンサやCMOSイメージセンサ等)と、レンズとを含む。レンズは、ズーム機構を有するものでもよい。
【0058】
内側撮像部24は、上側ハウジング21の内側面(主面)21Bに設けられ、当該内側面の内向きの法線方向を撮像方向とする撮像部である。内側撮像部24は、所定の解像度を有する撮像素子(例えば、CCDイメージセンサやCMOSイメージセンサ等)と、レンズとを含む。レンズは、ズーム機構を有するものでもよい。
【0059】
3D調整スイッチ25は、スライドスイッチであり、上述のように上側LCD22の表示モードを切り替えるために用いられるスイッチである。また、3D調整スイッチ25は、上側LCD22に表示された立体視可能な画像(立体画像)の立体感(立体視の強さ)を調整するために用いられる。3D調整スイッチ25のスライダ25aは、所定方向(上下方向)の任意の位置にスライド可能であり、当該スライダ25aの位置に応じて上側LCD22の表示モードが設定される。また、スライダ25aの位置に応じて、立体画像の見え方(立体視の強さ)が調整される。
【0060】
図3Aから図3Cは、3D調整スイッチ25のスライダ25aがスライドする様子を示す図である。図3Aは、3D調整スイッチ25のスライダ25aが最下点(第3の位置)に存在する様子を示す図である。図3Bは、3D調整スイッチ25のスライダ25aが最下点よりも上方位置(第1の位置)に存在する様子を示す図である。図3Cは、3D調整スイッチ25のスライダ25aが最上点(第2の位置)に存在する様子を示す図である。
【0061】
図3Aに示すように、3D調整スイッチ25のスライダ25aが最下点位置(第3の位置)に存在する場合、上側LCD22は平面表示モードに設定され、上側LCD22の画面には平面視画像が表示される(なお、上側LCD22を立体表示モードのままとして、左目用画像と右目用画像を同一の画像とすることにより平面表示してもよい)。一方、図3Bに示す位置(最下点より上側の位置(第1の位置))から図3Cに示す位置(最上点の位置(第2の位置))までの間にスライダ25aが存在する場合、上側LCD22は立体表示モードに設定される。この場合、上側LCD22の画面には立体視可能な画像が表示される。スライダ25aが第1の位置から第2の位置の間に存在する場合、スライダ25aの位置に応じて、立体画像の見え方が調整される。
【0062】
3Dインジケータ26は、上側LCD22が立体表示モードか否かを示す。3Dインジケータ26は、LEDであり、上側LCD22の立体表示モードが有効の場合に点灯する。なお、3Dインジケータ26は、上側LCD22が立体表示モードになっており、かつ、立体視画像を表示するプログラム処理が実行されているときに限り、点灯するようにしてもよい。
【0063】
また、上側ハウジング21の内側面には、スピーカ孔21Eが設けられる。後述するスピーカ43からの音声がこのスピーカ孔21Eから出力される。
【0064】
(ゲーム装置10の内部構成)
次に、図4を参照して、ゲーム装置10の内部の電気的構成について説明する。図4は、ゲーム装置10の内部構成を示すブロック図である。図4に示すように、ゲーム装置10は、上述した各部に加えて、情報処理部31、メインメモリ32、外部メモリインターフェイス(外部メモリI/F)33、データ保存用外部メモリI/F34、データ保存用内部メモリ35、無線通信モジュール36、ローカル通信モジュール37、リアルタイムクロック(RTC)38、加速度センサ39、電源回路40、およびインターフェイス回路(I/F回路)41等の電子部品を備えている。これらの電子部品は、電子回路基板上に実装されて下側ハウジング11(または上側ハウジング21でもよい)内に収納される。
【0065】
情報処理部31は、所定のプログラムを実行するためのCPU(Central Processing Unit)311、画像処理を行うGPU(Graphics Processing Unit)312等を含む情報処理手段である。情報処理部31のCPU311は、ゲーム装置10内のメモリ(例えば外部メモリI/F33に接続された外部メモリ44やデータ保存用内部メモリ35)に記憶されているプログラムを実行することによって、当該プログラムに応じた処理を実行する。なお、情報処理部31のCPU311によって実行されるプログラムは、他の機器との通信によって他の機器から取得されてもよい。また、情報処理部31は、VRAM(Video RAM)313を含む。情報処理部31のGPU312は、情報処理部31のCPU311からの命令に応じて画像を生成し、VRAM313に描画する。そして、情報処理部31のGPU312は、VRAM313に描画された画像を上側LCD22及び/又は下側LCD12に出力し、上側LCD22及び/又は下側LCD12に当該画像が表示される。
【0066】
情報処理部31には、メインメモリ32、外部メモリI/F33、データ保存用外部メモリI/F34、および、データ保存用内部メモリ35が接続される。外部メモリI/F33は、外部メモリ44を着脱自在に接続するためのインターフェイスである。また、データ保存用外部メモリI/F34は、データ保存用外部メモリ45を着脱自在に接続するためのインターフェイスである。
【0067】
メインメモリ32は、情報処理部31(のCPU311)のワーク領域やバッファ領域として用いられる揮発性の記憶手段である。すなわち、メインメモリ32は、上記プログラムに基づく処理に用いられる各種データを一時的に記憶したり、外部(外部メモリ44や他の機器等)から取得されるプログラムを一時的に記憶したりする。本実施形態では、メインメモリ32として例えばPSRAM(Pseudo−SRAM)を用いる。
【0068】
外部メモリ44は、情報処理部31によって実行されるプログラムを記憶するための不揮発性の記憶手段である。外部メモリ44は、例えば読み取り専用の半導体メモリで構成される。外部メモリ44が外部メモリI/F33に接続されると、情報処理部31は外部メモリ44に記憶されたプログラムを読み込むことができる。情報処理部31が読み込んだプログラムを実行することにより、所定の処理が行われる。データ保存用外部メモリ45は、不揮発性の読み書き可能なメモリ(例えばNAND型フラッシュメモリ)で構成され、所定のデータを格納するために用いられる。例えば、データ保存用外部メモリ45には、外側撮像部23で撮像された画像や他の機器で撮像された画像が記憶される。データ保存用外部メモリ45がデータ保存用外部メモリI/F34に接続されると、情報処理部31はデータ保存用外部メモリ45に記憶された画像を読み込み、上側LCD22及び/又は下側LCD12に当該画像を表示することができる。
【0069】
データ保存用内部メモリ35は、読み書き可能な不揮発性メモリ(例えばNAND型フラッシュメモリ)で構成され、所定のデータを格納するために用いられる。例えば、データ保存用内部メモリ35には、無線通信モジュール36を介した無線通信によってダウンロードされたデータやプログラムが格納される。
【0070】
無線通信モジュール36は、例えばIEEE802.11b/gの規格に準拠した方式により、無線LANに接続する機能を有する。また、ローカル通信モジュール37は、所定の通信方式(例えば独自プロトコルによる通信や、赤外線通信)により同種のゲーム装置との間で無線通信を行う機能を有する。無線通信モジュール36およびローカル通信モジュール37は情報処理部31に接続される。情報処理部31は、無線通信モジュール36を用いてインターネットを介して他の機器との間でデータを送受信したり、ローカル通信モジュール37を用いて同種の他のゲーム装置との間でデータを送受信したりすることができる。
【0071】
また、情報処理部31には、加速度センサ39が接続される。加速度センサ39は、3軸(xyz軸)方向に沿った直線方向の加速度(直線加速度)の大きさを検出する。加速度センサ39は、下側ハウジング11の内部に設けられる。加速度センサ39は、図1に示すように、下側ハウジング11の長辺方向をx軸、下側ハウジング11の短辺方向をy軸、下側ハウジング11の内側面(主面)に対して垂直な方向をz軸として、各軸の直線加速度の大きさを検出する。なお、加速度センサ39は、例えば静電容量式の加速度センサであるとするが、他の方式の加速度センサを用いるようにしてもよい。また、加速度センサ39は1軸又は2軸方向を検出する加速度センサであってもよい。情報処理部31は、加速度センサ39が検出した加速度を示すデータ(加速度データ)を受信して、ゲーム装置10の姿勢や動きを検出することができる。
【0072】
また、情報処理部31には、RTC38および電源回路40が接続される。RTC38は、時間をカウントして情報処理部31に出力する。情報処理部31は、RTC38によって計時された時間に基づき現在時刻(日付)を計算する。電源回路40は、ゲーム装置10が有する電源(下側ハウジング11に収納される上記充電式電池)からの電力を制御し、ゲーム装置10の各部品に電力を供給する。
【0073】
また、情報処理部31には、I/F回路41が接続される。I/F回路41には、マイク42およびスピーカ43が接続される。具体的には、I/F回路41には、図示しないアンプを介してスピーカ43が接続される。マイク42は、ユーザの音声を検知して音声信号をI/F回路41に出力する。アンプは、I/F回路41からの音声信号を増幅し、音声をスピーカ43から出力させる。また、タッチパネル13はI/F回路41に接続される。I/F回路41は、マイク42およびスピーカ43(アンプ)の制御を行う音声制御回路と、タッチパネルの制御を行うタッチパネル制御回路とを含む。音声制御回路は、音声信号に対するA/D変換およびD/A変換を行ったり、音声信号を所定の形式の音声データに変換したりする。タッチパネル制御回路は、タッチパネル13からの信号に基づいて所定の形式のタッチ位置データを生成して情報処理部31に出力する。タッチ位置データは、タッチパネル13の入力面において入力が行われた位置の座標を示す。なお、タッチパネル制御回路は、タッチパネル13からの信号の読み込み、および、タッチ位置データの生成を所定時間に1回の割合で行う。情報処理部31は、タッチ位置データを取得することにより、タッチパネル13に対して入力が行われた位置を知ることができる。
【0074】
操作ボタン14は、上記各操作ボタン14A〜14Lからなり、情報処理部31に接続される。操作ボタン14から情報処理部31へは、各操作ボタン14A〜14Iに対する入力状況(押下されたか否か)を示す操作データが出力される。情報処理部31は、操作ボタン14から操作データを取得することによって、操作ボタン14に対する入力に従った処理を実行する。
【0075】
下側LCD12および上側LCD22は情報処理部31に接続される。下側LCD12および上側LCD22は、情報処理部31(のGPU312)の指示に従って画像を表示する。本実施形態では、情報処理部31は、上側LCD22に立体画像(立体視可能な画像)を表示させる。
【0076】
具体的には、情報処理部31は、上側LCD22のLCDコントローラ(図示せず)と接続され、当該LCDコントローラに対して視差バリアのON/OFFを制御する。上側LCD22の視差バリアがONになっている場合、情報処理部31のVRAM313に格納された右目用画像と左目用画像とが、上側LCD22に出力される。より具体的には、LCDコントローラは、右目用画像について縦方向に1ライン分の画素データを読み出す処理と、左目用画像について縦方向に1ライン分の画素データを読み出す処理とを交互に繰り返すことによって、VRAM313から右目用画像と左目用画像とを読み出す。これにより、右目用画像および左目用画像が、画素を縦に1ライン毎に並んだ短冊状画像に分割され、分割された右目用画像の短冊状画像と左目用画像の短冊状画像とが交互に配置された画像が、上側LCD22の画面に表示される。そして、上側LCD22の視差バリアを介して当該画像がユーザに視認されることによって、ユーザの右目に右目用画像が、ユーザの左目に左目用画像が視認される。以上により、上側LCD22の画面には立体視可能な画像が表示される。
【0077】
外側撮像部23および内側撮像部24は、情報処理部31に接続される。外側撮像部23および内側撮像部24は、情報処理部31の指示に従って画像を撮像し、撮像した画像データを情報処理部31に出力する。
【0078】
3D調整スイッチ25は、情報処理部31に接続される。3D調整スイッチ25は、スライダ25aの位置に応じた電気信号を情報処理部31に送信する。
【0079】
また、3Dインジケータ26は、情報処理部31に接続される。情報処理部31は、3Dインジケータ26の点灯を制御する。例えば、情報処理部31は、上側LCD22が立体表示モードである場合、3Dインジケータ26を点灯させる。以上がゲーム装置10の内部構成の説明である。
【0080】
(ゲーム装置10の動作の概要)
次に、図5〜図12を参照して、ゲーム装置10の動作の概要を説明する。ここでは、一例として、ゲーム装置10において、ユーザの操作に応じてライダーがコース上を走るゲームが実行される場合について説明する。
【0081】
図5は、3D調整スイッチ25によって平面表示モードが選択されているとき(すなわち、3D調整スイッチ25のスライダ25aをユーザが第3の位置(図3A)に合わせたとき)に、ゲーム装置10の上側LCD22に表示されるゲーム画像の一例を示している。上側LCD22には、コース上を走るライダーや、コース上の障害物や、観客席などが表示されている。
【0082】
平面表示モードにおいては、図6に示すように、正射影の仮想カメラを用いて仮想空間を描画する(すなわち、仮想空間を所定の平面に向けて正射影する)ことによって、平面視画像が生成される。そして、こうして生成された平面視画像が上側LCD22に表示される。このように正射影により生成された画像は、昔のビデオゲームでよく見られた懐かしい画像であって、奥行き感の乏しい、リアル性に欠ける画像である。
【0083】
なお、平面表示モードにおいては、透視投影の仮想カメラを用いてもよい。この場合には、透視投影の仮想カメラの画角を0または0に近い値に設定することにより、正射影の仮想カメラまたは疑似正射影の仮想カメラとして用いることができる。
【0084】
なお、既存のビデオゲーム(例えば昔のビデオゲーム)を、平面表示と立体表示の両方に対応したものへと改良(グレードアップ)する場合には、平面表示時は、リアル性を高めるよりも、むしろ既存のビデオゲームにおける画像の見た目を維持して、ユーザに懐かしさを感じさせたいという要望がある。
【0085】
図7は、3D調整スイッチ25によって立体表示モードが選択され、かつ立体視の強さが最大値に設定されているとき(すなわち、3D調整スイッチ25のスライダ25aをユーザが第2の位置(図3C)に合わせたとき)に、ゲーム装置10の上側LCD22に表示されるゲーム画像の一例を示している。
【0086】
立体表示モードにおいては、図8に示すように、間隔を空けて配置された透視投影の2つの仮想カメラ(右仮想カメラおよび左仮想カメラ)を用いて仮想空間を撮像することによって、2つの画像(右目用画像および左目用画像)が描画・生成される。そして、こうして生成された右目用画像および左目用画像を合成した立体視画像が上側LCD22に表示される。
【0087】
このように、立体表示モードにおいては、間隔を空けて配置された2つの仮想カメラを用いて仮想空間を描画するので、右目用画像と左目用画像には視差が生じる。その結果として、図9に示すように、ユーザは視差によって感じられる奥行き感を感じることができる。また、立体表示モードにおいては、透視投影によって画像が描画されるので、正射影によって描画された画像と比べて、奥行き感とリアル性がより増す。
【0088】
図10は、3D調整スイッチ25によって立体表示モードが選択され、かつ立体視の強さが最小値と最大値のほぼ中間に設定されているとき(すなわち、3D調整スイッチ25のスライダ25aをユーザが第1の位置(図3B)と第2の位置(図3C)のほぼ中間に合わせたとき)に、ゲーム装置10の上側LCD22に表示されるゲーム画像の一例を示している。
【0089】
この場合は、立体視の強さが最大値であるときと比べて、右仮想カメラと左仮想カメラの間隔は狭まり、かつ、各仮想カメラの画角は小さくなる。右仮想カメラと左仮想カメラの間隔が狭まることによって、右目用画像と左目用画像の視差が減るため、図11に示すように、立体視の強さが最大値であるときと比べて、視差によって感じられる奥行き感は減る。また、各仮想カメラの画角が小さくなることによって、透視投影によって感じられる奥行き感も減る。
【0090】
なお、本実施形態では、立体視の強さは、3D調整スイッチ25からの出力信号に基づく3Dボリューム値に応じて決定される。3Dボリューム値は、例えば0.0〜1.0の範囲の実数値であって、スライダ25aが第1の位置(図3B)にあるときには0.0となり、スライダ25aが第1の位置から第3の位置に近づくほど大きくなり、スライダ25aが第2の位置(図3C)にあるときには1.0となる。
【0091】
なお、他の実施形態では、3Dボリューム値は、スライダ25aが第3の位置(図3A)にあるときには0.0となり、スライダ25aが第1の位置(図3B)にあるときには0.0に近い正の値となり、スライダ25aが第1の位置から第2の位置(図3C)に近づくほど大きくなり、スライダ25aが第2の位置にあるときには1.0となってもよい。この場合、3Dボリューム値が最小値のとき(すなわち、スライダ25aが第3の位置にあるとき)には、右仮想カメラと左仮想カメラを疑似正射影仮想カメラ(すなわち、仮想カメラの間隔を0または0に近い値にし、仮想カメラの画角を0に近い値とする)として利用して、右仮想カメラと左仮想カメラの一方の疑似正射影仮想カメラだけを用いて、上側LCD22に、平面視画像を表示するようにしてもよい。なお、平面視画像を表示する代わりに、右仮想カメラと左仮想カメラの両方の疑似正射影仮想カメラを用いて平面視画像に近い立体視画像を生成してもよい。
【0092】
右仮想カメラと左仮想カメラのそれぞれの画角と、右仮想カメラと左仮想カメラの間隔は、上記の3Dボリューム値に応じて決定される。図12に示すように、右仮想カメラと左仮想カメラのそれぞれの画角は、3Dボリューム値が0.0のときは予め定められた最小画角Aminとなり、3Dボリューム値が大きくなるほど大きくなり、3Dボリューム値が1.0のときは予め定められた最大画角Amaxとなる。また、右仮想カメラと左仮想カメラの間隔は、3Dボリューム値が0.0のときは予め定められた最小間隔Dmin(0または0に近い値)となり、3Dボリューム値が大きくなるほど大きくなり、3Dボリューム値が1.0のときは予め定められた最大間隔Dmaxとなる。
【0093】
3Dボリューム値に応じた仮想カメラの設定のための計算式の一例を下記に示す。なお、下記の計算式において、m3DVol(0.0f〜1.0f)は3Dボリューム値を表しており、mFov2Lenは、3Dボリューム値が最小であるときの描画対象(仮想オブジェクト)から仮想カメラまでの距離を表しており、mMaxFovは、3Dボリューム値が最大であるときの仮想カメラの画角を表している。なお、単に仮想カメラの画角を大きくすると、画面に表示される描画対象の大きさが小さくなってしまうので、本実施形態では、下記の計算式のように、仮想カメラの画角(下記の画角設定値)が大きくなるほど仮想カメラ座標が小さくなる(すなわち、仮想カメラを描画対象に近づける)ようにすることで、画面に表示される描画対象の大きさが維持されるようにしている。
画角設定値=1.0f+(mMaxFov*m3DVol)
仮想カメラ座標=mFov2Len/画角設定値−((画角設定値*画角係数)/mFov2Len)
上記の計算結果に基づいて透視投影仮想カメラが設定される。
【0094】
なお、ユーザがスライダ25aを操作して、表示モードを平面表示モードから立体表示モードに(または、立体表示モードから平面表示モードに)切り替えたときに、画像の見た目がスムーズに変化するように、上記最小画角および上記最小間隔は、0に近い値であるのが望ましい。画角が0に近い仮想カメラは、疑似正射影仮想カメラであると言える。このような効果は、図3A〜図3Cに示す3D調整スイッチ25のように、平面表示モードに対応する第3の位置と、立体表示モードにおいて立体視の強さが最小値となるような第1の位置とが隣接しており、かつ、スライダ25aが第3の位置から離れるほど立体表示モードにおける立体視の強さが大きくなるようなスイッチを採用することにより、より効果的となる。
【0095】
なお、立体表示モードのときも平面表示モードのときも同じ透視投影仮想カメラを用い、平面表示モードのときには、透視投影カメラの画角を最小値に設定することにより、正射影仮想カメラまたは疑似正射影仮想カメラとして利用し、立体表示モードのときには、立体視の強さが大きくなるにしたがって、透視投影仮想カメラの画角が大きくなるようにしてもよい。
【0096】
上記のような画角および間隔の制御により、左仮想カメラに基づいて描画される左目用画像と、右仮想カメラに基づいて描画される右目用画像は、3Dボリューム値に応じて図13に示すように変化する。
【0097】
(ゲーム装置10の動作の詳細)
図14は、ゲーム装置10のメインメモリ32に格納されるプログラムおよびデータの一例を示している。メインメモリ32には、表示制御プログラム、仮想オブジェクトデータ、仮想カメラデータ、3Dボリューム値、操作データなどが格納される。
【0098】
表示制御プログラムは、前述したような平面視画像および立体視画像を生成するためのプログラムであって、例えばゲーム開始時に、後述する仮想オブジェクトデータとともに、外部メモリ44等からメインメモリ32へとロードされる。
【0099】
仮想オブジェクトデータは、仮想空間内の仮想オブジェクトに関するデータであって、仮想オブジェクトの形状や色などに関するデータである。また、仮想空間における仮想オブジェクトの位置や姿勢を示すデータも含まれており、これらのデータは、ゲームの進行に応じて随時更新される。
【0100】
仮想カメラデータは、仮想空間を描画するために用いられる仮想カメラに関するデータであって、仮想カメラの位置や姿勢等のデータが含まれる。仮想カメラデータには、平面視画像を生成する際に用いられる正射影仮想カメラに関するデータと、立体視画像を生成する際に用いられる透視投影仮想カメラ(右仮想カメラおよび左仮想カメラ)に関するデータが含まれている。透視投影仮想カメラに関するデータには、右仮想カメラおよび左仮想カメラのそれぞれの画角や、右仮想カメラと左仮想カメラの間隔(または右仮想カメラおよび左仮想カメラのそれぞれの座標位置)が含まれる。
【0101】
3Dボリューム値は、前述のように、3D調整スイッチ25からの出力信号に基づいて随時取得されて、メインメモリ32に格納される。
【0102】
操作データは、操作ボタン14等の入力装置からの出力信号に基づいて随時取得されて、メインメモリ32に格納される。
【0103】
図15は、表示制御プログラムに基づいて実行されるCPU311の処理の流れを示すフローチャートである。
【0104】
まず、図15のステップS11で、CPU311は、仮想空間に仮想オブジェクト(地面、障害物、ライダー、観客席)を配置する。
【0105】
ステップS12では、CPU311は、3D調整スイッチ25からの出力信号に基づいて、立体表示モードが選択されているかどうか(すなわち、スライダ25aが第1の位置(図3B)から第2の位置(図3C)までの範囲に位置するかどうか)を判断する。そして、立体表示モードが選択されている場合には処理はステップS13に進み、そうでない場合(すなわち、平面表示モードが選択されている場合には処理はステップS16に進む。
【0106】
ステップS13では、CPU311は、3D調整スイッチ25からの出力信号に基づいて、3Dボリューム値を取得する。
【0107】
ステップS14では、CPU311は、取得した3Dボリューム値に基づいて、一対の透視投影仮想カメラ(すなわち、右仮想カメラおよび左仮想カメラ)のそれぞれの画角と、右仮想カメラと左仮想カメラの間隔(右仮想カメラおよび左仮想カメラのそれぞれの位置を示す座標)を決定する。これらは、図12に示すようなテーブルを参照して決定してもよいし、前述したような所定の計算式を用いて決定してもよい。
【0108】
ステップS15では、CPU311は、一対の透視投影仮想カメラを用いて画像(右目用画像および左目用画像)を描画する。この描画処理は、典型的には、CPU311からの描画指示に応じてGPU312によって行われる。こうして生成されたこれらの画像は、適宜に合成されて、所定のタイミングで上側LCD22に立体表示される。
【0109】
ステップS16では、CPU311は、1つの正射影仮想カメラを用いて画像を描画する。この描画処理は、典型的には、CPU311からの描画指示に応じてGPU312によって行われる。こうして生成された画像は、所定のタイミングで上側LCD22に平面表示される。
【0110】
ステップS17では、CPU311は、操作ボタン14等からの出力信号に基づいて、操作データを取得する。
【0111】
ステップS18では、CPU311は、取得した操作データに基づいて、仮想オブジェクト(本実施形態ではライダー)を制御する。
【0112】
ステップS19では、CPU311は、ゲームが終了したかどうかを判断し、ゲームが終了した場合には表示制御プログラムの実行を終了し、そうでない場合には処理はステップS12に戻る。
【0113】
(本実施形態の効果)
以上のように、本実施形態によれば、立体表示モードのときには透視投影仮想カメラが用いられ、平面表示モードのときには正射影仮想カメラが用いられる。よって、立体表示モードのときは、平面表示モードのときと比較して、視差によって感じられる奥行き感に加えて、透視投影によって感じられる奥行き感もユーザに感じさせることができ、立体感を強調することができる。
【0114】
また、本実施形態によれば、立体表示モードのときに、立体視の強さ(すなわち、スライダ25aの位置)に応じて仮想カメラの画角が変化するので、立体視の強さが変化したときに、視差によって感じられる奥行き感の変化に加えて、透視投影によって感じられる奥行き感の変化もユーザに感じさせることができ、立体感の変化を強調することができる。
【0115】
また、本実施形態によれば、立体表示モードのときも平面表示モードのときも透視投影仮想カメラが用いられ、平面表示モードのときには、透視投影カメラの画角を最小値に設定することにより、正射影仮想カメラまたは疑似正射影仮想カメラとして用いることができ、立体表示モードのときには、立体視の強さが大きくなるにしたがって、透視投影仮想カメラの画角が大きくなるように変化するので、立体視の強さが変化したときに、視差(左右の仮想カメラ間の距離)によって感じられる奥行き感の変化に加えて、透視投影カメラの画角によって感じられる奥行き感の変化もユーザに感じさせることができ、立体感の変化を強調することができる。
【0116】
(変形例)
なお、上記実施形態では、平面表示モードのときに正射影仮想カメラを用いて仮想空間を描画する例を説明したが、他の実施形態では、平面表示モードのときに、正射影に近い画角の透視投影仮想カメラ(疑似正射影仮想カメラ)を用いて仮想空間を描画するようにしてもよい。また、平面表示モードのときに、立体表示モードのときに用いられる一対の仮想カメラの間隔を0に設定(右仮想カメラおよび左仮想カメラのそれぞれの座標位置を同一に設定)し、それらのうちの一方の仮想カメラだけを用いて仮想空間を描画するようにしてもよい。
【0117】
また、上記実施形態では、立体表示モードのときに一対の透視投影仮想カメラを用いる例を説明したが、他の実施形態では、立体表示モードのときに1つの透視投影仮想カメラを用いて、当該透視投影仮想カメラの位置を適宜にずらすことによって、視点の異なる2つの画像(右目用画像および左目用画像)を描画するようにしてもよい。
【0118】
また、上記実施形態では、平面表示モードのときと立体表示モードのときとで、正射影仮想カメラと透視投影仮想カメラとを切り替える例(2種類のカメラの切り替え)を説明したが、本発明はこれに限らず、平面表示モードのときと立体表示モードのときとで、仮想カメラのパラメータ(例えば画角など)を変化させさえすればよい。これにより、平面表示モードのときと立体表示モードのときとで、視差によって生じる奥行き感の変化に加えて、仮想カメラのパラメータに応じて画像の見た目も変化させることができる。あるいは、画角の大きさの異なる透視投影仮想カメラを複数種類用意しておき、取得した3Dボリューム値に基づいて、対応する透視投影仮想カメラを設定するようにしてもよい。
【0119】
また、上記実施形態では、ユーザがライダーを操作して遊ぶゲームが実行される例を説明したが、他の実施形態では、ゲーム以外の任意のアプリケーションソフトウェアが実行されてもよい。
【0120】
また、上記実施形態では、表示制御プログラムの処理がCPU(CPU311)によって実行される例を説明したが、他の実施形態では、表示制御プログラムの少なくとも一部の処理がハードウェアのみによって実現されてもよい。
【0121】
また、上記実施形態では、立体表示が可能な表示装置(上側LCD22)を備えた携帯型のゲーム装置について説明したが、他の実施形態では、立体表示が可能な表示装置へと画像信号を出力可能な任意の情報処理装置(据え置き型ゲーム装置、デスクトップパソコン、ノートパソコン、携帯電話など)を利用してもよい。
【0122】
また、上記実施形態では、表示制御プログラムの処理が1つのCPU(CPU311)によって実行される例を説明したが、他の実施形態では、表示制御プログラムの処理が複数のプロセッサによって分担して実行されてもよい。また、これらの複数のプロセッサは、同一の情報処理装置に内蔵されていてもよいし、サーバー装置とクライアント装置のように複数の情報処理装置に分散して設けられていてもよい。
【符号の説明】
【0123】
10 ゲーム装置
11 下側ハウジング
21 上側ハウジング
22 上側LCD
25 3D調整スイッチ
25a スライダ

【特許請求の範囲】
【請求項1】
表示制御装置のコンピュータを、
立体視の強さを調整する調整手段、
前記調整手段によって調整された強さに応じて仮想カメラの画角を設定する仮想カメラ制御手段、および、
仮想空間に配置された仮想オブジェクトを前記仮想カメラ制御手段によって設定された前記仮想カメラに基づいて描画する描画手段として機能させる、表示制御プログラム。
【請求項2】
前記仮想カメラ制御手段は、
前記調整手段によって立体視の強さが第1の値に調整された場合には前記仮想カメラの画角を第1の画角に設定し、
前記調整手段によって立体視の強さが第2の値に調整された場合には前記仮想カメラの画角を第2の画角に設定し、
前記描画手段は、
前記カメラ制御手段によって前記仮想カメラの画角が第1の画角に設定されたときには、立体視画像を描画し、
前記カメラ制御手段によって前記仮想カメラの画角が第2の画角に設定されたときには、平面視画像を描画する、請求項1に記載の表示制御プログラム。
【請求項3】
前記第1の値は前記第2の値よりも大きく、前記第1の画角は前記第2の画角よりも大きい、請求項2に記載の表示制御プログラム。
【請求項4】
前記仮想カメラ制御手段は、前記調整手段によって調整された強さが大きいほど、前記仮想カメラの画角を大きくする、請求項1〜3のいずれか1項に記載の表示制御プログラム。
【請求項5】
前記仮想カメラ制御手段は、前記調整手段によって調整された強さに応じて一対の仮想カメラの間隔を変更し、
前記描画手段は、前記一対の仮想カメラに基づいて前記仮想オブジェクトを撮像した左目用画像と右目用画像を描画することにより立体視画像を描画する、請求項1〜4のいずれか1項に記載の表示制御プログラム。
【請求項6】
前記仮想カメラ制御手段は、前記調整手段によって調整された強さが大きいほど、前記一対の仮想カメラの間隔を大きくする、請求項5に記載の表示制御プログラム。
【請求項7】
前記一対の仮想カメラは透視投影仮想カメラであり、
前記仮想カメラ制御手段は、前記調整手段によって立体視の強さが最小値に調整された場合には、前記一対の透視投影仮想カメラの画角を最小値に設定することにより正射影に近い画角に設定するとともに、前記一対の透視投影仮想カメラの間隔を0または0に近い値に設定する、請求項5または6に記載の表示制御プログラム。
【請求項8】
前記仮想カメラ制御手段は、前記調整手段によって調整された強さに応じて、前記仮想オブジェクトから前記仮想カメラまでの距離を変更する、請求項1に記載の表示制御システム。
【請求項9】
前記仮想カメラ制御手段は、前記調整手段によって調整された強さが大きいほど、前記仮想カメラを前記仮想オブジェクトに近づける、請求項8に記載の表示制御プログラム。
【請求項10】
立体視の強さを調整する調整手段、
前記調整手段によって調整された強さに応じて仮想カメラの画角を設定する仮想カメラ制御手段、および、
仮想空間に配置された仮想オブジェクトを前記仮想カメラ制御手段によって設定された前記仮想カメラに基づいて描画する描画手段を備える、表示制御装置。
【請求項11】
立体視の強さを調整する調整ステップ、
前記調整ステップにおいて調整された強さに応じて仮想カメラの画角を設定する仮想カメラ制御ステップ、および、
仮想空間に配置された仮想オブジェクトを前記仮想カメラ制御ステップにおいて設定された前記仮想カメラに基づいて描画する描画ステップを備える、表示制御方法。
【請求項12】
立体視の強さを調整する調整手段、
前記調整手段によって調整された強さに応じて仮想カメラの画角を設定する仮想カメラ制御手段、および、
仮想空間に配置された仮想オブジェクトを前記仮想カメラ制御手段によって設定された前記仮想カメラに基づいて描画する描画手段を備える、表示制御システム。
【請求項13】
表示制御装置のコンピュータを、
立体視の強さを調整する調整手段、
前記調整手段によって調整された強さに応じて仮想カメラの種類を設定する仮想カメラ制御手段、および、
仮想空間に配置された仮想オブジェクトを前記仮想カメラ制御手段によって設定された仮想カメラに基づいて描画する描画手段として機能させる、表示制御プログラム。
【請求項14】
前記仮想カメラ制御手段は、
前記調整手段によって立体視の強さが第1の値に調整された場合には、第1の仮想カメラを設定し、
前記調整手段によって立体視の強さが第2の値に調整された場合には、前記第1の仮想カメラとは種類の異なる第2の仮想カメラを設定し、
前記描画手段は、
前記第1の仮想カメラに基づいて前記仮想オブジェクトを撮像した立体視画像を描画し、
前記第2の仮想カメラに基づいて前記仮想オブジェクトを撮像した平面視画像を描画する、請求項13に記載の表示制御プログラム。
【請求項15】
前記仮想カメラ制御手段は、
前記調整手段によって立体視の強さが第1の値に調整された場合には、透視投影仮想カメラを設定し、
前記調整手段によって立体視の強さが第2の値に調整された場合には、正射影仮想カメラ、または、疑似正射影仮想カメラを設定し、
前記描画手段は、
前記透視投影仮想カメラに基づいて前記仮想オブジェクトを撮像した立体視画像を描画し、
前記正射影仮想カメラ、または、疑似正射影仮想カメラに基づいて、前記仮想オブジェクトを撮像した平面視画像を描画する、請求項14に記載の表示制御プログラム。
【請求項16】
前記第1の値は前記第2の値よりも大きい、請求項14または15に記載の表示制御プログラム。
【請求項17】
前記仮想カメラ制御手段は、前記調整手段によって調整された強さに応じて前記透視投影仮想カメラの画角を設定し、
前記描画手段は、前記仮想カメラ制御手段によって設定された画角の前記透視投影仮想カメラに基づいて、前記仮想オブジェクトを撮像した立体視画像を描画する、請求項15または16に記載の表示制御プログラム。
【請求項18】
前記仮想カメラ制御手段は、
前記調整手段によって調整された強さが最小値であるときには、透視投影仮想カメラの画角を最小値に設定することにより、正射影に近い画角に設定し、
前記調整手段によって調整された強さが大きいほど、前記透視投影仮想カメラの画角を大きくする、請求項15〜17のいずれか1項に記載の表示制御プログラム。
【請求項19】
前記仮想カメラ制御手段は、前記調整手段によって調整された強さに応じて一対の透視投影仮想カメラの間隔を設定し、
前記描画手段は、前記一対の透視投影仮想カメラに基づいて前記仮想オブジェクトを撮像した左目用画像と右目用画像を描画することにより立体視画像を描画する、請求項13〜18のいずれか1項に記載の表示制御プログラム。
【請求項20】
前記描画手段は、
前記調整手段によって立体視の強さが前記第1の値に調整された場合には、一対の透視投影仮想カメラに基づいて前記仮想オブジェクトを撮像した左目用画像と右目用画像を描画することにより立体視画像を描画し、
前記調整手段によって立体視の強さが前記第2の値に調整された場合には、1つの正射影仮想カメラに基づいて前記仮想オブジェクトを撮像した平面視画像を描画する、請求項14に記載の表示制御プログラム。
【請求項21】
前記仮想カメラ制御手段は、前記調整手段によって調整された強さが大きいほど、前記一対の透視投影仮想カメラの間隔を大きくする、請求項20に記載の表示制御プログラム。
【請求項22】
前記仮想カメラ制御手段は、前記調整手段によって調整された強さに応じて、前記仮想オブジェクトから前記仮想カメラまでの距離を変更する、請求項13に記載の表示制御システム。
【請求項23】
前記仮想カメラ制御手段は、前記調整手段によって調整された強さが大きいほど、前記仮想カメラを前記仮想オブジェクトに近づける、請求項22に記載の表示制御プログラム。
【請求項24】
立体視の強さを調整する調整手段、
前記調整手段によって調整された強さに応じて仮想カメラの種類を設定する仮想カメラ制御手段、および、
仮想空間に配置された仮想オブジェクトを前記仮想カメラ制御手段によって設定された仮想カメラに基づいて描画する描画手段を備える、表示制御装置。
【請求項25】
立体視の強さを調整する調整ステップ、
前記調整ステップにおいて調整された強さに応じて仮想カメラの種類を設定する仮想カメラ制御ステップ、および、
仮想空間に配置された仮想オブジェクトを前記仮想カメラ制御手段において設定された仮想カメラに基づいて描画する描画ステップを備える、表示制御方法。
【請求項26】
立体視の強さを調整する調整手段、
前記調整手段によって調整された強さに応じて仮想カメラの種類を設定する仮想カメラ制御手段、および、
仮想空間に配置された仮想オブジェクトを前記仮想カメラ制御手段によって設定された仮想カメラに基づいて描画する描画手段を備える、表示制御システム。

【図1】
image rotate

【図2A】
image rotate

【図2B】
image rotate

【図2C】
image rotate

【図2D】
image rotate

【図3A】
image rotate

【図3B】
image rotate

【図3C】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate


【公開番号】特開2012−142804(P2012−142804A)
【公開日】平成24年7月26日(2012.7.26)
【国際特許分類】
【出願番号】特願2010−294536(P2010−294536)
【出願日】平成22年12月29日(2010.12.29)
【出願人】(000233778)任天堂株式会社 (1,115)
【Fターム(参考)】