JP2014135771A - 立体視表示制御プログラム、立体視表示制御システム、立体視表示制御装置、および、立体視表示制御方法 - Google Patents

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

Info

Publication number
JP2014135771A
JP2014135771A JP2014088373A JP2014088373A JP2014135771A JP 2014135771 A JP2014135771 A JP 2014135771A JP 2014088373 A JP2014088373 A JP 2014088373A JP 2014088373 A JP2014088373 A JP 2014088373A JP 2014135771 A JP2014135771 A JP 2014135771A
Authority
JP
Japan
Prior art keywords
image
display
predetermined
display control
virtual
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2014088373A
Other languages
English (en)
Inventor
Masahiro Sakurai
政博 桜井
Satoshi Furuhira
敏志 古平
Taichi Machino
太一 町野
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nintendo Co Ltd
Original Assignee
Nintendo Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nintendo Co Ltd filed Critical Nintendo Co Ltd
Priority to JP2014088373A priority Critical patent/JP2014135771A/ja
Publication of JP2014135771A publication Critical patent/JP2014135771A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Testing, Inspecting, Measuring Of Stereoscopic Televisions And Televisions (AREA)

Abstract

【課題】仮想空間を表現した立体視画像を見やすく表示する。
【解決手段】ゲーム装置10は、仮想オブジェクト(プレイヤオブジェクト74、ノンプレイヤオブジェクト75、建物オブジェクト76等)が存在する仮想空間について、右仮想カメラおよび左仮想カメラで撮影することにより右目用画像および左目用画像を生成して立体視可能にLCDに出力する。このとき、プレイヤオブジェクト74が仮想カメラに近い位置に存在するときに、シルエット画像に変更する。
【選択図】図4

Description

