説明

画像生成装置、画像生成システム、画像生成プログラムおよび画像生成方法

【課題】興趣性が向上したスクリーンショットを生成し得る画像生成装置を提供すること。
【解決手段】平面視用の表示装置に表示するための画像を生成する画像生成装置のコンピュータで実行される画像生成プログラムであって、仮想空間の平面視を提供するための基準仮想カメラによって仮想空間を撮像することで平面視用画像を生成する第1画像生成手段、平面視用画像を表示装置に表示させる表示制御手段、平面視用画像を表示装置に表示中に、基準仮想カメラの設定に基づいて立体視用仮想カメラを設定し、当該立体視用仮想カメラによって仮想空間を撮像することで、少なくとも2つの視点に基づいて得られる右眼用画像と左眼用画像とを含む立体視用画像を生成する、第2画像生成手段および 立体視用画像を記憶装置に記憶させる、立体視用画像記憶制御手段、としてコンピュータを機能させる、画像生成プログラム。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、画像生成装置および画像生成システム、並びに当該装置またはシステム上で実行される画像生成プログラムおよび画像生成方法に関する。具体的には、本発明は、立体視機能を提供する技術に関連する、画像生成装置および画像生成システム、並びに当該装置またはシステム上で実行されるプログラムおよび方法に関する。
【背景技術】
【0002】
特許文献1および2に記載されるように、実行されているビデオゲームが表示画面に表示されたときにその全部または一部をスクリーンショットとして取得した画像を、プレイヤによるゲームプレイの記録、またはプレイヤ間のコミュニケーションに利用されることが行われている。
【0003】
上述の従来技術で取得されたスクリーンショットが再生された場合、表示される画像は、ゲーム中にスクリーンショットを取得した時に平面視表示された画像そのものが表示される。つまり、取得したスクリーンショットを再生すると、ユーザは、ゲーム中に一度表示された画像と同じ画像を視認するのみである。したがって、スクリーンショットを得たとしても、そのスクリーンショットは、ユーザにとっては興趣に欠けるものであった。また、従来の技術は、撮影したスクリーンショットを表示する態様が異なる別の機器に移そうとする動機に欠けるものであった。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2003−109025号公報
【特許文献2】特開2009−112550号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
本発明の目的の一つは、興趣性が向上したスクリーンショットを生成し得る画像生成装置を提供することである。
【課題を解決するための手段】
【0006】
上記目的を達成するために、本発明は、その一例として、以下のような態様で提供され得る。以下で示した具体的な記載のいずれもが、本発明の外延を理解するために示した例示的な記載であって、本発明がこの例に限定されることを意図するものではない。すなわち、当業者は、その具体的な記載から、本発明に関する記載および技術常識に基づいて均等な範囲を実施することができることを理解し得る。
【0007】
一態様において、本発明は、平面視用の表示装置に表示するための画像を生成する画像生成装置のコンピュータで実行される画像生成プログラムを提供する。この画像生成プログラムは、第1画像生成手段、表示制御手段、第2画像生成手段および立体視用画像記憶制御手段として上述のコンピュータを機能させる。
【0008】
第1画像生成手段は、仮想空間の平面視を提供するための基準仮想カメラによって上記仮想空間を撮像することで平面視用画像を生成する。表示制御手段は、上記平面視用画像を上記表示装置に表示させる。第2画像生成手段は、上記平面視用画像を上記表示装置に表示中に、上記基準仮想カメラの設定に基づいて立体視用仮想カメラを設定し、当該立体視用仮想カメラによって上記仮想空間を撮像することで、少なくとも2つの視点に基づいて得られる右眼用画像と左眼用画像とを含む立体視用画像を生成する。立体視用画像記憶制御手段は、前記表示装置に出力することなく上記立体視用画像を記憶装置に記憶させる。
【0009】
一実施形態において、立体視用画像記憶手段は、上記平面視用画像を上記表示装置に表示したままで、上記立体視用画像を、上記表示装置に出力することなく、上記記憶装置に記憶させてもよい。
【0010】
上述の実施形態において、立体視用仮想カメラによって撮像された仮想空間が、第1画像生成手段によって撮像された仮想空間のうちの所定の領域を含むように、第2画像生成手段は、上記立体視用画像を生成してもよい。
【0011】
上述の実施形態において、第2画像生成手段が、右眼用画像と左眼用画像とを生成するための上述の立体視用仮想カメラとして、右仮想カメラと左仮想カメラとを設定したとき、その左仮想カメラの視体積および右仮想カメラの視体積が、基準仮想カメラの視体積内にある所定の領域を含むように、第2画像生成手段が、その左仮想カメラおよび右仮想カメラを設定し、設定された左仮想カメラおよび右仮想カメラで仮想空間を撮像することにより左眼用画像および右眼用画像を生成してもよい。
【0012】
別の実施形態において、第2画像生成手段が、右眼用画像と左眼用画像とを生成するための立体視用仮想カメラとして、右仮想カメラと左仮想カメラとを設定したとき、第2画像生成手段は、その左仮想カメラおよび右仮想カメラを、基準仮想カメラと同じ視線方向に向くように、かつ、当該視線を含む仮想平面上で基準仮想カメラを挟むような位置関係となるように、平行移動した位置に設定し、設定された左仮想カメラおよび右仮想カメラで仮想空間を撮像することにより、右眼用画像および左眼用画像を生成してもよい。
【0013】
さらに別の実施形態において、第2画像生成手段が、右眼用画像と左眼用画像とを生成するための立体視用仮想カメラとして、右仮想カメラと左仮想カメラとを設定したとき、この第2画像生成手段は、基準仮想カメラの撮像範囲に含まれる所定のオブジェクトが、当該基準仮想カメラの撮像方向にある位置に応じて、その左仮想カメラおよび右仮想カメラの間隔を調整することで当該左仮想カメラおよび右仮想カメラを設定し、設定した左仮想カメラおよび右仮想カメラで撮像することにより左眼用画像および右眼用画像を生成してもよい。
【0014】
上述の実施形態において、所定のオブジェクトが上述の立体視用仮想カメラから遠位にあるほど、上述の左仮想カメラと右仮想カメラとの間隔が小さくなるように、第2画像生成手段は立体視用仮想カメラを設定してもよい。
【0015】
種々の実施形態において、上述の画像生成プログラムは、上記コンピュータを、所定のユーザ操作を検出する操作検出手段としてさらに機能させてもよい。このとき、上述の第2画像生成手段は、その操作検出手段によって所定のユーザ操作が検出されたことに応じて、立体視用画像を生成してもよい。
【0016】
種々の実施形態において、上述の画像生成プログラムは、上記コンピュータを、第1画像生成手段が平面視用画像を生成する際に用いる設定が所定の条件を満たしたか否かを判定する条件判定手段としてさらに機能させてもよい。このとき、第2画像生成手段は、その条件判定手段によってその所定の条件を満たした場合に、立体視用画像を自動的に生成し得る。
【0017】
種々の実施形態において、上記記憶装置は、上記画像生成装置に着脱可能な記憶媒体として提供してもよい。
【0018】
種々の実施形態において、上記記憶装置は、上記画像生成装置が有するか、またはこれに接続された揮発性記憶媒体として提供されてもよい。
【0019】
また、別の態様において、上述の画像生成プログラムは、その画像生成プログラムが提供する機能を実現するための装置としても、1または複数の装置が通信可能に接続されるシステムとして使用されてもよい。また、本発明は、上述のようなプログラム、装置、システムとして実装され得る、画像生成方法も含む。
【0020】
(本明細書で特に使用される用語)
なお、本明細書で使用される場合、「コンピュータ読み取り可能な記憶媒体」との用語は、プログラム、コードおよび/またはデータをコンピュータシステムによって使用するために記憶することが可能な、任意の装置または媒体をいう。コンピュータ読み取り可能な記憶媒体は、コンピュータシステムによって読み取りが可能である限りにおいて、揮発性であっても、不揮発性であってもよい。コンピュータ読み取り可能な記憶媒体としては、例えば、磁気テープ、ハードディスクドライブ(HDD)、コンパクトディスク(CD)、デジタルバーサタイルディスク(DVD)、ブルーレイディスク(BD)、半導体メモリなどが挙げられるが、これらに限られない。
【0021】
また、本明細書において使用される場合、「システム」(例えば、ゲームシステム、情報処理システム)との用語は、1つの装置で構成されてもよく、また、複数の装置であって、その各々の装置が他の装置のいずれかと通信可能であるものであってもよい。
【0022】
本明細書において使用される場合、装置またはシステムが、別の装置またはシステムに「接続する」状態は、有線で接続される状態に限らず、無線で接続される状態も包含し得る。
【0023】
本明細書で使用される場合、「立体視」とは、ヒトの両眼視の一機能である。具体的には、立体視とは、両眼の網膜像の差から奥行感を得る機能をいう。
【0024】
本明細書において使用される場合、「立体視用画像」とは、その画像が視認可能に提供される状態において、その観察者に奥行感を伴った立体視可能な画像として知覚される特性を備えている(例えば、両眼視差を反映する特徴を有する)画像または画像群をいう。この「立体用視画像」は、例えば、観察者が特定方向から見た場合にその観察者に奥行感を感じさせる画像をいう。例示すると、この「立体視用画像」は、2つの自由空間座標軸と特定方向の1空間軸とからなる3座標軸で定義される空間上の各点に与えられた濃度値の集合として表現され得る。
【0025】
具体的には、立体視用画像は、その画像の観察者の右眼に知覚されるための部分(右眼用画像)と、その画像の観察者の左眼に知覚されるための部分(左眼用画像)との組を、少なくとも1つずつ含む。代表的には、立体視用画像は、複数の視点から撮像された画像(マルチビュー画像)を含む所定の形式で提供され得る。立体視用画像を提供する形式としては、左眼用画像と右眼用画像とを、そのまま並置された状態で収められた画像(1ファイル)として保存されよい。また、それらの個別画像に対応する情報に、必要に応じた付加情報を与えた所定の形式で、立体視用画像が提供されてもよい。例えば、立体視用画像が提供されるフォーマットとしては、マルチピクチャーフォーマット(MPO形式)が挙げられるが、それに限られない。
【0026】
なお、立体視用画像は、左眼用画像として機能する部分、右眼用画像として機能する部分を、予定する表示装置の特性に応じて適宜、分割、再配置した構成を有する画像または画像群として構成されもよい。例えば、一度それぞれ単一の画像として生成された左眼用画像と右眼用画像が、それぞれ、その画素を縦に1ライン毎に並んだ短冊状画像に分割された態様で立体視画像が提供されてもよい。
【0027】
このように、立体視用画像は、その観察者に奥行感を伴った立体視可能な画像として知覚される特性を提供する機能を担保する限りにおいて、任意の形態を取り得る。
【0028】
立体視用画像を構成する個別画像が、静止画データとしての提供される場合、その静止画データは、任意のデジタル画像形式で提供され得る。主な静止画像の取扱いが可能なファイル形式としては、JPG(Joint Photographic Experts Group)、GIF(Graphics Interchange Format)、BMP(Bitmap)、TIFF(Tagged Image File Format)などが挙げられるが、これに限られない。
【0029】
本明細書で使用される場合、「立体視表示装置(stereoscopic display)」とは、観察者から立体的に見える映像、または観察者が奥行感を得る映像(image)を表示する装置をいう。より具体的には、立体視表示装置は、裸眼立体表示装置(autostereoscopic display)、眼鏡式立体表示装置などが挙げられる。この裸眼立体表示装置としては、パララックスバリア方式立体表示装置、レンチキュラーレンズ方式立体表示装置が挙げられるが、これらに限定されない。
【0030】
本明細書で使用される場合、「平面視」とは、立体視によらない視覚の機能である。
【0031】
本明細書で使用される場合、「平面視用」の「表示装置」とは、立体視表示機能を有さない表示装置、または立体視表示機能が選択的にオフにされた状態にある表示装置をいう。
【発明の効果】
【0032】
本発明によって、興趣性が向上したスクリーンショットを生成し得る画像生成装置などが提供された。
【図面の簡単な説明】
【0033】
【図1】本発明の一実施形態に係るゲームシステム1を示す外観図
【図2】図1のゲーム装置本体4の一例を示すブロック図
【図3】仮想オブジェクトが透視投影に基づいて描かれた画像が、表示部2’に表示された様子の一例を示す模式図
【図4】この仮想ステレオカメラの設定を規定するための基準となる基準仮想カメラBCの視体積
【図5】右仮想カメラRCおよび左仮想カメラLCのそれぞれの視体積と、それぞれの仮想カメラの位置を求めるための基準となった基準仮想カメラBCの視体積とを示す模式図
【図6】ゲーム装置5のメインメモリ32のメモリマップを示す模式図
【図7】本発明の例示的実施形態であるゲーム装置3において、その画像生成プログラム70に基づいて行われるメイン処理の一例を示すフローチャート
【発明を実施するための形態】
【0034】
(画像生成装置の構成)
例示的な実施形態において、本発明は、平面視用の表示装置に表示するための画像を生成する画像生成装置のコンピュータで実行される画像生成プログラムを提供する。本実施形態において、この画像生成装置は、例えば、ゲーム装置3として提供される。
【0035】
図1を参照して、ゲーム装置3を含む画像生成システムについて説明する。以下、説明を具体的にするために、当該画像表示システムとして、据置型のゲーム装置本体4を含むゲームシステム1を用いて説明する。
【0036】
図1は、据置型のゲーム装置3を含むゲームシステム1の一例を示す外観図である。また、図2は、ゲーム装置本体4の一例を示すブロック図である。以下、当該ゲームシステム1について説明する。なお、本明細書に添付の図面は、本発明の例示的な実施形態を説明するためのものであり、本発明の範囲がその図面に記載される具体的な態様に限定されることを意図するものではない。
【0037】
図1において、ゲームシステム1は、表示手段の一例の家庭用テレビジョン受像機2(以下、モニタ2と記載する)と、当該モニタ2に接続コードを介して接続する据置型のゲーム装置3とから構成される。本実施形態において、このモニタ2は、立体視表示機能を備えていない。ユーザは、コントローラ7を操作することで、無線でゲーム装置3に命令を送り、制御することが可能である。
【0038】
次に、図2を参照して、ゲーム装置本体4の内部構成について説明する。図2は、ゲーム装置本体4の構成を示すブロック図である。ゲーム装置本体4は、CPU(Central Processing Unit)10、システムLSI(Large Scale Integration)11、外部メインメモリ12、ROM/RTC(Read Only Memory/Real Time Clock)13、ディスクドライブ14、およびAV−IC(Audio Video−Integrated Circuit)15等を有する。
【0039】
CPU10は、例えば、光ディスクに記憶されたプログラムに基づいて情報処理を行う。
【0040】
CPU10は、システムLSI11に接続される。システムLSI11には、CPU10の他、外部メインメモリ12、ROM/RTC13、ディスクドライブ14、およびAV−IC15が接続される。システムLSI11は、それに接続される各構成要素間のデータ転送の制御、表示すべき画像の生成、外部装置からのデータの取得等の処理を行う。揮発性の外部メインメモリ12は、光ディスクから読み出されたプログラムおよび各種データや、フラッシュメモリ17から読み出された各種データを記憶したりするものであり、CPU10のワーク領域やバッファ領域として用いられる。ROM/RTC13は、ゲーム装置本体4の起動用のプログラムが組み込まれるROM(いわゆるブートROM)と、時間をカウントするクロック回路(RTC)とを有する。ディスクドライブ14は、光ディスクからプログラムデータやテクスチャデータ等を読み出し、内部メインメモリ35または外部メインメモリ12に読み出したデータを書き込む。
【0041】
また、システムLSI11には、入出力プロセッサ31、GPU(Graphics Processor Unit)32、DSP(Digital Signal Processor)33、VRAM(Video RAM)34、および内部メインメモリ35が設けられる。図示は省略するが、これらの構成要素31〜35は、内部バスによって互いに接続される。
【0042】
GPU32は、ゲーム装置5における描画手段の一部を形成し、CPU10からのグラフィクスコマンド(作画命令)に従って画像を生成する。より具体的には、GPU32は、当該グラフィクスコマンドに従って3Dグラフィックスの表示に必要な計算処理、例えば、レンダリングの前処理にあたる3D座標から2D座標への座標変換などの処理や、テクスチャマッピング(ピクセル単位で、ポリゴンの色とテクスチャの色を合成して最終的な色をピクセル単位で出力する処理)などの最終的なレンダリング処理を行うことで、ゲーム画像データを生成する。
【0043】
より具体的には、GPU32の機能としてラスタライズを一例にとれば、いわゆる透視変換処理などの処理を受けた頂点単位(ポリゴン単位)のデータが得られた際に、GPU32は、ポリゴンを構成する三角形の各辺を(そのデータに含まれる)頂点から計算し(「トライアングルセットアップ」)、計算した三角形の内部を塗りつぶす処理(DDA(Digital Differential Analyzer)としての処理)を行う。この三角形の内部を塗りつぶすための色は、三角形の各頂点が有する色情報をもとに補間された色が用いられる。
【0044】
また、ラスタライザとしてのGPU32は、三角形を塗りつぶすときのピクセル1つ1つに対して、模様となる画像(テクスチャ)の対応するピクセル(テクセルとも呼ばれる)の選び出しも行っている。例えば、GPU32は、上記のポリゴンを構成する頂点のデータがテクスチャ画像から切り抜くべき位置の情報もあわせ持つ場合に、その位置の情報からテクスチャ画像を走査して、塗りつぶすべき各ピクセルにそれぞれ対応するテクスチャ画像のピクセルの位置情報を計算する。
【0045】
VRAM34は、GPU32がグラフィクスコマンドを実行するために必要なデータ(ポリゴンデータやテクスチャデータ等のデータ)を記憶する。また、VRAM34は、フレームバッファ34aとZバッファ34bを含む。
【0046】
フレームバッファ34aは、例えば、モニタ2へ供給すべき1フレーム分の画像データを描画または蓄積しておくためのメモリである。後述のAV−IC15が所定の周期(例えば、60分の1秒の周期)でフレームバッファ34aのデータを読み出すことによって、モニタ2の画面上に三次元ゲーム画像が表示される。
【0047】
また、Zバッファ34bは、フレームバッファ34aに対応する画素(記憶位置またはアドレス)数×1画素当たりの奥行きデータのビット数に相当する記憶容量を有し、フレームバッファ34aの各記憶位置に対応するドットの奥行き情報または奥行きデータ(Z値)を記憶するものである。
【0048】
DSP33は、オーディオプロセッサとして機能し、内部メインメモリ35や外部メインメモリ12に記憶されるサウンドデータや音波形(音色)データを用いて、音声データを生成する。
【0049】
また、内部メインメモリ35は、外部メインメモリ12と同様に、プログラムや各種データを記憶することに加え、CPU10のワーク領域またはバッファ領域などとしても用いられる。
【0050】
上述のように生成された画像データおよび音声データは、AV−IC15によって読み出される。AV−IC15は、AVコネクタ16を介して、読み出した画像データをモニタ2に出力するとともに、読み出した音声データをモニタ2に内蔵されるスピーカ2aに出力する。これによって、画像がモニタ2に表示されるとともに音がスピーカ2aから出力される。
【0051】
入出力プロセッサ(I/Oプロセッサ)31は、それに接続される構成要素との間でデータの送受信を実行したり、外部装置からのデータのダウンロードを実行したりする。入出力プロセッサ31は、フラッシュメモリ17、無線通信モジュール18、無線コントローラモジュール19、拡張コネクタ20、および外部メモリカード用コネクタ21に接続される。無線通信モジュール18にはアンテナ22が接続され、無線コントローラモジュール19にはアンテナ23が接続される。
【0052】
入出力プロセッサ31は、無線通信モジュール18およびアンテナ22を介してネットワークに接続し、ネットワークに接続される他のゲーム装置や各種サーバと通信することができる。入出力プロセッサ31は、定期的にフラッシュメモリ17にアクセスし、ネットワークへ送信する必要があるデータの有無を検出し、当該データがある場合には、無線通信モジュール18およびアンテナ22を介して当該データをネットワークに送信する。また、入出力プロセッサ31は、他のゲーム装置から送信されてくるデータやダウンロードサーバからダウンロードしたデータを、ネットワーク、アンテナ22、および無線通信モジュール18を介して受信し、受信したデータをフラッシュメモリ17に記憶する。CPU10は、フラッシュメモリ17に記憶されたデータを読み出して利用することができる。フラッシュメモリ17には、ゲーム装置本体4と他のゲーム装置や各種サーバとの間で送受信されるデータの他、ゲーム装置本体4を利用してプレイしたゲームのセーブデータ(ゲームの結果データまたは途中データ)が記憶されてもよい。
【0053】
また、入出力プロセッサ31は、アンテナ23および無線コントローラモジュール19を介して、コントローラ7から送信される操作データ等を受信し、内部メインメモリ35または外部メインメモリ12のバッファ領域に記憶(一時記憶)する。
【0054】
さらに、入出力プロセッサ31には、拡張コネクタ20および外部メモリカード用コネクタ21が接続される。拡張コネクタ20は、USBやSCSIのようなインターフェースのためのコネクタであり、外部記憶媒体のようなメディアを接続したり、他のコントローラのような周辺機器を接続したり、有線の通信用コネクタを接続することによって無線通信モジュール18に替えてネットワークとの通信を行ったりすることができる。外部メモリカード用コネクタ21は、メモリカードのような外部記憶媒体を接続するためのコネクタである。例えば、入出力プロセッサ31は、拡張コネクタ20や外部メモリカード用コネクタ21を介して、外部記憶媒体にアクセスし、データを保存したり、データを読み出したりすることができる。
【0055】
また、ゲーム装置本体4(例えば、前部主面)には、当該ゲーム装置本体4の電源ボタン24、ゲーム処理のリセットボタン25、光ディスクを脱着する投入口、およびゲーム装置本体4の投入口から光ディスクを取り出すイジェクトボタン26等が設けられている。電源ボタン24およびリセットボタン25は、システムLSI11に接続される。電源ボタン24がオン状態にされると、ゲーム装置本体4の各構成要素に対して、図示しないACアダプタを介して電力が供給される。リセットボタン25が押されると、システムLSI11は、ゲーム装置本体4の起動プログラムを再起動する。イジェクトボタン26は、ディスクドライブ14に接続される。イジェクトボタン26が押されると、ディスクドライブ14から光ディスクが排出される。
【0056】
(画像生成装置の例示的な処理過程)
次に、本発明の例示的な実施形態の画像生成装置であるゲーム装置3において、画像生成プログラムに従う処理の概略を説明する。また、この例示的な本実施形態では、以下で説明する処理(特に、後述する図7のフローチャートにおけるすべてのステップの処理)をCPU10が実行するものとして説明するが、このような処理のいずれも、CPU10以外のプロセッサや専用回路が実行するようにしてもよい。
【0057】
本実施形態において、本発明は、平面視用の表示装置に仮想空間の画像を表示しつつ、その一方で、立体視可能に当該仮想空間のスクリーンショットを所定の形式で出力し得る画像生成装置の一例としてゲーム装置3を提供する。ここで、本実施形態に係るスクリーンショットとは、当該平面視用の表示装置に表示された仮想空間の画像に対応した画像であって、特に、ゲーム装置5のLCD22で表示された場合に、立体視可能な態様で表示され得るものである。
【0058】
ゲーム装置3は、画像生成プログラム70(後述の「メモリマップ」についての記載および図6を参照)を実行することで、本発明に係る例示的な立体視表示可能なスクリーンショットの生成を達成する。画像生成プログラム70は、アプリケーションプログラムとしてのゲームプログラム71が担うゲーム処理の過程で呼び出されるか、または、そのゲームプログラム71の機能の一部を担うプログラムとして実行されることで、本発明の例示的な実施形態の画像処理を達成するためのプログラムである。画像生成プログラム70とゲームプログラム71との間で行われる機能の分担は、任意に変更し得る。
【0059】
ゲーム装置3は、そのゲーム処理の過程において、一連の仮想空間を描画した結果としての画像を平面視表示しつつ、その一方で、立体視可能な状態の画像(スクリーンショット)を出力し得る。ここで、添付の図面を参照しつつ、ゲーム装置3が、仮想空間の画像を描画し、表示する過程の一例を説明する。
【0060】
画像生成プログラム70(および/またはゲームプログラム71)は、ワールド座標(すなわち、図形の入出力を行うために使われる、装置に依存しない直交座標)で規定される3次元シーンを、表示装置の表示面(例えば、モニタ2の表示面2’)上に2次元のシーンとして逐次的に表現する処理を実行する。すなわち、この処理の過程において、ワールド座標に配置された仮想オブジェクトは、必要に応じて、いくつかの空間すなわち座標系へと変換を受ける。また、画像生成プログラム70は、ゲーム装置3が有する表示面2’に仮想空間を表した平面視用画像を表示しつつ、その画像に対応する別の表示装置(LCD22)で立体視可能な画像を出力し得る。
【0061】
この例示的な実施形態に係るゲーム装置3は、仮想オブジェクトが配置された仮想空間を、「仮想ステレオカメラ」によって所望の視点から撮像することによって、立体視可能な形式の画像を生成し得る。ここで、仮想ステレオカメラは、両眼視差を反映した画像群を提供するために仮想空間に位置づけられた仮想カメラ群(複数の視点)である。両眼視差は、観察者の左右の網膜上における同一対象の相対的な位置のずれである。ゲーム装置3は、この位置のずれを再現するように立体視用画像(例えば、右眼用画像および左眼用画像)を生成する。
【0062】
まず、ワールド座標で規定される3次元シーンを、表示面2’上に2次元シーンとして表示するアプリケーションプログラムによって規定される処理、および当該2次元シーンを立体視可能な形式で出力する一般的な処理を説明する。
【0063】
ゲーム装置3で行なわれる情報処理過程において、そのアプリケーションプログラム(例えば、ゲームプログラム71)の要求に応じ、所定の仮想オブジェクト(例えば、仮想オブジェクトOBJ1)が、ワールド座標に配置される。この所定のオブジェクトが、例えば、3次元仮想オブジェクトであれば、その3次元オブジェクトは、ローカル座標系で規定されるモデルで表現されており、そのモデルに基づき、ワールド座標系に配置される。
【0064】
平面視表示であっても、立体視表示であっても、ゲーム装置3は、所定の視点を規定して、3次元シーン(3次元仮想空間)を2次元シーンとして出力する。ゲーム装置3が、立体視可能な形式の画像を得る生成するためには、少なくとも2つの視点(仮想カメラ)を設定するが、3次元シーンから2次元シーンへの変換は、平面視表示の場合と処理の一部を共通にする。したがって、以下に所定の視点から3次元仮想空間を撮像して、2次元シーンを得る手順について概説する。
【0065】
観察者の視点(仮想カメラ)から捉えられた3次元仮想空間の部分空間のみが、最終的に、ゲーム装置3が有する表示装置の表示面2’に表示される。この仮想カメラは、ワールド座標系における位置および方向を有しており、その位置および方向は、得られる2次元シーンを特徴付ける。まず、3次元仮想空間に存在する仮想カメラおよび全てのモデルは、ワールド座標系で表現され、ビュー座標変換を受ける。ビュー座標変換は、ワールド座標から、仮想カメラを原点に位置づけた所定の座標系へと変換する処理である。この変換後の空間は、カメラ空間(カメラ座標系)と呼ばれる。
【0066】
このビュー座標変換は、例えば、xyz座標系で、仮想カメラを、z軸の正方向に向かせて、その際にy軸が上方向とし、x軸がその左方向となるように、方向づける。その3軸の実際の方向づけは、アプリケーションプログラムの具体的な仕様に依存して、若干の相違を有する場合がある。例えば、その仮想カメラを原点に位置づけ、その仮想カメラを、z軸の負方向を向かせ、その際にy軸が上方向とし、x軸がその右方向となるように、方向づけてもよい。
【0067】
次いで、必要に応じて、いわゆる頂点シェーディング処理が行なわれてもよい。その後、ゲーム装置3のCPU10は、投影処理(プロジェクション)を行なう視体積(ビューボリューム)を単位立方体(カノニカルビューボリューム)に変換する)。実空間の物体の視覚的なとらえ方(遠近)を再現するために、この投影処理には、通常、透視投影が利用される。
【0068】
透視投影では、視点(仮想カメラ)から離れたオブジェクトほど、そのオブジェクトは、投影後に、より小さく見える態様で処理が行なわれる。幾何学的には、その透視投影における視体積は、錐台である。
【0069】
そのような態様の投影を利用して得られた画像の一例が、図3に示される。図3は、仮想オブジェクトが透視投影に基づいて描かれた画像が、表示部2’に表示された様子の一例を示す模式図である。具体的には、ビルを模した仮想オブジェクトOBJ1が仮想空間に配置された3次元シーンが、表示部2’に示されている。
【0070】
ゲーム装置3が、立体視可能な形式の画像(例えば、右眼用画像および左眼用画像)を生成するためには、その画像を生成するための仮想ステレオカメラ(右仮想カメラRCおよび左仮想カメラLC)が、必要である。
【0071】
図4は、この仮想ステレオカメラの設定を規定するための基準となる基準仮想カメラBCの視体積を例示している。図4は、図3に示された画像を得る場合に想定される視体積の一例を示す模式図である。この模式図は、視点O(例えば、基準仮想カメラBCの位置)、ファークリップ面FCと、ニアクリップ面NCと、投影面ABであるときに、所定の画角で規定された視体積を例示する。すなわち、これは、基準仮想カメラBCの位置を、原点にとる視体積である。別の視点が定義されれば、それに従い視体積も定義される。このような視体積を、単位立方体に変換することで、オブジェクトが視点から近位に配置される場合と比べ、遠位に位置づけられた同一オブジェクトが小さく表示される画像が得られる。
【0072】
本例において、右仮想カメラRCおよび左仮想カメラLCの位置の中点が、基準仮想カメラBCの位置と対応づけられる。また、本例の場合、右仮想カメラRCの位置と左仮想カメラLCの位置を結んだ直線は、投影面ABと平行である。
【0073】
右仮想カメラRCおよび左仮想カメラLCは、基準仮想カメラBCの視体積と類似の視体積をそれぞれ構成する。これらの視体積は、投影面ABを、基準仮想カメラBCの視体積と共有する。いずれにしろ、これらの2種類の視体積を利用することにより、すなわち、複数の視点(仮想カメラ)に基づいて、同一対象(被写体)を捉えて投影面に透視投影することにより、両眼視差を生じる立体視用画像が生成される。なお、仮想ステレオカメラ(3以上の視点の場合も含む)の設定の方法は、両眼視差を再現できる手法であれば、上述の例で説明したものに限られない。
【0074】
指定した視点に基づいて投影処理を行った後、仮想空間に配置されたモデルは、正規化装置座標に位置づけられる。本明細書で使用される場合、「正規化装置座標」とは、中間座標系で指定され、所定の範囲(代表的には、0から1まで)に正規化される装置座標をいう。正規化装置座標で表された表示画像は、どの装置空間でも同じ相対位置に表示される。また、ここで、「装置座標」とは、装置に依存した座標系で指定される座標をいう。この正規化装置座標で定義付けられたオブジェクトを含む仮想空間は、表示装置に非依存的にその表示面の所定の位置にその仮想空間に対応する像を表示することができる。
【0075】
正規化装置座標で規定された仮想オブジェクトは、必要に応じてクリッピング処理を受けた後、装置座標(スクリーン座標)にマッピングされる。具体的には、それらのオブジェクトは、表示装置(例えば、モニタ2またはLCD22)の規格・設定に合致するように、並進操作・拡大縮小操作を経て、表示面を規定する2次元座標として装置座標で規定される(なお、奥行き方向の情報を付加する場合は、ゲーム装置3の任意の記憶領域にその値を保持し得る)。装置座標としては、例えば、モニタ2またはLCD22の表示域の中心を原点としてその表示面に平行なxy平面で表示面として規定され得る。
【0076】
例えば、ゲーム装置5は、仮想カメラ間隔を反映する右眼用画像および左眼用画像をLCD22に表示する。右眼用画像および左眼用画像は、視差バリアの作用により、ユーザの右眼および左眼のそれぞれに認識され、両眼の各々に知覚された画像は、両眼視差の作用によって立体感を引き起こす。
【0077】
(より具体的な処理についての説明)
(メモリマップの例示的な構成)
ここで、ゲームプログラムの実行中にメインメモリ32に記憶される主なデータについて説明する。図6は、ゲーム装置5のメインメモリ32のメモリマップを示す模式図である。図6に示されるように、メインメモリ32には、ゲームプログラム70、画像生成プログラム71、仮想オブジェクト情報72、スクリーンショット情報73、各種変数74等が記憶される。
【0078】
画像生成プログラム70は、ゲームプログラム71のゲーム処理の過程で呼び出されるか、または、そのゲームプログラム71の一部として機能することで、本発明の例示的な実施形態の処理を担うプログラムである。
【0079】
ゲームプログラム71は、情報処理部31にゲーム表示処理を実行させるためのプログラムである。
【0080】
仮想オブジェクト情報72は、仮想オブジェクトに関連する情報であって、仮想オブジェクトの形状や模様を表すモデル情報(例えば、ポリゴンに関する情報)や、仮想空間における仮想オブジェクトの現在位置などを含む。
【0081】
スクリーンショット情報73は、ゲーム装置5が、立体視可能な画像として生成されたスクリーンショットに対応する静止画データである。
【0082】
各種変数74は、ゲームプログラム70および画像生成プログラム71の実行の際に用いられる各種変数である。
【0083】
(具体的な処理の流れ)
図7を参照しつつ、上記の処理をより具体的に説明する。
【0084】
図7は、本発明の例示的実施形態であるゲーム装置3において、その画像生成プログラム70に基づいて行われるメイン処理の一例を示すフローチャートである。
【0085】
ステップ101において、CPU10は、仮想空間内にオブジェクトを配置する処理を実行する。具体的には、ゲーム装置3で行なわれる情報処理過程において、そのアプリケーションプログラム(例えば、ゲームプログラム71)の要求に応じ、所定のオブジェクト(例えば、仮想オブジェクトOBJ1)が、ワールド座標に配置される。
【0086】
ステップ102において、CPU10は、基準仮想カメラBCの位置情報を取得する処理を実行する。具体的には、ゲーム装置3で行なわれる情報処理過程に応じて、ワールド座標系における任意の位置および方向が、基準仮想カメラBCの位置情報として使用される。
【0087】
ステップ103において、CPU10は、基準仮想カメラBCに基づき仮想空間の描画・表示する処理を実行する。具体的には、CPU10は、上述したような透視投影による処理(透視変換処理)を基準仮想カメラBCの位置情報に基づいて行う。そして、CPU10は、得られた画像を所定のタイミングで、表示面2’に表示する。
【0088】
ステップ104において、CPU10は、立体視用スナップショットを取得する条件を満たしているか否かを判定する。この立体視用スナップショットを取得する条件は、後続のステップ105および106の一連の処理に進み、立体視表示用の画像を生成するか否かを決定するための条件である。
【0089】
具体的には、この条件は、ゲームプログラム71のゲーム処理の進行上の所定の場合(例えば、ゲーム処理上の内部状態が、ゲームアプリケーションにおける所定のステージの処理を行っている状態にある場合)として設定し得る。また、ゲーム装置3が、そのユーザが行った所定の操作(例えば、コントローラ7を介して行う所定の操作)を検出することを、上述の条件としてもよい。なお、この立体視用スナップショットを取得する条件を満たしているか否かを判定する処理は、上述のステップ101から103までの各ステップの前の段階で行われてもよい。
【0090】
ステップ104において、CPU10は、立体視用スナップショットを取得する条件を満たしていると判定した場合(ステップ104、YES)、CPU10は、ステップ105以降の処理を行う。他方、CPU10が、立体視用スナップショットを取得する条件を満たしていないと判定した場合(ステップ104、NO)、CPU10は、ステップ105および106の処理をスキップし、ステップ107の処理を行う。
【0091】
ステップ105およびステップ106に示された処理は、立体視表示用の画像を生成するための一連の処理である。
【0092】
ステップ105において、CPU10は、基準仮想カメラBCの情報に基づき仮想ステレオカメラ設定する処理を実行する。
【0093】
ステップ106において、CPU10は、立体視用画像の出力・記憶する処理を実行する。
【0094】
このステップ105およびステップ106の処理のより具体的な手順は、概ね次のとおりである。
【0095】
ゲーム装置3は、立体視可能な態様な画像群を提供するために仮想ステレオカメラ(右眼用として、右仮想カメラRC、左眼用として、左仮想カメラLC)の設定する。
【0096】
具体的には、仮想ステレオカメラの位置などは、例えば、次のような方法により算出する。その算出方法を説明するために、任意点の仮想オブジェクトに設けられるべき、右眼用画像と左眼用画像との間における当該オブジェクトの像(対応点)のずれ量の例示的な求め方について説明する。図5を参照しつつ、この説明を行なう。
【0097】
図5は、右仮想カメラRCおよび左仮想カメラLCのそれぞれの視体積と、それぞれの仮想カメラの位置を求めるための基準となった基準仮想カメラBCの視体積とを示す模式図である。いずれの視体積も、ファークリップ面FCと、それに平行なニアクリップ面NCと挟まれている。その両クリップ面と平行な基準面ABの位置に投影面(図中の記号*)が位置づけられている。
【0098】
まず、各仮想カメラからみて基準面より近位にある仮想オブジェクトの代表点M1において、立体視可能な形式であるために、右眼用画像および左眼用画像に投影された像の間に生じさせるべき水平方向(x軸方向)のずれ量について説明する。
【0099】
仮想オブジェクトの代表点M1を、投影面(立体視表示機能を有するゲーム装置5の表示面(LCD22)に対応する位置にある面)よりも手前に位置する感覚(奥行感の一種)を与えるように、ゲーム装置5の表示面に表示する条件を算出するために、次のモデルを想定する。
【0100】
仮想カメラ群からd1だけ離れた代表点M1の像を、投影面より手前に表示するには、右眼用画像および左眼用画像において、その仮想カメラ(右仮想カメラ、左仮想カメラ)と代表点M1とを結ぶ直線と基準面との交点(右仮想カメラについては、点R1であり、右仮想カメラについては、点L1である)の位置に、代表点M1の像を描画する。
【0101】
すなわち、右眼用画像および左眼用画像に投影された像が、基準仮想カメラBCに基づいて投影された像の位置を基点とすると、右眼用画像においては左方向、左眼用画像においては右方向に移動した位置に描画される。そして、右眼用画像および左眼用画像に投影された像の間に生じている水平方向のずれ量が、長さR11が必要であることが理解される。
【0102】
この長さR11は、任意の仮想カメラ間隔Iと仮想カメラまでの距離Dを用いると、次のように表現される:
11=I・(D−d1)/d1 式(1)
ただし、D≧d1
【0103】
同様に、基準面(LCD22)より奥(視点からみて遠位)に(距離d2だけ離れて)位置する仮想オブジェクトの代表点M2についても、そのずれ量R22は、次式で表現される:
22=I・(d1−D)/d2 式(2)
ただし、D<d2
【0104】
以下、距離R11およびR22を算出するように求められたずれ量を総称してΔXとして表記する。なお、この場合においては、右眼用画像および左眼用画像に投影された像が、基準仮想カメラBCにより投影された像の位置を基点とすると、右眼用画像においては右方向、左眼用画像においては左方向に移動した位置に描画される。
【0105】
CPU10は、得られた立体視用画像(右眼用画像、左眼用画像)を、ゲーム装置3の所定の記憶領域(例えば、メインメモリ32、内部メインメモリ35、外部メインメモリ12など)に記憶する。この記憶領域は、揮発性であっても、不揮発性であってもよい。例えば、図6に示されるように、メインメモリ32においてスクリーンショット情報73用の領域が設けられており、CPU10は、この領域に、その立体視用画像を保存する。
【0106】
ステップ107において、CPU10は、ゲーム処理を終了するか否かを判定する。具体的には、CPU10は、ゲーム終了の条件(例えば、ユーザによる所定の操作を検知、またはゲーム処理の所定のステージへの到達など)を満たしたと判定した場合(ステップ107、YES)、ゲーム108の処理に進む。他方、CPU10は、当該ゲーム終了の条件を満たしていないと判定した場合、上述のステップ101の処理に戻る。
【0107】
ステップ108において、CPU10は、後処理を実行する。具体的には、CPU10は、上述の記憶領域に保存された立体視用画像を、必要に応じて、所定の別の領域に移動させるか、または無線機能を介して、別の機器(例えば、ゲーム装置5)へと移動させる処理を行う。例えば、CPU10は、着脱可能な記憶媒体にその立体視用画像を保存してもよい。保存されたデータが、揮発性の記憶領域に保存されている場合は、必要に応じて不揮発性の記憶領域に移動されてもよい。
【0108】
このように生成された立体視用画像は、任意の方法に従い立体視表示装置を備えるシステムにおいて、立体視可能な態様で再生されることが可能となる。
【0109】
このような立体視表示装置を有するシステムとしては、例えば、図1の点線で囲まれた領域に示されるゲーム装置5が挙げられるが、この例に限られない。ゲーム装置5は、立体視表示装置として、LCD22を備える。LCD22の画素数は、例えば、800dot×240dot(横×縦)であってもよい。なお、本実施形態ではLCD22は液晶表示装置であるとしたが、例えばEL(Electro Luminescence:電界発光)を利用した表示装置などが利用されてもよい。また、LCD22として、任意の解像度の表示装置を利用することができる。
【0110】
ゲーム装置5のLCD22は、立体視可能な画像を表示することが可能な表示装置である。また、本実施例では、実質的に同一の表示領域を用いて左眼用画像と右眼用画像が表示される。具体的には、左眼用画像と右眼用画像が所定単位で(例えば、1列ずつ)横方向に交互に表示される方式の表示装置である。または、左眼用画像と右眼用画像とが交互に表示される方式の表示装置であってもよい。また、本実施例では、裸眼立体視可能な表示装置である。そして、横方向に交互に表示される左眼用画像と右眼用画像とを左眼および右眼のそれぞれに分解して見えるようにレンチキュラー方式やパララックスバリア方式(視差バリア方式)のものが用いられる。本実施形態では、LCD22はパララックスバリア方式のものとする。LCD22は、右眼用画像と左眼用画像とを用いて、裸眼で立体視可能な画像(立体画像)を表示する。すなわち、LCD22は、視差バリアを用いてユーザの左眼に左眼用画像をユーザの右眼に右眼用画像を視認させることにより、ユーザにとって立体感のある立体画像(立体視可能な画像)を表示することができる。また、LCD22は、上記視差バリアを無効にすることが可能であり、視差バリアを無効にした場合は、画像を平面的に表示することができる(上述した立体視とは反対の意味で平面視の画像を表示することができる。すなわち、表示された同一の画像が右眼にも左眼にも見えるような表示モードである)。このように、LCD22は、立体視可能な画像を表示する立体表示モードと、画像を平面的に表示する(平面視画像を表示する)平面表示モードとを切り替えることが可能な表示装置である。この表示モードの切替えは、後述する3D調整スイッチ25によって行われる。具体的には、3D調整スイッチ25におけるスライダ25aの相対位置が、平面表示モードと立体視モードとの段階的な切換えと対応づけられている。
【0111】
(その他の事項)
【0112】
上述の実施形態において、両眼視差を再現する手法として一般的なパララックスバリア方式を採用したディスプレイで再生可能な立体視用画像を生成する態様を説明した。しかし、立体視表示する手法としては、このパララックスバリア方式に限定されない。例えば、立体視表示する手法として、いわゆるインテグラル方式を作用してもよい。すなわち、両眼視差を再現する手法として、視差を反映した画像の表示を、物体が反射する光を表示装置で再現するという原理を利用してもよい。通常の表示装置の液晶では、RGBのサブピクセル3つで1つのピクセル(画素)を構成しているが、このインテグラル方式は別の構成を採用している。例えば、映像表示での1画素分を、27個のサブピクセルで構成する。そして、その表示装置は、視差を情報を反映した9通りの映像を、特殊形状のレンズにより複数方向(上述の例の場合9方向)の光として放射する。これによって、上述のレンズ越しに見える画素群が左右の眼にわずかに異なる映像を投影することで両眼視差が生じ得る。
【0113】
上記実施形態では、ゲーム装置3を用いて画像生成プログラム70について説明しているが、他の実施形態では、任意の情報処理装置または情報処理システム(例えば、PDA(Personal Digital Assistant)、携帯電話、パーソナルコンピュータ、カメラ等)において、本発明の画像生成プログラムを使用してもよい。
【0114】
また、上記実施形態では、一台の装置(ゲーム装置3)のみによってゲーム処理に伴う画像生成プログラムを実行しているが、他の実施形態では、互いに通信可能な複数の情報処理装置を有する画像表示システムにおいて、当該複数の情報処理装置が画像表示処理を分担して実行するようにしてもよい。
【0115】
なお、汎用的なプラットフォームにおいて本発明の画像制御プログラム等が使用される場合には、当該表示制御プログラムが、当該プラットフォームにおいて標準的に提供されるプログラムモジュールを用いることを前提として提供されてもよい。上述のようなモジュールによって機能が補完されることを前提に、上記画像生成プログラムから上述のようなモジュールに対応する機能を除いたものは、実質的にこの画像生成プログラムに相当すると理解されるべきである。
【0116】
以上、本発明を詳細に説明してきたが、前述の説明はあらゆる点において本発明の例示にすぎず、その範囲を限定しようとするものではない。本発明の範囲を逸脱することなく種々の改良や変形を行うことができることは言うまでもない。本発明は、特許請求の範囲によってのみその範囲が解釈されるべきであることが理解される。ここで、当業者は、本発明の具体的な実施形態の記載から、本発明の記載および技術常識に基づいて均等な範囲を実施することができることが理解される。また、本明細書において使用される用語は、特に言及しない限り、当該分野で通常用いられる意味で用いられることが理解されるべきである。したがって、他に定義されない限り、本明細書中で使用されるすべての専門用語および技術用語は、本発明の属する分野の当業者によって一般的に理解されるのと同じ意味を有する。矛盾する場合、本明細書(定義を含めて)が優先する。
【符号の説明】
【0117】
1…ゲームシステム
2…モニタ
3…ゲーム装置
4…ゲーム装置本体
10…CPU
11…システムLSI
12…外部メインメモリ
13…ROM/RTC
14…ディスクドライブ
15…AV−IC
16…AVコネクタ
17…フラッシュメモリ
18…無線通信モジュール
19…無線コントローラモジュール
20…拡張コネクタ
21…外部メモリカード用コネクタ
22、23…アンテナ
24…電源ボタン
25…リセットボタン
26…イジェクトボタン
31…入出力プロセッサ
32…GPU
32a…テクスチャメモリ
33…DSP
34…VRAM
34a…フレームバッファ
34b…Zバッファ
35…内部メインメモリ
7…コントローラ

