説明

画像データ生成装置、表示装置および画像データ生成方法

【課題】立体視画像データ生成時の消費電力を低減する。
【解決手段】本発明に係る画像データ生成装置1は、ジオメトリ演算手段10と、左視野用および右視野用のピクセル演算手段12L・12Rとを備えている。ジオメトリ演算手段10は、ポリゴンの各頂点座標に対して、左視野用または右視野用の何れか一方のマトリクス演算を行うことによって一方視野用の座標変換を行い、座標変換された一方視野用の各頂点座標におけるx座標値に上記左右視点間の距離を加減することによって他方視野用の座標変換を行うマトリクス演算部102と、マトリクス演算部102によって座標変換されたポリゴンの各頂点座標に対して、左視野用のクリッピング領域および右視野用のクリッピング領域から構成される左右共通の共通クリッピング領域を用いてクリッピング処理を行うクリッピング処理部104とを備える。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、3次元コンピュータグラフィックスのポリゴンデータにより構成される3次元コンテンツから立体視画像データを生成する画像データ生成装置に関し、より詳細には、両眼視差方式により立体視可能な左視野画像用および右視野画像用のビットマップ画像データを生成する画像データ生成装置に関する。
【背景技術】
【0002】
近年、コンピュータの処理技術および半導体技術の微細化技術の進歩により、各種装置に搭載可能なコンピュータグラフィックスの機能および処理能力が飛躍的に向上している。例えば、3次元コンピュータグラフィックスを用いた立体表示技術では、三角形や四角形などのポリゴン(多角形)を三次元座標上に配置することによって、表示画面上に人物や物体などが立体的に表示される。
【0003】
このような3次元コンピュータグラフィックスによる立体画像において、左視野画像と右視野画像とで視差を設けた両眼視差方式の立体視画像データの生成を行うには、左視野用の画像データと右視野用の画像データとをそれぞれ生成する必要があるため、通常の単眼処理時の2倍の画像データを生成する必要がある。そこで、処理能力を2倍にした単眼処理用の画像データ生成装置を一系統用いて左右の画像データを交互に生成する手法、或いは、単眼処理用の画像データ生成装置を2系統用いて右左の画像データを並行して生成する手法などが行われている。
【0004】
図7は、左右の画像データを交互に生成する従来の画像データ生成装置2の要部構成を示すブロック図である。図7に示される画像データ生成装置2は、本来、単眼用の画像データを生成するものであるため、左右独立のシーンデータおよび左右視点間の距離に基づいて、両眼視差方式の立体視画像データを交互に生成する。
【0005】
図7に示されるように、画像データ生成装置2は、座標変換などのジオメトリ処理を行いポリゴンリストを作成するジオメトリ演算手段20と、ジオメトリ演算手段20によって作成されたポリゴンリストを記憶するポリゴンリストメモリ21と、ポリゴンリストメモリ21に記憶されたポリゴンリストを用いてレンダリング処理を行いピクセルごとの画像データを生成するピクセル演算手段22と、ピクセル演算手段22によって生成されたピクセルごとの画像データを記憶するピクセルメモリ23と、陰面消去処理に用いる3次元グラフィックスの奥行きを示すデプス値を記憶するデプス値メモリ24とを備えている。
【0006】
ジオメトリ演算手段20は、入力された左右独立のシーンデータおよび左右視点間の距離情報を用いて座標変換などのジオメトリ処理を行い、左右ごとのポリゴンリストを作成する。ジオメトリ演算手段20は、コマンド処理部201と、マトリクス演算部202と、頂点色計算部203と、クリッピング処理部204と、透視除算部205と、ビューポート変換部206と、ポリゴンリスト出力部207とを備えている。
【0007】
コマンド処理部201は、左右独立のシーンデータおよび左右視点間の距離情報が入力されたとき、各種のコマンド処理を実行する。具体的には、コマンド処理部201は、シーンデータなどから、表示させようとする各シーンにおける視野領域を定義する視野変換、投影変換行列、光源情報、物体を構成するポリゴンのモデリング変換行列、ポリゴンの属性、ポリゴンを構成する各頂点の物体座標における座標値、法線ベクトルおよび材質属性などの各種情報を決定する。
【0008】
マトリクス演算部202は、入力された投影変換行列および視野変換行列のマトリクス積算を行い座標変換用のカレントマトリクスとして保持する。また、マトリクス演算部202は、当該該カレントマトリクスと入力されたポリゴンの頂点座標とのマトリクス演算を順次行うことにより、物体(ワールド)座標から視野座標への座標変換を行う。さらに、マトリクス演算部202は、入力された各ポリゴンの頂点データ列の各法線ベクトルと視野変換行列とのマトリクス演算を行うことにより、法線ベクトルの物体座標から視野座標への座標変換を行う。
【0009】
頂点色計算部203は、視野座標に変換された各頂点の法線ベクトルとポリゴンの材質パラメータとをもとに、各頂点の光源色を計算する。そして、頂点色計算部203は、各頂点の光源色と投影座標に変換された頂点座標と関連付けてクリッピング処理部204へ出力する。
【0010】
クリッピング処理部204は、視野領域におけるポリゴンを構成する各線分の両端の頂点が外側に存在する否かを判定する。そして、クリッピング処理部204は、ポリゴンを構成する全ての頂点が、視野領域の境界面を含んで視野領域の内側に存在するようにクリッピング処理を行う。具体的には、クリッピング処理部204は、ポリゴンを構成する頂点が視野領域の外側に存在する場合、ポリゴンを構成する線分ごとに視野領域の外側に存在する部分を切り取り、当該線分と視野領域との境界面との交点座標に置換する。
【0011】
透視除算部205は、ポリゴンを構成する頂点の透視除算を行い正規座標へ変換する。
【0012】
ビューポート変換部206は、透視除算後の正規座標から、実際の表示装置の解像度に合わせたビットマップに対応した表示座標への座標変換を行う。
【0013】
ポリゴンリスト出力部207は、ポリゴンを構成する頂点のうち、最大のy座標値および最小のy座標値を算出し、最大y座標値をインデックスとするリストを生成する。また、ポリゴンリスト出力部207は、ポリゴンの最小y座標値、ポリゴン属性およびポリゴンを構成する頂点座標と共に、ポリゴンリストとしてポリゴンリストメモリ21に出力する。
【0014】
次に、ピクセル演算手段22は、ジオメトリ演算手段20によって作成されたポリゴンリストに対してレンダリング処理を行い右左の画像データを交互に生成する。ピクセル演算手段22は、ポリゴンリスト入力部220と、ポリゴンエッジ計算部221と、ピクセル処理部222とを備えている。
【0015】
ポリゴンリスト入力部220は、ポリゴンリストメモリ21からポリゴンリストを読み取り、表示すべきスキャンライン上に存在するポリゴンを検索する。
【0016】
ポリゴンエッジ計算部221は、ポリゴンのスキャンラインごとのエッジ計算を行う。具体的には、ポリゴンエッジ計算部221は、ポリゴンリスト入力部220によって検索されたスキャンラインとポリゴンを構成する左右のエッジの線分との交点の座標および光源色を、その線分の両端に位置する頂点の座標および頂点の光源色から補間により算出する。
【0017】
ピクセル処理部222は、算出されたスキャンライン上の左右のエッジ間に存在するピクセルごとのデプス値および光源色を、左右のエッジのデプス値および光源色から補間により算出する。そして、ピクセル処理部222は、デプス値メモリ24により陰面消去処理を行いながら、ピクセルメモリ23へピクセルごとの画像データを書き込む。
【0018】
図8は、図7に示される従来の画像データ生成装置2において処理される視野座標における視野領域および描画されるポリゴンの事例を示す模式図である。図8に示されるように、視野座標211の原点を視点212として、mz軸の負の方向に視野領域213が定義されている。各々の物体座標により定義されたポリゴン214・215はそれぞれ、座標変換によって視野座標211に変換される。
【0019】
図9は、図8に示される視野座標について、my軸に対する負の方向を見たときの平面図である。図9にハッチングで示されるように、視野領域213は、左側面216A、右側面216B、遠側面217Aおよび近側面217Bによって定義される。ポリゴン214は、全ての頂点がこの視野領域213の外側に位置するため、視点212から見えないポリゴンとして破棄される。一方、ポリゴン215は、視野領域213の内部と外部とにまたがっているため、右側面216Bよりも外側に位置する部分が切り取られて破棄される。
【0020】
この場合の座標変換は、次のように実行される。物体座標(x,y,z)において定義されたポリゴンの各頂点の座標は、下記の式1(物体座標から視野座標への変換式)に示されるマトリクス演算によって、視野座標(mx,my,mz,mw)に座標変換される。下記の式1によるマトリクス演算には、例えば、下記の式1−1(x軸まわりの回転式)、式1−2(y軸まわりの回転式)および式1−3(z軸まわりの回転式)に各々示されるx軸、y軸およびz軸を中心とする角度αによる回転、下記の式1−4に示される拡大縮小率(sx,sy,sz)による拡大縮小、並びに下記の式1−5に示される移動量(dx,dy,dz)による平行移動などの各マトリクス演算式が一般的に用いられている。なお、wは視点からの距離を示している。
【0021】
【数1】