この発明は、立体視のための画像を生成して所定のディスプレイに出力することが可能な装置やシステムで実行される表示制御プログラム、表示制御システム、表示制御装置、および、表示制御方法に関する。
従来から、所定の視差を有する画像を用いて、立体視表示を行なう方法が知られている。このような立体視表示の適用先は、さまざまな分野へ広がりつつある。たとえば、ゲームやCGアニメーションといった、3次元仮想空間を表示するようなアプリケーションなどが開発されている。例えば、特開2003−107603号公報(特許文献1)にはその一例が開示されている。
特開2003−107603号公報
上記の特許文献1に開示される方法では、仮想空間上の或る位置のオブジェクトはディスプレイ面上に見えるように描画される。また、その位置より仮想カメラに近い位置に存在するオブジェクトはディスプレイ面から手前に飛び出して見えるように描画され、その位置よりも仮想カメラから遠い位置に存在するオブジェクトはディスプレイ面から奥に引っ込んで見えるように描画される。
この発明の目的は、立体視表示において、見やすい画像を生成することができる表示制御プログラム、表示制御システム、表示制御装置、および、表示制御方法に関する。
この発明の第1の側面は、コンピュータを、所定の仮想オブジェクト(プレイヤオブジェクト、ノンプレイヤオブジェクト、建物オブジェクト、地形オブジェクト等)が存在する所定の仮想空間について、所定の視点に基づく右目用画像および左目用画像を生成して立体視可能に所定のディスプレイに出力する表示制御手段として機能させるプログラムである。この表示制御手段は、仮想空間を描画するための視点から見て所定距離より近くに存在する仮想オブジェクトである近接オブジェクトについて、簡略化した表示に変更して右目用画像および左目用画像を生成する。簡略化した表示とは、例えば、後述のようなシルエット化した表示であるが、これに限らず、「視点から見て所定距離より遠くに存在する場合の表示」(標準表示)に比べてシンプルな表示であればよく、例えば、減色した表示でもよいし、線画としてもよいし、解像度が低い表示としてもよく、後述の通り、シルエット画像(単色の画像)としてもよい。また、このとき、濃度が一定のシルエット画像としてもよい。また、簡略化した表示のための画像データは標準表示の画像データから生成してもよいし、別の画像データとして予め保持してもよい。また、テクスチャをシンプル化してもよいし、モデルをシンプル化してもよい。例えば、後述の通り、近接オブジェクトのテクスチャを、標準表示用のテクスチャからシルエット用のテクスチャに変更してレンダリングしてもよい。また、上述の所定距離として、ディスプレイ面より飛び出して見える距離としてもよく、または、ディスプレイ面上に見える距離(ディスプレイ上で右目用画像と左目用画像との表示位置が一致する距離)としてもよい。または、余裕を見て、ディスプレイ面から奥に引っ込んで見えるような範囲の所定距離でもよい。表示制御手段は、典型的には、2つの仮想カメラを仮想空間内に配置して、これらの仮想カメラにより仮想空間を撮影することにより、右目用画像と左目用画像を生成する。2つの仮想カメラは典型的には同じ撮影方向が設定されるが、交差するように設定してもよい。
仮想空間を描画するための視点から見て所定距離より近くに存在する仮想オブジェクトを近接オブジェクトと呼び、当該視点から見て当該所定距離より遠くに存在する仮想オブジェクトを非近接オブジェクトと呼ぶ。
なお、仮想空間を描画するための視点から見て所定距離より近くに存在する仮想オブジェクトのすべてについて簡略化した表示をおこなう必要はない。
ユーザの手前寄りに見える立体視画像は見え辛い場合があるが、第1の局面に従う発明によれば、そのような位置に存在する仮想オブジェクトの右目用画像および左目用画像を簡略化することにより右目用画像と左目用画像の画像差が少なくなって、見やすい画像を生成することができる。
また、表示制御手段は、上述のように近接オブジェクトについて簡略化した表示に変更するとともに、近接オブジェクトの右目用画像と左目用画像のディスプレイ上での表示位置の差を減少するようにしてもよい。なお、減少するとは0にすることを含む。右目用画像と左目用画像のディスプレイ上での表示位置の差を減少させるためには、(1)近接オブジェクトの画像を生成する処理において必要な処理を行っても良いし、(2)近接オブジェクトの画像を非近接オブジェクトの画像に合成する際に必要な処理をおこなってもよいし、(3)近接オブジェクトの画像をディスプレイに出力する処理において必要な処理をおこなってもよい。(1)については、典型的には、後述するように、近接オブジェクト用の仮想カメラの設定を非近接オブジェクト用の仮想カメラの設定から変更する処理である。(2)は、近接オブジェクトの画像を非近接オブジェクトに合成する際に、近接オブジェクトの表示位置の差を減少させた後に合成すればよい。(3)は、近接オブジェクトの画像と非近接オブジェクトの画像をディスプレイに出力する際の表示位置の指定にあたり、前者を後者よりも表示位置の差が少ないように指定すればよい。
近接オブジェクトについて簡略化した表示に変更するとともに、近接オブジェクトの右目用画像と左目用画像のディスプレイ上での表示位置の差を減少するようにすれば、さらに見やすい画像を生成することができる。また、上述のように、近接オブジェクトについては、簡略化した画像に変更しているため、このような表示位置の差を減少させる処理が比較的目立たないため、この処理による不自然さ低減させることができる。
また、表示位置の差を減少するために、表示制御手段は、所定の第1間隔を有する2つの仮想カメラにより非近接オブジェクトの右目用画像および左目用画像を生成し、かつ、当該第1間隔よりも狭い第2間隔を有する2つの仮想カメラにより、近接オブジェクトの右目用画像および左目用画像を生成するようにしてもよい。
この場合、典型的には、「第2間隔を有する2つの仮想カメラ」の代表点の位置(例えば、中間点またはいずれかの仮想カメラの位置)は、「第1間隔を有する2つの仮想カメラ」の代表点の位置と同じに設定される。また、典型的には、「第2間隔を有する2つの仮想カメラ」は「第1間隔を有する2つの仮想カメラ」と撮影方向を同じに設定される。同じ位置に存在する仮想オブジェクトであっても、「第2間隔を有する2つの仮想カメラ」で撮影した場合の右目用画像と左目用画像中での視差は、「第1間隔を有する2つの仮想カメラ」で撮影した場合よりも小さくなる。また、近接オブジェクトを撮影する仮想カメラの位置を、非近接オブジェクトを撮影する仮想カメラの位置よりも撮影方向に遠ざけて配置してもよい。また、2つの仮想カメラの撮影方向が交差する場合には、近接オブジェクトを撮影する仮想カメラの交差の角度を、非近接オブジェクトを撮影する仮想カメラの交差の角度よりも大きくすればよい。
なお、所定間隔を有する2つの仮想カメラで非近接オブジェクトを描画して右目用画像と左目用画像を生成し、その2つの仮想カメラの代表点(例えば、中間点)に配置される単一の仮想カメラで近接オブジェクトを描画して先の右目用画像と左目用画像のそれぞれに合成するようにしてもよい。このようにすれば、近接オブジェクトについてはディスプレイ面上の視差を0にすることができる。
また、表示制御手段は、所定の仮想オブジェクト(例えば、プレイヤオブジェクト)について、視点から見て所定距離より近くに存在するときに簡略化した表示に変更し、当該所定の仮想オブジェクト以外の仮想オブジェクト(例えば、ノンプレイヤオブジェクトや建物オブジェクトや地形オブジェクトなど)については、視点から見て所定距離より近くに存在するときにも簡略化した表示に変更しないようにしてもよい。
このようにすれば、必要以上に簡略化表示されず、視点の近くの状況の把握が容易になる。
また、表示制御手段は、所定の仮想オブジェクトについて、視点から見て所定距離より近くに存在するときに表示位置の差を減少させるような処理をおこない、当該所定の仮想オブジェクト以外の仮想オブジェクトについては、視点から見て所定距離より近くに存在するときにも表示位置の差を減少させるような処理をおこなわないようにしてもよい。
このようにすれば、視点の近くに存在する仮想オブジェクトであっても所定のオブジェクト以外については正しい視差で表示させることができて、仮想空間の表示が比較的自然となる。
また、表示制御手段は、所定の仮想オブジェクトが前記視点から見て所定距離より近くに存在するときに、第1間隔を有する2つの仮想カメラにより、「所定の仮想オブジェクト以外の仮想オブジェクト」について右目用画像および左目用画像をそれぞれ生成し、当該右目用画像および当該左目用画像の生成により生じたそれぞれの奥行情報を利用して、第2間隔を有する2つの仮想カメラにより生成される所定の仮想オブジェクトの画像を、当該右目用画像および当該左目用画像にそれぞれ合成するようにしてもよい。
このようにすれば、視点の近くに「所定の仮想オブジェクト」と「所定の仮想オブジェクト以外の仮想オブジェクト」が存在する場合に、奥行位置に基づく表示優先度は正しいまま、「所定の仮想オブジェクト」の表示位置の差を減少させることができる。
また、表示制御手段は、さらに、近接オブジェクトの右目用画像および左目用画像を半透明の画像としてもよい。
このようにすれば、さらに、見やすい画像を生成することができる。特に、近接オブジェクトの表示位置の差を減少させる場合にも、その処理による不自然さ低減させることができる。
また、仮想空間にはプレイヤによって操作されるプレイヤオブジェクトが存在してもよく、この場合、表示制御手段は、プレイヤオブジェクトの位置に基づいて視点および視線方向を設定することにより、プレイヤオブジェクトを含む画像を生成するようにし、上述の「所定の仮想オブジェクト」を、プレイヤオブジェクトとしてもよい。
このようにすれば、常時画像に表示されているオブジェクトについては、必要に応じて一時的に簡略化表示をしても比較的問題なく、そうでないオブジェクトについては何のオブジェクトかをプレイヤが把握する必要などがあるので、視点に近い場合でも簡略化表示しないことにより、プレイしやすい。
また、この発明の第2の側面は、所定の仮想オブジェクトが存在する所定の仮想空間について、所定の視点に基づく右目用画像および左目用画像を生成して立体視可能に所定のディスプレイに出力する表示制御手段を備る画像生成システムである。表示制御手段は、前記視点から見て所定距離より近くに存在する仮想オブジェクトである近接オブジェクトについて、簡略化した表示に変更して右目用画像および左目用画像を生成する。
また、この発明の第3の側面は、所定の仮想オブジェクトが存在する所定の仮想空間について、所定の視点に基づく右目用画像および左目用画像を生成して立体視可能に所定のディスプレイに出力する表示制御手段を備える画像生成装置である。表示制御手段は、前記視点から見て所定距離より近くに存在する仮想オブジェクトである近接オブジェクトについて、簡略化した表示に変更して右目用画像および左目用画像を生成する。
また、この発明の第4の側面は、表示制御装置または表示制御システムを制御する表示制御方法である。この方法では、所定の仮想オブジェクトが存在する所定の仮想空間について、所定の視点に基づく右目用画像および左目用画像を生成して立体視可能に所定のディスプレイに出力するときに、当該視点から見て所定距離より近くに存在する仮想オブジェクトである近接オブジェクトについて、簡略化した表示に変更して右目用画像および左目用画像を生成する。
本発明によれば、見やすい立体視画像を生成することができる。
表示制御装置の外観図 表示制御装置のブロック図 画面例(通常時) 画面例(簡略化した表示時) 仮想カメラによって立体視の画像を生成する処理を示す図 仮想カメラによる立体視の画像を生成する処理の変形例を示す図 標準状態における、仮想カメラ71L,71R、プレイヤオブジェクト74等の配置状態を示す図 プレイヤオブジェクトが仮想カメラに近づいたときの配置状態を示す図 表示制御プログラムによる処理において用いられる各種データを示す図(ROMデータ) 表示制御プログラムによる処理において用いられる各種データを示す図(プログラムの実行中に生成される一時的なデータ) 表示制御プログラムによる処理の流れを示すフローチャート 表示制御プログラムによる処理の流れを示すフローチャート
[ゲーム装置の構成]
以下、図面を参照して、本発明に係る表示制御プログラムおよび表示制御装置の一実施形態であるゲームプログラムおよびゲーム装置について説明する。図1は、ゲーム装置10の外観を示す平面図である。ゲーム装置10は携帯型のゲーム装置である。
まず、図1を参照して、ゲーム装置10の外観構成について説明する。図1に示されるように、ゲーム装置10は、下側ハウジング11および上側ハウジング21を有する。下側ハウジング11と上側ハウジング21とは、開閉可能(折り畳み可能)に接続されている。本実施形態では、各ハウジング11および21はともに横長の長方形の板状形状であり、互いの長辺部分で回転可能に接続されている。
(下側ハウジングの説明)
まず、下側ハウジング11の構成について説明する。図1に示すように、下側ハウジング11には、下側LCD(Liquid Crystal Display:液晶表示装置)12、タッチパネル13、各操作ボタン14A〜14L(図1、図3)、アナログスティック15、挿入口17、および、マイクロフォン用孔18が設けられる。以下、これらの詳細について説明する。
図1に示すように、下側LCD12は下側ハウジング11に収納される。下側LCD12は横長形状であり、長辺方向が下側ハウジング11の長辺方向に一致するように配置される。下側LCD12は左右方向(図1に示すx軸方向)に関して下側ハウジング11の中央に配置される。下側LCD12は、下側ハウジング11の内側面(主面)に設けられ、下側ハウジング11に設けられた開口部から当該下側LCD12の画面が露出される。ゲーム装置10を使用しない場合には閉状態としておくことによって、下側LCD12の画面が汚れたり傷ついたりすることを防止することができる。下側LCD12の画素数は、例えば、256dot×192dot(横×縦)であってもよい。下側LCD12は、後述する上側LCD22とは異なり、画像を(立体視可能ではなく)平面的に表示する表示装置である。なお、本実施形態では表示装置としてLCDを用いているが、例えばEL(Electro Luminescence:電界発光)を利用した表示装置など、他の任意の表示装置を利用してもよい。また、下側LCD12として、任意の解像度の表示装置を利用することができる。
図1に示されるように、ゲーム装置10は、入力装置として、タッチパネル13を備えている。タッチパネル13は、下側LCD12の画面上に装着されている。なお、本実施形態では、タッチパネル13は抵抗膜方式のタッチパネルである。ただし、タッチパネルは抵抗膜方式に限らず、例えば静電容量方式等、任意の方式のタッチパネルを用いることができる。本実施形態では、タッチパネル13として、下側LCD12の解像度と同解像度(検出精度)のものを利用する。ただし、必ずしもタッチパネル13の解像度と下側LCD12の解像度が一致している必要はない。また、下側ハウジング11の上側面には挿入口17(図1に示す点線)が設けられている。挿入口17は、タッチパネル13に対する操作を行うために用いられるタッチペン28を収納することができる。なお、タッチパネル13に対する入力は通常タッチペン28を用いて行われるが、タッチペン28に限らずユーザの指でタッチパネル13に対する入力をすることも可能である。
各操作ボタン14A〜14Lは、所定の入力を行うための入力装置である。図1に示されるように、下側ハウジング11の内側面(主面)には、各操作ボタン14A〜14Lのうち、十字ボタン14A(方向入力ボタン14A)、ボタン14B、ボタン14C、ボタン14D、ボタン14E、電源ボタン14F、セレクトボタン14J、HOMEボタン14K、およびスタートボタン14Lが設けられる。十字ボタン14Aは、十字の形状を有しており、上下左右の方向を指示するボタンを有している。ボタン14A〜14E、セレクトボタン14J、HOMEボタン14K、およびスタートボタン14Lには、ゲーム装置10が実行するプログラムに応じた機能が適宜割り当てられる。例えば、十字ボタン14Aは選択操作等に用いられ、各操作ボタン14B〜14Eは決定操作やキャンセル操作等に用いられる。また、電源ボタン14Fは、ゲーム装置10の電源をオン/オフするために用いられる。
アナログスティック15は、方向を指示するデバイスであり、下側ハウジング11の内側面に設けられる。図1に示すように、アナログスティック15は、十字ボタン14Aの上方に設けられる。アナログスティック15は、指で操作されるスティック部が下側ハウジング11の内側面に対して任意の方向(上下左右および斜め方向の任意の角度)に傾倒するように構成されている。アナログスティック15は、ゲーム装置10が実行するプログラムに応じて機能する。例えば、3次元仮想空間に所定のオブジェクトが登場するゲームがゲーム装置10によって実行される場合、アナログスティック15は、当該所定のオブジェクトを3次元仮想空間内で移動させるための入力装置として機能する。この場合において、所定のオブジェクトはアナログスティック15が傾倒した方向に移動される。なお、アナログスティック15として、上下左右および斜め方向の任意の方向に所定量だけスライドすることでアナログ入力を可能としたものを用いても良い。
また、下側ハウジング11の上側面には、ゲーム装置10とゲームプログラムを記録した外部メモリ44とを電気的に着脱自在に接続するためのコネクタ(図示せず)が設けられる。当該外部メモリ44がゲーム装置10に接続されることにより、所定のゲームプログラムが実行される。なお、上記コネクタおよびそのカバー部11Dは、下側ハウジング11の他の側面(例えば、右側面等)に設けられてもよい。
また、下側ハウジング11の内側面には、マイクロフォン用孔18が設けられる。マイクロフォン用孔18の下部には後述する音声入力装置としてのマイクが設けられ、当該マイクがゲーム装置10の外部の音を検出する。
なお、図示は省略するが、下側ハウジング11には、ゲーム装置10の電源となる充電式電池が収納され、下側ハウジング11の側面(例えば、上側面)に設けられた端子を介して当該電池を充電することができる。
(上側ハウジングの説明)
次に、上側ハウジング21の構成について説明する。図1に示すように、上側ハウジング21には、上側LCD(Liquid Crystal Display:液晶表示装置)22、外側カメラ23(左目用カメラ23aおよび右目用カメラ23b)、内側カメラ24、3D調整スイッチ25、および、3Dインジケータ26が設けられる。以下、これらの詳細について説明する。
図1に示すように、上側LCD22は上側ハウジング21に収納される。上側LCD22は、横長形状であり、長辺方向が上側ハウジング21の長辺方向に一致するように配置される。上側LCD22は左右方向(図1に示すx軸方向)に関して上側ハウジング21の中央に配置される。上側LCD22の画面の面積は、下側LCD12の画面の面積よりも大きく設定される。具体的には、上側LCD22の画面は、下側LCD12の画面よりも横長に設定される。すなわち、上側LCD22の画面のアスペクト比における横幅の割合は、下側LCD12の画面のアスペクト比における横幅の割合よりも大きく設定される。
上側LCD22の画面は、上側ハウジング21の内側面(主面)21Bに設けられ、上側ハウジング21に設けられた開口部から当該上側LCD22の画面が露出される。なお、本実施形態では上側LCD22は液晶表示装置であるとしたが、例えばEL(Electro Luminescence:電界発光)を利用した表示装置などが利用されてもよい。また、上側LCD22として、任意の解像度の表示装置を利用することができる。また、立体視用のメガネ(偏光式、シャッタ式など方式は問わない)を装着して視聴するタイプの立体視ディスプレイであってもよいし、いわゆるヘッドマウントディスプレイ方式のディスプレイであってもよい。
上側LCD22は、立体視可能な画像を表示することが可能な表示装置である。また、本実施形態では、実質的に同一の表示領域を用いて左目用画像と右目用画像が表示される。具体的には、上側LCD22は、左目用画像と右目用画像が所定単位で(例えば、1列ずつ)横方向に交互に表示される方式の表示装置である。または、上側LCD22は、左目用画像と右目用画像とが時分割で交互に表示される方式の表示装置であってもよい。また、本実施形態では、上側LCD22は裸眼立体視可能な表示装置である。そして、横方向に交互に表示される左目用画像と右目用画像とを左目および右目のそれぞれに分解して見えるように、レンチキュラー方式やパララックスバリア方式(視差バリア方式)の表示装置が用いられる。本実施形態では、上側LCD22はパララックスバリア方式のものとする。上側LCD22は、右目用画像と左目用画像とを用いて、裸眼で立体視可能な画像(立体画像)を表示する。すなわち、上側LCD22は、視差バリアを用いてユーザの左目に左目用画像を、ユーザの右目に右目用画像をそれぞれ視認させることにより、ユーザにとって立体感のある立体画像(立体視可能な画像)を表示することができる。また、上側LCD22は、上記視差バリアを無効にすることが可能であり、視差バリアを無効にした場合は、画像を平面的に表示することができる(上述した立体視とは反対の意味で平面視の画像を表示することができる)。このように、上側LCD22は、立体視可能な画像を表示する立体表示モードと、画像を平面的に表示する(平面視画像を表示する)平面表示モードとを切り替えることが可能な表示装置である。この表示モードの切り替えは、後述する所定のハードスイッチによって行われる。
また、上側ハウジング21の内側面には、スピーカ孔21Eが設けられる。後述するスピーカ43からの音声がこのスピーカ孔21Eから出力される。
[ゲーム装置10の内部構成]
次に、図2を参照して、ゲーム装置10の内部の電気的構成について説明する。図2は、ゲーム装置10の内部構成を示すブロック図である。図2に示すように、ゲーム装置10は、上述した各部に加えて、情報処理部31、メインメモリ32、外部メモリインターフェイス(外部メモリI/F)33、データ保存用内部メモリ35、電源回路40、およびインターフェイス回路(I/F回路)41等の電子部品を備えている。これらの電子部品は、電子回路基板上に実装されて下側ハウジング11(または上側ハウジング21でもよい)内に収納される。
情報処理部31は、所定のプログラムを実行するためのCPU(Central Processing Unit)311、画像処理を行うGPU(Graphics Processing Unit)312等を含む情報処理手段である。本実施形態では、所定の処理を実行するためのプログラムがゲーム装置10内のメモリ(例えば外部メモリI/F33に接続された外部メモリ44やデータ保存用内部メモリ35)に記憶されている。情報処理部31のCPU311は、当該プログラムを実行することによって、当該プログラムに応じた処理(例えば、撮影処理や、後述する画像表示処理など)を実行する。なお、情報処理部31のCPU311によって実行されるプログラムは、他の機器との通信によって他の機器から取得されてもよい。また、情報処理部31は、VRAM(Video RAM)313を含む。情報処理部31のGPU312は、情報処理部31のCPU311からの命令に応じて画像を生成し、VRAM313に描画する。そして、情報処理部31のGPU312は、VRAM313に描画された画像を上側LCD22及び/又は下側LCD12に出力し、上側LCD22及び/又は下側LCD12に当該画像が表示される。
情報処理部31には、メインメモリ32、外部メモリI/F33、および、データ保存用内部メモリ35が接続される。外部メモリI/F33は、外部メモリ44を着脱自在に接続するためのインターフェイスである。
メインメモリ32は、情報処理部31(のCPU311)のワーク領域やバッファ領域として用いられる揮発性の記憶手段である。すなわち、メインメモリ32は、上記プログラムに基づく処理に用いられる各種データを一時的に記憶したり、外部(外部メモリ44や他の機器等)から取得されるプログラムを一時的に記憶したりする。本実施形態では、メインメモリ32として例えばPSRAM(Pseudo−SRAM)を用いる。
外部メモリ44は、情報処理部31によって実行されるプログラムを記憶するための不揮発性の記憶手段である。外部メモリ44は、例えば読み取り専用の半導体メモリで構成される。外部メモリ44が外部メモリI/F33に接続されると、情報処理部31は外部メモリ44に記憶されたプログラムを読み込むことができる。情報処理部31が読み込んだプログラムを実行することにより、所定の処理が行われる。
データ保存用内部メモリ35は、読み書き可能な不揮発性メモリ(例えばNAND型フラッシュメモリ)で構成され、所定のデータを格納するために用いられる。例えば、データ保存用内部メモリ35には、図示しない通信手段によってダウンロードされたデータやプログラムが格納される。
電源回路40は、ゲーム装置10が有する電源(下側ハウジング11に収納される上記充電式電池)からの電力を制御し、ゲーム装置10の各部品に電力を供給する。
また、情報処理部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に対して入力が行われた位置を知ることができる。
操作ボタン14は、上記各操作ボタン14A〜14Lからなり、情報処理部31に接続される。操作ボタン14から情報処理部31へは、各操作ボタン14A〜14Iに対する入力状況(押下されたか否か)を示す操作データが出力される。情報処理部31は、操作ボタン14から操作データを取得することによって、操作ボタン14に対する入力に従った処理を実行する。
下側LCD12および上側LCD22は情報処理部31に接続される。下側LCD12および上側LCD22は、情報処理部31(のGPU312)の指示に従って画像を表示する。本実施形態では、情報処理部31は、上側LCD22に右目用画像と左目用画像とを用いた立体画像(立体視可能な画像)を表示させる。
具体的には、情報処理部31は、上側LCD22のLCDコントローラ(図示せず)と接続され、当該LCDコントローラに対して視差バリアのオン/オフを制御する。上側LCD22の視差バリアがオンになっている場合、情報処理部31のVRAM313に格納された右目用画像と左目用画像とが、上側LCD22に出力される。より具体的には、LCDコントローラは、右目用画像について縦方向に1ライン分の画素データを読み出す処理と、左目用画像について縦方向に1ライン分の画素データを読み出す処理とを交互に繰り返すことによって、VRAM313から右目用画像と左目用画像とを読み出す。これにより、右目用画像および左目用画像が、画素を縦に1ライン毎に並んだ短冊状画像に分割され、分割された右目用画像の短冊状画像と左目用画像の短冊状画像とが交互に配置された画像が、上側LCD22の画面に表示される。そして、上側LCD22の視差バリアを介して当該画像がユーザに視認されることによって、ユーザの右目に右目用画像が、ユーザの左目に左目用画像が視認される。以上により、上側LCD22の画面には立体視可能な画像が表示される。
[ゲーム装置10における立体画像表示処理の概要]
以下、ゲーム装置10において実行される表示制御処理の概要について説明する。
図3および図4は、本実施形態に係るゲーム装置10のゲーム画面の一例である。図3は標準状態におけるゲーム画面の一例である。キャラクタ74は、プレイヤが操作ボタン14やアナログスティック15を用いて操作することが可能なプレイヤオブジェクトである。本実施形態に係るゲーム装置10によるゲームでは、プレイヤオブジェクトが仮想カメラに一定距離より近くになったときに、プレイヤオブジェクトを半透明のシルエット画像に変更して表示する。図3の状況では、プレイヤオブジェクトは仮想カメラから一定距離より遠くにいるので、多数の色を使用し、各部位を描き分けて、詳細な画像で描画される。プレイヤオブジェクト以外のオブジェクト(建物オブジェクト76や床オブジェクト77や図示しない敵オブジェクトなど。以下、他のオブジェクトと呼ぶ)は、詳細な画像で描画される。図3(a)は左目用画像であり、図3(b)は右目用画像である。図4は、プレイヤオブジェクト74が仮想カメラに一定距離より近くなったときのゲーム画面の一例である。このときには、プレイヤオブジェクト74はシルエット画像に変更されて表示される。具体的には、プレイヤオブジェクト74の全体は単一色の画像に変更される。また、より具体的には、プレイヤオブジェクト74の全体を色相・明度・彩度のすべてが同一の色で描画してもよい。すなわち、プレイヤオブジェクト74は全体が同一の色で描画されるため、各部位を識別することはできず、全体の輪郭がわかるのみである。また、他のオブジェクトは、図3のときと同じく詳細な描画で描かれる。すなわち、他のオブジェクトについては、仮想カメラに近い位置にいるときでもシルエット化しない。また、プレイヤオブジェクト74はシルエット画像に変更されるとともに半透明で描画される。
図5は、立体視のための左目用画像および右目用画像を生成する処理を説明するための図である。本実施形態の処理では、まず、仮想カメラの代表点71および撮影方向81が設定される。そして、左目用画像を生成するための左仮想カメラ71Lは、代表点71を撮影方向に直交する方向であって左方向(すなわち、例えば、カメラ座標系のX軸の負方向)に所定距離だけ移動した位置に配置され、その撮影方向81Lは撮影方向81と同じ方向に設定される。また、右目用画像を生成するための右仮想カメラ71Rは、代表点71を撮影方向に直交する方向であって右方向(すなわち、例えば、カメラ座標系のX軸の正方向)に所定距離だけ移動した位置に配置され、その撮影方向81Rは撮影方向81と同じ方向に設定される。
図5で図示されるD0は、上側LCD22における表示において、右目用画像と左目用画像との表示位置の差がゼロとなる仮想空間内の位置を仮想カメラから撮影方向に向かう距離で設定するための値であって、この位置に存在するオブジェクトが上側LCD22上でディスプレイ面上に存在するように見える。すなわち、この位置に存在するオブジェクトはディスプレイ面から飛び出して見えず、かつ、ディスプレイ面より奥に引っ込んで見えることもない。本明細書では、この距離D0を立体視基準距離と呼ぶ。また、左仮想カメラ71Lは、視体積82Lの範囲を投影してレンダリングし、右仮想カメラ71Lは、視体積82Rの範囲を投影してレンダリングする。また、立体視基準距離D0における投影面で考えて、左仮想カメラ71Lでレンダリングされる画像72Lのうち部分73の領域が切り取られて上側LCD22に表示され、右仮想カメラ71Rでレンダリングされた画像72Rのうち部分73の領域が切り取られて上側LCD22に表示される。なお、実際には、72Lと73の比、または、72Rと73の比を用いて、レンダリング画像からの切り出しが行われる。上側LCD22上では、これらの画像が重ね合わせて表示されるので、仮想カメラから立体視基準距離D0だけ離れた位置に存在するオブジェクトは、上側LCD22上で表示位置の差がなく表示される。
図6は、立体視のための左目用画像および右目用画像を生成する処理の変形例である。図5の例では、左仮想カメラ71Lでレンダリングした画像のうち部分73の領域を切り出して表示に使用し、右仮想カメラ71Rでレンダリングした画像のうち部分73の領域を切り出して表示に使用したが、図6の例では、左仮想カメラ71Lまたは右仮想カメラ71Rでレンダリングする時点で部分73に一致するような視体積82L´、82R´をそれぞれ設定している。このようにすれば、レンダリング後に表示範囲を切り出す処理が不要となる。
図7は、ゲームプレイ中の、標準状態における、仮想カメラの代表点71、左仮想カメラ71L,右仮想カメラ71R、プレイヤオブジェクト74、敵オブジェクト751〜753の配置状態を示す図である。仮想カメラの代表点71は、プレイヤオブジェクト74の位置に応じて変更される。具体的には、標準状態において、プレイヤオブジェクト74から所定距離Dpだけ離れた位置に仮想カメラの代表点71は配置され、プレイヤオブジェクト74を視野に含むように撮影方向が設定される。なお、プレイヤオブジェクト74が加速していないときには、仮想カメラはプレイヤオブジェクト74の方向を撮影するので、所定距離Dpはプレイヤオブジェクト74と仮想カメラの間の撮影方向についての距離である。標準状態における所定距離Dpの値をDp0とする。なお、標準状態とは、プレイヤオブジェクト74が加速していない状態である。プレイヤオブジェクト74が仮想カメラから離れる方向に加速した場合には、Dpは標準値Dp0よりも大きくなる。また、プレイヤオブジェクト74が仮想カメラの代表点71の方向に向かって加速した場合には、Dpは標準値Dp0よりも小さくなる。また、プレイヤオブジェクト74が仮想カメラの撮影方向に直交する方向に加速した場合にも、Dpは標準値Dp0より大きくなる。このように、Dpの値は状況によって変化するので、プレイヤオブジェクト74は上側LCD22上で上下左右方向に移動して表示される。
図7に示されるD0は、図5に示されるD0と同じであり、上側LCD22のディスプレイ(以下、単に、ディスプレイと呼ぶことがある)において右目用画像と左目用画像の表示位置の差がゼロとなる位置を仮想カメラからの距離で定義した値である。すなわち、D0より仮想カメラに近い位置に存在するオブジェクトはディスプレイ面から飛び出して見えるし、D0の位置に存在するオブジェクトはディスプレイ面上に見えるし、D0より遠い位置に存在するオブジェクトはディスプレイ面より奥に引っ込んで見える。前述のDp0はD0より大きく設定される。これにより、プレイヤオブジェクト74は、標準状態においてディスプレイ面より奥に引っ込んで表示される。プレイヤオブジェクト74は常に仮想カメラの視野範囲に含まれてディスプレイに表示されるが、ディスプレイ面より奥にひっこんで見えるので視認性が良い。標準状態において、図3に示したようなゲーム画像が表示される。すなわち、プレイヤオブジェクト74は、標準状態において(DpがD0より大きい状態において)、多数の色を使用して各部位が区別可能な詳細な画像として描画される。なお、敵オブジェクト751〜753は詳細な画像で描画される。なお、敵オブジェクト753は仮想カメラから一定距離Dより近い位置に存在するが、敵オブジェクト751や752と同じく詳細な画像で描画される。
図7に示されるDcは、本実施形態において、プレイヤオブジェクト74をシルエット画像に変更するか否かを判定するための値を仮想カメラからの撮影方向についての距離で定義した値である。以下、この値を判定基準値と呼ぶ。具体的には、プレイヤオブジェクト74と仮想カメラとの間の撮影方向についての距離がDcより小さくなったときに(またはDc以下のときに)プレイヤオブジェクト74はシルエット画像で描画される。プレイヤオブジェクト74と仮想カメラとの間の撮影方向についての距離がDc以上のときには(またはDcより大きいときに)、プレイヤオブジェクト74は、多数の色を使用して各部位が区別可能な詳細な画像として描画される。本実施例においては、判定基準値Dcは、D0より小さく設定される。しかしながら、DcをD0と同じ値に設定してもよいし、DcをD0より大きく設定してもよい。DcをD0と同じ値に設定した場合には、プレイヤオブジェクト74がディスプレイ面上に見えた状態からそれより仮想カメラ側に近づくとシルエット画像に変更される。また、DcをD0より大きい値に設定した場合には、詳細な画像によって描かれたプレイヤオブジェクト74は常にディスプレイ面より奥に引っ込んで見えることが確保される。なお、DcをDoより大きい値に設定する場合であっても、DcはDp0よりは小さな値に設定される。DcをDp0より小さな値にすることにより、標準状態ではプレイヤオブジェクト74は詳細な画像で描画される。
図8は、プレイヤオブジェクト74と仮想カメラとの間の撮影方向についての距離が、Dcより小さくなった場合の、仮想カメラの代表点71、左仮想カメラ71L,右仮想カメラ71R、プレイヤオブジェクト74、敵オブジェクト751〜753の配置状態を示す図である。前述の通り、このような状況は、プレイヤオブジェクト74が仮想カメラの方向に近づくように加速したときなどに発生する。このとき、図4に示したようなゲーム画像が表示される。すなわち、プレイヤオブジェクト74は、シルエット画像として表示される。なお、図7における状況と同様、敵オブジェクト751〜753は詳細な画像として表示される。図8において、敵オブジェクト752および753はプレイヤオブジェクト74とディスプレイ上で重なる位置に存在するが、敵オブジェクト753はプレイヤオブジェクト74よりも仮想カメラに近い位置に存在し、敵オブジェクト754はプレイヤオブジェクト74よりも仮想カメラに遠い位置に存在するので、ディスプレイ上では、敵オブジェクト753の詳細画像が手前に描画され、その後ろにプレイヤオブジェクト74のシルエット画像が描画され、さらにその後ろに敵オブジェクト752の詳細画像が描画される。
[ゲーム装置10における処理の詳細]
次に、図9〜図12を参照して、ゲームプログラムによって実行されるゲーム処理の詳細を説明する。まず、ゲーム処理において用いられる各種データについて説明する。図9は、ゲームプログラムによる処理において用いられる各種データのうちゲームプログラムに含まれる固定値データを示す図である。これらのデータは、外部メモリ44やデータ保存用内部メモリ35に記憶されるゲームプログラムに含まれるデータであり、ゲームプログラムの実行時にメインメモリ32にロードされる。
ゲームプログラム71は、図11および図12を参照して後述する処理をゲーム装置10の情報処理部31に実行させるプログラムである。ゲームプログラム71には、所定のゲームを進行させるためのプログラムや、表示制御処理を実行するためのプログラムが含まれる。
画像データ52は、各オブジェクト(プレイヤオブジェクト、敵オブジェクトなどのノンプレイヤオブジェクト、建物オブジェクト、地形オブジェクト他)の画像を生成するためのデータである。この画像データには、ポリゴンモデルのデータとテクスチャデータが含まれる。プレイヤオブジェクトの画像データ521には、ポリゴンモデル5211と、標準テクスチャ5212と、近接用テクスチャ5213が含まれる。ポリゴンモデル5211は、プレイヤオブジェクト74の形状を定義したデータであり、頭、胴体、腕、手、足など各部位ごとにその形状が定義される。標準テクスチャ5212は、プレイヤオブジェクト74が仮想カメラから一定距離(判定基準値Dc)より遠い位置に存在する場合に使用されるテクスチャであり、多数の色を使用した画像データであって、各部位ごとに異なる画像のテクスチャが用意される。近接用テクスチャ5213は、プレイヤオブジェクトが仮想カメラから一定距離(判定基準値Dc)より近い位置に存在する場合に使用されるテクスチャデータであり、単一色の画像データである。また、より具体的には、全域にわたって、色相・明度・彩度のすべてが同一の色が設定された画像データである。さらに、どの部位のテクスチャも共通の色が設定される。ノンプレイヤオブジェクトとの画像データ522、建物オブジェクトの画像データ523は、ノンプレイヤオブジェクトや建物オブジェクトの種類の数だけ用意され、それぞれポリゴンモデルとテクスチャを含む。
前述の通り、本実施形態では、仮想カメラの代表点の位置から左仮想カメラの位置と右仮想カメラの位置を算出するが、仮想カメラ設定用データ53は、この算出に用いられるデータである。具体的には、プレイヤオブジェクト74が仮想カメラから一定距離(判定基準値Dc)より遠い位置に存在する場合には、仮想カメラの代表点の位置から、撮影方向に直交する方向にそれぞれ、標準カメラ間距離531の半分だけ離れた位置に左仮想カメラと右仮想カメラが配置され、この仮想カメラでプレイヤオブジェクト、ノンプレイヤオブジェクト、建物オブジェクト、地形オブジェクトのすべてが撮影されてレンダリングされる。
また、プレイヤオブジェクト74が仮想カメラから一定距離(判定基準値Dc)より近い位置に存在する場合には、仮想カメラの代表点の位置から、撮影方向に直交する方向にそれぞれ、標準カメラ間距離531の半分だけ離れた位置に左仮想カメラと右仮想カメラが配置され、この仮想カメラでプレイヤオブジェクトを除くオブジェクト(ノンプレイヤオブジェクト、建物オブジェクト、地形オブジェクトなど)が撮影されてレンダリングされる。また、仮想カメラの代表点の位置から、撮影方向に直交する方向にそれぞれ、近接用カメラ間距離532の半分だけ離れた位置に左仮想カメラと右仮想カメラが配置され、この仮想カメラでプレイヤオブジェクトが撮影されてレンダリングされる。
なお、近接用カメラ間距離532は、標準カメラ間距離531で示される距離より小さい値に設定される。本実施形態では、近接用カメラ間距離532は、標準カメラ間距離531で示される距離の0.2倍である。なお、近接用カメラ間距離532は、標準カメラ間距離531で示される距離の0倍以上、1倍より小さい値であるが、0.5倍以下としてもよい。このように、近接用カメラ間距離532は、標準カメラ間距離531で示される距離より小さいので、プレイヤオブジェクト74が仮想カメラから一定距離(判定基準値Dc)より近い位置に存在する場合には、プレイヤオブジェクト74はディスプレイ上において視差が小さく表示される。
近接判定データ54は、前述の判定基準値Dcを示すデータ541を含む。
図10は、図9で示されたゲームプログラムを実行することにより、メインメモリ32上に一時的に生成されるデータを示す図である。
位置データ61は、各オブジェクトの仮想空間における位置を示すデータである。なお、本実施形態における仮想空間は3次元の仮想空間である。プレイヤオブジェクトの位置データ611と、ノンプレイヤオブジェクトの位置データ612と、建物オブジェクトの位置データ613を含む。ノンプレイヤオブジェクトの位置データや建物オブジェクトの位置データはオブジェクトの数だけ含まれる。
仮想カメラデータ62は、仮想カメラの仮想空間における位置データであるカメラ位置621と撮影方向データ622を含む。
Zバッファデータ63は、プレイヤオブジェクト74が仮想カメラから一定距離(判定基準値Dc)より近い位置に存在する場合において、プレイヤオブジェクトを除くオブジェクトをレンダリングした際に生成されたZバッファデータを保存したデータである。プレイヤオブジェクトを除くオブジェクトをレンダリングした後、プレイヤオブジェクトがレンダリングされるが、この際に、このZバッファデータが参照されて、プレイヤオブジェクトとその他のオブジェクトとの、仮想カメラに対する奥行位置が判定されて、描画の優先度が決定される。プレイヤオブジェクトを除くオブジェクトを左仮想カメラでレンダリングした時に生成されたZバッファデータである「Zバッファデータ(左レンダリング時)631」と、プレイヤオブジェクトを除くオブジェクトを右仮想カメラでレンダリングした時に生成されたZバッファデータである「Zバッファデータ(右レンダリング時)632」とを含む。
レンダリング画像データ64は、プレイヤオブジェクト74が仮想カメラから一定距離(判定基準値Dc)より近い位置に存在する場合において、プレイヤオブジェクトを除くオブジェクトをレンダリングした結果である「左レンダリング画像(PO以外)641」および「右レンダリング画像(PO以外)642」と、最終的なレンダリング結果である左レンダリング画像643、右レンダリング画像644を含む。最終的なレンダリング結果とは、上側LCD22に出力されるレンダリング画像であり、プレイヤオブジェクト74が仮想カメラから一定距離(判定基準値Dc)より近い位置に存在する場合においては、「左レンダリング画像(PO以外)641」および「右レンダリング画像(PO以外)642」にさらにプレイヤオブジェクトを重ねてレンダリングした結果の画像が格納され、プレイヤオブジェクト74が仮想カメラから一定距離(判定基準値Dc)より遠い位置に存在する場合においては、プレイヤオブジェクトを含む全てのオブジェウクトが一度のレンダリングで生成された結果が格納される。
次に、ゲーム装置10において行われるゲーム処理の詳細を、図11および12を用いて説明する。ゲーム装置10の電源が投入されると、ゲーム装置10の情報処理部31(CPU311)は、図示しないROMに記憶されている起動プログラムを実行し、これによってメインメモリ32等の各ユニットが初期化される。次に、外部メモリ44またはデータ保存用内部メモリ35に記憶されたゲームプログラムがメインメモリ32に読み込まれ、情報処理部31のCPU311によってゲームプログラムの実行が開始される。これによって、図11に示す処理が開始される。
なお、図11および図12に示す処理は、単なる一例に過ぎず、同様の結果が得られるのであれば、各ステップの処理順序を入れ替えてもよい。また、変数の値や、判断ステップで利用される閾値も、単なる一例に過ぎず、必要に応じて他の値を採用してもよい。また、本実施形態では、図11および図12に示すフローチャートの各ステップの処理をCPU311が実行するものとして説明するが、図11および図12に示すフローチャートの一部のステップの処理を、CPU311以外のプロセッサや専用回路が実行するようにしてもよい。
ステップS1において、CPU311は、プレイヤによる操作入力に応じてプレイヤオブジェクトの移動処理をして「プレイヤオブジェクトの位置611」を更新する。より具体的には、アナログスティック15や各操作ボタン14A〜14Lの操作データを検出して、この操作データに応じてプレイヤオブジェクトの移動処理をおこなう。
次に、ステップS2において、ステップS1により更新された「プレイヤオブジェクトの位置611」に応じて、プレイヤオブジェクトが視野に入るように、「カメラ位置621」および「撮影方向622」を変更する。より具体的には、前述したように、「カメラ位置621」は、「プレイヤオブジェクトの位置611」から前述のDpだけ離れた位置に設定され、「撮影方向622」は、「カメラ位置621」から「プレイヤオブジェクトの位置611」(または「プレイヤオブジェクトの位置611」の前方等の近傍であってもよい)に向かう方向に設定される。
次に、ステップS3において、「プレイヤオブジェクトの位置611」から「カメラ位置621」までの「撮影方向622」についての距離が「判定基準値Dc541」より大きいか否かが判定される。
ステップS3の判定がNoの場合、ステップS4に移行し、「カメラ位置621」を「撮影方向622」に直交する方向に「標準カメラ間距離531」の半分だけ左方向にずらした位置を左仮想カメラに設定して、この左仮想カメラで「撮影方向622」で示される方向を撮影してプレイヤオブジェクトを含む全てのオブジェクトをレンダリングして「左レンダリング画像643」を生成する。このとき、プレイヤオブジェクトのテクスチャは「標準テクスチャ5212」が使用される。
ステップS4の後、ステップS5において、「カメラ位置621」を「撮影方向622」に直交する方向に「標準カメラ間距離531」の半分だけ右方向にずらした位置を右仮想カメラに設定して、この右仮想カメラで「撮影方向622」で示される方向を撮影して、プレイヤオブジェクトを含む全てのオブジェクトをレンダリングして「右レンダリング画像644」を生成する。このとき、プレイヤオブジェクトのテクスチャは「標準テクスチャ5212」が使用される。
ステップS5の後、ステップS6において、「左レンダリング画像643」と「右レンダリング画像644」が上側LCD22に出力される。ステップS6の後、ステップS11において、敵キャラクタの移動処理や戦闘処理やゲームオーバー処理など、その他のゲーム処理がおこなわれる。ステップS11の後、ステップS6に戻る。
ステップS3の判定がYesの場合、図12に示されるステップS7に移行し、「カメラ位置621」を「撮影方向622」に直交する方向に「標準カメラ間距離531」の半分だけ左方向にずらした位置を左仮想カメラに設定して、この左仮想カメラで「撮影方向622」で示される方向を撮影して、プレイヤオブジェクト以外をレンダリングして、「左レンダリング画像(PO以外)641」として保存する。このとき生成されたZバッファデータを「Zバッファデータ(左レンダリング時)631」として保存する。
ステップS7の後、ステップS8において、「カメラ位置621」を「撮影方向622」に直交する方向に「近接用カメラ間距離531」の半分だけ左方向にずらした位置を左仮想カメラに設定して、この左仮想カメラで「撮影方向622」で示される方向を撮影して、プレイヤオブジェクトのみをレンダリングする。このとき、「Zバッファデータ(左レンダリング時)631」に基づく奥行方向の優先度を判定しつつ、「左レンダリング画像(PO以外)641」に重畳して半透明描画して、「左レンダリング画像643」を生成する。この描画において、プレイヤオブジェクトのテクスチャは「近接用テクスチャ5213」が使用される。
ステップS8の後、ステップS9において、「カメラ位置621」を「撮影方向622」に直交する方向に「標準カメラ間距離531」の半分だけ右方向にずらした位置を右仮想カメラに設定して、この右仮想カメラで「撮影方向622」の方向を撮影して、プレイヤオブジェクト以外をレンダリングして、「右レンダリング画像(PO以外)642」として保存する。このとき生成されたZバッファデータを「Zバッファデータ(右レンダリング時)632」として保存する。
ステップS9の後、ステップS10において、「カメラ位置621」を「撮影方向622」に直交する方向に「近接用カメラ間距離532」の半分だけ右方向にずらした位置を右仮想カメラに設定して、この右仮想カメラで「撮影方向622」の方向を撮影して、プレイヤオブジェクトのみをレンダリングする。このときて、「Zバッファデータ(右レンダリング時)632」に基づく奥行方向の優先度を判定しつつ、「右レンダリング画像(PO以外)642」に重畳して半透明描画して、「右レンダリング画像643」を生成する。この描画において、プレイヤオブジェクトのテクスチャは「近接用テクスチャ5213を使用される。ステップS10の後、ステップS11に移行する。
なお、ステップS4、S5、S7、S9におけるレンダリング処理においては、ラインティングやシェーディング等の光の反射や影付けや映り込みなどの処理をおこなうが、ステップS8、S10におけるプレイヤオブジェクトのレンダリング処理においては、これらの処理はおこなわない。こうすることにより、プレイヤオブジェクトのレンダリング画像は全体が単一色で(色相・明度・彩度のすべてが同一の色で)描画される。
(変形例)
上記実施形態では、上側LCD22がゲーム装置10に予め搭載されているが、他の実施形態では、ゲーム装置10に着脱可能な外付け型の立体視ディスプレイが上側LCD22に代えて利用されてもよい。
また、上記実施形態では、上側LCD22がパララックスバリア方式の立体表示装置であるが、他の実施形態では、上側LCD22がレンチキュラー方式等の他の任意の方式の立体表示装置であってもよい。例えば、レンチキュラー方式の立体表示装置を利用する場合には、左目用画像と右目用画像をCPU311または他のプロセッサで合成してから、合成された画像をレンチキュラー方式の立体表示装置に供給するようにしてもよい。
また、上記実施形態では、ゲーム装置10を用いたゲーム処理中において立体画像表示処理を実行しているが、他の実施形態では、任意の情報処理装置または情報処理システム(例えば、PDA(Personal Digital Assistant)、携帯電話、パーソナルコンピュータ、カメラ等)によって立体画像表示処理を実行してもよい。
また、上記実施形態では、一台の情報処理装置(ゲーム装置10)のみによってゲーム処理(立体画像表示処理)を実行しているが、他の実施形態では、互いに通信可能な複数の情報処理装置を有する立体画像表示システムにおいて、当該複数の情報処理装置が立体画像表示処理を分担して実行するようにしてもよい。
以上のように、本発明は、立体視画像を見やすく表示すること等を目的として、例えばゲームアプリケーションなどのインタラクティブなアプリケーションや仮想空間をオブジェクトが移動する様子を表示するアプリケーションなどに利用することが可能である。
10 ゲーム装置
12 下側LCD
14 操作ボタン
15 アナログスティック
22 上側LCD
31 情報処理部
311 CPU
312 GPU
32 メインメモリ
35 データ保存用内部メモリ
44 外部メモリ
71 仮想カメラの代表点
71L 左仮想カメラ
71R 右仮想カメラ
74 プレイヤオブジェクト
75 敵オブジェクト
76 建物オブジェクト
77 床オブジェクト

