JP3724340B2 - 画像生成装置及び方法 - Google Patents
画像生成装置及び方法 Download PDFInfo
- Publication number
- JP3724340B2 JP3724340B2 JP2000180700A JP2000180700A JP3724340B2 JP 3724340 B2 JP3724340 B2 JP 3724340B2 JP 2000180700 A JP2000180700 A JP 2000180700A JP 2000180700 A JP2000180700 A JP 2000180700A JP 3724340 B2 JP3724340 B2 JP 3724340B2
- Authority
- JP
- Japan
- Prior art keywords
- polygon
- screen
- buffer
- luminance
- pixel
- 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.)
- Expired - Fee Related
Links
Images
Landscapes
- Image Generation (AREA)
Description
【発明の属する技術分野】
本発明は、コンピュータグラフィクスにおける3次元形状物体の画像生成装置及び方法に関する。
【0002】
【従来の技術】
コンピュータグラフィックス(CG)における一般的な画像生成方法では、物体を3次元空間に配置した複数の多角形によって表現し、3次元空間における視点位置、光源位置を決め、視点から見た画像を生成する。図4はこのような画像生成方法を実施する装置の構成を示すブロック図である。
【0003】
シーンデータは、物体を表現した多角形の頂点座標や物体の色といった物体データ、視点座標・視線の向き・視点からスクリーンまでの距離・スクリーンの中心から端までの距離といった視点データ、光源座標・光線の向き・平行光源や点光源といった光源の種類や光源の色といった光源データから成る。そのようなシーンデータをシーンデータ入力部101から入力して、シーンバッファ102に格納する。
【0004】
モデリング・視野変換部103は、シーンバッファ102からシーンデータを読み出し、多角形の頂点、光源、視点を定義した3次元座標を、図5(a)に示すように、視点が原点で視線の向きがZ軸(ZE軸)と平行な3次元座標(視点座標系)に変換する。
【0005】
頂点輝度計算部104は、光源座標、光線の向き、光源の種類、光源の色、多角形の頂点座標、多角形の法線ベクトル、多角形が表現している物体の色から多角形の頂点における輝度を計算する。
透視変換部105は、図5(a)に示すように視点座標系のZE軸方向にZE軸と垂直なスクリーン(画面)SCを定義し、視点座標系において視点から見てスクリーンSCを透視した空間を、スクリーンSCの横がXP=−1〜1、スクリーンSCの縦がYP=−1〜1、ZE軸とスクリーンSCの交点P0が原点O、ZE軸の無限大がZP=1になる変換を行なう。この変換により、図5(b)に示す透視座標系が得られる。
【0006】
XYZ面クリッピング部106は、透視座標系においてXP=−1〜1、YP=−1〜1、ZP=0〜1の範囲から多角形全体が出ている場合には、その多角形を破棄し、多角形の一部が出ている場合には、その出ている部分のみを破棄する。
【0007】
ビューポート変換部107は、図5(b)(c)に示すように、透視座標系においてXP=−1〜1、YP=−1〜1で表されたスクリーンSCを、XS=0〜VSX(=横の画素数−1), YS=VSY(=縦の画素数−1)〜0に変換し、透視座標系においてZP=0〜1で表された奥行きを、ZS=0〜VSZ(=232−1)といった整数に変換する。変換後の座標系をスクリーン座標系と呼ぶ。図5(c)において(VCX、VCY)は、ビューポートの中心座標である。
【0008】
頂点輝度・Z値内挿部108は、多角形頂点の輝度とZ値(奥行き値)を内挿して、多角形内部の画素の輝度とZ値を求める。
Z値比較部109は、多角形内部の画素について、内挿で求めたZ値とZ・フレームバッファ110から読み出したZ値とを比較し、内挿で求めたZ値が小さい場合はZ・フレームバッファ110に内挿で求めたZ値と、内挿で求めた輝度とを書き込む。内挿で求めたZ値が大きい場合は、バッファ110への書き込みは行なわない。なお、Z・フレームバッファ110は、シーンデータをモデリング・視野変換部103に入力する前に初期化を行なう。
すべてのシーンデータの処理が終ったら、画像出力部111は、Z・フレームバッファ110から輝度データを読み出して出力する。
【0009】
【発明が解決しようとする課題】
従来より処理能力の高い画像生成装置を実現しようとする場合、並列化が有効である。モデリング・視野変換部103から頂点輝度・Z値内挿部108までは物体単位での並列化が可能だが、Z値比較部109は、物体単位では処理を並列化できない問題があった。
本発明はこの点に着目してなされたものであり、処理の並列化を適切に行い、高速化を図ることができる画像生成装置及び方法を提供するとを目的とする。
【0010】
【課題を解決するための手段】
上記目的を達成するため請求項1に記載の発明は、3次元空間中に配置した物体を基本形状である多角形の集まりとして定義し、格子状に並んだ画素で構成される画面上の各画素位置に対応した、視点からの距離を表す奥行き値および輝度値を格納するバッファを用いて、前記奥行き値に基づいて隠面消去した画像を生成する画像生成装置において、前記多角形の頂点の透視変換を物体毎に並列に実行することにより、前記物体毎に透視変換した物体データを生成する複数の頂点処理ユニットと、透視座標系における画面をm分割し(mは2以上の整数)、m分割したそれぞれの画面毎に、下記ステップ1)〜4)を並列に実行する複数の画素処理ユニットと、を設けると共に、前記複数の頂点処理ユニットからの前記物体毎に透視変換して生成された前記物体データが、通信バスを介し全ての前記複数の画素処理ユニットに転送されるように接続したことを特徴とする:1)前記分割した画面の外側に、前記物体毎に透視変換して生成された複数の前記物体データに基づく多角形が出ているか否かを判定し、2)前記画面の外側に前記多角形の全体が出ている場合にはその多角形を破棄し、3)前記画面の外側に前記多角形の一部が出ている場合には、その出ている部分のみを破棄し、4)前記画面内に存在する多角形内部の画素毎に輝度及び奥行き値を算出し、該算出した奥行き値が、前記バッファに格納されている、対応する画素の奥行き値より小さいときは、その算出した奥行き値及び輝度を前記バッファに書き込む。
請求項2に記載の発明は、3次元空間中に配置した物体を基本形状である多角形の集まりとして定義し、格子状に並んだ画素で構成される画面上の各画素位置に対応した、視点からの距離を表す奥行き値および輝度値を格納するバッファを用いて、前記奥行き値に基づいて隠面消去した画像を生成する画像生成方法において、前記多角形の頂点の透視変換を物体毎に並列に実行することにより、前記物体毎に透視変換した物体データを生成し、透視座標系における画面をm分割し(mは2以上の整数)、m分割したそれぞれの画面毎に、下記ステップ1)〜4)を並列に実行することを特徴とする:1)前記分割した画面の外側に、前記物体毎に透視変換して生成された複数の前記物体データに基づく多角形が出ているか否かを判定し、2)前記画面の外側に前記多角形の全体が出ている場合にはその多角形を破棄し、3)前記画面の外側に前記多角形の一部が出ている場合には、その出ている部分のみを破棄し、4)前記画面内に存在する多角形内部の画素毎に輝度及び奥行き値を算出し、該算出した奥行き値が、前記バッファに格納されている、対応する画素の奥行き値より小さいときは、その算出した奥行き値及び輝度を前記バッファに書き込む。
【0011】
【発明の実施の形態】
以下本発明の実施の形態を図面を参照して説明する。
図1は本発明の一実施形態にかかる画像生成装置の構成を示す図であり、この装置は、シーンデータ入力部1と、同様の処理を並列に実行する2つの頂点処理ユニット2A,2Bと、通信バス4と、同様の処理を並列に実行する2つの画素処理ユニット5A,5Bと、画像出力部7とからなる。
【0012】
頂点処理ユニット2A,2Bは、それぞれシーンバッファ21と、モデリング・視野変換部22と、頂点輝度計算部23と、透視変換部24と、通信バスバッファ25とからなり、画素処理ユニット5A,5Bは、それぞれ通信バスバッファ51と、XYZ面クリッピング部52と、ビューポート変換部53と、頂点輝度・Z値内挿部54と、Z値比較部55と、Z・フレームバッファ56とからなる。
【0013】
図1の装置では、シーンデータをシーンデータ入力部1から入力して、それぞれの頂点処理ユニット2A,2Bのシーンバッファ21に格納する。頂点処理ユニット2A,2Bは、物体毎に処理を行うので、頂点処理ユニット2Aのシーンバッファ21には、頂点処理ユニット2Aで処理する物体データを格納し、頂点処理ユニット2Bのシーンバッファ21には、頂点処理ユニット2Aで処理する物体データを格納する。
【0014】
視点データ及び光源データは、頂点処理ユニット2A,2Bとも使用するので、両方のシーンバッファ21に格納する。
頂点処理ユニット中のモデリング・視野変換部22、頂点輝度計算部23、透視変換部24は,従来例と同様の機能を有する。したがって、透視変換部24から透視変換後の物体データが出力され、通信バスバッファ25に格納され、通信バス4を介して全ての画素処理ユニット5A,5Bの通信バスバッファ51に転送される。
【0015】
画素処理ユニット5A,5BのXYZ面クリッピング部52は、通信バスバッファ51から物体データを読み込む。画素処理ユニットの並列数は、画面の分割数と一致させる。すなわち図1に示す構成は、画面を図2に示すように2分割する場合に対応している。
【0016】
図2(a)に示すように垂直方向の分割を行なう場合、画素処理ユニット5AのXYZ面クリッピング部52は、透視座標系においてXP=−1〜1,YP=−1〜0,ZP=0〜1の範囲から多角形全体が出ている場合には、その多角形を破棄し、多角形の一部が出ている場合には、その出ている部分のみを破棄する。
【0017】
画素処理ユニット5Aのビューポート変換部53は、透視座標系においてXP=−1〜1,YP=−1〜0で表されたスクリーンSCの半分を、XS=0〜(横の画素数−1), YS=( 縦の画素数/2−1)〜0に変換し、透視座標系においてZP=0〜1で表された奥行きを、ZS=0〜(232−1)といった整数に変換する。
【0018】
一方画素処理ユニット5BのXYZ面クリッピング部52は、透視座標系においてXP=−1〜1,YP=0〜1,ZP=0〜1の範囲から多角形全体が出ている場合には、その多角形を破棄し、多角形の一部が出ている場合には、その出ている部分のみを破棄する。
【0019】
画素処理ユニット5Bのビューポート変換部53は、透視座標系においてXP=−1〜1,YP=0〜1で表されたスクリーンSCの半分を、XS=0〜(横の画素数−1), YS=( 縦の画素数/2−1)〜0に変換し、透視座標系においてZP=0〜1で表された奥行きを、ZS=0〜(232−1)といった整数に変換する。
【0020】
また図4(b)に示すように水平方向の分割を行なう場合、画素処理ユニット5AのXYZ面クリッピング部52は、透視座標系においてXP=−1〜0,YP=−1〜1,ZP=0〜1の範囲から多角形全体が出ている場合には、その多角形を破棄し、多角形の一部が出ている場合には、その出ている部分のみを破棄する。
【0021】
画素処理ユニット5Aのビューポート変換部53は、透視座標系においてXP=−1〜0,YP=−1〜1で表されたスクリーンSCの半分を、XS=0〜(横の画素数/2−1), YS=( 縦の画素数−1)〜0に変換し、透視座標系においてZP=0〜1で表された奥行きを、ZS=0〜(232−1)といった整数に変換する。
【0022】
画素処理ユニット5BのXYZ面クリッピング部52は、透視座標系においてXP=0〜1,YP=−1〜1,ZP=0〜1の範囲から多角形全体が出ている場合には、その多角形を破棄し、多角形の一部が出ている場合には、その出ている部分のみを破棄する。
【0023】
画素処理ユニット5Bのビューポート変換部53は、透視座標系においてXP=0〜1,YP=−1〜1で表されたスクリーンSCの半分を、XS=0〜(横の画素数/2−1), YS=( 縦の画素数−1)〜0に変換し、透視座標系においてZP=0〜1で表された奥行きを、ZS=0〜(232−1)といった整数に変換する。
【0024】
画素処理ユニット5A,5B内の頂点輝度・Z値内挿部54及びZ値比較部55は、図4に示した従来技術の頂点輝度・Z値内挿部108及びZ値比較部109と同様の機能を有しており、その説明を省略する。各画素処理ユニットのZ・フレームバッファ56の容量は従来例の1/2で良い。
【0025】
すべてのシーンデータの処理が終ったら、画像出力部7は全ての画像処理ユニットのZ・フレームバッファから輝度データを読み出して出力する。
以上のように本実施形態では、物体毎の座標系変換を行う頂点処理ユニットを2つ並列に設けるとともに、画面を2分割し、分割した部分毎の処理を行う画素処理ユニットを分割数に等しい数だけ設けて並列に動作させるようにしたので、従来より高速に画像生成を行うことが可能となる。
【0026】
なお本発明は上述した実施形態に限るものではなく、種々の変形が可能である。例えば、上述した実施形態では、画面を2分割する例を示したが、分割数はこれに限るものではなく、2以上の任意の数にすることができる。例えば画面を4分割する場合は、画素処理ユニットを4個使用し、並列に動作させればよい。画面分割は、縦・横とも可能なので、分割方法は図3(a),(b),(c)のいずれでも良い。また頂点処理ユニットの数も2個に限るものではなく、2以上の任意の数にすることができる。
【0027】
【発明の効果】
以上詳述したように本発明によれば、多角形の頂点の透視変換を物体毎に並列に実行することにより、物体毎に透視変換した物体データが生成され、透視座標系における画面がm分割され、m分割されたそれぞれの画面毎に、下記ステップ1)〜4)が並列に実行される:1)前記分割した画面の外側に、前記物体毎に透視変換して生成された複数の前記物体データに基づく多角形が出ているか否かを判定し、2)前記画面の外側に前記多角形の全体が出ている場合にはその多角形を破棄し、3)前記画面の外側に前記多角形の一部が出ている場合には、その出ている部分のみを破棄し、4)前記画面内に存在する多角形内部の画素毎に輝度及び奥行き値を算出し、該算出した奥行き値が、前記バッファに格納されている、対応する画素の奥行き値より小さいときは、その算出した奥行き値及び輝度を前記バッファに書き込む。
すなわち本発明によれば、物体単位での処理の並列化と、分割した画面毎の処理の並列化とが組み合わせて実現され、3次元画像生成を高速に行うことができる。
【図面の簡単な説明】
【図1】本発明の一実施形態にかかる画像生成装置の構成を示すブロック図である。
【図2】画面を2分割する方法を示す図である。
【図3】画面を4分割する方法を示す図である。
【図4】従来の画像生成装置の構成を示すブロック図である。
【図5】座標系の変換を説明するための図である。
【符号の説明】
1 シーンデータ入力部
2A,2B 頂点処理ユニット
4 通信バス
5A,5B 画素処理ユニット
7 画像出力部
56 Z・フレームバッファ
Claims (2)
- 3次元空間中に配置した物体を基本形状である多角形の集まりとして定義し、格子状に並んだ画素で構成される画面上の各画素位置に対応した、視点からの距離を表す奥行き値および輝度値を格納するバッファを用いて、前記奥行き値に基づいて隠面消去した画像を生成する画像生成装置において、
前記多角形の頂点の透視変換を物体毎に並列に実行することにより、前記物体毎に透視変換した物体データを生成する複数の頂点処理ユニットと、
透視座標系における画面をm分割し(mは2以上の整数)、m分割したそれぞれの画面毎に、下記ステップ1)〜4)を並列に実行する複数の画素処理ユニットと、を設けると共に、
前記複数の頂点処理ユニットからの前記物体毎に透視変換して生成された前記物体データが、通信バスを介し全ての前記複数の画素処理ユニットに転送されるように接続したことを特徴とする画像生成装置:
1)前記分割した画面の外側に、前記物体毎に透視変換して生成された複数の前記物体データに基づく多角形が出ているか否かを判定し、
2)前記画面の外側に前記多角形の全体が出ている場合にはその多角形を破棄し、
3)前記画面の外側に前記多角形の一部が出ている場合には、その出ている部分のみを破棄し、
4)前記画面内に存在する多角形内部の画素毎に輝度及び奥行き値を算出し、該算出した奥行き値が、前記バッファに格納されている、対応する画素の奥行き値より小さいときは、その算出した奥行き値及び輝度を前記バッファに書き込む。 - 3次元空間中に配置した物体を基本形状である多角形の集まりとして定義し、格子状に並んだ画素で構成される画面上の各画素位置に対応した、視点からの距離を表す奥行き値および輝度値を格納するバッファを用いて、前記奥行き値に基づいて隠面消去した画像を生成する画像生成方法において、
前記多角形の頂点の透視変換を物体毎に並列に実行することにより、前記物体毎に透視変換した物体データを生成し、
透視座標系における画面をm分割し(mは2以上の整数)、m分割したそれぞれの画面毎に、下記ステップ1)〜4)を並列に実行することを特徴とする画像生成方法:
1)前記分割した画面の外側に、前記物体毎に透視変換して生成された複数の前記物体データに基づく多角形が出ているか否かを判定し、
2)前記画面の外側に前記多角形の全体が出ている場合にはその多角形を破棄し、
3)前記画面の外側に前記多角形の一部が出ている場合には、その出ている部分のみを破棄し、
4)前記画面内に存在する多角形内部の画素毎に輝度及び奥行き値を算出し、該算出した奥行き値が、前記バッファに格納されている、対応する画素の奥行き値より小さいときは、その算出した奥行き値及び輝度を前記バッファに書き込む。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000180700A JP3724340B2 (ja) | 2000-06-16 | 2000-06-16 | 画像生成装置及び方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000180700A JP3724340B2 (ja) | 2000-06-16 | 2000-06-16 | 画像生成装置及び方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2001357412A JP2001357412A (ja) | 2001-12-26 |
JP3724340B2 true JP3724340B2 (ja) | 2005-12-07 |
Family
ID=18681733
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2000180700A Expired - Fee Related JP3724340B2 (ja) | 2000-06-16 | 2000-06-16 | 画像生成装置及び方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3724340B2 (ja) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004078296A (ja) | 2002-08-09 | 2004-03-11 | Victor Co Of Japan Ltd | 画像生成装置 |
US9361697B1 (en) * | 2014-12-23 | 2016-06-07 | Mediatek Inc. | Graphic processing circuit with binning rendering and pre-depth processing method thereof |
-
2000
- 2000-06-16 JP JP2000180700A patent/JP3724340B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2001357412A (ja) | 2001-12-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3052681B2 (ja) | 3次元動画像生成装置 | |
JP3124999B1 (ja) | レンダリング方法及び装置、ゲーム装置、並びに仮想空間内のオブジェクトの陰影に関するデータを計算するためのプログラムを格納するコンピュータ読み取り可能な記録媒体 | |
JPH0916806A (ja) | 立体画像処理装置 | |
JP2004005452A (ja) | 画像処理装置、画像処理方法、半導体デバイス、コンピュータプログラム、記録媒体 | |
CN109461197B (zh) | 一种基于球面uv和重投影的云实时绘制优化方法 | |
US6774897B2 (en) | Apparatus and method for drawing three dimensional graphics by converting two dimensional polygon data to three dimensional polygon data | |
JP2006235839A (ja) | 画像処理装置および画像処理方法 | |
JPH11203500A (ja) | 画像処理装置及びそれに利用されるバンプマップデータを格納した記録媒体 | |
JP3350473B2 (ja) | オクルージョンカリングを行う3次元グラフィックス描画装置および方法 | |
JP3724340B2 (ja) | 画像生成装置及び方法 | |
CN109829962B (zh) | 一种利用opengl的物体空间消隐线计算加速方法 | |
US20100177098A1 (en) | Image generation system, image generation method, and computer program product | |
JP2002032744A (ja) | 3次元モデリング及び3次元画像作成のための装置及び方法 | |
EP1139294B1 (en) | Graphical image system and apparatus | |
US7372461B2 (en) | Image processing apparatus and method of same | |
JP3587105B2 (ja) | 図形データ処理装置 | |
JP2023527438A (ja) | リアルタイム深度マップを用いたジオメトリ認識拡張現実効果 | |
JP2010238110A (ja) | 画像処理装置、画像処理方法および画像処理プログラム | |
JP3745152B2 (ja) | 画像表示装置 | |
JP3722593B2 (ja) | 立体画像描画処理装置 | |
JP4589517B2 (ja) | 情報記憶媒体及び画像生成装置 | |
JPS63113785A (ja) | 図形表示方法 | |
JPH02132572A (ja) | 画像表示装置 | |
JP3311905B2 (ja) | 画像処理装置 | |
JP2710616B2 (ja) | 三次元物体を二次元表現する上での物体表面処理方法および処理装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20050510 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20050524 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20050720 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20050830 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20050912 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080930 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090930 Year of fee payment: 4 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20081022 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090930 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100930 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100930 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110930 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120930 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120930 Year of fee payment: 7 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313111 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120930 Year of fee payment: 7 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120930 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130930 Year of fee payment: 8 |
|
LAPS | Cancellation because of no payment of annual fees |