【特許請求の範囲】
【請求項1】
平面視用の表示装置に表示するための画像を生成する画像生成装置のコンピュータで実行される画像生成プログラムであって、
仮想空間の平面視を提供するための基準仮想カメラによって前記仮想空間を撮像することで平面視用画像を生成する第1画像生成手段、
前記平面視用画像を前記表示装置に表示させる表示制御手段、
前記平面視用画像を前記表示装置に表示しつつ、前記基準仮想カメラの設定に基づいて立体視用仮想カメラを設定し、当該立体視用仮想カメラによって前記仮想空間を撮像することで、少なくとも2つの視点に基づいて得られる右眼用画像と左眼用画像とを含む立体視用画像を生成する、第2画像生成手段および
前記立体視用画像を、前記表示装置に出力することなく記憶装置に記憶させる、立体視用画像記憶制御手段、
として前記コンピュータを機能させる、画像生成プログラム。
【請求項2】
前記立体視用画像記憶手段は、前記平面視用画像を前記表示装置に表示したままで、前記立体視用画像を前記記憶装置に記憶させる、請求項1に記載の画像生成プログラム。
【請求項3】
前記立体視用仮想カメラによって撮像された前記仮想空間が、前記第1画像生成手段によって撮像された仮想空間のうちの所定の領域を含むように、前記第2画像生成手段は、前記立体視用画像を生成する、請求項2に記載の画像生成プログラム。
【請求項4】
前記第2画像生成手段が、前記右眼用画像と前記左眼用画像とを生成するための前記立体視用仮想カメラとして、右仮想カメラと左仮想カメラとを設定したとき、
前記左仮想カメラの視体積および前記右仮想カメラの視体積が、前記基準仮想カメラの視体積内にある所定の領域を含むように、
前記第2画像生成手段は、前記左仮想カメラおよび前記右仮想カメラを設定し、前記設定された左仮想カメラおよび右仮想カメラで前記仮想空間を撮像することにより前記左眼用画像および右眼用画像を生成する、請求項3に記載の画像生成プログラム。
【請求項5】
前記第2画像生成手段が、前記右眼用画像と前記左眼用画像とを生成するための前記立体視用仮想カメラとして、右仮想カメラと左仮想カメラとを設定したとき、
前記第2画像生成手段は、
前記左仮想カメラおよび前記右仮想カメラを、前記基準仮想カメラと同じ視線方向に向くように、かつ、当該視線を含む仮想平面上で前記基準仮想カメラを挟むような位置関係となるように、平行移動した位置に設定し、
前記設定された左仮想カメラおよび前記右仮想カメラで前記仮想空間を撮像することにより、前記右眼用画像および前記左眼用画像を生成する、請求項1に記載の画像生成プログラム。
【請求項6】
前記第2画像生成手段が、前記右眼用画像と前記左眼用画像とを生成するための前記立体視用仮想カメラとして、右仮想カメラと左仮想カメラとを設定したとき、
前記第2画像生成手段は、
前記基準仮想カメラの撮像範囲に含まれる所定のオブジェクトが、当該基準仮想カメラの撮像方向にある位置に応じて、前記左仮想カメラおよび前記右仮想カメラの間隔を調整することで当該左仮想カメラおよび右仮想カメラを設定し、
当該設定した左仮想カメラおよび右仮想カメラで撮像することにより前記左眼用画像および前記右眼用画像を生成する、請求項1に記載の画像生成プログラム。
【請求項7】
所定のオブジェクトが前記立体視用仮想カメラから遠位にあるほど、前記左仮想カメラと前記右仮想カメラとの間隔が小さくなるように、
前記第2画像生成手段は前記立体視用仮想カメラを設定する、請求項6に記載の画像生成プログラム。
【請求項8】
前記コンピュータを、
所定のユーザ操作を検出する操作検出手段としてさらに機能させ、
前記第2画像生成手段は、前記操作検出手段によって所定のユーザ操作が検出されたことに応じて、前記立体視用画像を生成する、請求項1から7までのいずれかに記載の画像生成プログラム。
【請求項9】
前記コンピュータを、
前記第1画像生成手段が前記平面視用画像を生成する際に用いる設定が所定の条件を満たしたか否かを判定する条件判定手段としてさらに機能させ、
前記第2画像生成手段は、前記条件判定手段によって前記所定の条件を満たした場合に、前記立体視用画像を自動的に生成する、請求項1から7までのいずれかに記載の画像生成プログラム。
【請求項10】
前記記憶装置が、前記画像生成装置に着脱可能な記憶媒体として提供される、請求項1から1から9までのいずれかに記載の画像生成プログラム。
【請求項11】
前記記憶装置が、前記画像生成装置が有するか、またはこれに接続された揮発性記憶媒体として提供される、請求項1から9までのいずれかに記載の画像生成プログラム。
【請求項12】
平面視用の表示装置に表示するための画像を生成する画像生成装置であって、
仮想空間の平面視を提供するための基準仮想カメラによって前記仮想空間を撮像することで平面視用画像を生成する第1画像生成手段、
前記平面視用画像を前記表示装置に表示させる表示制御手段、
前記平面視用画像を前記表示装置に表示中に、前記基準仮想カメラの設定に基づいて立体視用仮想カメラを設定し、当該立体視用仮想カメラによって前記仮想空間を撮像することで、少なくとも2つの視点に基づいて得られる右眼用画像と左眼用画像とを含む立体視用画像を生成する、第2画像生成手段および
前記立体視用画像を、前記表示装置に出力することなく記憶装置に記憶させる、立体視用画像記憶制御手段、
を備える、画像生成装置。
【請求項13】
平面視用の表示装置に表示するための画像を生成する画像生成システムであって、
仮想空間の平面視を提供するための基準仮想カメラによって前記仮想空間を撮像することで平面視用画像を生成する第1画像生成手段、
前記平面視用画像を前記表示装置に表示させる表示制御手段、
前記平面視用画像を前記表示装置に表示中に、前記基準仮想カメラの設定に基づいて立体視用仮想カメラを設定し、当該立体視用仮想カメラによって前記仮想空間を撮像することで、少なくとも2つの視点に基づいて得られる右眼用画像と左眼用画像とを含む立体視用画像を生成する、第2画像生成手段および
前記立体視用画像を、前記表示装置に出力することなく記憶装置に記憶させる、立体視用画像記憶制御手段、
を備える、画像生成システム。
【請求項14】
平面視用の表示装置に表示するための画像を生成するための画像生成方法であって、
仮想空間の平面視を提供するための基準仮想カメラによって前記仮想空間を撮像することで平面視用画像を生成する第1画像生成ステップ、
前記平面視用画像を前記表示装置に表示させる第1表示制御ステップ、
前記平面視用画像を前記表示装置に表示中に、前記基準仮想カメラの設定に基づいて立体視用仮想カメラを設定し、当該立体視用仮想カメラによって前記仮想空間を撮像することで、少なくとも2つの視点に基づいて得られる右眼用画像と左眼用画像とを含む立体視用画像を生成する、第2画像生成ステップおよび
前記立体視用画像を、前記表示装置に出力することなく記憶装置に記憶させる、立体視用画像記憶制御ステップ、
を含む、画像生成方法。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate


【公開番号】特開2012−234411(P2012−234411A)
【公開日】平成24年11月29日(2012.11.29)
【国際特許分類】
【出願番号】特願2011−103214(P2011−103214)
【出願日】平成23年5月2日(2011.5.2)
【出願人】(000233778)任天堂株式会社 (1,115)
【Fターム(参考)】