【0022】
視野座標に変換された各頂点の座標は、下記の式2(投影座標への変換式)に示されるマトリクス演算により、視野座標から投影座標(px,py,pz,pw)に座標変換される。下記の式2によるマトリクス演算には、例えば、左右対称の視野錐台を用いた透視変換の場合、下記の式2−1(透視変換式の例)に示される変換行列式が用いられる。
【0023】
【数2】

【0024】
上記の式2−1において、「fovx」はx方向の画角の1/2、「fovy」はy方向の画角の1/2、fは視点から遠側面までの距離、nは視点から近側面までの距離を示している。
【0025】
投影座標に変換された各頂点の座標は、下記の式3(表示座標への変換式)に示されるマトリクス演算により、表示座標(sx,sy,sz,sw)に座標変換される。下記の式3によるマトリクス演算には、例えば、下記の式3−1に示される変換行列式が用いられる。
【0026】
【数3】

【0027】
以上の座標変換によって、物体座標(x,y,z)において定義されたポリゴンの各頂点が、表示座標(sx,sy,sz,sw)に変換される。
【0028】
なお、予め、上記の座標変換用のマトリクスの積算を行うことによりマトリクス演算用のマトリクスを生成しておき、入力される頂点データ列の物体座標(x,y,z,1)とのマトリクス演算を行うことにより、それぞれの物体座標から表示座標(sx,sy,sz,sw)への座標変換を行うことも可能である。
【0029】
表示座標に変換された各ポリゴンの頂点は、下記の式4−1、式4−2および式4−3の各条件式を全て満足するか否かによって、視野領域内に含まれるか否かがクリッピング処理部204によって判定される。各ポリゴンの頂点の表示座標が式4−1、式4−2および式4−3の各条件式を全て満足する場合には、視野領域内に含まれると判定される。当該上記判定において、各ポリゴンの頂点の少なくとも一つが式4−1、式4−2および式4−3の各条件式を満足しないポリゴンがある場合、クリッピング処理部204は、当該ポリゴンに対してクリッピング処理を行う。そして、クリッピング処理部204は全ての条件式を満足するように、ポリゴンを構成する線分ごとに視野領域の外側に存在する部分を切り取り、当該線分と視野領域との境界面との交点座標に置換することで新しい頂点を生成する。
【0030】
【数4】

【0031】
クリッピング処理後の各ポリゴンの頂点は、透視除算部205によって、下記の式5−1、式5−2、式5−3の透視除算処理により正規座標(vx,vy,vz)に変換される。
【0032】
【数5】

【0033】
その後、ビューポート変換部806では、下記の式6−1、式6−2、式6−3を用いたビューポート変換処理によりスクリーン座標(vsx,vsy,vsz)に変換される。
【0034】
【数6】

