説明

情報処理プログラム、情報処理装置、情報処理システムおよび情報処理方法

【課題】対象を様々な方向からユーザに観察させる際に、当該ユーザに対して与えるリアル感を向上させることを課題とする。
【解決手段】表示装置22に接続されるコンピュータを、表示対象を模した仮想オブジェクトを仮想カメラから撮像することで仮想オブジェクト画像を描画する描画部57と、仮想カメラのパラメータを設定する仮想カメラ設定部52と、仮想オブジェクトに対する仮想カメラの撮像角度が所定の範囲に入った場合に切換条件が満たされたと判定する切換条件判定部53と、表示装置22へ画像を出力する出力制御部58と、切換条件が満たされたと判定された場合に、出力制御部28による出力画像を、仮想オブジェクト画像から、表示対象を切換条件に係る所定の範囲に対応する撮像角度から撮像することで予め得られた切換用画像に切り換える切換部54、として機能させる情報処理プログラムとした。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、画像の表示を行うための情報処理プログラム、情報処理装置、情報処理システムおよび情報処理方法に関する。
【背景技術】
【0002】
従来、ポリゴンを用いて構成された仮想オブジェクトを、ユーザ操作に応じて決定された様々な方向から描画することで、ユーザが様々な角度から仮想オブジェクトを観察することを可能とする、3次元画像処理技術がある。
【0003】
また、特許文献1に開示された画像生成装置は、表示しようとする立体形状のオブジェクトを全方位から眺めた複数のテクスチャ画像を予め用意し、正面が視点位置を向くように板ポリゴンを仮想空間に配置する。そして、この画像生成装置は、正面が視点位置を向く板ポリゴンの、仮想空間における向きに基づいてテクスチャ画像を特定し、特定されたテクスチャ画像を板ポリゴンにマッピングする。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2004−287504号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
所定の対象を様々な角度からユーザに観察させるための技術として、当該所定の対象を仮想オブジェクトとしてモデリングし、この仮想オブジェクトを様々な角度から描画してユーザに観察させる技術がある。しかし、ユーザに観察させたい所定の対象を仮想オブジェクトとしてモデリングした場合、この対象が仮想オブジェクトへモデル化された時点で、対象と仮想オブジェクトとの間で、ユーザによって視認される内容に差が生じる。即ち、従来の仮想オブジェクト表示技術は、ユーザに観察させたい所定の対象と仮想オブジェクトとの間で生じる視覚上の差のために、仮想オブジェクトを観察するユーザに対してリアル感を与え辛いものであった。
【0006】
本発明は、上記した問題に鑑み、対象を様々な方向からユーザに観察させる際に、当該ユーザに対して与えるリアル感を向上させることを課題とする。
【課題を解決するための手段】
【0007】
本発明では、上記課題を解決するために、以下の手段を採用した。即ち、本発明は、表示装置に接続されるコンピュータを、仮想空間に配置された、所定の対象を模した仮想オブジェクトを、該仮想空間に配置された仮想カメラから撮像することで、仮想オブジェクト画像を描画する描画手段と、前記仮想カメラのパラメータを設定する仮想カメラ設定手段と、前記パラメータに従って決定される、前記仮想オブジェクトに対する前記仮想カメラの撮像角度が、所定の範囲に入った場合に、所定の切換条件が満たされたと判定する切換条件判定手段と、前記描画手段によって描画される仮想オブジェクト画像、および前記所定の対象を前記所定の範囲に対応する撮像角度から撮像することで予め得られた切換用画像の何れかを、選択的に前記表示装置に出力する出力制御手段と、前記切換条件判定手段によって、前記切換条件が満たされたと判定された場合に、前記出力制御手段によって出力される出力画像を、前記仮想オブジェクト画像から、前記切換用画像に切り換える切換手段、として機能させる情報処理プログラムである。
【0008】
本発明において、所定の対象とは、ユーザが視認可能な外観を有するものであり、例えば美術品、建築物、製品、人物、動物等である。但し、所定の対象は前記例示に限定されない。また、所定の対象は、実世界に実在するものであってもよいし、実在しないものであってもよい。また、所定の範囲としては、上限値と下限値が等しい範囲(即ち、条件を満たす値が1つのみであるような範囲)が用いられてもよい。
【0009】
本発明にかかる情報処理プログラムによれば、このような所定の対象を模した仮想オブジェクトを描画することで得られた仮想オブジェクト画像が、表示装置に出力される。そして、本発明にかかる情報処理プログラムによれば、所定の切換条件が満たされた場合に、表示装置に出力される出力画像が、仮想オブジェクト画像の撮像角度に対応する撮像角度(例えば、一致または近似するアングル)から撮像された切換用画像に切り換えられる。
【0010】
また、前記情報処理プログラムにおいて、前記切換用画像は、実カメラによって前記所定の対象の実体を予め撮像することによって得られた画像であってもよい。
【0011】
また、前記情報処理プログラムにおいて、前記切換用画像は、前記仮想オブジェクトよりも高精度でモデル化された、前記所定の対象の高精度仮想オブジェクトを、予め描画することによって得られた画像であってもよい。
【0012】
例えば、切換用画像として、実カメラによって撮像された画像や、高精度仮想オブジェクトのレンダリング結果等、仮想オブジェクト画像よりも高精細な画像を用いることで、所定のアングルにおいては、仮想オブジェクト画像よりも写実的な画像を表示することが可能となる。
【0013】
また、前記情報処理プログラムにおいて、前記切換条件判定手段は、前記パラメータに従って決定される、前記仮想オブジェクトに対する前記仮想カメラの撮像角度および撮像位置が所定の範囲に入った場合に、前記切換条件が満たされたと判定してもよい。
【0014】
撮像角度に加え、撮像位置についても切換条件として参照することで、切り換え前の仮想オブジェクト画像と切り換え先の切換用画像との間で、ユーザによって視認される内容について生じる差分をより低減させ、ユーザに与えるリアル感が向上した出力画像の切り換えを行うことが出来る。
【0015】
また、前記情報処理プログラムは、前記コンピュータを、前記切換手段によって、前記出力画像が切換用画像に切り換えられている状態で、所定の復帰条件が満たされたか否かを判定する復帰条件判定手段と、前記復帰条件判定手段によって、前記復帰条件が満たされたと判定された場合に、前記出力画像を前記描画手段によって描画された仮想オブジェクト画像に戻す復帰手段、として更に機能させてもよい。
【0016】
所定の復帰条件が満たされた場合に、出力画像が仮想オブジェクト画像に戻るようにすることで、出力画像を仮想オブジェクト画像と切換用画像との間で行き来しながら、ユーザに対象を観察させることが可能となる。なお、前記所定の復帰条件としては、例えば、入力受付手段によって所定の入力が受け付けられたこと、仮想カメラの撮像位置および撮像範囲が切換条件を満たす範囲から外れたこと、表示装置の表示範囲が切換用画像の端部に達したこと、等が挙げられる。
【0017】
また、前記情報処理プログラムにおいて、前記仮想カメラ設定手段は、前記切換条件判定手段によって前記切換条件が満たされたと判定された場合、前記切換手段による前記出
力画像の切り換えの前に、前記パラメータを、前記仮想オブジェクトに対する前記仮想カメラの撮像角度が、前記切換用画像の撮像角度に対応する撮像角度に向かって徐々に変化するように設定し、前記描画手段は、前記パラメータの変化中にも仮想オブジェクト画像を描画してもよい。
【0018】
また、前記情報処理プログラムにおいて、前記仮想カメラ設定手段は、前記切換条件判定手段によって前記切換条件が満たされたと判定された場合、前記切換手段による前記出力画像の切り換えの前に、前記パラメータを、前記仮想オブジェクトに対する前記仮想カメラの撮像角度および撮像位置が、前記切換用画像の撮像角度および撮像位置に対応する撮像角度および撮像位置に向かって徐々に変化するように設定し、前記描画手段は、前記パラメータの変化中にも仮想オブジェクト画像を描画してもよい。
【0019】
このような処理を行うことで、仮想オブジェクト画像から切換用画像への切換前に、仮想オブジェクト画像を切換用画像に近似させ、ユーザに与えるリアル感を向上させることが出来る。
【0020】
また、前記情報処理プログラムにおいて、前記切換条件判定手段は、複数の切換条件のうちの何れかの切換条件が満たされたことを判定し、前記切換手段は、前記切換条件判定手段によって何れかの切換条件が満たされたと判定された場合に、前記出力画像を、複数の切換画像のうちの、前記判定において満たされた切換条件に関連づけられた切換用画像に切り換えてもよい。
【0021】
また、前記情報処理プログラムは、前記コンピュータを、ユーザ操作に基づく入力を受け付ける入力受付手段として更に機能させ、前記仮想カメラ設定手段は、前記入力受付手段によって受け付けられた入力に従って前記パラメータを設定してもよい。
【0022】
このような入力受付手段を備えることで、ユーザは、自らの操作によって任意に仮想オブジェクトに対する仮想カメラの撮像角度または撮像位置を調整し、表示装置において切換用画像を表示させることが出来る。
【0023】
また、前記情報処理プログラムにおいて、前記仮想カメラ設定手段は、前記仮想カメラの撮像範囲内に前記仮想オブジェクトが位置するように前記パラメータを設定してもよい。
【0024】
このような仮想カメラ設定手段を備えることで、ユーザは、仮想カメラの撮像方向を意識的に仮想オブジェクトに向ける操作を行う必要が無くなる。即ち、ユーザは、仮想カメラの撮像方向を意識することなく、簡易な操作のみで、所定の対象を様々な撮像角度または撮像位置から観察することが出来る。
【0025】
また、前記情報処理プログラムにおいて、前記描画手段は、2つの仮想カメラから撮像することで、2つの仮想オブジェクト画像を立体視可能に描画し、前記切換手段は、前記表示装置に出力する出力画像を、前記描画手段によって描画された2つの仮想オブジェクト画像から、立体視可能な2つの切換用画像に切り換えてもよい。
【0026】
また、本発明は、コンピュータによって実行される方法、またはコンピュータに実行させるプログラムとしても把握することが可能である。また、本発明は、そのようなプログラムをコンピュータその他の装置、機械等が読み取り可能な記録媒体に記録したものでもよい。ここで、コンピュータ等が読み取り可能な記録媒体とは、データやプログラム等の情報を電気的、磁気的、光学的、機械的、または化学的作用によって蓄積し、コンピュータ等から読み取ることができる記録媒体をいう。
【発明の効果】
【0027】
本発明によれば、対象を様々な方向からユーザに観察させる際に、当該ユーザに対して与えるリアル感を向上させることが可能となる。
【図面の簡単な説明】
【0028】
【図1】実施形態に係るゲーム装置の外観図である。
【図2】実施形態に係るゲーム装置の内部構成を示すブロック図である。
【図3】実施形態に係るゲーム装置を用いてユーザに提供される対象画像表示機能の概要を示す図である。
【図4】実施形態において仮想空間に配置された仮想オブジェクトと仮想カメラとの関係を示す図である。
【図5】実施形態に係るゲーム装置が保持する情報を示す図である。
【図6】実施形態に係るゲーム装置の機能ブロック図である。
【図7A】実施形態に係る出力画像制御処理の流れを示すフローチャートAである。
【図7B】実施形態に係る出力画像制御処理の流れを示すフローチャートBである。
【発明を実施するための形態】
【0029】
以下、本発明の実施の形態を、図面に基づいて説明する。なお、以下に説明する実施の形態は、本発明を実施する場合の一例を示すものであって、本発明を以下に説明する具体的構成に限定するものではない。本発明の実施にあたっては、実施の形態に応じた具体的構成が適宜採用されてもよい。例えば、本実施形態では、本発明をゲーム装置に適用した場合の実施の形態について説明するが、本発明の適用対象はゲームに限定されない。
【0030】
<装置の構成>
図1は、本実施形態に係るゲーム装置1の外観図である。ゲーム装置1は、下側ハウジング11および上側ハウジング21を有する。下側ハウジング11と上側ハウジング21とは、ヒンジ構造により開閉可能(折り畳み可能)に連結されている。
【0031】
下側ハウジング11には、下側LCD(Liquid Crystal Display:液晶表示装置)12、タッチパネル13、各操作ボタン14A〜14E、アナログスティック15、挿入口11D、および挿入口17が設けられる。
【0032】
下側LCD12は、画像を(立体視可能ではなく)平面的に表示する表示装置である。タッチパネル13はゲーム装置1の入力装置の一つである。タッチパネル13への入力に用いるタッチペン28は、挿入口17(図1において点線で示される)から挿入されて収容される。なお、タッチペン28の代わりにユーザの指を用いることもできる。
【0033】
各操作ボタン14A〜14Eは、所定の入力を行うための入力装置である。ボタン14A〜14Eには、ゲーム装置1によって実行されるプログラムに応じた機能が適宜割り当てられる。例えば、十字ボタン14Aは、選択操作やゲーム中のキャラクターオブジェクトの移動操作等に用いられる。例えば、各操作ボタン14B〜14Eは、決定操作やキャンセル操作等に用いられる。アナログスティック15は、方向を指示するデバイスである。
【0034】
挿入口11D(図1において点線で示される)は、プログラムを記録した外部メモリ45を挿入するための挿入口11Dが設けられる。
【0035】
上側ハウジング21には、上側LCD22、外側左撮像部23a、外側右撮像部23b、内側撮像部24、および3D調整スイッチ25が設けられる。
【0036】
上側LCD22は、立体視可能な画像を表示する立体表示モードと、画像を平面的に表示する(平面視画像を表示する)平面表示モードとを切り換えることが可能な表示装置である。この表示モードの切り換えは、3D調整スイッチ25によって行われる。
【0037】
内側撮像部24は、上側ハウジング21の内側面21Bの内向きの法線方向を撮像方向とする撮像部である。外側左撮像部23aおよび外側右撮像部23bは、いずれも内側面21Bとは反対の外側面の外向きの法線方向を撮像方向とする撮像部である。以降、外側左撮像部23aおよび外側右撮像部23bをまとめて、外側撮像部23と称する。
【0038】
図2は、本実施形態に係るゲーム装置1の内部構成を示すブロック図である。ゲーム装置1は、上述した各部に加えて、情報処理部31、メインメモリ32、外部メモリインターフェイス(外部メモリI/F)33、データ保存用外部メモリI/F34、データ保存用内部メモリ35、無線通信モジュール36、ローカル通信モジュール37、リアルタイムクロック(RTC)38、加速度センサ39、角速度センサ40、電源回路41、およびインターフェイス回路(I/F回路)42等の電子部品を備えている。これらの電子部品は、電子回路基板上に実装されて下側ハウジング11(または上側ハウジング21でもよい)内に収納される。
【0039】
情報処理部31は、所定のプログラムを実行するためのCPU(Central Processing Unit)311、画像処理を行うGPU(Graphics Processing Unit)312、VRAM(Video RAM)313等を含む。CPU311は、ゲーム装置1内のメモリ(例えば外部メモリI/F33に接続された外部メモリ45やデータ保存用内部メモリ35)に記憶されている当該所定のプログラムを実行することによって、所定の処理を実行する。なお、情報処理部31のCPU311によって実行されるプログラムは、他の機器との通信によって他の機器から取得されてもよい。情報処理部31のGPU312は、情報処理部31のCPU311からの命令に応じて画像を生成し、VRAM313に描画する。VRAM313に描画された画像は、上側LCD22および/または下側LCD12に出力されて表示される。
【0040】
情報処理部31には、メインメモリ32、外部メモリI/F33、データ保存用外部メモリI/F34、およびデータ保存用内部メモリ35が接続される。外部メモリI/F33は、外部メモリ45を着脱自在に接続するためのインターフェイスである。また、データ保存用外部メモリI/F34は、データ保存用外部メモリ46を着脱自在に接続するためのインターフェイスである。
【0041】
メインメモリ32は、情報処理部31(CPU311)のワーク領域やバッファ領域として用いられる揮発性の記憶手段である。即ち、メインメモリ32は、各種データを一時的に記憶したり、外部(外部メモリ45や他の機器等)から取得されるプログラムを一時的に記憶したりする。本実施形態では、メインメモリ32として例えばPSRAM(Pseudo−SRAM)を用いる。
【0042】
外部メモリ45は、情報処理部31によって実行されるプログラムを記憶するための不揮発性の記憶手段である。外部メモリ45は、例えば読み取り専用の半導体メモリで構成される。外部メモリ45が外部メモリI/F33に接続されると、情報処理部31は外部メモリ45に記憶されたプログラムを読み込むことができる。情報処理部31が読み込んだプログラムを実行することにより、所定の処理が行われる。
【0043】
データ保存用外部メモリ46は、不揮発性の読み書き可能なメモリ(例えばNAND型フラッシュメモリ)であり、所定のデータを格納するために用いられる。例えば、データ
保存用外部メモリ46は、SDカードである。データ保存用内部メモリ35は、読み書き可能な不揮発性メモリ(例えばNAND型フラッシュメモリ)で構成され、所定のデータを格納するために用いられる。例えば、データ保存用外部メモリ46およびデータ保存用内部メモリ35には、無線通信モジュール36を介した無線通信によってダウンロードされたデータやプログラムが格納される。
【0044】
情報処理部31には、無線通信モジュール36およびローカル通信モジュール37が接続される。無線通信モジュール36は、例えばIEEE802.11b/gの規格に準拠した方式により、無線LANに接続する機能を有する。情報処理部31は、無線通信モジュール36を用いてインターネットを介して他の機器との間でデータを送受信したり、IEEE802.11b/gのアドホックモードにおいて、他のゲーム装置1と直接無線通信を行ったりすることが可能である。また、ローカル通信モジュール37は、所定の通信方式(例えば赤外線通信)により同種のゲーム装置との間で無線通信を行う機能を有する。情報処理部31は、ローカル通信モジュール37を用いて同種の他のゲーム装置との間でデータを送受信したりすることができる。
【0045】
情報処理部31には、加速度センサ39が接続される。加速度センサ39は、3軸(向に沿った直線方向の加速度(直線加速度)の大きさを検出する。なお、加速度センサ39は、静電容量式の加速度センサであっても、他の方式の加速度センサであってもよい。また、加速度センサ39は1軸または2軸方向を検出する加速度センサであってもよい。情報処理部31は、加速度センサ39が検出した加速度を示すデータ(加速度データ)を受信して、ゲーム装置1の姿勢や動きを算出する。
【0046】
情報処理部31には、角速度センサ40が接続される。角速度センサ40は、ゲーム装置1の3軸周りに生じる角速度をそれぞれ検出し、検出した角速度を示すデータ(角速度データ)を情報処理部31へ出力する。情報処理部31は、角速度センサ40から出力された角速度データを受信して、ゲーム装置1の姿勢や動きを算出する。
【0047】
情報処理部31には、RTC38および電源回路41が接続される。RTC38は、時間をカウントして情報処理部31に出力する。情報処理部31は、RTC38によって計時された時間に基づき現在時刻を計算する。電源回路41は、ゲーム装置1が有する電源(下側ハウジング11に収納される上記充電式電池)からの電力を制御し、ゲーム装置1の各部品に電力を供給する。
【0048】
情報処理部31には、I/F回路42が接続される。I/F回路42には、マイク43、スピーカ44、およびタッチパネル13が接続される。マイク43は、ユーザの音声を検知して音声信号をI/F回路42に出力する。スピーカ44は、I/F回路42からの音声信号をアンプ(図示せず)により増幅し、音声を出力する。I/F回路42は、マイク43およびスピーカ44の制御を行う音声制御回路と、タッチパネル13の制御を行うタッチパネル制御回路とを含む。音声制御回路は、音声信号に対するA/D変換およびD/A変換を行ったり、音声信号を所定の形式の音声データに変換したりする。本実施形態では、タッチパネル13は、抵抗膜方式のタッチパネルが用いられる。ただし、タッチパネル13は、抵抗膜方式に限らず、例えば、静電容量方式等、任意の押圧式のタッチパネルを用いることができる。タッチパネル制御回路は、タッチパネル13からの信号に基づいて所定の形式のタッチパネル13のタッチ位置座標を生成して情報処理部31に出力する。情報処理部31は、タッチ位置データを取得することにより、タッチパネル13に対して入力が行われたタッチ位置を知ることができる。
【0049】
操作ボタン14は、情報処理部31に接続され、各操作ボタン14A〜14Eに対する入力状況(押下されたか否か)を示す操作データを情報処理部31に出力する。情報処理
部31は、操作ボタン14から操作データを取得することによって、操作ボタン14に対する入力に応じた処理を実行する。
【0050】
下側LCD12および上側LCD22は、情報処理部31に接続される。下側LCD12および上側LCD22は、情報処理部31(GPU312)の指示にしたがって画像を表示する。下側LCD12は、画像を(立体視可能ではなく)平面的に表示する表示装置である。下側LCD12の画素数は、一例として、320dot×240dot(横×縦)である。なお、本実施形態では表示装置としてLCDを用いているが、例えばEL(Electro Luminescence:電界発光)を利用した表示装置など、他の表示装置を利用してもよい。また、下側LCD12として、所望の解像度を有する表示装置を利用することができる。
【0051】
上側LCD22は、裸眼立体視可能な表示装置である。上側LCD22は、横方向に交互に表示される左目用画像と右目用画像とを左目および右目のそれぞれに分解して見えるようにレンチキュラー方式やパララックスバリア方式(視差バリア方式)のものが用いられる。上側LCD22の画素数は、一例として800dot×240dot(横×縦)である。本実施形態では、上側LCD22は液晶表示装置であるとして説明される。ただし、これに限らず、例えば、ELを利用した表示装置などが利用されてもよい。また、上側LCD22として、任意の解像度の表示装置を利用することができる。
【0052】
外側撮像部23および内側撮像部24は、情報処理部31に接続される。外側撮像部23および内側撮像部24は、情報処理部31の指示にしたがって画像を撮像し、撮像した画像データを情報処理部31に出力する。
【0053】
内側撮像部24は、所定の解像度を有する撮像素子と、レンズとを含む。撮像素子は、例えば、CCDイメージセンサやCMOSイメージセンサ等である。レンズは、ズーム機構を有するものでもよい。
【0054】
外側左撮像部23aおよび外側右撮像部23bは、それぞれ所定の共通の解像度を有する撮像素子(例えば、CCDイメージセンサやCMOSイメージセンサ等)と、レンズとを含む。レンズは、ズーム機構を有するものでもよい。外側左撮像部23aと外側右撮像部23bとは、ゲーム装置1が実行するプログラムによって、2つの外側撮像部(外側左撮像部23aおよび外側右撮像部23b)のいずれか一方を単独で使用可能である。本実施形態では、何れか一方の外側撮像部のみを使用することとして説明する。
【0055】
3D調整スイッチ25は、情報処理部31に接続される。3D調整スイッチ25は、スライダの位置に応じた電気信号を情報処理部31に送信する。
【0056】
<機能の概要>
図3は、本実施形態に係るゲーム装置を用いてユーザに提供される対象画像表示機能の概要を示す図である。ゲーム装置1は、ディスプレイ22(上側LCD22)を備え、仮想カメラを用いて仮想空間内の仮想オブジェクトを描画(レンダリング)することで生成された仮想オブジェクト画像を、ディスプレイ22に表示する、対象画像表示機能を有する。本実施形態において、仮想オブジェクトは、所定の表示対象(図3に示された例では、電波塔)を、ポリゴンやテクスチャ等を用いて仮想オブジェクト化(モデリング)することで、当該表示対象の外観を模したデータである。なお、表示対象が実世界に実在するものであれば、例えば3Dスキャナを用いることで、表示対象の仮想オブジェクトを生成することが出来る。
【0057】
所定の表示対象は、ユーザが視認可能な外観を有したものであり、例えば美術品、建築
物、製品、人物、動物等が表示対象として挙げられる。但し、表示対象は前記例示したものに限定されない。また、表示対象は、実世界に実在するものであってもよいし、実在しないもの(例えば、フィクション作品やゲーム中において登場する実在しない美術品、建築物、製品、人物、動物等)であってもよい。
【0058】
図4は、本実施形態において仮想空間に配置された仮想オブジェクトと仮想カメラとの関係を示す図である。本実施形態に係るゲーム装置1は、仮想空間の座標系に従って位置および姿勢が決定された仮想オブジェクトを、同様に仮想空間に配置された仮想カメラの視点からレンダリング(描画)してディスプレイ22に出力する。そして、本実施形態に係るゲーム装置1は、レンダリングに用いる仮想カメラの位置および姿勢を可変とすることで、ユーザに、様々な角度および位置から、表示対象を観察することを可能としている。
【0059】
具体的には、本実施形態に係るゲーム装置1において、ユーザは、仮想カメラの位置を制御するための操作を行うことによって、仮想カメラの位置を、仮想オブジェクトの周りを周回したり、仮想オブジェクトに対して近付く/遠ざかったりするように更新・設定することが出来る。なお、本実施形態において提供される対象画像表示機能は、ユーザに、所定の表示対象を観察させることを主な目的とする。このため、本実施形態において、仮想カメラは、位置が変更されても撮像方向(視軸)が仮想オブジェクト方向を向くように(仮想カメラの撮像範囲内に仮想オブジェクトが位置するように)移動する。但し、実施の形態によっては、仮想カメラの撮像方向が仮想オブジェクト方向から外れることがあってもよい。
【0060】
次に、本実施形態における画像の出力モードの切り換えについて説明する。ゲーム装置1は、通常、表示対象を観察させるための処理において、図4を用いて説明したように、仮想カメラを用いて仮想オブジェクトをリアルタイム描画することで生成された仮想オブジェクト画像をディスプレイ22に表示させる。以下、仮想オブジェクト画像をディスプレイ22に出力する出力モードを、「仮想オブジェクト画像出力モード」と称する。
【0061】
そして、ゲーム装置1は、仮想オブジェクト画像出力モードにおいて、仮想オブジェクトを観察する視点(仮想カメラ)の、仮想オブジェクトからのアングル(撮像角度)および撮像位置が所定の切換条件を満たした場合に、出力モードを切り換え、ユーザに観察させる画像を、実世界に実在する所定の表示対象を予め実カメラをもって実際に撮像した画像(以下、「切換用画像」と称する)に切り換える。以下、切換用画像をディスプレイ22に出力する出力モードを、「切換用画像出力モード」と称する。
【0062】
但し、切換用画像は、表示対象を予め実カメラをもって実際に撮像した画像でなくてもよい。切換用画像としては、例えば、ユーザに表示対象を様々な方向から観察させるためのリアルタイムレンダリングに供される仮想オブジェクトよりも高精度で(例えば、より多数のポリゴンとより解像度の高いテクスチャを用いて)モデリングされた高精度仮想オブジェクトを予めレンダリングすることで生成された高精細な画像を用いることが出来る。先述の通り、所定の表示対象は、実在しないものであってもよいため、実在しない表示対象の切換用画像を用意する際に、このような高精度仮想オブジェクトのレンダリング画像を用いることは有用である。
【0063】
即ち、本実施形態に係るゲーム装置1は、「仮想オブジェクト画像出力モード」と「切換用画像出力モード」との少なくとも2種類の出力モードを備え、同一の表示対象に係る画像をディスプレイ22に出力する際に、ある角度では、出力画像を仮想オブジェクト画像から切換用画像に切り換える。これによって、本実施形態に係るゲーム装置1によれば、ユーザに対して様々な方向から対象を観察させるとともに、特定の視点からは、ユーザ
に対してより適切な画像を観察させることが可能となる。
【0064】
図5は、本実施形態に係るゲーム装置1が保持する情報を示す図である。ゲーム装置1は、出力モード情報582、オブジェクト情報583、切換条件情報リスト584、および切換用画像585を保持する。これらの情報は、後述の記憶部59に保持される。
【0065】
出力モード情報582は、現在の出力モードが、上記説明した仮想オブジェクト画像出力モードおよび切換用画像出力モードの何れであるかを示す情報である。なお、本実施形態において、出力モード情報582の初期値は、仮想オブジェクト画像出力モードである。
【0066】
オブジェクト情報583は、仮想オブジェクトに関する情報である。オブジェクト情報583には、例えば、仮想オブジェクトを識別するためのオブジェクトIDおよびオブジェクトのデータが含まれる。オブジェクトのデータは、オブジェクトを構成するポリゴンやテクスチャのデータの他、仮想空間の座標系における仮想オブジェクトの位置および姿勢を示す情報を含む。オブジェクト情報583は、ゲーム装置1において使用される各オブジェクトについて存在する。
【0067】
切換条件情報リスト584は、出力モードを仮想オブジェクト画像出力モードから切換用画像出力モードに切り換える際の条件となる切換条件を含む切換条件情報が保持されるリスト(テーブル)である。切換条件情報リスト584には、複数の切換条件情報が保持される。切換条件情報は、切換条件として、撮像角度および撮像位置(撮像距離)、切換条件を満たしたと判定される角度の範囲、撮像距離の範囲を含む。また、切換条件情報は、更に、当該撮像角度および撮像位置に対応する位置から表示対象の実体が撮像されることで得られた切換用画像を取得可能な情報(切換用画像へのファイルパスやアドレス情報等)を含む。なお、本実施形態では、撮像位置が所定の範囲に入ったか否かは、仮想オブジェクトから仮想カメラまでの距離(撮像距離)が所定の範囲内に入ったか否かを判定することで判定される。
【0068】
切換用画像585は、実カメラによって所定の表示対象の実体を予め撮像することによって得られた画像である。但し、先述の通り、切換用画像は、表示対象を予め実カメラをもって実際に撮像した画像でなくてもよい。切換用画像は、例えば高精度仮想オブジェクトがレンダリングされた画像であってもよい。また、切換用画像としては、切換条件情報リスト584に保持されている切換条件情報毎に、当該切換条件に対応する撮像角度および撮像位置から撮像された画像が予め用意される。
【0069】
図6は、本実施形態に係るゲーム装置1の機能ブロック図である。図6に示される各機能ブロックは、例えば、外部メモリ45に格納されるプログラムを情報処理部31(CPU311およびGPU312)が読み出して実行することによって実現される機能の一部である。
【0070】
ゲーム装置1は、プログラムを実行することによって、入力受付部51、仮想カメラ設定部52、切換条件判定部53、切換部54、復帰条件判定部55、復帰部56、描画部57、出力制御部58および記憶部59を備える情報処理装置として動作する。
【0071】
描画部57は、仮想空間に配置される仮想カメラの位置および姿勢を設定し、仮想カメラから見た仮想オブジェクトの画像を生成する(換言すれば、仮想オブジェクトを仮想カメラによって撮像する)ことで、仮想オブジェクト画像を描画(レンダリング)する。より具体的には、描画部57は、仮想オブジェクトを、仮想空間の座標系から仮想カメラの座標系に変換し、更に撮像画像平面座標系に変換することで描画(レンダリング)する。
【0072】
入力受付部51は、ユーザ操作に基づく入力を受け付ける。入力受付部51によって受け付けられる操作には、例えば、十字ボタン14Aまたはアナログスティック15を用いた仮想カメラの周回移動操作、ボタン14Dまたは14Eを用いた仮想カメラの前後移動操作、ボタン14Cを用いた切換用画像出力モードの終了指示操作、等がある。
【0073】
仮想カメラ設定部52は、仮想カメラの撮像範囲内に仮想オブジェクトが位置するように、仮想カメラのパラメータを設定する。ここで、仮想カメラのパラメータには、仮想空間の座標系における仮想カメラの位置、仮想カメラの視軸の方向、および画角が含まれる。通常、仮想カメラ設定部52は、入力受付部51によって受け付けられた入力に従ってパラメータを設定する。
【0074】
但し、切換条件判定部53によって切換条件が満たされたと判定された場合、仮想カメラ設定部52は、パラメータを、仮想オブジェクトに対する仮想カメラの撮像角度および撮像位置が、切換用画像の撮像角度および撮像位置に対応する撮像角度および撮像位置に向かって徐々に変化するように設定する。
【0075】
切換条件判定部53は、出力モードが仮想オブジェクト画像出力モードである間、仮想オブジェクトに対する仮想カメラの撮像角度および撮像位置が、切換条件情報リスト584に含まれる複数の切換条件のうちの何れかの切換条件を満たしたか否かを判定する。なお、本実施形態では、切換条件として仮想オブジェクトに対する仮想カメラの撮像角度および撮像位置を用いるが、実施の形態によっては、切換条件として撮像角度のみを用いることとしてもよい。
【0076】
切換部54は、切換条件判定部53によって、切換条件が満たされたと判定された場合に、ディスプレイ22に出力する出力画像を、描画部57によって描画された仮想オブジェクト画像から、表示対象を切換条件に対応する撮像角度および撮像位置から撮像することで予め得られた切換用画像に切り換える。即ち、切換部54は、出力画像を、切換条件情報リスト584において指定されている複数の切換画像のうちの、判定において満たされた切換条件に関連づけられた切換用画像に切り換える。また、切換部54は、出力画像の切り換えに伴って、出力モードを仮想オブジェクト画像出力モードから切換用画像出力モードに切り換える。
【0077】
復帰条件判定部55は、出力画像が切換用画像に切り換えられている状態(切換用画像出力モード)で、所定の復帰条件が満たされたか否かを判定する。本実施形態では、「入力受付部51によって切換用画像出力モードの終了を指示する所定の入力が受け付けられたこと」が復帰条件として用いられる。切換用画像出力モードの終了を指示する所定の入力としては、例えば、ボタン14Cの押下が挙げられる。但し、その他の実施形態では、ユーザによって各操作ボタン14A〜14Eおよびアナログスティック15が操作された結果、「ディスプレイ22の表示範囲が切換用画像の端部に達したこと」や、「仮想カメラの撮像角度および撮像位置が切換条件を満たさなくなったこと」が復帰条件として用いられてもよい。
【0078】
復帰部56は、復帰条件判定部55によって所定の復帰条件が満たされた場合に、出力画像を描画部57によって描画された仮想オブジェクト画像に戻す。また、復帰部56は、出力画像の切り換えに伴って、出力モードを切換用画像出力モードから仮想オブジェクト画像出力モードに切り換える。
【0079】
出力制御部58は、現在設定されている出力モードの内容に従って、仮想オブジェクト画像、または切換用画像をディスプレイ22に出力し、表示させる。
【0080】
記憶部59は、図5を用いて上述した出力モード情報582、オブジェクト情報583、切換条件情報リスト584、および切換用画像585の他、処理を実行する際に必要となる各種データを記憶する。
【0081】
<処理の流れ>
次に、本実施形態において実行される処理の流れを説明する。なお、本実施形態に係るフローチャートに示された処理の具体的な内容および処理順序は、本発明を実施するための一例である。具体的な処理内容および処理順序は、本発明の実施の形態に応じて適宜選択されてよい。
【0082】
図7Aおよび図7Bは、本実施形態に係る出力画像制御処理の流れを示すフローチャートである。本フローチャートに示された出力画像制御処理は、60フレーム/秒で分割されたフレーム単位で繰り返し実行される。
【0083】
ステップS101では、ユーザ操作に基づく入力が受け付けられる。入力受付部51は、ユーザによる、各操作ボタン14A〜14Eおよびアナログスティック15を用いた操作に基づく入力を受け付ける。ユーザ操作に応じた処理の詳細については後述する。その後、処理はステップS102へ進む。
【0084】
ステップS102では、出力モードが判定される。出力制御部58は、出力モード情報582を参照することで、現在の出力モードが仮想オブジェクト画像出力モードおよび切換用画像出力モードの何れであるかを判定する。換言すれば、出力制御部58は、ディスプレイ22に現在表示されている画像が、仮想カメラを用いて仮想オブジェクトをリアルタイム描画することで生成された仮想オブジェクト画像であるか、または予め用意された切換用画像585(本実施形態では、表示対象の実体の撮像画像)であるか、を判定する。現在の出力モードが仮想オブジェクト画像出力モードであると判定された場合、処理はステップS103へ進む。一方、現在の出力モードが切換用画像出力モードであると判定された場合、処理はステップS110へ進む。
【0085】
はじめに、ステップS102において、現在の出力モードが仮想オブジェクト画像出力モードであると判定された場合の処理の流れについて説明する。
【0086】
ステップS103では、仮想カメラのパラメータ(設定値)が設定される。仮想カメラ設定部52は、ステップS101において受け付けられたユーザ操作に基づく入力の内容等に従って、仮想カメラのパラメータを設定(更新)する。上述の通り、仮想カメラの位置が変更されても、仮想カメラの撮像方向(視軸)は、仮想オブジェクト方向を向く。即ち、仮想カメラの撮像方向は、仮想カメラの位置変更に伴って、仮想オブジェクト方向から外れないように更新・設定される。
【0087】
例えば、本実施形態において、仮想カメラは、撮像方向が仮想オブジェクトを向いた状態で、仮想オブジェクトの周囲を移動することが可能であり、ユーザは、十字ボタン14Aまたはアナログスティック15を操作することで、仮想カメラが仮想オブジェクトの周りを周回するように、仮想カメラを上下左右に移動させることが出来る。この操作のみでは、仮想オブジェクトと仮想カメラとの間の距離は変化しない。即ち、ユーザは、十字ボタン14Aまたはアナログスティック15を操作することで、仮想オブジェクトに対する仮想カメラの撮像角度を調整することが出来る。
【0088】
また、ユーザは、ボタン14Dまたは14Eを押下することにより、仮想カメラと仮想オブジェクトとの間の距離を変更するように、仮想カメラを前後に移動させることが出来
る。この操作のみでは、仮想オブジェクトに対する仮想カメラの撮像角度は変化しない。即ち、ユーザは、ボタン14Dまたは14Eを操作することで、仮想オブジェクトに対する仮想カメラの撮像位置(撮像距離)を調整することが出来る。
【0089】
即ち、仮想カメラ設定部52は、十字ボタン14Aまたはアナログスティック15の操作に伴って受け付けられた入力に従って、仮想空間の座標系によって示される仮想カメラの位置を、仮想オブジェクトの周りを周回するように更新・設定する。また、仮想カメラ設定部52は、ボタン14Dまたは14Eの操作に伴って受け付けられた入力に従って、仮想空間の座標系によって示される仮想カメラの位置を、仮想オブジェクトに対して近付く/遠ざかるように更新・設定する。その後、処理はステップS104へ進む。
【0090】
ステップS104では、仮想オブジェクトに対する仮想カメラの撮像角度および撮像位置が、切換条件を満たしたか否かが判定される。切換条件判定部53は、ステップS103において設定されたパラメータに従って決定される、仮想オブジェクトに対する仮想カメラの撮像角度および撮像位置が、所定の範囲に入ったか否かを判定することで、切換条件が満たされたか否かを判定する。
【0091】
具体的には、切換条件判定部53は、仮想空間の座標系における仮想オブジェクトの姿勢と、仮想カメラのパラメータによって示される仮想カメラの視軸の姿勢とに基づいて、仮想オブジェクトに対する仮想カメラの撮像角度を算出する。撮像角度は、例えば、仮想空間の座標系における、仮想オブジェクトの姿勢を示す基準ベクトルと、仮想カメラの視軸を示すベクトルとの差分として表現することが出来る。仮想カメラの撮像角度が算出されると、切換条件判定部53は、算出された撮像角度と、切換条件情報リストに予め設定されている撮像角度とを比較する。そして、切換条件判定部53は、算出された仮想カメラの撮像角度と、切換条件情報リストに予め設定されている撮像角度とのズレ(差分)が切換条件情報リストに定義された所定の角度以内である場合に、仮想オブジェクトに対する仮想カメラの撮像角度が所定の範囲に入ったと判定する。
【0092】
また、切換条件判定部53は、仮想空間の座標系における仮想オブジェクトの位置と、仮想カメラのパラメータによって示される仮想カメラの位置とに基づいて、仮想オブジェクトから仮想カメラまでの距離を算出する。距離が算出されると、切換条件判定部53は、算出された距離と、切換条件情報リストに予め設定されている距離とを比較する。そして、切換条件判定部53は、算出された仮想カメラの距離と、切換条件情報リストに予め設定されている距離とのズレ(差分)が切換条件情報リストに定義された所定の距離の範囲内である場合に、仮想オブジェクトに対する仮想カメラの撮像位置が所定の範囲に入ったと判定する。
【0093】
切換条件判定部53による判定の結果、仮想オブジェクトに対する仮想カメラの撮像角度および撮像位置が所定の範囲に入ることで、切換条件を満たしたと判定された場合、処理はステップS106に進む。一方、仮想オブジェクトに対する仮想カメラの撮像角度および撮像位置が、所定の範囲に入っておらず、切換条件が満たされていないと判定された場合、処理はステップS105に進む。
【0094】
ステップS105では、仮想オブジェクトの描画処理が行われる。描画部57は、仮想オブジェクトを、ステップS103において設定されたパラメータに従って仮想空間に配置された仮想カメラから撮像することで、仮想オブジェクト画像を描画する。仮想オブジェクト画像が描画されると、処理はステップS115へ進む。
【0095】
ステップS106からステップS108では、仮想オブジェクトに対する仮想カメラの撮像角度および撮像位置が、切換用画像585の撮像角度および撮像位置に一致または近
似するまで、仮想カメラのパラメータが変更される。ステップS104において切換条件が満たされたと判定されると、仮想カメラ設定部52は、仮想カメラのパラメータを、仮想オブジェクトに対する仮想カメラの撮像角度および撮像位置が、切換用画像585の撮像角度および撮像位置に対応する撮像角度および撮像位置に向かって、フレーム毎に徐々に変化するように設定する(ステップS106)。そして、描画部57は、仮想オブジェクトを、ステップS106において設定されたパラメータに従って仮想空間に配置された仮想カメラから撮像することで、仮想オブジェクト画像を描画する(ステップS107)。
【0096】
切換用画像585は、所定の表示対象をある撮像角度および撮像位置から撮像したものである。このため、切換条件に一定の幅がある場合、仮想オブジェクト画像と切換用画像585との間で撮像角度および撮像位置が異なる可能性があり、仮想オブジェクト画像から切換用画像585にそのまま切り換えた場合、切換時にユーザにリアル感を与え辛い。このため、本実施形態では、仮想オブジェクト画像から切換用画像585への切換前に、仮想オブジェクト画像の撮像角度および撮像位置が切換用画像585の撮像角度および撮像位置と一致(またはユーザに違和感を与えない程度に近似)するように、仮想カメラのパラメータを変更することとしている。
【0097】
ステップS106におけるパラメータの変更は、仮想オブジェクトに対する仮想カメラの撮像角度および撮像位置が、切換用画像585の撮像角度および撮像位置に一致または近似するまで、複数フレームに亘って行われる(ステップS108)。即ち、パラメータの調整は複数フレームに亘って行われるため、パラメータの変化中にも仮想オブジェクト画像は描画および表示される。なお、切換用画像585の撮像角度および撮像位置に近似するとは、仮想オブジェクトに対する仮想カメラの撮像角度および撮像位置と、切換用画像585の撮像角度および撮像位置との差分が所定の閾値以下となったことをいう。この閾値は、仮想オブジェクト画像から切換用画像585への切換時にユーザに違和感を与えない程度に両画像が近似するような値に設定されることが好ましい。仮想オブジェクトに対する仮想カメラの撮像角度および撮像位置が、切換用画像585の撮像角度および撮像位置に一致または近似したと判定された場合、処理はステップS109へ進む。
【0098】
なお、本実施形態では、仮想カメラの調整を行うことで、描画される仮想オブジェクト画像を切換用画像585に近づけることとしているが、このような方法に代えて、切換時の切換用画像585の表示位置および表示サイズを調整し、仮想オブジェクト画像に近づけることで、切換時にユーザに与えるリアル感を向上させることとしてもよい。また、ステップS106およびステップS108に示す処理を省略し、上記説明したような調整を行わずに切換を行ってもよい。
【0099】
ステップS109では、出力画像の切換処理および出力モードの変更が行われる。切換部54は、ステップS104において切換条件が満たされたと判定され、且つステップS108において仮想オブジェクトに対する仮想カメラの撮像角度および撮像位置の調整が完了したと判定された場合、ステップS104において満たされたと判定された切換条件に対応する切換用画像585を取得する。そして、切換部54は、ディスプレイ22に出力される出力画像を、仮想オブジェクト画像から取得された切換用画像585に切り換える。なお、切換部54は、ステップS104において満たされたと判定された切換条件に関連付けられた、切換用画像585を取得可能な情報(切換用画像585へのファイルパスやアドレス情報等)を参照し、当該ファイルまたはアドレスへアクセスすることで、対応する切換用画像585を取得する。
【0100】
本実施形態では、複数フレームをかけて、仮想オブジェクト画像のフェードアウトと切換用画像585のフェードインとが同時進行的に行われる視覚効果を伴って出力画像の切
換処理が行われる。即ち、本実施形態では、予め設定された切換に要するフレーム数の間、フェードイン/フェードアウト効果を出すように仮想オブジェクト画像と切換用画像585との合成画像が生成され、この合成画像が出力される。この合成画像は、所謂アルファブレンド等の技術を用いて生成することが出来る。即ち、合成画像に用いられる仮想オブジェクト画像と切換用画像585との透過の度合いを徐々に変化させながら合成することで、フェードイン/フェードアウト効果を得ることが可能である。
【0101】
なお、本実施形態では、出力画像の切換の際に、フェードイン/フェードアウト効果を用いる場合について説明したが、出力画像の切換の際には、その他の効果を伴ってもよい。例えば、切換前の出力画像と切換後の出力画像との間に、1または複数フレームの白画面または黒画面を挟んで切り換えることで、ユーザの違和感を軽減することとしてもよい。また、何の効果も伴わずに出力画像を切り換えることとしてもよい。
【0102】
複数フレームをかけた出力画像の切換処理が完了すると、切換部54は、出力モード情報582によって示される出力モードを、仮想オブジェクト画像出力モードから切換用画像出力モードに変更する。その後、処理はステップS115へ進み、ディスプレイ22には、表示対象を切換条件に示された撮像角度および撮像位置から撮像することで得られた切換用画像585が表示される。
【0103】
次に、ステップS102において、現在の出力モードが切換用画像出力モードであると判定された場合の処理の流れについて説明する。
【0104】
ステップS110では、切換用画像出力モードの終了を指示する操作の入力が受け付けられたか否かが判定される。復帰条件判定部55は、ステップS101において受け付けられた入力に、切換用画像出力モードの終了を指示する操作の入力が含まれているか否かを判定する。例えば、ボタン14Cの押下が、切換用画像出力モードの終了を指示する操作として設定されてよい。切換用画像出力モードの終了を指示する操作の入力が受け付けられたと判定された場合、処理はステップS112へ進む。一方、切換用画像出力モードの終了を指示する操作の入力が受け付けられていないと判定された場合、処理はステップS111へ進む。
【0105】
ステップS111では、切換用画像585の表示位置および表示サイズが設定される。出力制御部58は、ステップS101において受け付けられたユーザ操作に基づく入力の内容等に従って、切換用画像585の表示位置および表示サイズを設定(更新)する。例えば、本実施形態において、ユーザによる、十字ボタン14Aまたはアナログスティック15の操作が受け付けられると、出力制御部58は、ユーザによる操作の内容に応じて、切換用画像585の表示位置を変更する。また、ユーザによる、ボタン14Dまたは14Eの押下操作が受け付けられると、出力制御部58は、押下されたボタンに応じて、切換用画像585の表示サイズを拡大または縮小する。その後、処理はステップS115へ進む。
【0106】
ステップS112およびステップS113では、切換用画像585の表示位置および表示サイズが初期値に戻るまで、切換用画像585の表示位置および表示サイズが変更される。出力制御部58は、ステップS110において切換用画像出力モードの終了を指示する操作の入力が受け付けられたと判定されたことを受けて、表示位置および表示サイズを、切換用画像585への切換(ステップS109を参照)が行われた際の初期表示位置および初期表示サイズに向かって徐々に変化するように設定する(ステップS112)。このようにすることで、後述するステップS114において切換用画像585の表示後に出力画像を仮想オブジェクト画像に戻す際にユーザに違和感を与えずに切換を行うことが出来る。
【0107】
ステップS112における切換用画像585の表示位置および表示サイズの変更は、切換用画像585の表示位置および表示サイズが、切換用画像585への切換(ステップS109を参照)が行われた際の初期表示位置および初期表示サイズに戻るまで行われる(ステップS113)。
【0108】
なお、ステップS112およびステップS113に示す処理は切換用画像585の表示位置および表示サイズがステップS111の処理等によって初期表示位置および初期表示サイズから変更されている場合のみに実行される処理であり、切換用画像585の表示位置および表示サイズが初期表示位置および初期表示サイズから変更されていない場合、ステップS112およびステップS113に示す処理は実行されなくてもよい。切換用画像585の表示位置および表示サイズが、初期値に戻ったと判定された場合、処理はステップS114へ進む。
【0109】
上述の通り、本実施形態では、切換用画像585の調整を行うことで、切換用画像585を仮想オブジェクト画像に近づけることとしている。しかし、このような方法に代えて、切換後の仮想カメラの撮像角度および撮像位置を、切換用画像出力モードの終了を指示する操作の入力が受け付けられた時点の切換用画像585の表示位置および表示サイズに一致または近似する仮想オブジェクト画像が得られる撮像角度および撮像位置に設定することとしてもよい。このような方法によっても、切換時にユーザに与えるリアル感を向上させることが可能である。
【0110】
ステップS114では、出力画像の切換処理および出力モードの変更が行われる。復帰部56は、ステップS110において切換用画像出力モードの終了を指示する操作の入力が受け付けられたと判定され、且つステップS112における切換用画像585の表示位置および表示サイズの調整が完了したと判定された場合、ディスプレイ22に出力する出力画像を、切換用画像585から仮想オブジェクト画像に切り換える。
【0111】
なお、ステップS109において説明した出力画像の切換処理と同様、本実施形態では、複数フレームをかけて、切換用画像585のフェードアウトと仮想オブジェクト画像のフェードインとが同時進行的に行われる視覚効果を伴って出力画像の切換処理が行われる。フェードイン/フェードアウト効果を用いた切換処理の詳細については、ステップS109において説明した出力画像の切換処理と概略同様であるため、説明を省略する。
【0112】
複数フレームをかけた出力画像の切換処理が完了すると、復帰部56は、出力モード情報582によって示される出力モードを、切換用画像出力モードから仮想オブジェクト画像出力モードに変更する。その後、処理はステップS115へ進み、ディスプレイ22には、仮想カメラを用いて仮想オブジェクトをリアルタイム描画することで生成された仮想オブジェクト画像が表示される。
【0113】
ステップS115では、出力画像がディスプレイ22に出力される。出力制御部58は、表示モードが仮想オブジェクト画像出力モードである場合、仮想オブジェクト画像を出力画像としてディスプレイ22に出力する。一方、出力制御部58は、表示モードが切換用画像出力モードである場合、ステップS111で設定された表示位置および表示サイズに調整された切換用画像585を出力画像としてディスプレイ22に出力する。但し、上記ステップS109で説明した通り、出力画像の切換中においては、出力制御部58は、仮想オブジェクト画像と切換用画像585との合成画像を出力する。
【0114】
その後、本フローチャートに示された処理は終了するが、上述の通り、本フローチャートに示された出力画像制御処理は、60フレーム/秒で分割されたフレーム単位で実行さ
れる。このため、本フローチャートに示された出力画像制御処理によれば、フレーム毎にユーザ操作に基づく入力が判定され、操作の内容に応じて、仮想オブジェクト画像または切換用画像585が表示される。ユーザは、各操作ボタン14A〜14Eおよびアナログスティック15等を操作することによって、表示対象を様々な角度および位置から観察し、更に、所定の角度および位置の範囲においては、より写実度の高い高精細な画像(切換用画像585)をもって、表示対象を観察することができる。
【0115】
<実施形態のバリエーション>
以下、本実施形態のバリエーションについて説明する。
【0116】
図7AのステップS106において説明した、仮想オブジェクト画像から切換用画像585への切換前に仮想カメラのパラメータを変更する処理では、仮想カメラのパラメータに加えて、仮想空間に配置されたライト(光源)の、仮想オブジェクトに対する方向、位置および強さの少なくとも何れかに係るパラメータが更に変更されてもよい。この際、仮想空間に配置されたライトのパラメータは、切換用画像585が撮像された際の光源の条件に近付く(または一致する)ように変更される。このようにすることで、切換時に、仮想オブジェクト画像と切換用画像585のシルエットが重なるのと同時に、仮想オブジェクト画像と切換用画像585の色味が近似するように変化し、違和感の少ない切換が可能となる。
【0117】
また、本実施形態では、仮想オブジェクト画像および切換用画像585は、画像を平面的に表示する平面視画像(2次元画像)として出力および表示されるが、他の実施形態では、仮想オブジェクト画像および切換用画像585を、立体視可能な画像で出力および表示してもよい。
【0118】
即ち、描画部57は、仮想オブジェクト画像出力モードにおいては、ステレオ撮像用の2台の仮想カメラを用いて描画することで立体視可能な仮想オブジェクト画像を生成し、出力制御部58は、このようにして描画された立体視可能な仮想オブジェクト画像を出力する。また、出力制御部58は、切換用画像出力モードにおいては、ステレオ撮像用の2台のカメラを用いて撮像された立体視可能な切換用画像585を出力する。なお、先述の通り、ゲーム装置1では、3D調整スイッチ25を用いて、ゲーム装置1の表示モードを平面表示モードと立体表示モードとの間で切り換えることが可能である。このため、本発明に係る出力画像制御処理においても、3D調整スイッチ25の状態に応じて、出力される画像を平面視画像と立体視画像との間で切り換えることとしてもよい。
【0119】
ここで、仮想オブジェクト画像および切換用画像585を立体視可能な画像で出力および表示する場合には、図7AのステップS106において説明した、仮想オブジェクト画像から切換用画像585への切換前に仮想カメラのパラメータを変更する処理において、仮想カメラのパラメータとして、更に立体感の度合いに係るパラメータ(2つのカメラの間隔や相対的な撮像方向等)が変更されてもよい。この際、仮想カメラのパラメータは、切換用画像585が撮像された際の2つのカメラの間隔や相対的な撮像方向等の、立体感の度合いを決定するための条件に近付く(または一致する)ように変更される。このようにして、仮想オブジェクト画像の立体感の度合いを、切換用画像585の立体感の度合いと一致(またはユーザに違和感を与えない程度に近似)させることで、切換時にユーザに与えるリアル感を向上させることが出来る。
【0120】
また、本実施形態では、ユーザ操作に基づいて仮想カメラのパラメータを設定(更新)する例について説明したが、仮想カメラのパラメータは、ユーザ操作以外の要因に基づいて設定(更新)されてもよい。例えば、本発明に係る対象画像表示機能がゲームの一部として提供される場合、仮想カメラのパラメータは、ユーザ操作に加え、更にゲームの進行
状況にも基づいて設定(更新)されてもよい。
【0121】
また、ユーザ操作についても、上記説明した各操作ボタン14A〜14E、アナログスティック15等を用いた操作に限定されない。例えば、ゲーム機1を傾けたり移動させたりするユーザ操作を加速度センサ39、角速度センサ40によって検出し、これらのセンサから受け付けられた入力に従って、仮想カメラのパラメータを設定(更新)することとしてもよい。
【0122】
また、本実施形態では、仮想オブジェクト画像や切換用画像585を、ディスプレイ22に出力して表示させる例について説明したが、出力先の表示装置はディスプレイ22に限定されない。例えば、本実施形態に係るゲーム装置1のように、複数のディスプレイを備える装置を用いる場合、画像は、少なくとも何れかのディスプレイに表示させればよい。即ち、仮想オブジェクト画像および切換用画像585は、ディスプレイ12(下側LCD12)に出力されてもよいし、ディスプレイ12および22の両方に出力されてもよい。
【0123】
<効果>
本実施形態によれば、通常においては表示対象を模した仮想オブジェクトをリアルタイムレンダリングして様々な方向および位置からユーザに観察させ、所定の撮像角度および撮像位置の範囲内から観察する場合においては写実度の高い高精細な画像を表示することで、表示対象を様々な方向からユーザに観察させる際に、ユーザに対して与えるリアル感を向上させることが可能となる。
【0124】
また、仮想オブジェクトのモデルの精度(例えば、仮想オブジェクトを構成するポリゴンの数やテクスチャの解像度)は、装置の処理能力や要求される応答速度によって制限される。しかし、本実施形態によれば、リアルタイムレンダリングに用いられる仮想オブジェクトの精度を装置の処理能力や要求される応答速度に応じて決定しつつ、ユーザにお勧めしたい所定の撮像角度および撮像位置の範囲内においては、写実度の高い高精細な画像をユーザに観察させることが出来る。
【0125】
また、本発明は、高所にある対象や、巨大な対象等、ユーザが任意の角度や位置から観察することが困難な対象をユーザに観察させたい場合に特に有用である。このような対象は、実物をスキャンすること自体困難であることが多いが、例えば、対象のミニチュアに基づいて仮想オブジェクトのモデリングを行い、所定の撮像角度および撮像位置から対象の実物を撮像することで得られた画像を切換用画像585とすることが出来る。即ち、ミニチュアに基づく仮想オブジェクトのリアルタイムレンダリングを行うことで、ユーザが任意の角度および位置から対象を観察することを可能とし、更に、ユーザにお勧めしたい撮像角度および撮像位置に関しては、実物を撮像することで得られた切換用画像585をユーザに見せることが出来る。
【符号の説明】
【0126】
51 入力受付部
52 仮想カメラ設定部
53 切換条件判定部
54 切換部
55 復帰条件判定部
56 復帰部
57 描画部
58 出力制御部
59 記憶部

【特許請求の範囲】
【請求項1】
表示装置に接続されるコンピュータを、
仮想空間に配置された、所定の対象を模した仮想オブジェクトを、該仮想空間に配置された仮想カメラから撮像することで、仮想オブジェクト画像を描画する描画手段と、
前記仮想カメラのパラメータを設定する仮想カメラ設定手段と、
前記パラメータに従って決定される、前記仮想オブジェクトに対する前記仮想カメラの撮像角度が、所定の範囲に入った場合に、所定の切換条件が満たされたと判定する切換条件判定手段と、
前記描画手段によって描画される仮想オブジェクト画像、および前記所定の対象を前記所定の範囲に対応する撮像角度から撮像することで予め得られた切換用画像の何れかを、選択的に前記表示装置に出力する出力制御手段と、
前記切換条件判定手段によって、前記切換条件が満たされたと判定された場合に、前記出力制御手段によって出力される出力画像を、前記仮想オブジェクト画像から、前記切換用画像に切り換える切換手段、
として機能させる情報処理プログラム。
【請求項2】
前記切換用画像は、実カメラによって前記所定の対象の実体を予め撮像することによって得られた画像である、
請求項1に記載の情報処理プログラム。
【請求項3】
前記切換用画像は、前記仮想オブジェクトよりも高精度でモデル化された、前記所定の対象の高精度仮想オブジェクトを、予め描画することによって得られた画像である、
請求項1に記載の情報処理プログラム。
【請求項4】
前記切換条件判定手段は、前記パラメータに従って決定される、前記仮想オブジェクトに対する前記仮想カメラの撮像角度および撮像位置が所定の範囲に入った場合に、前記切換条件が満たされたと判定する、
請求項1から3の何れか一項に記載の情報処理プログラム。
【請求項5】
前記コンピュータを、
前記切換手段によって、前記出力画像が切換用画像に切り換えられている状態で、所定の復帰条件が満たされたか否かを判定する復帰条件判定手段と、
前記復帰条件判定手段によって、前記復帰条件が満たされたと判定された場合に、前記出力画像を前記描画手段によって描画された仮想オブジェクト画像に戻す復帰手段、
として更に機能させる、請求項1から4の何れか一項に記載の情報処理プログラム。
【請求項6】
前記仮想カメラ設定手段は、前記切換条件判定手段によって前記切換条件が満たされたと判定された場合、前記切換手段による前記出力画像の切り換えの前に、前記パラメータを、前記仮想オブジェクトに対する前記仮想カメラの撮像角度が、前記切換用画像の撮像角度に対応する撮像角度に向かって徐々に変化するように設定し、
前記描画手段は、前記パラメータの変化中にも仮想オブジェクト画像を描画する、
請求項1から5の何れか一項に記載の情報処理プログラム。
【請求項7】
前記仮想カメラ設定手段は、前記切換条件判定手段によって前記切換条件が満たされたと判定された場合、前記切換手段による前記出力画像の切り換えの前に、前記パラメータを、前記仮想オブジェクトに対する前記仮想カメラの撮像角度および撮像位置が、前記切換用画像の撮像角度および撮像位置に対応する撮像角度および撮像位置に向かって徐々に変化するように設定し、
前記描画手段は、前記パラメータの変化中にも仮想オブジェクト画像を描画する、
請求項1から5の何れか一項に記載の情報処理プログラム。
【請求項8】
前記切換条件判定手段は、複数の切換条件のうちの何れかの切換条件が満たされたことを判定し、
前記切換手段は、前記切換条件判定手段によって何れかの切換条件が満たされたと判定された場合に、前記出力画像を、複数の切換画像のうちの、前記判定において満たされた切換条件に関連づけられた切換用画像に切り換える、
請求項1から7の何れか一項に記載の情報処理プログラム。
【請求項9】
前記コンピュータを、
ユーザ操作に基づく入力を受け付ける入力受付手段として更に機能させ、
前記仮想カメラ設定手段は、前記入力受付手段によって受け付けられた入力に従って前記パラメータを設定する、
請求項1から8の何れか一項に記載の情報処理プログラム。
【請求項10】
前記仮想カメラ設定手段は、前記仮想カメラの撮像範囲内に前記仮想オブジェクトが位置するように前記パラメータを設定する、
請求項1から9の何れか一項に記載の情報処理プログラム。
【請求項11】
前記描画手段は、2つの仮想カメラから撮像することで、2つの仮想オブジェクト画像を立体視可能に描画し、
前記切換手段は、前記表示装置に出力する出力画像を、前記描画手段によって描画された2つの仮想オブジェクト画像から、立体視可能な2つの切換用画像に切り換える、
請求項1から10の何れか一項に記載の情報処理プログラム。
【請求項12】
表示装置に接続される情報処理装置であって、
仮想空間に配置された、所定の対象を模した仮想オブジェクトを、該仮想空間に配置された仮想カメラから撮像することで、仮想オブジェクト画像を描画する描画手段と、
前記仮想カメラのパラメータを設定する仮想カメラ設定手段と、
前記パラメータに従って決定される、前記仮想オブジェクトに対する前記仮想カメラの撮像角度が、所定の範囲に入った場合に、所定の切換条件が満たされたと判定する切換条件判定手段と、
前記描画手段によって描画される仮想オブジェクト画像、および前記所定の対象を前記所定の範囲に対応する撮像角度から撮像することで予め得られた切換用画像の何れかを、選択的に前記表示装置に出力する出力制御手段と、
前記切換条件判定手段によって、前記切換条件が満たされたと判定された場合に、前記出力制御手段によって出力される出力画像を、前記仮想オブジェクト画像から、前記切換用画像に切り換える切換手段、
を備える情報処理装置。
【請求項13】
表示装置と、
前記表示装置に接続される情報処理装置であって、
仮想空間に配置された、所定の対象を模した仮想オブジェクトを、該仮想空間に配置された仮想カメラから撮像することで、仮想オブジェクト画像を描画する描画手段と、
前記仮想カメラのパラメータを設定する仮想カメラ設定手段と、
前記パラメータに従って決定される、前記仮想オブジェクトに対する前記仮想カメラの撮像角度が、所定の範囲に入った場合に、所定の切換条件が満たされたと判定する切換条件判定手段と、
前記描画手段によって描画される仮想オブジェクト画像、および前記所定の対象を前記所定の範囲に対応する撮像角度から撮像することで予め得られた切換用画像の何れかを
、選択的に前記表示装置に出力する出力制御手段と、
前記切換条件判定手段によって、前記切換条件が満たされたと判定された場合に、前記出力制御手段によって出力される出力画像を、前記仮想オブジェクト画像から、前記切換用画像に切り換える切換手段、
を備える情報処理装置、
を備える情報処理システム。
【請求項14】
表示装置に接続されるコンピュータが、
仮想空間に配置された、所定の対象を模した仮想オブジェクトを、該仮想空間に配置された仮想カメラから撮像することで、仮想オブジェクト画像を描画する描画ステップと、
前記仮想カメラのパラメータを設定する仮想カメラ設定ステップと、
前記パラメータに従って決定される、前記仮想オブジェクトに対する前記仮想カメラの撮像角度が、所定の範囲に入った場合に、所定の切換条件が満たされたと判定する切換条件判定ステップと、
前記描画ステップにおいて描画される仮想オブジェクト画像、および前記所定の対象を前記所定の範囲に対応する撮像角度から撮像することで予め得られた切換用画像の何れかを、選択的に前記表示装置に出力する出力制御ステップと、
前記切換条件判定ステップにおいて、前記切換条件が満たされたと判定された場合に、前記出力制御ステップにおいて出力される出力画像を、前記仮想オブジェクト画像から、前記切換用画像に切り換える切換ステップ、
を実行する情報処理方法。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7A】
image rotate

【図7B】
image rotate


【公開番号】特開2013−54569(P2013−54569A)
【公開日】平成25年3月21日(2013.3.21)
【国際特許分類】
【出願番号】特願2011−192982(P2011−192982)
【出願日】平成23年9月5日(2011.9.5)
【出願人】(000233778)任天堂株式会社 (1,115)
【Fターム(参考)】