Claims (14)

  1. コンピュータを、
    所定の仮想オブジェクトが存在する所定の仮想空間について、所定の視点に基づく右目用画像および左目用画像を生成して立体視可能に所定のディスプレイに出力する表示制御手段として機能させ、
    前記表示制御手段は、前記視点から見て所定距離より近くに存在する仮想オブジェクトである近接オブジェクトについて、簡略化した表示に変更して右目用画像および左目用画像を生成する、表示制御プログラム。
  2. 前記表示制御手段は、さらに、前記近接オブジェクトについての右目用画像と左目用画像の前記ディスプレイ上での表示位置の差を減少させるように前記生成または前記出力をおこなう、請求項1に記載の画像生成プログラム。
  3. 前記表示制御手段は、前記視点から見て前記所定距離より遠くに存在する仮想オブジェクトである非近接オブジェクトについて、所定の第1間隔を有する2つの仮想カメラにより当該非近接オブジェクトの右目用画像および左目用画像を生成し、かつ、当該第1間隔よりも狭い第2間隔を有する2つの仮想カメラにより、前記近接オブジェクトの右目用画像および左目用画像を生成することにより、前記表示位置の差を減少する、請求項2に記載の画像生成プログラム。
  4. 前記表示制御手段は、所定の仮想オブジェクトについて、前記視点から見て前記所定距離より近くに存在するときに前記簡略化した表示に変更し、当該所定の仮想オブジェクト以外の仮想オブジェクトについては、前記視点から見て前記所定距離より近くに存在するときにも前記簡略化した表示に変更しない請求項1ないし3のいずれかに記載の画像生成プログラム。
  5. 前記表示制御手段は、前記所定の仮想オブジェクトについて、前記視点から見て前記所定距離より近くに存在するときに前記表示位置の差を減少させるような処理をおこない、当該所定の仮想オブジェクト以外の仮想オブジェクトについては、前記視点から見て前記所定距離より近くに存在するときにも前記表示位置の差を減少させるような処理をおこなわない請求項4に記載の画像生成プログラム。
  6. 前記表示制御手段は、所定の仮想オブジェクトが前記視点から見て前記所定距離より近くに存在するときに、前記第1間隔を有する2つの仮想カメラにより、前記所定の仮想オブジェクト以外の仮想オブジェクトについて右目用画像および左目用画像をそれぞれ生成し、当該右目用画像および当該左目用画像の生成により生じたそれぞれの奥行情報を利用して、前記第2間隔を有する2つの仮想カメラにより生成される前記所定の仮想オブジェクトの画像を、当該右目用画像および当該左目用画像にそれぞれ合成する、請求項5に記載の画像生成プログラム。
  7. 前記表示制御手段は、さらに、前記近接オブジェクトの右目用画像および左目用画像を半透明の画像とする、請求項1ないし6のいずれかに記載の表示制御プログラム。
  8. 前記仮想空間にはプレイヤによって操作されるプレイヤオブジェクトが存在し、
    前記表示制御手段は、前記プレイヤオブジェクトの位置に基づいて視点および視線方向を設定することにより、前記プレイヤオブジェクトを含む画像を生成し、
    前記所定の仮想オブジェクトは、プレイヤオブジェクトである、請求項4ないし6のいずれかに記載の画像生成プログラム。
  9. 前記表示制御手段は、前記近接オブジェクトについて視差が0になるように処理をおこなう、請求項2に記載の画像生成プログラム。
  10. 前記表示制御手段は、前記所定距離として、ディスプレイより飛び出して見える距離とする、請求項1ないし9のいずれかに記載の画像生成プログラム。
  11. 前記簡略化した表示は、シルエット化した表示である、請求項1ないし10のいずれかに記載の画像生成プログラム。
  12. 所定の仮想オブジェクトが存在する所定の仮想空間について、所定の視点に基づく右目用画像および左目用画像を生成して立体視可能に所定のディスプレイに出力する表示制御手段を備え、
    前記表示制御手段は、前記視点から見て所定距離より近くに存在する仮想オブジェクトである近接オブジェクトについて、簡略化した表示に変更して右目用画像および左目用画像を生成する、画像生成システム。
  13. 所定の仮想オブジェクトが存在する所定の仮想空間について、所定の視点に基づく右目用画像および左目用画像を生成して立体視可能に所定のディスプレイに出力する表示制御手段を備え、
    前記表示制御手段は、前記視点から見て所定距離より近くに存在する仮想オブジェクトである近接オブジェクトについて、簡略化した表示に変更して右目用画像および左目用画像を生成する、画像生成装置。
  14. 表示制御装置または表示制御システムを制御する表示制御方法であって、
    所定の仮想オブジェクトが存在する所定の仮想空間について、所定の視点に基づく右目用画像および左目用画像を生成して立体視可能に所定のディスプレイに出力するときに、当該視点から見て所定距離より近くに存在する仮想オブジェクトである近接オブジェクトについて、簡略化した表示に変更して右目用画像および左目用画像を生成する、表示制御方法。