【0035】
ここで、上記の式6−1、式6−2、式6−3において、「display_width.」、「display_height」および「display_depth」は、それぞれ、表示装置の解像度に合わせたビットマップ画像の水平方向、垂直方向のピクセル数およびデプスバッファの最大値(デプスバッファメモリのビット数により定まる)である。
【0036】
そして、ピクセル演算手段22は、ビューポート変換部806によってスクリーン座標に変換されたポリゴンの各頂点の情報を用いてポリゴンのシェーディング処理を行い、立体視表示用のピクセルごとの画像データを生成する。
【0037】
このように、図7に示されるの従来の画像データ生成装置では、ジオメトリ演算手段20およびピクセル演算手段22によって、左右のピクセルごとの画像データを交互に独立して生成する。
【0038】
また、図9に示されるような単眼用の画像データ生成装置を、右視野用および左視野用に2系統用いて、両眼視差方式の立体視画像データを生成する手法では、図10に示されるような画像データ生成装置が用いられている。
【0039】
図10は、右左の画像データを並行して生成する従来の画像データ生成装置3の要部構成を示すブロック図である。図10に示されるように、画像データ生成装置3は、左視野画像データ生成用として、ジオメトリ演算手段20Lと、ポリゴンリストメモリ21Lと、ピクセル演算手段22Lと、ピクセルメモリ23Lとを有している。また、画像データ生成装置3は、右視野画像データ生成用として、ジオメトリ演算手段20Rと、ポリゴンリストメモリ21Rと、ピクセル演算手段22Rと、ピクセルメモリ23Rとを有している。画像データ生成装置3では、単眼処理用の画像データ生成装置を2系統用いることで、右左の画像データが並行して生成される。
【0040】
このように、両眼視差方式の立体視画像データを生成する従来の画像データ生成装置2・3では、左視野用および右視野用の視野マトリクスを用いて、ジオメトリ処理およびレンダリング処理を独立して行い左視野用および右視野用の画像データをそれぞれ生成している。
【0041】
特許文献1には、複数の立体マトリクスにより左右の視野用演算を交互に行い立体視画像データを交互に生成する技術が開示されている。
【先行技術文献】
【特許文献】
【0042】
【特許文献1】特開2007−20142号公報(2007年1月25日公開)
【発明の概要】
【発明が解決しようとする課題】
【0043】
しかしながら、従来の画像データ生成装置では、LSIに搭載するトランジスタ数が増え、処理能力が向上するにつれて、消費電力と発熱量とが増加する傾向にある。このため、特に、モバイル機器では、バッテリーの持続時間の低下するなどの問題を有している。
【0044】
即ち、従来の画像データ生成装置では、透視投影変換からクリッピング処理、隠面消去処理、シェーディング処理に到る一連の処理過程が左右視野用にそれぞれ独立した構成で処理されているため、単眼用の画像データを生成する場合と比較して2倍の処理が必要となる。このため、例えば、一連の処理を両眼用にそれぞれ1つの装置で行う場合、そのままの性能では単眼用の表示に比べて2倍の処理時間がかかり表示できるフレームレートが1/2に下がってしまうため、フレームレートを単眼用の表示と同等にするためには、クロック周波数を2倍にして処理性能を2倍にする必要があり、消費電力および発熱量が増大するという問題を有している。
【0045】
本発明は、このような従来技術の問題点に鑑みてなされたものであり、その目的は、立体視画像データ生成時の消費電力を低減可能な画像データ生成装置を提供することにある。
【課題を解決するための手段】
【0046】
本発明に係る画像データ生成装置は、上記従来の課題を解決するために、入力されたシーンデータおよび左右視点間の距離を用いて当該シーンデータに描画された表示対象物の各頂点座標の座標変換を行い、座標変換後の各頂点座標を含む表示対象物リストを作成するジオメトリ演算手段と、上記表示対象物リストを用いてレンダリング処理を行い、左視野用および右視野用のピクセルごとの画像データを生成するピクセル演算手段と、を備えた両眼視差方式の立体視画像データを生成する画像データ生成装置において、上記ジオメトリ演算手段は、上記表示対象物の各頂点座標に対して、左視野用または右視野用の何れか一方のマトリクス演算を行うことによって一方視野用の座標変換を行い、座標変換された一方視野用の各頂点座標におけるx座標値に上記左右視点間の距離を加減することによって他方視野用の座標変換を行う座標変換部と、上記座標変換部によって座標変換された上記表示対象物の各頂点座標に対して、左視野用のクリッピング領域および右視野用のクリッピング領域から構成される左右共通の共通クリッピング領域を用いてクリッピング処理を行うクリッピング処理部とを備えることを特徴としている。
【0047】
本発明に係る画像データ生成方法は、上記従来の課題を解決するために、入力されたシーンデータおよび左右視点間の距離を用いて当該シーンデータに描画された表示対象物の各頂点座標の座標変換を行い、座標変換後の各頂点座標を含む表示対象物リストを作成するジオメトリ演算ステップと、上記ジオメトリ演算ステップにて作成した上記表示対象物リストを用いてレンダリング処理を行い、左視野用および右視野用のピクセルごとの画像データを生成するピクセル演算ステップと、を有する両眼視差方式の立体視画像データを生成する画像データ生成方法において、上記ジオメトリ演算ステップは、上記表示対象物の各頂点座標に対して、左視野用または右視野用の何れか一方のマトリクス演算を行うことによって一方視野用の座標変換を行い、座標変換された一方視野用の各頂点座標におけるx座標値に上記左右視点間の距離を加減することによって他方視野用の座標変換を行う座標変換ステップと、上記座標変換ステップにて座標変換された上記表示対象物の各頂点座標に対して、左視野用のクリッピング領域および右視野用のクリッピング領域から構成される左右共通の共通クリッピング領域を用いてクリッピング処理を行うクリッピング処理ステップとを有することを特徴としている。
【0048】
上記発明によれば、ジオメトリ演算手段が備える座標変換部は、入力されたシーンデータに描画された表示対象物の各頂点座標に対して、左視野用または右視野用の何れか一方のマトリクス演算を行うことによって一方視野用の座標変換を行う。そして、座標変換部は、座標変換された一方視野用の頂点座標におけるx座標値に左右視点間の距離を加減することによって他方視野用の座標変換を行う構成である。
【0049】
このため、従来のように、表示対象物の各頂点座標に対して、左視野用および右視野用ごとにマトリクス演算をそれぞれ行うことによって座標変換を行う構成と比較して、ジオメトリ演算手段における処理量を低減させることができる。
【0050】
また、上記発明によれば、ジオメトリ演算手段が備えるクリッピング処理部は、左視野用のクリッピング領域および右視野用のクリッピング領域から構成される左右共通の共通クリッピング領域を用いてクリッピング処理を行う構成である。
【0051】
このため、左視野用のクリッピング処理および右視野用共通クリッピング処理を共通に行うことができるため、ジオメトリ演算手段における処理量を低減させることができる。
【0052】
さらに、上記発明によれば、左右の視線方向を平行として処理し、また、左視野画像と右視野画像とで存在する表示対象物を一致させることで、ジオメトリ演算手段における左右視野用の大部分の処理を共通化して、表示対象物リストを共有することが可能となる。
【0053】
以上のように、上記発明によれば、立体視画像データ生成時の消費電力を低減可能な画像データ生成装置および画像データ生成装置を実現することができる。
【0054】
また、本発明に係る画像データ生成装置では、上記クリッピング処理部は、上記表示対象物を構成する各線分の両端に位置する頂点が、上記共通クリッピング領域に対して外側に存在するか内側に存在するかを判定し、上記表示対象物を構成する各線分の両端に位置する頂点が、上記共通クリッピング領域の境界面に対して外側と内側との両方に存在すると判定した場合、当該共通クリッピング領域の外側に存在する部分を切り取って破棄し、当該線分と当該共通クリッピング領域の境界面との交点座標に置換することが好ましい。
【0055】
上記発明によれば、クリッピング処理部は、まず、表示対象物を構成する各線分の両端に位置する頂点が、共通クリッピング領域に対して外側に存在するか内側に存在するかを判定する。そして、クリッピング処理部は、表示対象物を構成する各線分の両端に位置する頂点が、共通クリッピング領域の境界面に対して外側と内側との両方に存在すると判定した場合、当該共通クリッピング領域の外側に存在する部分を切り取って破棄し、当該線分と当該共通クリッピング領域の境界面との交点座標に置換する。
【0056】
これにより、左視野用のクリッピング処理および右視野用のクリッピング処理を共通して行うことができ、また、左視野画像と右視野画像とで存在する表示対象物を一致させることが可能なクリッピング処理部を実現することができる。
【0057】
また、本発明に係る画像データ生成装置では、上記ジオメトリ演算手段は、上記共通クリッピング領域内の上記表示対象物のみを表示対象とすることにより、1つの上記表示対象物リストを作成することが好ましい。
【0058】
上記発明によれば、ジオメトリ演算手段は、共通クリッピング領域内の上記表示対象物のみを表示対象とすることにより、1つの上記表示対象物リストを作成する構成である。
【0059】
これにより、従来のように、左視野用の表示対象物リストおよび右視野用の表示対象物リストをそれぞれ作成する構成と比較して、表示対象物リストおよび右視野用の表示対象物リストをそれぞれ作成する構成と比較して、ジオメトリ演算手段における処理量を低減させることができる。また、クリッピング処理後の透視除算処理、ビューポート変換処理および表示対象物リスト出力の各処理を左右共通に行うことが可能となるため、ジオメトリ演算手段の処理量をさらに低減させることができる。
【0060】
また、本発明に係る画像データ生成装置では、上記表示対象物リストを取得して、当該表示対象物リストにおける上記表示対象物の左視野用および右視野用の各頂点座標が一致しているか否かを判定する座標判定部を備え、上記座標判定部は上記表示対象物の左視野用および右視野用の各頂点座標が一致していると判定した場合、上記ピクセル演算手段における当該判定の対象となった上記表示対象物の左視野用および右視野用の何れか一方のレンダリング処理を停止させ、上記ピクセル演算手段は、上記判定の対象となった上記表示対象物の左視野用または右視野用のピクセルごとの画像データを左右共通の画像データとして生成することが好ましい。
【0061】
上記発明によれば、座標判定部は表示対象物の左視野用および右視野用の各頂点座標が一致していると判定した場合、ピクセル演算手段における当該判定の対象となった表示対象物の左視野用および右視野用の何れか一方のレンダリング処理を停止させ。そして、ピクセル演算手段は、判定の対象となった表示対象物の左視野用または右視野用のピクセルごとの画像データを左右共通の画像データとして生成する構成である。
【0062】
これにより、ピクセル演算手段の処理量を低減させることができるため、立体視画像データ生成時の消費電力を低減することができる。
【0063】
また、本発明に係る画像データ生成装置では、上記表示対象物リストを取得して、当該表示対象物リストにおける上記表示対象物に付加された立体視フラグの有無を判定する立体視フラグ判定部を備え、上記立体視フラグ判定部は、上記表示対象物ごとに付加された立体視フラグの有無に基づいて当該表示対象物の立体視を行うか否かを識別し、当該表示対象物の立体視を行わないと識別した場合、上記ピクセル演算手段における当該判定の対象となった上記表示対象物の左視野用および右視野用の何れか一方のレンダリング処理を停止させ、上記ピクセル演算手段は、上記判定の対象となった上記表示対象物の左視野用または右視野用のピクセルごとの画像データを左右共通の画像データとして生成することが好ましい。
【0064】
上記発明によれば、立体視フラグ判定部は表示対象物ごとに付加された立体視フラグの有無に基づいて当該表示対象物の立体視を行わないと判定した場合、ピクセル演算手段における当該判定の対象となった表示対象物の左視野用および右視野用の何れか一方のレンダリング処理を停止させる。そして、ピクセル演算手段は、判定の対象となった表示対象物の左視野用または右視野用のピクセルごとの画像データを左右共通の画像データとして生成する構成である。
【0065】
これにより、ピクセル演算手段の処理量を低減させることができるため、立体視画像データ生成時の消費電力を低減することができる。さらに、特定の表示対象物のみを立体視させた画像データを生成することで、効果的な立体表示が可能となる。
【0066】
本発明に係る表示装置は、上記従来の課題を解決するために、上記画像データ生成装置を備えることを特徴としている。
【0067】
上記発明によれば、立体視画像データ生成時の消費電力を低減可能な表示装置を実現することができる。
【発明の効果】
【0068】
以上のように、本発明に係る画像データ生成装置は、入力されたシーンデータおよび左右視点間の距離を用いて当該シーンデータに描画された表示対象物の各頂点座標の座標変換を行い、座標変換後の各頂点座標を含む表示対象物リストを作成するジオメトリ演算手段と、上記表示対象物リストを用いてレンダリング処理を行い、左視野用および右視野用のピクセルごとの画像データを生成するピクセル演算手段と、を備えた両眼視差方式の立体視画像データを生成する画像データ生成装置において、上記ジオメトリ演算手段は、上記表示対象物の各頂点座標に対して、左視野用または右視野用の何れか一方のマトリクス演算を行うことによって一方視野用の座標変換を行い、座標変換された一方視野用の頂点座標におけるx座標値に上記左右視点間の距離を加減することによって他方視野用の座標変換を行う座標変換部と、上記座標変換部によって座標変換された上記表示対象物の各頂点座標に対して、左視野用のクリッピング領域および右視野用のクリッピング領域から構成される左右共通の共通クリッピング領域を用いてクリッピング処理を行うクリッピング処理部とを備えるものである。
【0069】
また、本発明に係る画像データ生成方法は、入力されたシーンデータおよび左右視点間の距離を用いて当該シーンデータに描画された表示対象物の各頂点座標の座標変換を行い、座標変換後の各頂点座標を含む表示対象物リストを作成するジオメトリ演算ステップと、上記ジオメトリ演算ステップにて作成した上記表示対象物リストを用いてレンダリング処理を行い、左視野用および右視野用のピクセルごとの画像データを生成するピクセル演算ステップ、を有する両眼視差方式の立体視画像データを生成する画像データ生成方法において、上記ジオメトリ演算ステップは、上記表示対象物の各頂点座標に対して、左視野用または右視野用の何れか一方のマトリクス演算を行うことによって一方視野用の座標変換を行い、座標変換された一方視野用の頂点座標におけるx座標値に上記左右視点間の距離を加減することによって他方視野用の座標変換を行う座標変換ステップと、上記座標変換ステップにて座標変換された上記表示対象物の各頂点座標に対して、左視野用のクリッピング領域および右視野用のクリッピング領域から構成される左右共通の共通クリッピング領域を用いてクリッピング処理を行うクリッピング処理ステップとを有するものである。
【0070】
それゆえ、本発明によれば、立体視画像データ生成時の消費電力を低減可能な画像データ生成装置および画像データ生成方法を提供することができるという効果を奏する。
【図面の簡単な説明】
【0071】
【図1】第1の実施形態に係る画像データ生成装置の要部構成の一例を示すブロック図である。
【図2】図1に示されるジオメトリ演算手段で使用される視野座標における視野領域および当該視野領域に描画されるポリゴンの事例を示す模式図である。
【図3】図2に示される視野座標についてmy軸に対して負の方向を見た平面図である。
【図4】図4(a)は図3に示される右視野領域を示す模式図であり、図4(b)は図3に示される左視野領域を示す模式図である。
【図5】第2の実施形態に係る画像データ生成装置の要部構成の一例を示すブロック図である。
【図6】第3の実施形態に係る画像データ生成装置の要部構成の一例を示すブロック図である。
【図7】左右の画像データを交互に生成する従来の画像データ生成装置の要部構成を示すブロック図である。
【図8】図7に示される従来の画像データ生成装置において処理される視野座標における視野領域および描画されるポリゴンの事例を示す模式図である。
【図9】図8に示される視野座標について、my軸に対する負の方向を見たときの平面図である。
【図10】右左の画像データを並行して生成する従来の画像データ生成装置の要部構成を示すブロック図である。
【発明を実施するための形態】
【0072】
〔第1の実施形態〕
本発明に係る画像データ生成装置の第1の実施形態について、図1〜図4に基づいて説明すれば以下のとおりである。
【0073】
(1−1)画像データ生成装置の構成
本実施形態に係る画像データ生成装置の構成について、図1を参照して説明する。図1は、本実施形態に係る画像データ生成装置1の要部構成の一例を示すブロック図である。図1に示される画像データ生成装置1は、左右共通のシーンデータおよび左右視点間の距離に基づいて、両眼視差方式の立体視画像データを生成するものである。
【0074】
図1に示されるように、画像データ生成装置1は、座標変換などを行ってポリゴンリスト(表示対象物リスト)を作成するジオメトリ演算手段10と、ジオメトリ演算手段10によって作成されたポリゴンリストを記憶するポリゴンリストメモリ11と、ポリゴンリストメモリ11に記憶されたポリゴンリストを用いてピクセルごとの画像データを生成する左視野用のピクセル演算手段12Lおよび右視野用のピクセル演算手段12Rと、ピクセル演算手段12Lによって生成されたピクセルごとの画像データを記憶する左視野用のピクセルメモリ13Lおよびピクセル演算手段12Rによって生成されたピクセルごとの画像データを記憶する右視野用のピクセルメモリ13Rとを備えている。
【0075】
画像データ生成装置1は、ジオメトリ演算手段10で行われるジオメトリ処理およびピクセル演算手段12L・12Rで行われるレンダリング処理により、両眼視差方式の立体視画像データを生成する。
【0076】
ジオメトリ演算手段10は、入力されたシーンデータおよび左右視点間の距離などの情報を用いて、左右共通のポリゴンリストを作成するものである。ジオメトリ演算手段10は、コマンド処理部101と、マトリクス演算部(座標変換部)102と、頂点色計算部103と、クリッピング処理部104と、透視除算部105と、ビューポート変換部106と、ポリゴンリスト出力部107とを備えている。
【0077】
コマンド処理部101は、シーンデータおよび左右視点間の距離などが入力されると、各種のコマンド処理を行う。具体的には、コマンド処理部101は、シーンデータなどから、表示させようとする各シーンにおける視野領域を定義する視野変換行列、投影変換行列、光源情報、物体を構成するポリゴンのモデリング変換行列、ポリゴンの属性、ポリゴンを構成する頂点の物体座標における座標値、法線ベクトルおよび材質属性などの各種情報を決定し、マトリクス演算部102に出力する。
【0078】
マトリクス演算部102は、コマンド処理部101から入力された投影変換行列および視野変換行列のマトリクス積算を行い座標変換用のカレントマトリクスとして保持する。そして、マトリクス演算部102は、当該カレントマトリクスと、入力された頂点座標とのマトリクス演算を順次行うことにより、物体(ワールド)座標から視野座標への座標変換を行う。また、マトリクス演算部102は、入力された頂点データ列の各法線ベクトルと視野変換行列とのマトリクス演算を行うことにより、法線ベクトルの物体座標から視野座標への座標変換を行う。
【0079】
ここで、マトリクス演算部102は、座標変換を行う際、左視野用および右視野用の頂点座標のうち何れか一方の視野用の頂点座標に対してマトリクス演算を行って座標変換し、他方の視野用の頂点座標はマトリクス演算を行うことなく、座標変換後の一方の視野用の頂点座標におけるx座標に左右視点間の距離を加減することにより求める。
【0080】
頂点色計算部103は、マトリクス演算部102によって視野座標に変換された各頂点の法線ベクトルとポリゴンの材質パラメータとをもとに、各頂点の光源色を計算する。そして、頂点色計算部103は、各頂点の光源色と投影座標に変換された各頂点の座標値とを関連付けてクリッピング処理部104に出力する。なお、マトリクス演算部102および頂点色計算部103における座標変換の詳細については後述する。
【0081】
クリッピング処理部104は、右視野領域および左視野領域を包含する共通視野領域を定義し、投影座標に変換されたポリゴンごとの各頂点の座標値が、共通視野領域の外側に存在するか内側に存在するかを判定するクリッピング判定を行う。そして、クリッピング処理部104は、クリッピング判定の結果に基づいて、共通視野領域の境界面を含んで共通視野領域の内側にポリゴンの各頂点が存在するようにクリッピング処理を行う。クリッピング処理部104は、クリッピング処理後の頂点座標を透視除算部105へ出力する。
【0082】
具体的には、クリッピング処理部104は、クリッピング判定においてポリゴンを構成する全ての頂点が共通視野領域の内側に存在すると判定した場合、クリッピング処理を行わず、当該ポリゴンを構成する全ての頂点に関する頂点座標を透視除算部105へ出力する。
【0083】
一方、クリッピング処理部104は、クリッピング判定においてポリゴンを構成する全ての頂点が共通視野領域の外側に存在すると判定した場合、当該ポリゴンを構成する全ての頂点座標を破棄する。
【0084】
また、クリッピング処理部104は、クリッピング判定においてポリゴンを構成する各線分の両端に位置する頂点が、共通視野領域の境界面に対して外側と内側との両方に存在すると判定した場合、当該ポリゴンに対してクリッピング処理を行う。具体的には、クリッピング処理部104は、ポリゴンを構成する線分ごとに、共通視野領域の外側に存在する部分を切り取って破棄し、共通視野領域の外側に存在する頂点を、当該線分と共通視野領域の境界面との交点座標に置換する。そして、クリッピング処理部104は、クリッピング処理後の頂点座標を透視除算部105へ出力する。
【0085】
透視除算部105は、クリッピング処理部104から出力されたポリゴンを構成する投影座標における頂点座標に対して透視除算を行い正規座標に座標変換する。そして、透視除算部105は、透視除算後の正規座標をビューポート変換部106に出力する。
【0086】
ビューポート変換部106は、ポリゴンを構成する頂点のビューポート変換処理を行い、透視除算後の正規座標から実際の表示装置の解像度に合わせたビットマップに対応したスクリーン座標への座標変換を行う。
【0087】
ポリゴンリスト出力部107は、ポリゴンを構成する頂点のうち、最大のy座標値および最小のy座標値を算出し、最大y座標値をインデックスとする左右共通のポリゴンリストを生成する。そして、ポリゴンリスト出力部107は、ポリゴンの最小y座標値、ポリゴン属性およびポリゴンを構成する頂点座標を含めてポリゴンリストメモリ11に出力して書き込む。
【0088】
次に、ピクセル演算手段12L・12Rは、ポリゴンリストメモリ11に記憶されたポリゴンリストを用いて、ピクセルごとの画像データを生成する。左視野用のピクセル演算手段12Lは、ポリゴンリスト入力部120Lと、ポリゴンエッジ計算部121Lと、ピクセル処理部122Lと、デプス値メモリ123Lとを備えている。一方、右視野用のピクセル演算手段12Rは、ポリゴンリスト入力部120Rと、ポリゴンエッジ計算部121Rと、ピクセル処理部122Rと、デプス値メモリ123Rとを備えている。
【0089】
なお、以下では、右視野用のピクセル演算手段12Rの構成について説明を行うが、左視野用のピクセル演算手段12Lの構成についても、右視野用のピクセル演算手段12Rの構成の場合と同様であるため、ここではその説明を省略する。
【0090】
ポリゴンリスト入力部120Rは、ポリゴンリストメモリ11からポリゴンリストを読み取り、表示すべきスキャンライン上に存在するポリゴンを検索する。そして、ポリゴンリスト入力部120Rは、スキャンライン上に存在するポリゴンをポリゴンエッジ計算部121Rに出力する。
【0091】
ポリゴンエッジ計算部121Rは、ポリゴンのスキャンラインごとのエッジ計算を行う。具体的には、ポリゴンエッジ計算部121Rは、ポリゴンリスト入力部120Rによって検索されたスキャンラインとポリゴンを構成する左右のエッジの線分との交点の座標および光源色を、当該線分の両端に位置する頂点の座標および頂点の光源色から補間することにより算出する。
【0092】
ピクセル処理部122Rは、ポリゴンエッジ計算部121Rによって算出されたスキャンライン上の左右のエッジ間に存在する各ピクセルのデプス値および光源色を、左右のエッジのデプス値および光源色から補間することにより算出する。そして、ピクセル処理部122Rは、デプス値メモリ123Rにより陰面消去処理を行いながら、ピクセルメモリ13Lへピクセルごとの画像データを書き込む。
【0093】
(1−2)画像データ生成装置の処理
次に、画像データ生成装置1の処理について、図2〜図4を参照して説明する。図2は、図1に示されるジオメトリ演算手段10で使用される視野座標における視野領域および当該視野領域に描画されるポリゴンの事例を示す模式図である。
【0094】
図2に示されるように、視野座標111の原点を中心として両側に左視点112Lおよび右視点112Rが配置され、mz軸の負の方向に左視野領域113Lおよび右視野領域113Rが定義されている。
【0095】
〔背景技術〕で説明したように、従来のジオメトリ演算では、ポリゴン114・115は、左右視野画像の頂点座標ごとにマトリクス演算による座標変換が行われて物体座標から視野座標111に変換される。即ち、物体座標(x,y,z,l)において定義されたポリゴン114・115の各頂点座標は、左右視野画像ごとに上記の式1(物体座標から視野座標への変換式)に示されるマトリクス演算によって、視野座標(mx,my,mz,mw)に座標変換される。
【0096】
そして、視野座標に変換された各頂点の座標は、上記の式2(投影座標への変換式)に示されるマトリクス演算により、視野座標から投影座標(px,py,pz,pw)に座標変換され、さらに、投影座標に変換された各頂点の座標は、上記の式3(表示座標への変換式)に示されるマトリクス演算により、投影座標から表示座標(sx,sy,sz,sw)に座標変換される。
【0097】
このように、従来のジオメトリ演算では、左視野用および右視野用の頂点座標に対してそれぞれマトリクス演算を行うことによって、物体座標において定義されたポリゴンの各頂点座標を表示座標に変換していた。
【0098】
ところで、一般に左右視野用のシーンデータの違いは、左右の視点位置(左右視点間の距離)および左右の視線方向のみであり、具体的には、視野変換を行うための視野マトリクスのみである。このため、左右視野用のシーンデータの大部分は共有可能であるが、マトリクス演算により頂点座標を視野座標に座標変換した後は、左右の視点位置および左右の視線方向の情報を含む視野マトリクスが異なるため、左視野用および右視野用の頂点座標を共有することが困難である。
【0099】
ここで、左右の視線方向を平行とした場合、即ち、左視野画像および右視野画像の何れか一方の視線方向を左右共通の視線方向として用いた場合、左右視野用のシーンデータの違いを左右の視点位置(x軸座標値)のみに限定することが可能である。この場合、図2に示されるように、右視点112Rを原点とする視野座標系と、左視点112Lを原点とする視野座標系とは、mx軸方向に平行移動したものとなる。具体的には、左視点112Lと右視点112Rとの距離を2×Dとした場合、視野座標111において、右視点112Rを原点とする右視野領域113Rの視野座標は、左視点112Lを原点とする左視野領域113Lの視野座標をmx軸方向に2×Dだけ平行移動したものとなる。
【0100】
従って、左右の視線方向を平行として処理することで、左視野用および右視野用の頂点座標うち、一方の視野用の頂点座標に対してマトリクス演算を行って座標変換し、他方の視野用の頂点座標はマトリクス演算を行うことなく、x座標に2×Dを加減することにより求めることが可能となる。
【0101】
例えば、下記の式7−1に示される右視野用のマトリクス演算、或いは、下記の式7−2に示される左視野用のマトリクス演算の何れか一方を行うことにより、左視野用および右視野用の頂点座標を物体座標から視野座標系に座標変換を行う。そして、上記の式10−1の左視野用のマトリクス演算によって左視野用の頂点座標PL(mx+D,my,mz,mw)を求めた場合、頂点座標における(my,mz,mw)は左右共通であるため、右視野用の頂点座標PR(mx-D,my,mz,mw)はマトリクス演算を行うことなく左視野用の頂点座標におけるx座標に2×Dを減算することにより求めることができる。
【0102】
【数7】

