【文献】
石崎 友久 大河原 浩一,AutoCAD+Autodesk Impressionによる 2D/3D 建築プレゼンテーション入門,日本,株式会社ビー・エヌ・エヌ新社,2008年12月20日,初版,P.3-8,77-92
(58)【調査した分野】(Int.Cl.,DB名)
前記コンピュータを、前記平面視オブジェクトを、前記平面視オブジェクトの立体モデルを表わす立体モデルオブジェクトに変換するオブジェクト変換手段としてさらに機能させ、
前記平面視オブジェクト表示制御手段は、前記平面視オブジェクトとして、当該平面視オブジェクトの平面モデルを表わす平面モデルオブジェクトを前記表示部に表示し、
前記オブジェクト変換手段は、前記平面モデルオブジェクトを、前記立体モデルオブジェクトに変換して、当該立体モデルオブジェクトを前記仮想空間に配置し、
前記表示切替手段は、前記オブジェクト変換手段によって変換された立体モデルオブジェクトが配置された前記仮想空間を平面視表示から立体視表示に切り替える、請求項2に記載の表示制御プログラム。
前記コンピュータを、前記表示切替手段によって平面視表示に切り替えられた前記仮想空間の平面視画像をキャプチャ画像として取得し、当該キャプチャ画像を前記表示部に出力するキャプチャ画像出力制御手段としてさらに機能させ、
前記平面視オブジェクト表示制御手段は、前記平面視オブジェクトを、前記表示部に出力された前記キャプチャ画像上に表示する、請求項1に記載の表示制御プログラム。
前記キャプチャ画像出力制御手段は、前記キャプチャ画像を前記表示部に表示される前記仮想空間内の視差の生じない基準面上に出力する、請求項6に記載の表示制御プログラム。
前記コンピュータを、前記キャプチャ画像出力制御手段によって出力された前記キャプチャ画像を前記仮想空間において奥行き方向に傾くように変化させるキャプチャ画像変化手段としてさらに機能させる、請求項6または7に記載の表示制御プログラム。
前記表示切替手段は、前記仮想カメラ設定手段に前記2つの仮想カメラの前記所定の間隔を徐々に小さく設定させることにより、前記立体視表示制御手段によって立体視表示された仮想空間を平面視表示に切り替える、請求項9に記載の表示制御プログラム。
【発明を実施するための形態】
【0039】
(一実施形態)
以下、本発明の一実施形態に係る表示制御装置であるゲーム装置について説明する。なお、本発明は、このような装置に限定されるものではなく、このような装置の機能を実現する表示制御システムであってもよく、このような装置における表示制御方法であってもよく、このような装置において実行される表示制御プログラムであってもよい。更には、本発明は、この表示制御プログラムを記録したコンピュータ読み取り可能な記録媒体であってもよい。
【0040】
(ゲーム装置の外観構成)
以下、本発明の一実施形態に係るゲーム装置について説明する。
図1及び
図2は、ゲーム装置10の外観を示す平面図である。ゲーム装置10は携帯型のゲーム装置であり、
図1及び
図2に示すように折り畳み可能に構成されている。
図1は、開いた状態(開状態)におけるゲーム装置10を示し、
図2は、閉じた状態(閉状態)におけるゲーム装置10を示している。
図1は、開状態におけるゲーム装置10の正面図である。ゲーム装置10は、撮像部によって画像を撮像し、撮像した画像を画面に表示したり、撮像した画像のデータを保存したりすることが可能である。また、ゲーム装置10は、交換可能なメモリカード内に記憶され、又は、サーバや他のゲーム装置から受信したゲームプログラムを実行可能であり、仮想空間に設定された仮想カメラで撮像した画像などのコンピュータグラフィックス処理により生成された画像を画面に表示したりすることができる。
【0041】
まず、
図1及び
図2を参照して、ゲーム装置10の外観構成について説明する。
図1及び
図2に示されるように、ゲーム装置10は、下側ハウジング11及び上側ハウジング21を有する。下側ハウジング11と上側ハウジング21とは、開閉可能(折り畳み可能)に接続されている。
【0042】
(下側ハウジングの説明)
まず、下側ハウジング11の構成について説明する。
図1及び
図2に示すように、下側ハウジング11には、下側LCD(Liquid Crystal Display:液晶表示装置)12、タッチパネル13、各操作ボタン14A〜14L、アナログスティック15、LED16A〜16B、挿入口17、及び、マイクロフォン用孔18が設けられる。以下、これらの詳細について説明する。
【0043】
図1に示すように、下側LCD12は下側ハウジング11に収納される。下側LCD12の画素数は、例えば、320dot×240dot(横×縦)であってもよい。下側LCD12は、後述する上側LCD22とは異なり、画像を(立体視可能ではなく)平面的に表示する表示装置である。なお、本実施形態では表示装置としてLCDを用いているが、例えばEL(Electro Luminescence:電界発光)を利用した表示装置など、他の任意の表示装置を利用してもよい。また、下側LCD12として、任意の解像度の表示装置を利用することができる。
【0044】
図1に示されるように、ゲーム装置10は、入力装置として、タッチパネル13を備えている。タッチパネル13は、下側LCD12の画面上に装着されている。なお、本実施形態では、タッチパネル13は抵抗膜方式のタッチパネルである。ただし、タッチパネルは抵抗膜方式に限らず、例えば静電容量方式等、任意の方式のタッチパネルを用いることができる。本実施形態では、タッチパネル13として、下側LCD12の解像度と同解像度(検出精度)のものを利用する。ただし、必ずしもタッチパネル13の解像度と下側LCD12の解像度が一致している必要はない。また、下側ハウジング11の上側面には挿入口17(
図1及び
図2(d)に示す点線)が設けられている。挿入口17は、タッチパネル13に対する操作を行うために用いられるタッチペン28を収納することができる。なお、タッチパネル13に対する入力は通常タッチペン28を用いて行われるが、タッチペン28に限らずユーザの指でタッチパネル13に対する入力をすることも可能である。
【0045】
各操作ボタン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が実行するプログラムに応じた機能が適宜割り当てられる。
【0046】
アナログスティック15は、方向を指示するデバイスである。アナログスティック15は、そのキートップが、下側ハウジング11の内側面に平行にスライドするように構成されている。アナログスティック15は、ゲーム装置10が実行するプログラムに応じて機能する。なお、アナログスティック15として、上下左右及び斜め方向の任意の方向に所定量だけ傾倒することでアナログ入力を可能としたものを用いても良い。
【0047】
また、下側ハウジング11の内側面には、マイクロフォン用孔18が設けられる。マイクロフォン用孔18の下部には後述する音声入力装置としてのマイク42(
図3参照)が設けられ、当該マイク42がゲーム装置10の外部の音を検出する。
【0048】
図2(a)は閉状態におけるゲーム装置10の左側面図であり、
図2(b)は閉状態におけるゲーム装置10の正面図であり、
図2(c)は閉状態におけるゲーム装置10の右側面図であり、
図2(d)は閉状態におけるゲーム装置10の背面図である。
図2(b)及び(d)に示されるように、下側ハウジング11の上側面には、Lボタン14G及びRボタン14Hが設けられている。Lボタン14G及びRボタン14Hは、例えば、撮像部のシャッターボタン(撮影指示ボタン)として機能することができる。また、
図2(a)に示されるように、下側ハウジング11の左側面には、音量ボタン14Iが設けられる。音量ボタン14Iは、ゲーム装置10が備えるスピーカの音量を調整するために用いられる。
【0049】
図2(a)に示されるように、下側ハウジング11の左側面には開閉可能なカバー部11Cが設けられる。このカバー部11Cの内側には、ゲーム装置10とデータ保存用外部メモリ45とを電気的に接続するためのコネクタ(図示せず)が設けられる。データ保存用外部メモリ45は、コネクタに着脱自在に装着される。データ保存用外部メモリ45は、例えば、ゲーム装置10によって撮像された画像のデータを記憶(保存)するために用いられる。
【0050】
また、
図2(d)に示されるように、下側ハウジング11の上側面には、ゲーム装置10とゲームプログラムを記録した外部メモリ44を挿入するための挿入口11Dが設けられ、その挿入口11Dの内部には、外部メモリ44と電気的に着脱自在に接続するためのコネクタ(図示せず)が設けられる。当該外部メモリ44がゲーム装置10に接続されることにより、所定のゲームプログラムが実行される。
【0051】
また、
図1及び
図2(c)に示されるように、下側ハウジング11の下側面にはゲーム装置10の電源のON/OFF状況をユーザに通知する第1LED16A、下側ハウジング11の右側面にはゲーム装置10の無線通信の確立状況をユーザに通知する第2LED16Bが設けられる。ゲーム装置10は他の機器との間で無線通信を行うことが可能であり、第2LED16Bは、無線通信が確立している場合に点灯する。ゲーム装置10は、例えば、IEEE802.11b/gの規格に準拠した方式により、無線LANに接続する機能を有する。下側ハウジング11の右側面には、この無線通信の機能を有効/無効にする無線スイッチ19が設けられる(
図2(c)参照)。
【0052】
なお、図示は省略するが、下側ハウジング11には、ゲーム装置10の電源となる充電式電池が収納され、下側ハウジング11の側面(例えば、上側面)に設けられた端子を介して当該電池を充電することができる。
【0053】
(上側ハウジングの説明)
次に、上側ハウジング21の構成について説明する。
図1及び
図2に示すように、上側ハウジング21には、上側LCD(Liquid Crystal Display:液晶表示装置)22、外側撮像部23(外側撮像部(左)23a及び外側撮像部(右)23b)、内側撮像部24、3D調整スイッチ25、及び、3Dインジケータ26が設けられる。以下、これらの詳細について説明する。
【0054】
図1に示すように、上側LCD22は上側ハウジング21に収納される。上側LCD22の画素数は、例えば、800dot×240dot(横×縦)であってもよい。なお、本実施形態では上側LCD22は液晶表示装置であるとしたが、例えばEL(Electro Luminescence:電界発光)を利用した表示装置などが利用されてもよい。また、上側LCD22として、任意の解像度の表示装置を利用することができる。
【0055】
上側LCD22は、立体視可能な画像(立体視画像)を表示することが可能な表示装置である。また、本実施形態では、実質的に同一の表示領域を用いて左目用画像と右目用画像が表示される。具体的には、左目用画像と右目用画像が所定単位で(例えば、1列ずつ)横方向に交互に表示される方式の表示装置である。又は、左目用画像と右目用画像とが時分割で交互に表示される方式の表示装置であってもよい。また、本実施形態では、裸眼立体視可能な表示装置である。そして、横方向に交互に表示される左目用画像と右目用画像とを左目及び右目のそれぞれに分解して見えるようにレンチキュラー方式やパララックスバリア方式(視差バリア方式)のものが用いられる。本実施形態では、上側LCD22はパララックスバリア方式のものとする。上側LCD22は、右目用画像と左目用画像とを用いて、裸眼で立体視可能な画像(立体視画像)を表示する。すなわち、上側LCD22は、視差バリアを用いてユーザの左目に左目用画像を、ユーザの右目に右目用画像を視認させることにより、ユーザにとって立体感のある立体視画像(立体視可能な画像)を表示することができる。また、上側LCD22は、上記視差バリアを無効にすることが可能であり、視差バリアを無効にした場合は、画像を平面的に表示することができる(上述した立体視とは反対の意味で平面視の画像を表示することができる。すなわち、表示された同一の画像が右目にも左目にも見えるような表示モードである)。このように、上側LCD22は、立体視可能な画像を表示する立体表示モードと、画像を平面的に表示する(平面視表示する)平面表示モードとを切り替えることが可能な表示装置である。この表示モードの切り替えは、後述する3D調整スイッチ25によって行われる。
【0056】
外側撮像部23は、上側ハウジング21の外側面(上側LCD22が設けられた主面と反対側の背面)21Dに設けられた2つの撮像部(23aおよび23b)の総称である。本実施形態では、外側撮像部23は、外側撮像部(左)23aおよび外側撮像部(右)23bの2つの撮像部で構成される。外側撮像部(左)23aと外側撮像部(右)23bの撮像方向は、いずれも当該外側面21Dの外向きの法線方向(
図1に示すz軸正方向)である。すなわち、外側撮像部(左)23aの撮像方向および外側撮像部(右)23bの撮像方向は、平行である。外側撮像部(左)23aと外側撮像部(右)23bとは、ゲーム装置10が実行するプログラムによって、ステレオカメラとして使用することが可能である。また、プログラムによっては、2つの外側撮像部(23aおよび23b)のいずれか一方を単独で用いて、外側撮像部23を非ステレオカメラとして使用することも可能である。また、プログラムによっては、2つの外側撮像部(23aおよび23b)で撮像した画像を合成してまたは補完的に使用することにより撮像範囲を広げた撮像をおこなうことも可能である。外側撮像部(左)23aおよび外側撮像部(右)23bは、それぞれ所定の共通の解像度を有する撮像素子(例えば、CCDイメージセンサやCMOSイメージセンサ等)と、レンズとを含む。レンズは、ズーム機構を有するものでもよい。
【0057】
図1の破線および
図2(b)の実線で示されるように、外側撮像部23を構成する外側撮像部(左)23aおよび外側撮像部(右)23bは、上側LCD22の画面の横方向(
図1に示すx軸方向)と平行に並べられて配置される。すなわち、2つの撮像部を結んだ直線が上側LCD22の画面の横方向と平行になるように、外側撮像部(左)23aおよび外側撮像部(右)23bが配置される。
図1の破線で示す23aおよび23bは、上側ハウジング21の内側面とは反対側の外側面に存在する外側撮像部(左)23aおよび外側撮像部(右)23bをそれぞれ表している。
図1に示すように、ユーザが上側LCD22の画面を正面から視認した場合に、外側撮像部(左)23aは左側に外側撮像部(右)23bは右側にそれぞれ位置している。外側撮像部23をステレオカメラとして機能させるプログラムが実行されている場合、外側撮像部(左)23aは、ユーザの左目で視認される左目用画像を撮像し、外側撮像部(右)23bは、ユーザの右目で視認される右目用画像を撮像する。外側撮像部(左)23aおよび外側撮像部(右)23bの間隔は、人間の両目の間隔程度に設定され、例えば、30mm〜70mmの範囲で設定されてもよい。なお、外側撮像部(左)23aおよび外側撮像部(右)23bの間隔は、この範囲に限らない。
【0058】
なお、本実施例においては、外側撮像部(左)23aおよび外側撮像部(右)23bはハウジングに固定されており、撮像方向を変更することはできない。
【0059】
また、外側撮像部(左)23aおよび外側撮像部(右)23bは、上側LCD22(上側ハウジング21)の左右方向(
図1に示すx軸方向)に関して中央から対称となる位置にそれぞれ配置される。すなわち、外側撮像部(左)23aおよび外側撮像部(右)23bは、上側LCD22を左右に2等分する線に対して対称の位置にそれぞれ配置される。また、外側撮像部(左)23aおよび外側撮像部(右)23bは、上側ハウジング21を開いた状態において、上側ハウジング21の上部であって、上側LCD22の画面の上端よりも上方の位置の裏側に配置される。すなわち、外側撮像部(左)23aおよび外側撮像部(右)23bは、上側ハウジング21の外側面であって、上側LCD22を外側面に投影した場合、投影した上側LCD22の画面の上端よりも上方に配置される。
【0060】
このように、外側撮像部23の2つの撮像部(23aおよび23b)が、上側LCD22の左右方向に関して中央から対称の位置に配置されることにより、ユーザが上側LCD22を正視した場合に、外側撮像部23の撮像方向をユーザの視線方向と一致させることができる。また、外側撮像部23は、上側LCD22の画面の上端より上方の裏側の位置に配置されるため、外側撮像部23と上側LCD22とが上側ハウジング21の内部で干渉することがない。従って、外側撮像部23を上側LCD22の画面の裏側に配置する場合と比べて、上側ハウジング21を薄く構成することが可能となる。
【0061】
内側撮像部24は、上側ハウジング21の内側面(主面)21Bに設けられ、当該内側面の内向きの法線方向(
図1に示すz軸負方向)を撮像方向とする撮像部である。内側撮像部24は、所定の解像度を有する撮像素子(例えば、CCDイメージセンサやCMOSイメージセンサ等)と、レンズとを含む。レンズは、ズーム機構を有するものでもよい。
【0062】
3D調整スイッチ25は、スライドスイッチであり、上述のように上側LCD22の表示モードを切り替えるために用いられるスイッチである。また、3D調整スイッチ25は、上側LCD22に表示された立体視可能な画像(立体視画像)の立体感を調整するために用いられる。3D調整スイッチ25のスライダ25aは、所定方向(上下方向)の任意の位置にスライド可能であり、当該スライダ25aの位置に応じて上側LCD22の表示モードが設定される。また、スライダ25aの位置に応じて、立体視画像の見え方が調整される。
【0063】
3Dインジケータ26は、上側LCD22が立体表示モードか否かを示す。3Dインジケータ26は、LEDであり、上側LCD22の立体表示モードが有効の場合に点灯する。なお、3Dインジケータ26は、上側LCD22が立体表示モードになっており、かつ、立体視画像を表示するプログラム処理が実行されているときに限り、点灯するようにしてもよい。
【0064】
また、上側ハウジング21の内側面には、スピーカ孔21Eが設けられる。後述するスピーカ43からの音声がこのスピーカ孔21Eから出力される。
【0065】
(ゲーム装置10の内部構成)
次に、
図3を参照して、ゲーム装置10の内部の電気的構成について説明する。
図3は、ゲーム装置10の内部構成を示すブロック図である。
図3に示すように、ゲーム装置10は、上述した各部に加えて、情報処理部31、メインメモリ32、外部メモリインターフェイス(外部メモリI/F)33、データ保存用外部メモリI/F34、データ保存用内部メモリ35、無線通信モジュール36、ローカル通信モジュール37、リアルタイムクロック(RTC)38、加速度センサ39、電源回路40、及びインターフェイス回路(I/F回路)41等の電子部品を備えている。これらの電子部品は、電子回路基板上に実装されて下側ハウジング11(又は上側ハウジング21でもよい)内に収納される。
【0066】
情報処理部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に当該画像が表示される。
【0067】
情報処理部31には、メインメモリ32、外部メモリI/F33、データ保存用外部メモリI/F34、及び、データ保存用内部メモリ35が接続される。外部メモリI/F33は、外部メモリ44を着脱自在に接続するためのインターフェイスである。また、データ保存用外部メモリI/F34は、データ保存用外部メモリ45を着脱自在に接続するためのインターフェイスである。
【0068】
メインメモリ32は、情報処理部31(のCPU311)のワーク領域やバッファ領域として用いられる揮発性の記憶手段である。すなわち、メインメモリ32は、上記プログラムに基づく処理に用いられる各種データを一時的に記憶したり、外部(外部メモリ44や他の機器等)から取得されるプログラムを一時的に記憶したりする。本実施形態では、メインメモリ32として例えばPSRAM(Pseudo−SRAM)を用いる。
【0069】
外部メモリ44は、情報処理部31によって実行されるプログラムを記憶するための不揮発性の記憶手段である。外部メモリ44は、例えば読み取り専用の半導体メモリで構成される。外部メモリ44が外部メモリI/F33に接続されると、情報処理部31は外部メモリ44に記憶されたプログラムを読み込むことができる。情報処理部31が読み込んだプログラムを実行することにより、所定の処理が行われる。データ保存用外部メモリ45は、不揮発性の読み書き可能なメモリ(例えばNAND型フラッシュメモリ)で構成され、所定のデータを格納するために用いられる。例えば、データ保存用外部メモリ45には、外側撮像部23で撮像された画像や他の機器で撮像された画像が記憶される。データ保存用外部メモリ45がデータ保存用外部メモリI/F34に接続されると、情報処理部31はデータ保存用外部メモリ45に記憶された画像を読み込み、上側LCD22及び/又は下側LCD12に当該画像を表示することができる。
【0070】
データ保存用内部メモリ35は、読み書き可能な不揮発性メモリ(例えばNAND型フラッシュメモリ)で構成され、所定のデータやプログラムを格納するために用いられる。
【0071】
無線通信モジュール36は、例えばIEEE802.11b/gの規格に準拠した方式により、無線LANに接続する機能を有する。また、ローカル通信モジュール37は、所定の通信方式(例えば独自プロトコルによる通信や、赤外線通信)により同種のゲーム装置との間で無線通信を行う機能を有する。無線通信モジュール36及びローカル通信モジュール37は情報処理部31に接続される。情報処理部31は、無線通信モジュール36を用いてインターネットを介して他の機器との間でデータを送受信したり、ローカル通信モジュール37を用いて同種の他のゲーム装置との間でデータを送受信したりすることができる。
【0072】
また、情報処理部31には、加速度センサ39が接続される。加速度センサ39は、3軸(xyz軸)方向に沿った直線方向の加速度(直線加速度)の大きさを検出する。加速度センサ39は、下側ハウジング11の内部に設けられる。加速度センサ39は、
図1に示すように、下側ハウジング11の長辺方向をx軸、下側ハウジング11の短辺方向をy軸、下側ハウジング11の内側面(主面)に対して垂直な方向をz軸として、各軸の直線加速度の大きさを検出する。なお、加速度センサ39は、例えば静電容量式の加速度センサであるとするが、他の方式の加速度センサを用いるようにしてもよい。また、加速度センサ39は1軸又は2軸方向を検出する加速度センサであってもよい。情報処理部31は、加速度センサ39が検出した加速度を示すデータ(加速度データ)を受信して、ゲーム装置10の姿勢や動きを検出することができる。なお、情報処理部31には、上記した加速度センサ39に加えて(又はその代わりに)角度センサや角速度センサ等の他のセンサが接続され、このセンサによってゲーム装置10の姿勢や動きを検出してもよい。
【0073】
また、情報処理部31には、RTC38及び電源回路40が接続される。RTC38は、時間をカウントして情報処理部31に出力する。情報処理部31は、RTC38によって計時された時間に基づき現在時刻(日付)を計算する。電源回路40は、ゲーム装置10が有する電源(下側ハウジング11に収納される上記充電式電池)からの電力を制御し、ゲーム装置10の各部品に電力を供給する。
【0074】
また、情報処理部31には、LED16(16A、16B)が接続される。情報処理部31は、LED16を用いて、ゲーム装置10の電源のON/OFF状況をユーザに通知し、又、ゲーム装置10の無線通信の確立状況をユーザに通知する。
【0075】
また、情報処理部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に対して入力が行われた位置を知ることができる。
【0076】
操作ボタン14は、上記各操作ボタン14A〜14Lからなり、情報処理部31に接続される。操作ボタン14から情報処理部31へは、各操作ボタン14A〜14Iに対する入力状況(押下されたか否か)を示す操作データが出力される。情報処理部31は、操作ボタン14から操作データを取得することによって、操作ボタン14に対する入力に従った処理を実行する。
【0077】
アナログスティック15は情報処理部31に接続される。アナログスティック15から情報処理部31へは、アナログスティック15に対するアナログ入力(操作方向及び操作量)を示す操作データが出力される。情報処理部31は、アナログスティック15から操作データを取得することによって、アナログスティック15に対する入力に従った処理を実行する。
【0078】
下側LCD12及び上側LCD22は情報処理部31に接続される。下側LCD12及び上側LCD22は、情報処理部31(のGPU312)の指示に従って画像を表示する。本実施形態では、情報処理部31は、上側LCD22に立体視画像(立体視可能な画像)を表示させる。
【0079】
具体的には、情報処理部31は、上側LCD22のLCDコントローラ(図示せず)と接続され、当該LCDコントローラに対して視差バリアのON/OFF(有効/無効)を制御する。上側LCD22の視差バリアがONになっている場合、情報処理部31のVRAM313に格納された右目用画像と左目用画像とが、上側LCD22に出力される。より具体的には、LCDコントローラは、右目用画像について縦方向に1ライン分の画素データを読み出す処理と、左目用画像について縦方向に1ライン分の画素データを読み出す処理とを交互に繰り返すことによって、VRAM313から右目用画像と左目用画像とを読み出す。これにより、右目用画像及び左目用画像が、画素を縦に1ライン毎に並んだ短冊状画像に分割され、分割された右目用画像の短冊状画像と左目用画像の短冊状画像とが交互に配置された画像が、上側LCD22の画面に表示される。そして、上側LCD22の視差バリアを介して当該画像がユーザに視認されることによって、ユーザの右目に右目用画像が、ユーザの左目に左目用画像が視認される。以上により、上側LCD22の画面には立体視可能な画像が表示される。
【0080】
外側撮像部23及び内側撮像部24は、情報処理部31に接続される。外側撮像部23及び内側撮像部24は、情報処理部31の指示に従って画像を撮像し、撮像した画像データを情報処理部31に出力する。
【0081】
3D調整スイッチ25は、情報処理部31に接続される。3D調整スイッチ25は、スライダ25aの位置に応じた電気信号を情報処理部31に送信する。
【0082】
また、3Dインジケータ26は、情報処理部31に接続される。情報処理部31は、3Dインジケータ26の点灯を制御する。例えば、情報処理部31は、上側LCD22が立体表示モードである場合、3Dインジケータ26を点灯させる。以上がゲーム装置10の内部構成の説明である。
【0083】
(仮想カメラによる仮想空間の撮像)
まず、
図4、
図5を参照して立体視可能な画像(立体視画像)の生成方法(描画方法)について説明する。
図4は、仮想空間(仮想3次元空間)における仮想カメラの位置関係及び描画範囲を説明するために仮想カメラが撮像(描画)する仮想空間をその上方から見た図である。また、
図5は、仮想左カメラによって描画された左目用画像と仮想右カメラによって描画された右目用画像における仮想オブジェクトの視差を説明するための図である。
【0084】
図4に示すように、仮想空間には、仮想オブジェクト55、仮想左カメラ50L及び仮想右カメラ50Rが配置される。ここで、仮想左カメラ50Lの位置を点OLで示し、仮想右カメラ50Rの位置を点ORで示す。仮想左カメラ50Lの撮像方向60Lと仮想右カメラ50Rの撮像方向60Rは同一であり、両カメラは、この撮像方向と垂直な方向に所定の間隔を隔てて配置される。この両カメラ間の距離(すなわち、点OLと点ORの距離)をカメラ間距離Dという。そして、仮想左カメラ50L及び仮想右カメラ50R(以下、これらを総称して仮想カメラという場合がある)を用いて、撮像(描画)対象の仮想オブジェクト55が撮像(描画)される。
【0085】
次に、仮想カメラによって撮像(描画)される描画領域について説明する。
図4に示すように、仮想左カメラ50L及び仮想右カメラ50Rは、所定の画角で仮想空間を撮像(描画)し、ニアクリップ面80Nとファークリップ面80Fに挟まれた仮想空間を左目用画像(
図5(a)参照)及び右目用画像(
図5(b)参照)として描画する。したがって、仮想左カメラ50Lが描画する空間は上方から見て台形型の領域70L(
図4の点線で示す台形の領域)となり、仮想右カメラ50Rが描画する空間は上方から見て台形型の領域70R(
図4の実線で示す台形の領域)となる。なお、ニアクリップ面80Nとは、仮想空間において、仮想カメラからの深度がNである面を指し、ファークリップ面80Fとは、仮想カメラからの深度がFである面を指し、Fの値はNの値よりも大きい。ここで、深度とは、仮想カメラからの当該仮想カメラの撮像方向における距離であり、当該深度に位置する仮想オブジェクトの仮想空間における奥行きの程度を示す値である。なお、NとFの値は、描画すべき仮想空間の領域に応じて任意の値が設定される。
【0086】
図4に示すように、視差ゼロ面80Bは、仮想カメラからの深度がB(このBの値はNの値よりも大きく、Fの値よりも小さい)である面を指す。この深度がBの位置である視差ゼロ面80Bにディスプレイ面(上側LCD22の表示画面)に対応するスクリーン面を設定することによって、当該視差ゼロ面80Bに位置する仮想オブジェクトは立体感のない(つまり視差がゼロである)オブジェクト(平面視表示されるオブジェクト)としてディスプレイ面に表示される。このスクリーン面は、領域70Lと領域70Rとが重なる領域である領域70C(
図4の斜線で示す台形の領域)内に設定される。スクリーン面が
図4に示す領域75で示されるものとした場合、仮想左カメラ50Lによって描画された領域70Lのうち、領域75に描画される領域が切り取られて所定の変換の後、左目用画像75Lとしてディスプレイ面に表示され、仮想右カメラ50Rによって描画された領域70Rのうち、領域75に描画される領域が切り取られて所定の変換の後、右目用画像75Rとしてディスプレイ面に表示される(
図5も参照)。
【0087】
次に、仮想オブジェクト55の左目用画像75Lにおける表示位置と右目用画像75Rにおける表示位置との差(つまり、視差)について説明する。
図5は、視差ゼロ面80Bよりも手前に位置する(深度がBよりも小さい)仮想オブジェクト55(
図4参照)が仮想左カメラ50L及び仮想右カメラ50Rによって撮像(描画)された画像を示す。
図5に示すように、左目用画像75Lにおける仮想オブジェクト55の表示位置と、右目用画像75Rにおける仮想オブジェクト55の表示位置は、
図5に示す左右方向に所定の量だけずれている。このずれの量が仮想オブジェクト55の視差である。そして、視差バリアをONにして、ディスプレイ面(上側LCD22の表示領域)に表示される左目用画像75Lをユーザの左目に表示し(視認させ)、右目用画像75Rをユーザの右目に表示する(視認させる)ことにより、仮想オブジェクト55を立体感のある立体視画像としてユーザに視認させることができる。
【0088】
より具体的には、
図5に示すように、ディスプレイ面(上側LCD22の表示領域)に表示される立体視画像は、左目用画像75Lにおける仮想オブジェクト55の表示位置が、右目用画像75Rにおける仮想オブジェクト55の表示位置に対して相対的に右方向にずれている。しかし、
図6に示すように、ユーザが視線方向(仮想カメラの撮像方向)にディスプレイ面(上側LCD22の表示領域)を視認するとき、視差バリアによって左目には左目用画像75Lのみが視認され、右目には右目用画像75Rのみが視認される。このため、ユーザは立体視画像における仮想オブジェクト55を交差視によって視認することになり、仮想オブジェクト55が所定のディスプレイ面よりも手前側に飛び出したように認識する。なお、左目用画像75Lにおける仮想オブジェクト55の表示位置が、右目用画像75Rにおける仮想オブジェクト55表示位置に対して相対的に左方向にずれている場合には、ユーザは、両画像を平行視によって視認することにより、仮想オブジェクト55が所定のディスプレイ面よりも奥側に引っ込んでいるように認識し、左目用画像75Lと右目用画像75Rにおける仮想オブジェクト55の表示位置が一致している(すなわち、視差がゼロである)場合には、ユーザは、仮想オブジェクト55がディスプレイ面上に位置しているように認識する(図示せず)。このように、左右方向に所定の間隔を隔てた右目と左目(
図6参照)に対して、同じく左右方向に所定の視差量だけずれた、左目用画像75Lと右目用画像75Rにおける仮想オブジェクト55を視認させることによって、ユーザに、仮想オブジェクト55を立体感のあるオブジェクトとして認識させることができる。
【0089】
このように、仮想オブジェクトが立体感のあるオブジェクトとして立体視できるのは、2つの仮想カメラが撮像方向と垂直方向に所定のカメラ間距離Dだけ離れて仮想オブジェクトを撮像(描画)するからである。そして、このカメラ間距離Dが大きくなる程、上記した視差は大きくなる。したがって、このカメラ間距離Dを調節することによって仮想オブジェクトの立体感を調整することができる。本実施形態にかかるゲーム装置10では、3D調整スイッチ25を調整することで、このカメラ間距離Dを調整することができる。ただし、仮想左カメラ50Lが描画する領域70Lと仮想右カメラ50Rが描画する領域70Rとが重なる領域70Cが、スクリーン面に相当する領域75よりも大きくなるように、カメラ間距離Dには所定の上限値が設けられる。なお、カメラ間距離Dが0(ゼロ)となる場合には、両カメラによって撮像される画像は同一となり、仮想空間は平面視表示される。
【0090】
上述したように、本実施形態に係るゲーム装置10は、上側LCD22の表示領域には仮想空間が立体視画像(右目用画像と左目用画像)として表示され、視差バリアがONにされることによって、ユーザは立体感ある仮想空間を視認することができる。一方、下側LCD21の表示領域には上記立体視画像が表示されることはなく、通常の平面視画像が表示される(すなわち、一つの画像を表示することにより、右目にも左目にも同一の画像が視認される)。以下、本実施形態に係るゲーム装置10で実行されるゲームについて説明する。
【0091】
(ゲーム概要)
まず、本実施形態においてゲーム装置10で実行されるゲームの概要について説明する。本実施形態におけるゲームでは、立体視表示が可能な上側LCD22の表示領域(以下、上画面と称す)と、平面視表示が可能な下側LCD21の表示領域(以下、下画面と称す)の特性を利用して、上画面ではゲーム空間(仮想空間)が立体視表示され、下画面では平面形状にモデル化(平面モデル化)されたオブジェクト(所持アイテム)が平面視表示される。本実施形態におけるゲームにおいて、ユーザは、下画面に表示される平面モデル化された所持アイテムを、上画面に表示される立体視表示されたゲーム空間内に表示させることができる。なお、本実施形態におけるゲームでは、下画面に表示される所持アイテムを平面形状の「シール」と見立てており、上画面に表示されるゲーム空間にこのシールを表示させることを「シールを貼る」という。そして、下画面に表示されていたシールが上画面に貼られると、上画面ではそのシールがゲーム空間におけるオブジェクトに変換されてゲーム空間に馴染んでいく。すなわち、ユーザは、ゲームを進行していく中で、シールの世界(下画面に表示される世界)をゲーム空間の世界(上画面に表示される世界)に結びつけることができる。
【0092】
ところで、上記したように、下画面に平面視表示されるオブジェクト(所持アイテム)が、立体視表示される上画面に表示されることになると、平面視表示と立体視表示の違いから見た目の違和感を生じることがある。そこで、本実施形態におけるゲーム装置10では、この見た目の違和感を低減することのできる表示制御が行われる。以下に、上記したゲームが進行される際に、ゲーム装置10の上画面と下画面において実行される表示制御について詳細に説明する。
【0093】
(ゲーム装置10における表示制御)
図7〜
図15を参照しつつ、ゲームが進行される際に、ゲーム装置10の上画面と下画面において実行される表示制御について説明する。
図7は、本実施形態に係るゲーム装置10で実行されるゲームを説明するための図であり、
図7(a)は上画面に立体視表示されるゲーム空間を示し、
図7(b)は下画面に平面視表示される所持アイテムを示す。
図8は、上画面において平面視表示に切り替えられたゲーム空間を示す。
図9は、
図8の平面視表示されたゲーム空間をキャプチャしたキャプチャ画像を示す。
図10は、上画面においてキャプチャ画像が倒れるアニメーションが実行される様子を示す。
図11は、上画面においてユーザがキャプチャ画像上の所望の位置を決定する様子を示す。
図12は、下画面のアイテムが上画面に移動する様子を示す図であり、
図12(a)は、上画面の様子を示し、
図12(b)は下画面の様子を示す。
図13は、上画面において起き上がったキャプチャ画像を示す。
図14は、上画面において立体モデル化されたオブジェクトが配置された平面視表示されたゲーム空間を示す。
図15は、上画面において
図14の平面視表示されたゲーム空間が立体視表示された様子を示す。
【0094】
図7(a)に示すように、ユーザは、上画面に立体視表示されるゲーム空間(仮想空間)においてプレイヤオブジェクト90を操作ボタン14等で操作することによって、プレイヤオブジェクト90を移動させてゲームを進行させる。このとき、下画面には、ユーザが現在所持している(ゲームの進行に応じて取得される)所持アイテム(シール)が平面視表示される。この所持アイテム(シール)は、上画面で立体視表示されるゲーム空間における所定のオブジェクトが平面モデル化されたオブジェクト(平面モデルオブジェクト)である。例えば、
図7(b)に示すアイテムオブジェクト95Aは、上画面で立体視表示されるアイテムオブジェクト95C(後述する
図14参照)が平面モデル化された平面モデルオブジェクトである。なお、アイテムオブジェクト95Aの図柄は省略している。
【0095】
ユーザは、上画面に表示されるプレイヤオブジェクト90を移動させながらゲームを進めていく中で、操作ボタン14等を操作することで、所持しているアイテム(下画面に表示されている所持アイテム)が利用可能か(つまり、シールを貼ることができるか)を試すことができる。例えば、本実施形態では、ユーザは、プレイヤオブジェクト90がゲーム空間における川の手前のポイントに達したときに(
図7(a)参照)操作ボタン14等を操作する。このユーザによるボタン操作を契機として、上画面に表示されるゲーム空間(プレイヤオブジェクト90は除く)は、立体視表示から次第に平面視表示に切り替わる(表示切替が実行される)。なお、この際、ゲーム空間に表示されていたプレイヤオブジェクト90は、フェードアウトで消えるなどして、ゲーム空間から移動させる別の画像処理が行われても良い。また、この表示切替はユーザによる3D調整スイッチ25の調整に関わらず、自動的に切り替わる。また、この際同時に、上画面に表示されるゲーム空間を撮像(描画)する仮想カメラの視野が波うつような変化をする演出用画像処理が行われる。具体的には、ゲーム空間を撮像していた仮想カメラの最初の視野角を1.0とすると、視野角は1.4まで増加した後、0.9まで減少し、最終的に1.0に戻る変化をする。すなわち、上画面には、ゲーム空間を撮像する仮想カメラがいったん引いた(ズームアウトした)後に寄って(ズームインして)、最終的に元に戻るという変化を伴ったアニメーションが表示される。この演出用画像処理は、ユーザが行ったボタン操作によって、上画面のゲーム表示が切り替わるサインをユーザに解りやすく視認させるためのものである。したがって、上記した態様に限られるものではなく、例えば、上画面に表示される画像全体が光るというような演出用画像処理を行っても良い。このように、ユーザは、上画面が立体視表示から平面視表示に切り替わるサインを視認することができるので、上画面の表示が切り替わる様子を自然に感じることができる。
【0096】
次に、上画面の表示が、上記した表示切替によって平面視表示されたゲーム空間(
図8参照)から、当該平面視表示されたゲーム空間をキャプチャしたキャプチャ画像(
図9参照)に切り替わる。具体的には、それまで表示されていた
図8に示す平面視表示されたゲーム空間の表示がOFFとなり、代わりに上記キャプチャ画像がゲーム空間(仮想空間)において視差の生じない面(
図4に示す視差ゼロ面80B)に配置されて表示される。したがって、上画面の見た目には実質的に変化が無いため、ユーザは、この切り替えによる見た目の違和感を覚えることはない。
【0097】
次に、上画面において、キャプチャ画像がゲーム空間内で変動するアニメーションが実行される。具体的には、キャプチャ画像が、平面視表示されるゲーム空間において奥行き方向に平行移動し、キャプチャ画像の下端部を軸に奥行き方向に倒れ込むアニメーションが実行される(
図10参照)。さらに倒れ込んだ際に、キャプチャ画像を1枚の平面形状物と見立てて、この平面形状物が倒れ込んだはずみで、このキャプチャ画像が弾んだような変形をするアニメーションが実行されてもよい。すなわち、上画面において、キャプチャ画像が1枚の実質的に平面形状の画像であることを強調するアニメーションが実行される。このことにより、ユーザは、ゲーム空間が1枚の平面形状のキャプチャ画像に変換されて上画面に平面視表示されていることを視認することができる。
【0098】
次に、ユーザは、上画面において平面視表示されたゲーム空間内で倒れ込んだ平面形状のキャプチャ画像上で所望の位置を選択する。具体的には、まず、キャプチャ画像が倒れ込むアニメーションが実行された後、プレイヤオブジェクト90が上画面に表示される。本実施形態では、プレイヤオブジェクト90は、クレーンに吊られてユーザの操作によって移動可能となっている(
図11参照)。ユーザは、このプレイヤオブジェクト90をアナログスティック15等の操作によって移動させ、決定ボタン(例えばボタン14B)を押下することで所望の位置を決定する。この際、ユーザは、例えばキャプチャ画像上にプレイヤオブジェクト90が落とす影を目印に所望の位置を決定する。この決定した位置が正しい場合には、次のゲーム演出(ゲーム表示)が実行される。例えば、本実施形態では、キャプチャ画像上の川と陸の境界を示す位置(
図11に示すプレイヤオブジェクト90が落とす影の位置)が正しい位置であるとする。なお、このとき、ユーザがキャプチャ画像上で選択する位置は、下画面に平面視表示されている所持アイテム(シール)を貼る位置である。ここで、キャプチャ画像は1枚の平面形状の画像(平面視画像)であることが強調されているので、ユーザは、1枚の平面形状の画像の上にシールを貼るというイメージを持つことができる。このため、ユーザは、立体視表示されるゲーム空間ではなく、平面視表示されるゲーム空間に平面視表示されるシールを貼ることができ、表示の違いから生じる違和感を覚えることがない。
【0099】
キャプチャ画像上でユーザが決定した位置が正しい場合には、ユーザが所持しているアイテムのうち、決定した位置にふさわしい(つまり、対応した)所持アイテムが下画面から消えて、上画面のキャプチャ画像上の適切な位置に表示される。例えば、本実施形態では、ユーザがキャプチャ画像上で決定した位置(川と陸の境界を示す位置)にふさわしい(対応する)アイテムとして、平面モデル化されたアイテムオブジェクト95A(橋のシール)を所有している。すなわち、下画面にはアイテムオブジェクト95Aが表示されている(
図7(b)参照)。したがって、このアイテムオブジェクト95A(橋のシール)が下画面から消えて(
図12(b)参照)、上画面には、キャプチャ画像内に表示されている川の上に架かるように、アイテムオブジェクト95B(橋のシール)が表示される(
図12(a)参照)。なお、キャプチャ画像上に表示される(貼られる)アイテムオブジェクト95B(橋のシール)は、下画面に表示されているアイテムオブジェクト95Aと実質的に相似形状である。すなわち、ユーザは、平面形状のキャプチャ画像上で所望の位置を選択することで、下画面に表示されている所持アイテムのうち適切なアイテムを上画面のキャプチャ画像上に表示させることができる。このことにより、ユーザは、平面視表示されるシールの世界(下画面に表示される世界)のシールを、平面視表示されるゲーム空間の世界(上画面に表示される世界)に貼ったというイメージを覚えることができる。
【0100】
次に、アイテムオブジェクト95B(橋のシール)が貼られたキャプチャ画像(
図12(a)参照)がゲーム空間(仮想空間)において起き上がるアニメーションが実行される。具体的には、ゲーム空間においてキャプチャ画像が倒れ込むアニメーションと逆のアニメーションが実行され、起き上がったキャプチャ画像は、ゲーム空間において視差の生じない面に配置される(
図13参照)。したがって、この
図13に示すキャプチャ画像は、
図9に示すキャプチャ画像にアイテムオブジェクト95Bが貼られた画像となる。
【0101】
次に、上画面は、
図13に示すキャプチャ画像の表示から、以下の表示に切り替わる。すなわち、
図8に示す平面視表示されたゲーム空間に、アイテムオブジェクト95B(橋のシール)を立体形状にモデル化(立体モデル化)した立体モデルオブジェクト(平面視される立体モデルオブジェクト)であるアイテムオブジェクト95C(ゲーム空間における橋)を配置したゲーム空間の平面視表示に切り替わる(
図14参照)。なお、この切り替えはクロスフェードで徐々に行われることが好ましい。このことにより、シールが貼られたという特徴が表示されたキャプチャ画像(
図13参照)が、平面視表示されたゲーム空間に切り替わる。また、キャプチャ画像が、平面視表示されたゲーム空間に切り替わる際に、貼られたシール(アイテムオブジェクト95B)も立体モデル化される(アイテムオブジェクト95Bからアイテムオブジェクト95Cに切り替わる)ので、シールが徐々にゲーム空間に溶け込んでいく(馴染んでいく)ように表示される。したがって、ユーザは、シールの世界(下画面に表示される世界)に平面視表示されるシールを、平面視表示されるゲーム空間の世界(上画面に表示される世界)の平面形状の画像(キャプチャ画像)に違和感なく貼りつけることができ、その後、シールの貼られた画像(キャプチャ画像)が徐々にゲーム空間の表示に切り替わっていく様子を違和感なく視認することができる。
【0102】
最後に、
図14に示す平面視表示されたゲーム空間が徐々に立体視表示に切り替わる。したがって、
図7に示すゲーム空間に新たに橋が設けられたゲーム空間が立体視表示されることとなる。したがって、ユーザは、下画面に表示されていた平面モデルオブジェクトであるアイテムオブジェクト95Bを、立体視表示される上画面に見た目の違和感なく立体視表示(アイテムオブジェクト95Cとして表示)させることができる。そして、ユーザは、この新たなゲーム空間においてプレイヤオブジェクト90を操作して、例えば橋を渡らせることができるようになる(
図15参照)。なお、本実施形態では、ゲーム空間が立体視表示に切り替わる(戻る)タイミングでプレイヤオブジェクト90が再び現れるものとしているが、一実施例に過ぎず、このタイミングに限られるものではない。
【0103】
以上のように、本実施形態におけるゲーム装置10で実行されるゲームにおいて、ユーザは、下画面に平面視表示される平面モデルオブジェクトを立体視表示される上画面に表示させることができる。この際、上画面に立体視表示される仮想空間は、まず平面視表示に切り替わる。このため、平面視表示される平面モデルオブジェクトを、立体視表示される仮想空間に配置する際の見た目の違和感を低減することができる。さらに、平面視表示された仮想空間がキャプチャ画像(1枚の平面形状の画像)として表示される。このため、平面視表示される平面モデルオブジェクトを、同様に平面形状の画像であるキャプチャ画像上に配置することができ、当該平面モデルオブジェクトを立体視表示された仮想空間に配置する際の見た目の違和感を低減することができる。さらに、平面視表示される平面モデルオブジェクトが配置されてから、仮想空間が平面視表示から立体視表示に切り替わる。このため、平面視表示される平面モデルオブジェクトを立体視表示される仮想空間に配置する際の見た目の違和感を低減しつつ、当該オブジェクトが配置された仮想空間を立体視表示することができる。
【0104】
(表示制御処理及び表示切替処理の詳細)
次に、上記したゲームが実行される際のゲーム装置10の情報処理部31で実行される表示制御処理及び表示切替処理について説明する。まず、表示制御処理及び表示切替処理の際にメインメモリ32に記憶されるデータについて説明する。
【0105】
(メモリマップ)
図16は、ゲーム装置10のメインメモリ32のメモリ構成の一例を示す図である。
図16に示すように、メインメモリ32は、プログラム記憶領域321、データ記憶領域325、及び作業領域331を有している。プログラム記憶領域321には、情報処理部31によって実行される各種プログラムが記憶される。データ記憶領域325には、仮想空間内の各種オブジェクトを描画するために必要なデータが記憶される。プログラム記憶領域321及びデータ記憶領域325内のデータは、例えば外部メモリ44に記憶されており、表示制御処理に際して外部メモリ44からメインメモリ32に読み込まれて記憶される。
【0106】
プログラム記憶領域321には、後述する
図17に示すフローチャートの処理を実行する表示制御処理プログラム322や、後述する
図18に示すフローチャートの処理を実行する表示切替処理プログラム323等のプログラムが記憶される。
【0107】
データ記憶領域325には、プレイヤオブジェクトデータ326、背景オブジェクトデータ327、アイテムオブジェクトデータ328、比較対象データ329等が記憶される。
【0108】
プレイヤオブジェクトデータ326は、ゲーム空間(仮想空間)におけるプレイヤオブジェクト(プレイヤオブジェクト90)に関するデータであり、プレイヤオブジェクトのモデリングデータ、テクスチャーデータ(RGB値)等から構成される。同様に、背景オブジェクトデータ327は、ゲーム空間における背景のオブジェクト(例えば、山や川)に関するデータであり、アイテムオブジェクトデータ328は、ユーザが取得可能なアイテム(例えば、アイテムオブジェクト95A)に関するデータである。なお、アイテムオブジェクトデータ328の中には、下画面に表示される所持アイテム(アイテムオブジェクト95A)と、当該所持アイテムに関連付けられて上画面に表示されるアイテム(アイテムオブジェクト95B、95C)とを関連付ける情報を示すデータも含まれる。比較対象データ329は、上画面にアイテムを表示するか否かを判定する際に用いられるデータであり、具体的には、仮想空間における位置やその位置で表示可能なアイテム等を示すデータである。
【0109】
作業領域331は、表示制御処理等において生成されたデータを一時的に格納する記憶領域である。この作業領域331には、操作データ332、仮想カメラデータ333、プレイヤオブジェクト位置データ334、キャプチャ画像データ335、所持アイテムデータ336、オブジェクト配置データ337等が格納される。なお、作業領域331内のデータの一部は、例えば外部メモリ44やデータ保存用内部メモリ35に記憶されており、表示制御処理に際して外部メモリ44やデータ保存用内部メモリ35からメインメモリ32に読み込まれて記憶される。
【0110】
操作データ332は、各操作ボタン14A〜E、G〜H、アナログスティック15、3D調整スイッチ25、及びタッチパネル13に対して行われたユーザの操作を示すデータである。
【0111】
仮想カメラデータ333は、
図4を参照して説明した両仮想カメラ(50L、50R)に関するデータである。この仮想カメラデータ333は、仮想カメラの撮像方向(60L、60R)、位置座標(OL、OR)、視野角、両仮想カメラが撮像する両撮像画像等を示すデータであり、深度データ3331及びカメラ間距離データ3332を含んでいる。ここで、深度データ3331は、仮想カメラの撮像方向(60L、60R)における仮想カメラ(50L、50R)の位置から視差の生じない基準面までの距離を示す深度Bや、ニアクリップ面までの距離を示す深度N、ファークリップ面までの距離を示す深度Fを示すデータである(
図4参照)。カメラ間距離データ3332は、両仮想カメラの間隔であるカメラ間距離D(
図4に示す点OLと点ORの距離)を示すデータである。ゲーム装置10では、3D調整スイッチ25が操作されることにより、カメラ間距離データ3332が示すカメラ間距離Dが3D調整スイッチ25の操作に応じた値となるように、カメラ間距離データ3332がCPU311によって更新される。また、両仮想カメラが撮像する両撮像画像を示すデータは、1フレーム(例えば1/60秒)毎に繰り返し更新される。
【0112】
プレイヤオブジェクト位置データ334は、仮想空間においてユーザによって操作されるオブジェクト(プレイヤオブジェクト90)の仮想空間における位置を示すデータである。
【0113】
キャプチャ画像データ335は、平面視表示された仮想空間がキャプチャされた画像(キャプチャ画像)を示すデータである。
【0114】
所持アイテムデータ336は、ユーザがゲームを進行していく中で獲得して所持しているアイテムを示すデータである。この所持アイテムデータ336に基づいて、アイテムオブジェクトデータ328が参照され、下画面に所持アイテムが表示される。
【0115】
オブジェクト配置データ337は、仮想空間において配置されたプレイヤオブジェクトや、背景オブジェクト、アイテムオブジェクト等の配置情報を示すデータである。具体的には、後述するが、表示切替処理が実行される際に更新されるデータである。
【0116】
なお、以上説明した主要データの一部又は全部が、メインメモリ32に代えてデータ保存用外部メモリ45に記憶されてもよい。
【0117】
(表示制御処理)
ゲーム装置10の情報処理部31において実行される表示制御処理について説明する。本実施形態に係るゲーム装置10では、上画面においてゲーム空間(仮想空間)が立体視表示され、このゲーム空間においてユーザが操作するプレイヤオブジェクト90の動作に応じてゲームが進行される。このとき、下画面には、ゲームの進行に応じてユーザが取得したアイテムが平面視表示される(以下、この表示制御処理を通常ゲーム処理と称す)。一方、ユーザの操作に基づいた所定のタイミングで、立体視表示されていた上画面が平面視表示されるなど、通常ゲーム処理とは異なる表示制御処理が行われる(以下、この表示制御処理を表示切替処理と称す)。以下に、この通常ゲーム処理と表示切替処理を含めた表示制御処理について説明する。
【0118】
(通常ゲーム処理)
最初に、上記した通常ゲーム処理について簡単に説明する。
図17は、CPU311又はCPU311の指示に基づいてGPU312が実行する表示制御処理のフローチャートの一例である。
【0119】
まず、ステップS1において、ゲーム装置10のCPU311は、初期化処理を実行する。具体的には、ゲーム装置10の電源が投入されると、CPU311は、データ保存用内部メモリ35等に記憶されている起動プログラムを実行し、これによってメインメモリ32等の各ユニットを初期化する。そして、外部メモリ44に記憶された表示制御処理プログラム322やデータ保存用内部メモリ35に記憶された各種データ等がメインメモリ32に読み込まれ、CPU311によって表示制御処理プログラム322が実行される。その後、処理はステップS2に移る。
【0120】
ステップS2において、CPU311は、仮想空間(ゲーム空間)を上画面に表示させ、下画面に所持アイテムを表示させる(
図7参照)。具体的には、まず、CPU311は、仮想空間にプレイヤオブジェクト90及び背景オブジェクト等を配置する。すなわち、CPU311は、メインメモリ32に読み込まれた仮想カメラデータ333に基づいて、両仮想カメラ(仮想左カメラ50L及び仮想右カメラ50R)を仮想空間に配置し、プレイヤオブジェクト位置データ334及びプレイヤオブジェクトデータ326に基づいて、プレイヤオブジェクト90を仮想空間に配置し、さらに背景オブジェクトデータ327に基づいて背景画像を仮想空間に配置する。そして、GPU312は、CPU311の指示に基づいて、この仮想空間を両仮想カメラで撮像した立体視画像(左目用画像及び右目用画像)を生成して、この立体視画像を上画面に表示する。また、CPU311は、メインメモリ32に読み込まれた所持アイテムデータ336に対応するアイテムオブジェクトデータ328に基づいて、所持アイテムを下画面に平面視表示させる。具体的には、GPU312が、CPU311の指示に基づいて下画面に所持アイテム(平面視画像)を表示する。その後、処理はステップS3に移る。
【0121】
ステップS3において、CPU311は、タッチパネル13、操作ボタン14、アナログスティック15、及び3D調整スイッチ25からの操作情報の入力を受け付ける。具体的には、タッチパネル13、操作ボタン14、アナログスティック15、及び3D調整スイッチ25の入力状況を示す操作データが情報処理部31に入力されるので、CPU311は、その操作データを操作データ332として作業領域331に格納する。なお、新たな操作データ332が格納されると、古い操作データ332は新たな操作データ332に書き換えられて、操作データ332が適宜更新される。また、CPU311は、操作データ332に基づいて、プレイヤオブジェクト位置データ334や仮想カメラデータ333を適宜更新する。その後、処理はステップS4に移る。
【0122】
ステップS4において、CPU311は、ステップS3において更新された操作データ332の中に、表示切替処理を指示する操作データがあるか否かを判定する。具体的には、ユーザが上画面の表示切り替えを指示するための操作ボタン14等の押下があったことを示す操作データがあるか否かを判定する。この判定の結果がYESの場合、処理はステップS5の表示切替処理に移り、NOの場合は、処理はステップS6に移る。なお、ステップS5の表示切替処理については後に詳述する。
【0123】
ステップS6において、CPU311は、所持アイテムデータ336の更新を行う。詳細は省略するが、CPU311は、ゲームの進行に応じて行われるイベント等によって、ユーザが新たなアイテムを取得し、或いは、アイテムを使用したと判定したときに、所持アイテムデータ336を更新する。また、CPU311は、更新した所持アイテムデータ336に対応するアイテムオブジェクトデータ328に基づいて、GPU312に、所持アイテムを下画面に平面視表示させる。その後、処理はステップS7に移る。
【0124】
ステップS7において、CPU311は、ユーザからゲームを終了する指示があったか否かを判定する。具体的には、ゲームの終了を指示する操作ボタン14等の押下があったか否かを判定する。この判定の結果がYESの場合、処理はステップS8に移り、NOの場合、処理はステップS2に戻る。すなわち、ユーザがゲームの終了を指示しない限り、ステップS2〜S6の処理を繰り返す。これらの処理は、1フレーム(例えば1/60秒)毎に繰り返し更新される。
【0125】
ステップS8において、CPU311は、終了処理を実行する。具体的には、現在までのプレイ状況を保存する場合には、CPU311は、作業領域331に格納されたデータの一部(例えば、所持アイテムデータ336)をデータ保存用内部メモリ35等に記憶させて、表示制御処理を終了する。このことにより、次回のゲームプレイ時にデータ保存用内部メモリ35等に記憶されたデータがメインメモリ32に読み込まれて、例えば前回のゲームプレイ時に所持していたアイテムが継続して下画面に表示されるようになる。
【0126】
(表示切替処理)
次に、上記したステップS5で行われる表示切替処理について説明する。
図18は、CPU311又はCPU311の指示に基づいてGPU312が実行する表示切替処理のフローチャートの一例である
【0127】
ステップS11において、CPU311は、上画面の表示を切り替える処理を実行する。具体的には、CPU311は、カメラ間距離データ3332を参照して現在のカメラ間距離Dを取得し、このカメラ間距離Dを初期カメラ間距離D0を示すデータ(図示せず)として作業領域331に格納する。そして、CPU311は、カメラ間距離データ3332を更新して仮想空間に配置した両仮想カメラのカメラ間距離Dを次第にゼロにする。また、これと同時に、仮想カメラデータ333の視野角を示すデータを更新して両仮想カメラの視野角を変化させる。例えば、最初の視野角を1.0とすると、視野角を1.4まで増加させた後、0.9まで減少させ、最終的に1.0に戻る変化をさせる。そして、GPU312は、CPU311の指示に基づいて、このカメラ間距離Dと視野角が変化する両仮想カメラで、1フレーム(例えば1/60秒)毎に、仮想空間を撮像した左目用画像と右目用画像を生成して、両画像を上画面に表示する。その後、処理はステップS12に移る。なお、この際、両カメラの視野角が変化することにより、上画面に表示される画像は、ズームアウトした後にズームインして最終的に元に戻るという演出用画像処理が実行されているように視認される。また、両カメラのカメラ間距離Dが次第にゼロになることにより、上画面に表示される立体視画像は、その視差が次第に減少して最終的に右目用画像と左目用画像が一致する平面視画像に切り替わる(
図8参照)。
【0128】
ステップS12において、CPU311は、ステップS11の処理によって上画面に平面視表示されているゲーム空間(仮想空間)をキャプチャ画像として取得する。具体的には、CPU311は、プレイヤオブジェクト90を排した現在の仮想空間を、両仮想カメラのいずれか一方で撮像した画像をキャプチャ画像として取得して、キャプチャ画像データ335として作業領域331に格納する。なお、このとき両仮想カメラの位置は、ステップS11の処理によって一致しているので、どちらの仮想カメラで撮像しても同じキャプチャ画像が取得される。また、CPU311は、上記仮想空間における背景オブジェクト等の配置に関するデータをオブジェクト配置データ337として作業領域331に格納する。その後、処理はステップS13に移る。
【0129】
ステップS13において、CPU311は、上画面の表示を平面視表示された仮想空間の表示からステップS12で取得したキャプチャ画像の表示に切り替える。具体的には、仮想空間において配置されていた背景オブジェクト等の表示をOFFにして、代わりにキャプチャ画像を仮想空間における視差ゼロ面に上画面のサイズと一致するように配置して表示する(
図9参照)。より詳細には、CPU311は、深度データ3331の深度Bを示すデータに基づいて仮想空間における視差ゼロ面を決定し、GPU312に、キャプチャ画像データ335に基づいてキャプチャ画像を当該視差ゼロ面上に表示させる。その後、処理はステップS14に移る。
【0130】
ステップS14において、CPU311は、仮想空間における視差ゼロ面に配置したキャプチャ画像が仮想空間において奥行き方向に倒れ込むアニメーションを実行する。具体的には、CPU311は、仮想空間における視差ゼロ面に配置したキャプチャ画像を奥行き方向に所定の量だけずらした後に、キャプチャ画像を一枚の平面形状の画像と見立てて仮想空間上で所定の角度だけ奥行き方向に徐々に倒れ込ませる。そして、CPU311は、GPU312に、この変化の状況を平面視画像として上画面に表示させる(
図10参照)。その後、処理はステップS15に移る。
【0131】
ステップS15において、CPU311は、ユーザが倒れ込んだキャプチャ画像上で、プレイヤオブジェクト90の位置を決定する決定操作があったか否かを判定する(
図11参照)。具体的には、CPU311は、操作データ332を参照して、決定ボタン等の押下があったか否かを判定する。この判定の結果がYESの場合、処理はステップS16に移り、NOの場合は、ユーザからの決定操作があるまでステップS15の処理を繰り返す。
【0132】
ステップS16において、CPU311は、ユーザが決定した位置が正しいか否かを判定する。具体的には、CPU311は、ステップS15においてユーザの決定操作があったと判定した後に、そのときのプレイヤオブジェクト位置データ334を参照して、ユーザがキャプチャ画像上で指示した位置を取得する。そして、CPU311は、所持アイテムデータ336を参照して、ユーザが現在所持しているアイテムの情報を取得する。次に、CPU311は、比較対象データ329のうち仮想空間における正解位置を示すデータを参照して、このデータとユーザが指示した指示位置を示すデータ(プレイヤオブジェクト位置データ334)とを比較する。この比較の結果、両データが一致すれば、次にCPU311は、この正解位置で表示すべきアイテムをユーザが所持しているか否かを判定する。具体的には、CPU311は、比較対象データ329のうち上記正解位置での表示可能なアイテムを示すデータと、ユーザが現在所持しているアイテムを示す情報(所持アイテムデータ336)とを比較する。この比較の結果、両データが一致すれば、CPU311は、ユーザの決定操作が正解であると判定する。この判定の結果がYESの場合、処理はステップS17に移り、NOの場合、処理はステップS21に移る。
【0133】
ステップS17において、CPU311は、上画面においてキャプチャ画像上にシール(下画面に平面視表示されている所持アイテム)が貼られる表示制御処理を実行する。具体的には、CPU311は、ステップS14において仮想空間内で倒れ込んだキャプチャ画像上において、下画面に表示されている所持アイテムのうち、ステップS16の判定処理において正解と判定されたアイテムを示すデータに対応するアイテムオブジェクトを上画面のキャプチャ画像上の所定の位置に表示させる。例えば、ユーザがアイテムオブジェクト95Aを所持しているとき、所持アイテムデータ336としてアイテムオブジェクト95Aを示すデータが作業領域331に格納されている。そして、正解と判定された表示可能なアイテムを示すデータがアイテムオブジェクト95Aを示すデータであった場合、CPU311は、アイテムオブジェクトデータ328を参照して、アイテムオブジェクト95Aに関連付けられたアイテムオブジェクト95B(上画面に平面視表示されるオブジェクト)を示すデータを取得して、アイテムオブジェクト95Bをキャプチャ画像上の所定の位置に配置する(シールを貼り付ける)。そして、GPU312は、CPU311の指示に基づいて、このシールが貼り付けられたキャプチャ画像が配置された仮想空間を平面視画像として上画面に表示させる。また、CPU311は、同時に、下画面において表示されていたアイテムオブジェクト95Aの表示をOFFにする(
図12参照)。なお、この際、下画面のアイテムオブジェクト95Aが非表示になったことを強調するために、下画面が光る演出などが実行されてもよい。その後、処理はステップS18に移る。
【0134】
ステップS18において、CPU311は、仮想空間上に倒れ込んだキャプチャ画像が起き上がるアニメーションを実行する。具体的には、CPU311は、ステップS14において実行した処理と反対の処理を実行する。すなわち、CPU311は、視差ゼロ面から奥行き方向(撮像方向)に倒れ込んだキャプチャ画像を手前方向に起こして、奥行き方向にずれた所定の量を手前側に戻して、キャプチャ画像が上画面の全体のサイズに一致するように戻す(
図13参照)。そして、CPU311は、GPU312に、この変化の状況を平面視画像として上画面に表示させる。その後、処理はステップS19に移る。
【0135】
ステップS19において、CPU311は、上画面の表示を、シール(アイテムオブジェクト95B)が貼り付けられたキャプチャ画像の表示から仮想空間の平面視表示に切り替える(
図14参照)。具体的には、まず、CPU311は、ステップS12の処理の際に作業領域331に格納したオブジェクト配置データ337を参照して、ステップS12の処理が行われたときの仮想空間を再構築する。そして、その仮想空間上の所定の位置に、立体モデル化されたアイテムオブジェクト95Cを配置する。なお、この所定の位置は、キャプチャ画像上に貼り付けられシール(アイテムオブジェクト95B)の位置と対応するように予め定められた位置である。次に、CPU311は、GPU312に当該仮想空間を両仮想カメラのいずれかで撮像した平面視画像を生成させ、この平面視画像を仮想カメラデータ333の撮像データとして作業領域331に記憶させる。そして、CPU311は、GPU312に、上画面の表示を、現在表示しているキャプチャ画像から上記仮想カメラデータ333の撮像データとして記憶させた平面視画像にクロスフェードで切り替えさせる。具体的には、GPU312は、キャプチャ画像と上記平面視画像の透過度を切り替えながら、上画面に表示される画像をキャプチャ画像から平面視画像へと徐々に切り替える。その後、処理はステップS20へ移る。
【0136】
ステップS20において、CPU311は、ステップS11においてゼロとなったカメラ間距離Dを、初期カメラ間距離D0に戻す処理を行う。具体的には、CPU311は、作業領域331に格納した初期カメラ間距離D0を示すデータに基づいて、カメラ間距離データ3332を更新して仮想空間に配置した両仮想カメラのカメラ間距離Dを0から次第にD0(すなわち、ステップS11の処理が行われる前のカメラ間距離)に戻す。このことにより、上画面は平面視表示から立体視表示に切り替わる(
図15参照)。また、その際、仮想空間に立体モデルオブジェクト(アイテムオブジェクト95C)が配置された平面視画像が徐々に立体視画像に切り替わるので、ユーザに見た目の違和感を与えない。その後、処理は、
図17の表示制御処理に戻り、後続のステップS6へと進む。
【0137】
一方、ステップS21においては、CPU311は、不正解処理を実行する。具体的には、CPU311は、ステップS18と同様に、仮想空間上に倒れ込んだキャプチャ画像が起き上がるアニメーションを実行する。そして、CPU311は、ステップS19と同様に、上画面の表示をキャプチャ画像の表示から仮想空間の平面視表示に切り替える。その後、CPU311は、ステップS20と同様に、ゼロとなったカメラ間距離Dを、初期カメラ間距離D0に戻す処理を行う。このことにより、上画面はステップS11の処理が実行される前の(すなわち、表示切替処理が実行される前の)仮想空間の立体視表示に戻る。その後、処理は、
図17の表示制御処理に戻り、後続のステップS6へと進む。
【0138】
(変形例)
なお、上記実施形態では、上画面が立体視表示から平面視表示に切り替わり、上画面に平面視表示された仮想空間がキャプチャ画像として表示される(すなわち、上画面の表示が仮想空間の平面視表示からキャプチャ画像の表示に切り替わる)ものとした(
図8、
図9、
図18のステップS11〜S13参照)。しかし、これに代え、キャプチャ画像を表示するステップが行われないものとしてもよい。具体的には、
図18のステップS12〜S14の処理、及びステップS17〜S18の処理が行われなくてもよい。この場合、ステップS15において、CPU311は、平面視表示された仮想空間上で、ユーザによるプレイヤオブジェクト90の位置を決定する決定操作があったか否かを判定する。そして、ステップS16において、CPU311は、ユーザが決定した位置や所持しているアイテム(アイテムオブジェクト95A)が正しいと判定した場合に、ステップS19において、仮想空間上の所定の位置に、立体モデル化されたアイテムオブジェクト95Cを配置する。そして、CPU311は、ステップS20において、このアイテムオブジェクト95Cが配置された仮想空間を平面視表示から立体視表示に切り替える。この場合でも、平面視表示されるアイテムオブジェクトを立体視表示された仮想空間内に配置する際には、立体視表示されていた仮想空間は平面視表示に切り替わっているので、平面視表示されるアイテムオブジェクトを、立体視表示される仮想空間に配置する際の見た目の違和感を低減することができる。
【0139】
また、上記実施形態では、上画面においてキャプチャ画像上にシール(下画面に平面視表示されているアイテムオブジェクト95A)が貼られるのは、キャプチャ画像が仮想空間内で倒れ込んだ後であるとした(
図12、
図18のステップS17参照)。しかし、これに代え、上画面においてキャプチャ画像上にシールが貼られるのは、仮想空間内で倒れ込んだキャプチャ画像が起き上がった後としてもよい。すなわち、
図18においてステップS17の処理は、ステップS18の処理の後に実行されてもよい。
【0140】
また、上記実施形態では、下画面に表示されているシール(下画面に平面視表示されているアイテムオブジェクト95A)を上画面に貼り付け可能な条件として、ユーザが決定したキャプチャ画像上の位置が正しい位置(正解)であることと、その位置に表示すべきアイテムをユーザが所持していることを条件とした(
図18のステップS16参照)。しかし、シールを貼り付け可能な条件は、これに限られるものではなく、ゲームの内容に応じて適宜変更可能である。例えば、さらに、仮想空間に配置された背景オブジェクトが夜の背景を示すオブジェクトである場合には、シールを貼り付けることができない等の条件を付加してもよい。
【0141】
また、上記実施形態では、表示切替処理が行われるタイミングは、ユーザから表示切替処理を指示する操作ボタン14等の押下があったときであるとした(
図17のステップS4参照)。すなわち、ユーザの指示によって、いつでも表示切替処理が実行可能であるものとした。しかし、これに代え、表示切替処理を実行可能とするために、プレイヤオブジェクト90が所持しているポイント等に応じた所定の条件を付加してもよい。例えば、プレイヤオブジェクト90が所定のポイントを所持していない場合には、表示切替処理が行われないとしてもよい。或いは、プレイヤオブジェクト90が所定のエリア内に位置することを条件として表示切替処理が実行されるものとしてもよい。
【0142】
また、上記実施形態では、シールを貼り付けることが可能か否かの判定は表示切替処理の中で実行されるものとした(
図18のステップS16参照)。しかし、これに代え、シールを貼り付けることが可能か否かの判定は、表示切替処理が行われる前に実行されるものとしてもよい。具体的には、ユーザは、ゲーム空間(立体視表示される上画面)において、プレイヤオブジェクト90を操作して、所望の位置で操作ボタン14等を押下して決定操作を行う。このとき、CPU311は、
図17のステップS4において、上記したプレイヤオブジェクト90の仮想空間における表示位置に基づいて、
図18のステップS16で実行した判定処理を行う。そして、この判定処理の結果が肯定(YES)である場合に、表示切替処理が実行される。この場合、
図18に示すステップS15、ステップS16の処理は行われない。この変形例によれば、実際にシールを貼り付けることが可能でない場合には、表示切替処理は実行されない。したがって、ユーザは、上画面において表示切替が実行されないことを視認することで、シールを貼り付けることが可能か否かを判断することができる。
【0143】
また、上記実施形態では、ユーザがキャプチャ画像上において決定した位置が正解であれば、その位置に表示すべきアイテムをユーザが所持しているか否かが判定され、所持していれば自動的に上画面に貼られるものとした(
図18のステップS16参照)。しかし、これに代え、ユーザが上画面に貼るべきシールを下画面に表示されるアイテムオブジェクトの中から自身で選択できるものとしてもよい。具体的には、ステップS16において、ユーザは、キャプチャ画像上においてシールを貼る位置を決定したうえで、貼るべきシールを自身で所持アイテムの中から選択する。この場合、CPU311によって、キャプチャ画像上で選択した位置とユーザが選択したアイテムとが比較対象データ329と比較されて、両データとも一致するときのみ、当該選択したシールが上画面に貼られる(表示される)。あるいは、ステップS15およびS16の処理は行われず、ユーザが選択したアイテムをキャプチャ画像上に貼ることができるとき(すなわち、選択したシールを貼るべき位置がキャプチャ画像内にあるとき)、キャプチャ画像上の所定の位置に、ユーザが選択したシールが上画面に自動的に貼られるようにしてもよい。
【0144】
また、上記実施形態では、下画面に表示されていたシール(所持アイテム)が上画面に貼り付けられるとき、下画面のシールの表示がOFFとなり、代わりに上画面にシールが表示される(現れる)ものとした(
図12、
図18のステップS17参照)。しかし、これに代え、下画面に表示されていたシールが上画面に貼り付けられるときは、下画面のシールが、下画面において徐々に上方に移動し、その移動に対応するように、上画面において当該シールが下方から徐々に現れるような表示制御が行われてもよい。この場合、ユーザに対して、下画面のシールが上画面に移動しているようなイメージを覚えさせることができ、シールの世界(下画面に表示される世界)とゲーム空間の世界(上画面に表示される世界)の結びつきをより実感させることができる。
【0145】
また、上記実施形態では、上画面において平面モデルオブジェクト(アイテムオブジェクト95B)が貼り付けられたキャプチャ画像の表示が、ゲーム空間の平面視表示に切り替わるタイミングで、平面モデルオブジェクトが、立体モデルオブジェクト(アイテムオブジェクト95C)に変わるものとした(
図14参照)。しかし、平面モデルオブジェクトが立体モデルオブジェクトに変わるタイミングは、これに限られるものではない。例えば、キャプチャ画像にオブジェクトが貼り付けられるときに、オブジェクトが立体モデルオブジェクトに変わるとしてもよい。すなわち、
図13に示すキャプチャ画像上に立体モデルオブジェクト(アイテムオブジェクト95C)が貼り付けられてもよい。また、さらには、下画面に表示される所持アイテム(アイテムオブジェクト95A)が、初めから立体モデルオブジェクト(アイテムオブジェクト95C)であってもよい。
【0146】
また、上記実施形態では、ユーザがキャプチャ画像上で選択して決定した位置等が不正解である場合には、
図18に示すステップS21の不正解処理が実行されるものとした。ところで、この不正解処理は上記実施形態に限られるものではなく、ゲームの内容に応じて適宜変更可能である。例えば、不正解の場合には、上画面においてキャプチャ画像が起き上がるアニメーション等は実行されず、即座に表示切替処理が実行される前の立体視表示に切り替わるものとしてもよい。さらに、この際、不正解を強調するアニメーション(例えば爆発のアニメーション)などを実行したうえで元の立体視表示に切り替えてもよい。
【0147】
また、上記実施形態では、上画面における立体視表示から平面視表示への切り替えは、両仮想カメラのカメラ間距離Dを調整することによって行われるものとした(
図18のステップS11等参照)。しかし、これに代え、上画面において立体視表示を平面視表示に切り替える際には、上画面において表示していた立体視画像(右目用画像及び左目用画像)から単一の平面視画像に切り替え表示させ、この単一画像をユーザの右目にも左目にも表示させるものとしてもよい。例えば、この単一画像は、仮想空間を仮想左カメラ50Lで撮像した左目用画像としてもよいし、仮想左カメラ50Lと仮想右カメラ50Rの中間に仮想中間カメラを配置して、当該仮想中間カメラで仮想空間を撮像した画像としてもよい。
【0148】
また、上記実施形態では、上画面に平面視表示されるオブジェクト(シール)が配置された(貼られた)後すぐに、上画面は平面視表示から立体視表示に戻るものとした(
図18のステップS20参照)。しかし、上画面が平面視表示から立体視表示に戻る(切り替わる)タイミングは、これに限られるものではない。例えば、上画面に平面視表示されるオブジェクトが配置されてから、当該オブジェクトが上画面から消えたとき(すなわち、ゲームの進行に伴って、当該オブジェクトが仮想空間の撮像範囲外に出た時など)に、上画面が平面視表示から立体視表示に戻るようにしてもよい。
【0149】
また、上記実施形態では、上側LCD22(上画面)に表示される立体視画像が、裸眼で立体視できる画像であるものとして説明した。しかし、上側LCD22には、立体視できる画像が表示されればよく、例えば、ユーザが立体視用の眼鏡をかけることによって立体視できる画像(つまり、左目用画像と右目用画像とが時分割で交互に表示される画像)が表示されてもよい。
【0150】
また、上記実施形態では、仮想左カメラ50Lの撮像方向60Lおよび仮想右カメラ50Rの撮像方向60Rは平行であるとし、平行法によって仮想空間が撮像されるものとした。しかし、これに限らず、例えば両仮想カメラの撮像方向は平行ではなく交差しており、交差法によって仮想空間が撮像されてもよい。
【0151】
また、上記実施形態は、本発明をゲーム装置10に適用したものであるが、本発明はゲーム装置10に限定されるものではない。例えば、携帯電話機、簡易型携帯電話機(PHS)、PDA等の携帯情報端末にも本発明の適用は可能である。また、据え置き型ゲーム機やパーソナルコンピュータ等にも本発明の適用は可能である。
【0152】
また、上記実施形態では、1つのゲーム装置10で上述した処理を実行しているが、有線又は無線で通信可能な複数の装置で上記処理を分担してもよい。
【0153】
また、上記実施形態において、ゲーム装置10の形状や、それに設けられている各種操作ボタン14等、タッチパネル13の形状、数、及び設置位置等は、単なる一例に過ぎず他の形状、数、及び設置位置であっても、本発明を実現できることは言うまでもない。また、上述した情報処理で用いられる処理順序、設定値、判定に用いられる値等は、単なる一例に過ぎず、本発明の範囲を逸脱しなければ他の順序や値であっても、本発明を実現できることは言うまでもない。
【0154】
また、上記実施形態のゲーム装置10において実行される各種情報処理プログラムは、外部メモリ44等の記憶媒体を通じてゲーム装置10に供給されるだけでなく、有線又は無線の通信回線を通じてゲーム装置10に供給されてもよい。また、上記プログラムは、ゲーム装置10内部の不揮発性記憶装置(データ保存用内部メモリ35等)に予め記録されていてもよい。なお、上記プログラムを記憶する情報記憶媒体としては、不揮発性メモリの他に、CD−ROM、DVD、或いはそれらに類する光学式ディスク状記憶媒体、フレキシブルディスク、ハードディスク、光磁気ディスク、磁気テープ等であってもよい。また、上記プログラムを記憶する情報記憶媒体としては、上記プログラムを一時的に記憶する揮発性メモリでもよい。
【0155】
以上、本発明を詳細に説明してきたが、上述の説明はあらゆる点において本発明の例示に過ぎず、その範囲を限定しようとするものではない。本発明の範囲を逸脱することなく種々の改良や変形を行うことができることは言うまでもない。