JP2014088373A 2014-04-22 2014-04-22 立体視表示制御プログラム、立体視表示制御システム、立体視表示制御装置、および、立体視表示制御方法 Pending JP2014135771A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2014088373A JP2014135771A (ja) 2014-04-22 2014-04-22 立体視表示制御プログラム、立体視表示制御システム、立体視表示制御装置、および、立体視表示制御方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014088373A JP2014135771A (ja) 2014-04-22 2014-04-22 立体視表示制御プログラム、立体視表示制御システム、立体視表示制御装置、および、立体視表示制御方法

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2010217569A Division JP5689637B2 (ja) 2010-09-28 2010-09-28 立体視表示制御プログラム、立体視表示制御システム、立体視表示制御装置、および、立体視表示制御方法

Publications (1)

Publication Number Publication Date
JP2014135771A true JP2014135771A (ja) 2014-07-24

Family

ID=51413696

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014088373A Pending JP2014135771A (ja) 2014-04-22 2014-04-22 立体視表示制御プログラム、立体視表示制御システム、立体視表示制御装置、および、立体視表示制御方法

Country Status (1)

Country Link
JP (1) JP2014135771A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3713230A1 (en) 2019-03-20 2020-09-23 Nintendo Co., Ltd. Image display system, image display program, and image display method
EP3713229A2 (en) 2019-03-20 2020-09-23 Nintendo Co., Ltd. Image display system, image display program, and image display method

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005157329A (ja) * 2003-10-30 2005-06-16 Brother Ind Ltd 画像表示装置
JP2006101329A (ja) * 2004-09-30 2006-04-13 Kddi Corp 立体視画像観察装置ならびにその共有サーバ、クライアント端末およびピア・ツー・ピア端末、レンダリング画像生成方法および立体視画像表示方法ならびにそのプログラムおよび記憶媒体
JP2006229841A (ja) * 2005-02-21 2006-08-31 Fuji Photo Film Co Ltd ステレオ立体表示装置及びそのプログラム
JP2008043589A (ja) * 2006-08-18 2008-02-28 Nintendo Co Ltd ゲームプログラムおよびゲーム装置
JP2009211718A (ja) * 2002-11-12 2009-09-17 Namco Bandai Games Inc 画像生成システム、画像生成方法、プログラム及び情報記憶媒体

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009211718A (ja) * 2002-11-12 2009-09-17 Namco Bandai Games Inc 画像生成システム、画像生成方法、プログラム及び情報記憶媒体
JP2005157329A (ja) * 2003-10-30 2005-06-16 Brother Ind Ltd 画像表示装置
JP2006101329A (ja) * 2004-09-30 2006-04-13 Kddi Corp 立体視画像観察装置ならびにその共有サーバ、クライアント端末およびピア・ツー・ピア端末、レンダリング画像生成方法および立体視画像表示方法ならびにそのプログラムおよび記憶媒体
JP2006229841A (ja) * 2005-02-21 2006-08-31 Fuji Photo Film Co Ltd ステレオ立体表示装置及びそのプログラム
JP2008043589A (ja) * 2006-08-18 2008-02-28 Nintendo Co Ltd ゲームプログラムおよびゲーム装置

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3713230A1 (en) 2019-03-20 2020-09-23 Nintendo Co., Ltd. Image display system, image display program, and image display method
EP3713229A2 (en) 2019-03-20 2020-09-23 Nintendo Co., Ltd. Image display system, image display program, and image display method
US11159777B2 (en) 2019-03-20 2021-10-26 Nintendo Co., Ltd. Image display system, non-transitory storage medium having stored therein image display program, image display apparatus, and image display method
US11402655B2 (en) 2019-03-20 2022-08-02 Nintendo Co., Ltd. Image display system, non-transitory storage medium having stored therein image display program, image display apparatus, and image display method
US11835737B2 (en) 2019-03-20 2023-12-05 Nintendo Co., Ltd. Image display system, non-transitory storage medium having stored therein image display program, image display apparatus, and image display method