【0103】
このように、本実施形態では、一方の視野用の頂点座標に対してマトリクス演算を行って座標変換し、他方の視野用の頂点座標はマトリクス演算を行うことなく、座標変換後の一方の視野用の頂点座標におけるx座標に左右視点間の距離(2×D)を加減することにより求める構成である。このため、左右視野用のマトリクス演算を左右で共通化することができるため、従来の画像データ生成装置のように左視野用および右視野用の頂点座標のそれぞれに対してマトリクス演算を行う必要がない。従って、従来の画像データ生成装置に比べてジオメトリ演算手段10の処理量を低減することができる。
【0104】
なお、共通視野領域113に対しては、下記の式7−3の変換式によって透視変換が実行されて、クリッピング処理が実行される。
【0105】
【数8】

【0106】
つぎに、クリッピング処理部104で行われるクリッピング処理について説明する。図3は、図2に示される視野座標について、my軸に対する負の方向を見た平面図である。
【0107】
図3に示されるように、左右視点間の距離を2×D、x方向の画角を2×fovx、y方向の画角を2×fovy、視点から遠側面117Aまでの距離をf,視点から近側面117Bまでの距離をnとすると、視野座標111のmx軸上の右視点112R(D,0,0)からmz軸に対する負の方向に、右視野用として、左側面116A、右側面116B、遠側面117Aおよび近側面117Bによって囲まれる右視野領域113Rが定義されている。また、視野座標111のmx軸上の左視点112L(−D,0,0)からmz軸に対する負の方向に、左視野用として、左側面116C、右側面116D、遠側面117Aおよび近側面117Bによって囲まれる左視野領域113Lが定義されている。
【0108】
図4(a)は図3に示される右視野領域113Rを示す模式図であり、図4(b)は図3に示される左視野領域113Lを示す模式図である。
【0109】
図4(a)に示されるように、例えば、右視野領域113Rを用いてクリッピング処理を行った場合、ポリゴン114は、左側面116A、右側面116B、遠側面117Aおよび近側面117Bによって囲まれる右視野領域113Rの外側に位置する。このため、ポリゴン114は、ポリゴン114を構成する全ての頂点が共通視野領域113の外側に存在すると判定され、ポリゴン114を構成する全ての頂点座標が破棄される。
【0110】
また、ポリゴン115は、ポリゴン115を構成する全ての頂点が共通視野領域113の内側に存在すると判定され、クリッピング処理が行われずに、ポリゴン115を構成する全ての頂点に関する頂点座標が透視除算部105へ出力される。
【0111】
一方、図4(b)に示されるように、左視野画像において、ポリゴン114は、左側面116C、右側面116D、遠側面117Aおよび近側面117Bによって囲まれる左視野領域113Lの外側に位置する。このため、ポリゴン114は、ポリゴン114を構成する全ての頂点が共通視野領域113の外側に存在すると判定され、ポリゴン114を構成する全ての頂点座標が破棄される。
【0112】
また、ポリゴン115は、左視野領域113Lの内部と外部にまたがっているため、右側面116Dよりも外側に位置する部分が切り取られ破棄され、線分と左視野領域113Lの右側面116Dとの交点座標に置換され、置換後の頂点座標が透視除算部105へ出力される。
【0113】
この場合のクリッピング判定は、例えば、下記の式8−1の左視野用の判定式、および、下記の式8−2の右視野用の判定式が用いられる。
【0114】
【数9】

【0115】
このように、左視野領域113Lと右視野領域113Rとで異なるクリッピング面を用いてクリッピング処理を行った場合、左視野と右視野とで表示されるポリゴン114.115が異なってしまう。このため、左視野用のポリゴンリストおよび右視野用のポリゴンリストをそれぞれ作成する必要がある。
【0116】
そこで、本実施形態では、図3に示されるように、クリッピング処理部104は、右視野領域113Rおよび左視野領域113Lから構成される領域、即ち、左側面116C、右側面116B、遠側面117A、近側面117Bで囲まれる共通視野領域113を定義し、共通視野領域113に対してクリッピング処理を行う。これにより、左視野と右視野とで存在するポリゴン114.115を一致させることができる。
【0117】
共通視野領域113に対してクリッピング処理を行った場合、ポリゴン114は、ポリゴン114を構成する全ての頂点が共通視野領域113の外側に存在すると判定されるため、ポリゴン114を構成する全ての頂点座標が破棄される。一方、ポリゴン115は、ポリゴン115を構成する全ての頂点が共通視野領域113の内側に存在すると判定されるため、クリッピング処理が行われずに、ポリゴン115を構成する全ての頂点に関する頂点座標が透視除算部105へ出力される。
【0118】
この場合のクリッピング判定は、下記の式9−1、式9−2、式9−3の左右共通の判定式が用いられる。
【0119】
【数10】