Similar Documents

Publication Publication Date Title
JP5689707B2 (ja) 表示制御プログラム、表示制御装置、表示制御システム、および、表示制御方法
JP5689637B2 (ja) 立体視表示制御プログラム、立体視表示制御システム、立体視表示制御装置、および、立体視表示制御方法
US9491430B2 (en) Storage medium having stored therein display control program, display control apparatus, display control system, and display control method
JP5702653B2 (ja) 情報処理プログラム、情報処理装置、情報処理システム、および、情報処理方法
US8854358B2 (en) Computer-readable storage medium having image processing program stored therein, image processing apparatus, image processing method, and image processing system
JP5572532B2 (ja) 表示制御プログラム、表示制御装置、表示制御方法および表示制御システム
US20130057574A1 (en) Storage medium recorded with program, information processing apparatus, information processing system, and information processing method
JP5876983B2 (ja) 表示制御プログラム、表示制御装置、表示制御方法および表示制御システム
JP5723149B2 (ja) 画像処理システム、画像処理プログラム、画像処理方法及び画像処理装置
US9142058B2 (en) Storage medium, information processing apparatus, information processing method and information processing system
US8872891B2 (en) Storage medium, information processing apparatus, information processing method and information processing system
JP2016001476A (ja) 表示制御プログラム、表示制御装置、表示制御システム、及び表示制御方法
JP2014135771A (ja) 立体視表示制御プログラム、立体視表示制御システム、立体視表示制御装置、および、立体視表示制御方法
JP5685079B2 (ja) 画像処理装置、画像処理プログラム、画像処理方法および画像処理システム
JP5777332B2 (ja) ゲーム装置、ゲームプログラム、ゲームシステム及びゲーム方法
JP5525924B2 (ja) 立体画像表示プログラム、立体画像表示装置、立体画像表示システム、および、立体画像表示方法
US20120306855A1 (en) Storage medium having stored therein display control program, display control apparatus, display control method, and display control system
JP2012175358A (ja) 表示制御プログラム、表示制御装置、表示制御方法及び表示制御システム
JP2012003328A (ja) 立体画像表示プログラム、立体画像表示装置、立体画像表示システム、および、立体画像表示方法
JP5541973B2 (ja) 立体画像表示プログラム、立体画像表示装置、立体画像表示システム、および、立体画像表示方法

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140522

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20140522

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20150327

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20150406

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20150605

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20150915

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20151211

A911 Transfer of reconsideration by examiner before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20151222

A912 Removal of reconsideration by examiner before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A912

Effective date: 20160205

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20161013