【0120】
このように、上記の式9−1、式9−2、式9−3を用いて共通視野領域113に対してクリッピング判定を行い、判定結果に基づいて下記のクリッピング処理を行うことにより、左視野と右視野とで存在するポリゴン114.115を一致させることができる。これにより、クリッピング後のポリゴン114・115の頂点座標を共有することが可能となる。
【0121】
次に、透視除算部105は、ポリゴンを構成する投影座標における頂点座標に対して透視除算を行い正規座標に変換する。具体的には、透視除算部105は、下記の式10−1R、式10−1L、式10−2、式10−3により透視除算を行う。そして、透視除算部105は、透視除算後の正規座標をビューポート変換部106に出力する。
【0122】
【数11】

【0123】
ビューポート変換部106は、ポリゴンを構成する頂点座標のビューポート変換処理を行い、透視除算後の正規座標から実際の表示装置の解像度に合わせたビットマップに対応したスクリーン座標への座標変換を行う。具体的には、ビューポート変換部106は、下記の式11−1R、式11−1L、式11−2、式11−3により正規座標からスクリーン座標への座標変換を行う。
【0124】
【数12】

【0125】
ここで、式11−1R、式11−1L、式11−2、式11−3における「display_width」、「display_height」および「display_depth」は、それぞれ、表示装置の解像度に合わせたビットマップ画像の水平方向、垂直方向のピクセル数およびデプスバッファの最大値(デプスバッファメモリのビット数により定まる)である。
【0126】
そして、ポリゴンリスト出力部107は、ポリゴンを構成する頂点のうち、最大のy座標値および最小のy座標値を算出し、最大y座標値をインデックスとする左右共通のポリゴンリストを生成する。そして、ポリゴンリスト出力部107は、ポリゴンの最小y座標値、ポリゴン属性およびポリゴンを構成する頂点座標と共に、ポリゴンリストメモリ11に出力して書き込む。このとき、ポリゴンリスト出力部107は、ポリゴンの頂点座標のうち、左視野用の頂点座標におけるx座標をXL、右視野用の頂点座標におけるx座標をXRとしてポリゴンリストメモリ11に出力する。
【0127】
次に、ピクセル演算手段12L・12Rは、ポリゴンリストメモリ11からポリゴンリストを読み取り、それぞれ、右視野用および左視野用のピクセルごとの画像データを生成する。
【0128】
以下では、右視野用のピクセル演算手段12Rの処理について具体的に説明するが、左視野用のピクセル演算手段12Lの処理についても、右視野用のピクセル演算手段12Rの処理の場合と同様であるため、ここではその説明を省略する。
【0129】
ポリゴンリスト入力部120Rは、ポリゴンリストメモリ11からポリゴンリストを読み取り、表示すべきスキャンライン上に存在するポリゴンを検索してポリゴンエッジ計算部221に出力する。
【0130】
ポリゴンエッジ計算部121Rは、ポリゴンリスト入力部120Rによって検索されたスキャンラインとポリゴンを構成する左右のエッジの線分との交点の座標および光源色を、その線分の両端に位置する頂点の座標および頂点の光源色から補間により算出する。
【0131】
ピクセル処理部122Rは、スキャンライン上のエッジ間の各ピクセルの頂点色とデプス値Zとを計算し、デプス値メモリ123Rにより陰面消去処理を行いながら、ピクセルメモリ13Lにピクセルごとの画像データを書き込む。
【0132】
このようにして右視野用のピクセルメモリ13Lおよび右視野用のピクセルメモリ13Rに記憶されたピクセルごとの画像データは、表示画面上に画像表示される。
【0133】
以上のように、本実施形態に係る画像データ生成装置1は、入力されたシーンデータおよび左右視点間の距離を用いて当該シーンデータに描画されたポリゴン114・115の各頂点座標の座標変換を行い、座標変換後の各頂点座標を含むポリゴンリストを作成するジオメトリ演算手段10と、ポリゴンリストを用いてレンダリング処理を行い、左視野用および右視野用のピクセルごとの画像データを生成するピクセル演算手段12R・12Lとを備えた両眼視差方式の立体視画像データを生成する画像データ生成装置1において、ジオメトリ演算手段10は、ポリゴン114・115の各頂点座標に対して、左視野用または右視野用の何れか一方のマトリクス演算を行うことによって一方視野用の座標変換を行い、座標変換された一方視野用の頂点座標におけるx座標値に左右視点間の距離2×Dを加減することによって他方視野用の座標変換を行うマトリクス演算部102、マトリクス演算部102によって座標変換されたポリゴン114・115の各頂点座標に対して、左視野領域113Lおよび右視野領域113Rから構成される左右共通の共通視野領域113を用いてクリッピング処理を行うクリッピング処理部104とを備えている。
【0134】
このため、従来のように、ポリゴン114・115の各頂点座標に対して、左視野用および右視野用のマトリクス演算をそれぞれ独立して行うことによって座標変換を行う構成と比較して、ジオメトリ演算手段10の処理量を低減させることができる。
【0135】
また、左視野用のクリッピング処理および右視野用共通クリッピング処理を共通して行うことができるため、ジオメトリ演算手段10の処理量を低減させることができる。
【0136】
さらに、左右の視線方向を平行として処理し、また、左視野画像と右視野画像とで存在するポリゴンを一致させることで、ジオメトリ演算手段10における左右視野画像の大部分の処理を共通化して、ポリゴンリストを共有することが可能となる。
【0137】
従って、本実施形態によれば、立体視画像データ生成時の消費電力を低減可能な画像データ生成装置および画像データ生成装置1を実現することができる。
【0138】
〔第2の実施形態〕
本発明に係る画像データ生成装置の第2の実施形態について、図5に基づいて説明すれば、以下のとおりである。なお、説明の便宜上、第1の実施形態にて説明した図面と同じ機能を有する部材については、同じ符号を付記し、その説明を省略する。
【0139】
(2−1)画像データ生成装置の構成
まず、図5を参照して、本実施形態にかかる画像データ生成装置の構成ついて説明する。図5は、本実施形態に係る画像データ生成装置1aの要部構成の一例を示すブロック図である。図5に示されるように、画像データ生成装置1aは、ポリゴンリストメモリ11とピクセル演算手段12L・12Rとの間にXL=XR判定部(座標判定部)14を備えている。さらに、画像データ生成装置1aは、ピクセル演算手段12Lがデータ選択部124・125を備えている点で第1の実施形態で説明した画像データ生成装置1と異なる。
【0140】
XL=XR判定部14は、ポリゴンリストメモリ11から読み出したポリゴンリストにおけるポリゴンの左視野用および右視野用の各頂点座標におけるx座標の値が一致しているか否かを判定するものである。そして、XL=XR判定部14は、左視野用および右視野用の各頂点座標におけるx座標の値が一致していると判定した場合、ピクセル演算手段12Rのみに対してポリゴンの各頂点座標を出力する。一方、XL=XR判定部14は、左視野用および右視野用の各頂点座標におけるx座標の値が一致していないと判定した場合、ピクセル演算手段12Lおよびピクセル演算手段12Rに対してポリゴンの各頂点座標を出力する。
【0141】
データ選択部124・125は、ピクセル処理部122Rにより生成される右視野用の画像データを取得し、取得した右視野用の画像データからXL=XR判定部14による判定の対象となったポリゴンの画像データを選択する。そして、データ選択部124は、選択した画像データをデプス値メモリ123Lに出力し、データ選択部125は、選択した画像データをピクセルメモリ13Rに出力する。
【0142】
(2−2)画像データ生成装置の処理
次に、本実施形態にかかる画像データ生成装置1aの処理ついて説明する。なお、ジオメトリ演算手段10における処理は、第1の実施形態と同じであるため、ここでは説明を省略する。
【0143】
XL=XR判定部14は、ポリゴンリストメモリ11から読み出し、読み出したポリゴンリストにおけるポリゴンの左視野用および右視野用の各頂点座標におけるx座標の値が一致しているか否かを判定する。
【0144】
ここで、第1の実施形態で説明したようにポリゴンリストメモリ11に記憶されたポリゴンリストには、左視野用および右視野用のポリゴンの各頂点座標におけるx座標は、それぞれXL、XRとして出力されている。また、透視除算部105における透視除算処理に用いられる上記の式10−1R、式10−1L、並びに、ビューポート変換部106におけるビューポート変換に用いられる上記の式11−1Rおよび式1−1Lに着目すると、物体座標における左右視点間の距離の1/2であるDの値が、視点からの距離swよりも十分小さい場合、ビューポート変換後の左右それぞれの頂点座標におけるx座標値であるXLおよびXRは差は限りなく小さいくなり、左右の視差がほぼ0と見做すことができる。
【0145】
左右の視差が0である場合、即ち、XR=XLである場合、ポリゴンを構成する全ての頂点座標は同一であるため、XR=XLであるポリゴンに対しては、左視野用および右視野用のポリゴンの各頂点座標を共通化することが可能である。
【0146】
そこで、XL=XR判定部14は、XL=XRであると判定した場合、ピクセル演算手段12Rに対してポリゴンの各頂点座標を出力して、ピクセル演算手段12Rにレンダリング処理を行わせる。一方、XL=XR判定部14は、ピクセル演算手段12Lに対してポリゴンの各頂点座標を出力せず、ピクセル演算手段12Lにおけるレンダリング処理を停止させる。
【0147】
そして、ピクセル演算手段12Rにおけるレンダリング処理で生成された右視野用の画像データは、ピクセル処理部122Rからピクセルメモリ13Rおよびデプス値メモリ123Rに出力されるとともに、データ選択部124・125に出力される。
【0148】
ピクセル処理部122Rから右視野用の画像データを取得したデータ選択部124・125は、取得した右視野用の画像データからXL=XR判定部14による判定の対象となったポリゴンの画像データを選択し、データ選択部125は、デプス値メモリ123Lを用いて陰面消去を行いながら選択した画像データを右視野用の画像データとしてピクセルメモリ13Lに出力する。
【0149】
一方、XL=XR判定部14は、XL≠XRであると判定した場合、左視野用および右視野用のポリゴンの各頂点座標を共通化することができない。このため、XL=XR判定部14は、ピクセル演算手段12Rおよびピクセル演算手段12Rに対してポリゴンの各頂点座標を出力し、ピクセル演算手段12Rおよびピクセル演算手段12Rによって、左視野用および右視野用の画像データがそれぞれ生成される。
【0150】
以上のように、本実施形態に係る画像データ生成装置1aは、ポリゴンリストを取得してポリゴンの左視野用および右視野用の各頂点座標が一致しているか否かを判定するXL=XR判定部14を備える。XL=XR判定部14はポリゴンの左視野用および右視野用の各頂点座標が一致していると判定した場合、ピクセル演算手段12L・12Rにおける判定の対象となったポリゴンの左視野用および右視野用の何れか一方のレンダリング処理を停止させ、ピクセル演算手段12L(12R)は、判定の対象となったポリゴンの左視野用または右視野用のピクセルごとの画像データを左右視野共通の画像データとして生成する。
【0151】
このため、左右の視差が0であり立体視の効果がないポリゴンに対しても、それぞれ独立したレンダリング処理を左視野用のピクセル演算手段および右視野用のピクセル演算手段によって行う従来の構成と比較して、不要な消費電力の発生を抑制してピクセル演算手段12L・12Rの処理量を低減させることができる。
【0152】
従って、本実施形態によれば、立体視画像データ生成時の消費電力を低減可能な画像データ生成装置および画像データ生成装置1aを実現することができる。
【0153】
なお、本実施形態では、XL=XR判定部14はXL=XRであると判定した場合、左視野用のピクセル演算手段12Lにおけるレンダリング処理を停止し、右視野用のピクセル演算手段12Rにおいてレンダリング処理を行う構成について説明した。しかしながら、本発明はこれに限定されず、XL=XR判定部14はXL=XRであると判定した場合、右視野用のピクセル演算手段12Rにおけるレンダリング処理を停止し、左視野用のピクセル演算手段12Lにおいてレンダリング処理を行う構成も可能であることは明らかである。
【0154】
〔第3の実施形態〕
本発明に係る画像データ生成装置の第3の実施形態について、図6に基づいて説明すれば、以下のとおりである。なお、説明の便宜上、前記第1および第2の実施形態にて説明した図面と同じ機能を有する部材については、同じ符号を付記し、その説明を省略する。
【0155】
(3−1)画像データ生成装置の構成
図6は、本実施形態に係る画像データ生成装置1bの要部構成の一例を示すブロック図である。図6に示されるように、画像データ生成装置1bは、XL=XR判定部14に代えて立体視フラグ判定部15を備えている点で第2の実施形態で説明した画像データ生成装置1aと異なる。
【0156】
立体視フラグ判定部15は、ポリゴンリストメモリ11から読み出したポリゴンリストにおけるポリゴンに立体視フラグが付加されているか否かを判定する。ここで、立体視フラグとは、特定のポリゴンの視差を強調し立体視を効果的に行うために、立体視フラグを行うポリゴンと立体視を行わないポリゴンとを識別するためのフラグである。立体視フラグは、シーンデータに描画されたポリゴン情報に必要に応じて付加されており、本実施形態では、立体視フラグが付加されたポリゴンについて立体視を行う構成としている。
【0157】
立体視フラグ判定部15は、ポリゴンに立体視フラグが付加されていると判定した場合、ピクセル演算手段12Lおよびピクセル演算手段12Rに対してポリゴンの各頂点座標を出力する。
【0158】
一方、立体視フラグ判定部15は、ポリゴンに立体視フラグが付加されていないと判定した場合、ピクセル演算手段12Rのみに対してポリゴンの各頂点座標を出力する。
【0159】
(3−2)画像データ生成装置の処理
次に、本実施形態にかかる画像データ生成装置1bの処理ついて説明する。なお、ジオメトリ演算手段10における処理は、第1の実施形態と同じであるため、ここでは説明を省略する。
【0160】
立体視フラグ判定部15は、ポリゴンリストメモリ11から読み出したポリゴンリストにおけるポリゴンに立体視フラグが付加されているか否かを判定する。
【0161】
ここで、ポリゴンに立体視フラグが付加されていない場合、即ち、当該ポリゴンについて立体視を行わない場合、左右の視差は0であるため、ポリゴンを構成する全ての頂点座標は同一である。このため、立体視を行わないポリゴンについては左視野用および右視野用のポリゴンの各頂点座標を共通化することが可能である。
【0162】
そこで、立体視フラグ判定部15は、ポリゴンに立体視フラグが付加されていないと判定した場合、ピクセル演算手段12Rに対してポリゴンの各頂点座標を出力して、ピクセル演算手段12Rにレンダリング処理を行わせる。一方、立体視フラグ判定部15は、ピクセル演算手段12Lに対してポリゴンの各頂点座標を出力せず、ピクセル演算手段12Lにおけるレンダリング処理を停止させる。
【0163】
そして、ピクセル演算手段12Rにおけるレンダリング処理で生成された右視野用の画像データは、ピクセル処理部122Rからピクセルメモリ13Rおよびデプス値メモリ123Rに出力されるとともに、データ選択部124・125に出力される。
【0164】
ピクセル処理部122Rから右視野用の画像データを取得したデータ選択部124・125は、取得した右視野用の画像データから立体視フラグ判定部15による判定の対象となったポリゴンの画像データを選択し、データ選択部125は、デプス値メモリ123Lを用いて陰面消去を行いながら選択した画像データを右視野用の画像データとしてピクセルメモリ13Lに出力する。
【0165】
一方、立体視フラグ判定部15は、ポリゴンに立体視フラグが付加されていると判定した場合、ポリゴンの立体視を行うために、ピクセル演算手段12Lおよびピクセル演算手段12Rに対してポリゴンの各頂点座標を出力する。そして、ピクセル演算手段12Rおよびピクセル演算手段12Rによって、左視野用および右視野用の画像データがそれぞれ生成される。
【0166】
以上のように、本実施形態に係る画像データ生成装置1bは、ポリゴンリストを取得してポリゴンごとに付加された立体視フラグの有無を判定する立体視フラグ判定部15を備え、立体視フラグ判定部15は、ポリゴンごとに付加された立体視フラグの有無に基づいて当該ポリゴンの立体視を行うか否かを識別し、ポリゴンの立体視を行わないと識別した場合、ピクセル演算手段12L・12Rにおける判定の対象となったポリゴンの左視野用および右視野用の何れか一方のレンダリング処理を停止させる。そして、ピクセル演算手段12L(12R)は、判定の対象となったポリゴンの左視野用または右視野用のピクセルごとの画像データを左右視野共通の画像データとして生成する。
【0167】
このため、ピクセル演算手段12L・12Rの処理量を低減させることができるため、立体視画像データ生成時の消費電力を低減することができる。さらに、特定の表示対象物のみの立体視画像データを適宜選択して生成することで、効果的な立体表示が可能となる。
【0168】
従って、本実施形態によれば、立体視画像データ生成時の消費電力を低減可能な画像データ生成装置および画像データ生成装置1bを実現することができる。
【0169】
本発明は上述した各実施形態に限定されるものではなく、請求項に示した範囲で種々の変更が可能であり、異なる実施形態にそれぞれ開示された技術的手段を適宜組み合わせて得られる実施形態についても本発明の技術的範囲に含まれる。
【産業上の利用可能性】
【0170】
本発明は、両眼視差方式による3次元コンピュータグラフィックスを用いた立体表示を行うモバイル機器などに好適に用いることができる。
【符号の説明】
【0171】
1 画像データ生成装置
1a 画像データ生成装置
1b 画像データ生成装置
10 ジオメトリ演算手段
11 ポリゴンリストメモリ
12L ピクセル演算手段
12R ピクセル演算手段
13L ピクセルメモリ
13R ピクセルメモリ
14 XL=XR判定部(座標判定部)
15 立体視フラグ判定部
102 マトリクス演算部(座標変換部)
103 原点色計算部(座標変換部)
104 クリッピング処理部
113 共通視野領域(共通クリッピング領域)
113L 左視野領域(左視野用のクリッピング領域)
113R 右視野領域(右視野用のクリッピング領域)
114 ポリゴン(表示対象物)
115 ポリゴン(表示対象物)

【特許請求の範囲】
【請求項1】
入力されたシーンデータおよび左右視点間の距離を用いて当該シーンデータに描画された表示対象物の各頂点座標の座標変換を行い、座標変換後の各頂点座標を含む表示対象物リストを作成するジオメトリ演算手段と、
上記表示対象物リストを用いてレンダリング処理を行い、左視野用および右視野用のピクセルごとの画像データを生成するピクセル演算手段と、
を備えた両眼視差方式の立体視画像データを生成する画像データ生成装置において、
上記ジオメトリ演算手段は、
上記表示対象物の各頂点座標に対して、左視野用または右視野用の何れか一方のマトリクス演算を行うことによって一方視野用の座標変換を行い、座標変換された一方視野用の各頂点座標におけるx座標値に上記左右視点間の距離を加減することによって他方視野用の座標変換を行う座標変換部と、
上記座標変換部によって座標変換された上記表示対象物の各頂点座標に対して、左視野用のクリッピング領域および右視野用のクリッピング領域から構成される左右共通の共通クリッピング領域を用いてクリッピング処理を行うクリッピング処理部と、
を備えることを特徴とする画像データ生成装置。
【請求項2】
上記クリッピング処理部は、上記表示対象物を構成する各線分の両端に位置する頂点が、上記共通クリッピング領域に対して外側に存在するか内側に存在するかを判定し、
上記表示対象物を構成する各線分の両端に位置する頂点が、上記共通クリッピング領域の境界面に対して外側と内側との両方に存在すると判定した場合、当該共通クリッピング領域の外側に存在する部分を切り取って破棄し、当該線分と当該共通クリッピング領域の境界面との交点座標に置換することを特徴とする請求項1項に記載の画像データ生成装置。
【請求項3】
上記ジオメトリ演算手段は、上記共通クリッピング領域内の上記表示対象物のみを表示対象とすることにより、1つの上記表示対象物リストを作成することを特徴とする請求項1または2に記載の画像データ生成装置。
【請求項4】
上記表示対象物リストを取得して、当該表示対象物リストにおける上記表示対象物の左視野用および右視野用の各頂点座標が一致しているか否かを判定する座標判定部を備え、
上記座標判定部は上記表示対象物の左視野用および右視野用の各頂点座標が一致していると判定した場合、上記ピクセル演算手段における当該判定の対象となった上記表示対象物の左視野用および右視野用の何れか一方のレンダリング処理を停止させ、
上記ピクセル演算手段は、上記判定の対象となった上記表示対象物の左視野用または右視野用のピクセルごとの画像データを左右共通の画像データとして生成することを特徴とする請求項1から3の何れか1項に記載の画像データ生成装置。
【請求項5】
上記表示対象物リストを取得して、当該表示対象物リストにおける上記表示対象物に付加された立体視フラグの有無を判定する立体視フラグ判定部を備え、
上記立体視フラグ判定部は、上記表示対象物に付加された立体視フラグの有無に基づいて当該表示対象物の立体視を行うか否かを識別し、当該表示対象物の立体視を行わないと識別した場合、上記ピクセル演算手段における当該判定の対象となった上記表示対象物の左視野用および右視野用の何れか一方のレンダリング処理を停止させ、
上記ピクセル演算手段は、上記判定の対象となった上記表示対象物の左視野用または右視野用のピクセルごとの画像データを左右共通の画像データとして生成することを特徴とする請求項1から3の何れか1項に記載の画像データ生成装置。
【請求項6】
請求項1から5の何れか1項に記載の画像データ生成装置を備えることを特徴とする表示装置。
【請求項7】
入力されたシーンデータおよび左右視点間の距離を用いて当該シーンデータに描画された表示対象物の各頂点座標の座標変換を行い、座標変換後の各頂点座標を含む表示対象物リストを作成するジオメトリ演算ステップと、
上記ジオメトリ演算ステップにて作成した上記表示対象物リストを用いてレンダリング
処理を行い、左視野用および右視野用のピクセルごとの画像データを生成するピクセル演算ステップと、
を有する両眼視差方式の立体視画像データを生成する画像データ生成方法において、
上記ジオメトリ演算ステップは、
上記表示対象物の各頂点座標に対して、左視野用または右視野用の何れか一方のマトリクス演算を行うことによって一方視野用の座標変換を行い、座標変換された一方視野用の各頂点座標におけるx座標値に上記左右視点間の距離を加減することによって他方視野用の座標変換を行う座標変換ステップと、
上記座標変換ステップにて座標変換された上記表示対象物の各頂点座標に対して、左視野用のクリッピング領域および右視野用のクリッピング領域から構成される左右共通の共通クリッピング領域を用いてクリッピング処理を行うクリッピング処理ステップと、
を有することを特徴とする画像データ生成方法。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate


【公開番号】特開2012−98947(P2012−98947A)
【公開日】平成24年5月24日(2012.5.24)
【国際特許分類】
【出願番号】特願2010−246605(P2010−246605)
【出願日】平成22年11月2日(2010.11.2)
【出願人】(000005049)シャープ株式会社 (33,933)
【Fターム(参考)】