JPH07200867A - 画像生成装置 - Google Patents
画像生成装置Info
- Publication number
- JPH07200867A JPH07200867A JP5349426A JP34942693A JPH07200867A JP H07200867 A JPH07200867 A JP H07200867A JP 5349426 A JP5349426 A JP 5349426A JP 34942693 A JP34942693 A JP 34942693A JP H07200867 A JPH07200867 A JP H07200867A
- Authority
- JP
- Japan
- Prior art keywords
- value
- sum
- micropolygon
- pixel
- area
- 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.)
- Granted
Links
- 238000009877 rendering Methods 0.000 claims abstract description 98
- 238000006243 chemical reaction Methods 0.000 claims abstract description 21
- 238000004364 calculation method Methods 0.000 claims description 123
- 238000012545 processing Methods 0.000 claims description 114
- 239000013598 vector Substances 0.000 claims description 48
- 230000009466 transformation Effects 0.000 claims description 21
- 238000012937 correction Methods 0.000 claims description 8
- 230000001131 transforming effect Effects 0.000 claims description 8
- 238000000034 method Methods 0.000 description 79
- 238000010586 diagram Methods 0.000 description 28
- 230000000694 effects Effects 0.000 description 5
- 230000005484 gravity Effects 0.000 description 5
- 238000013507 mapping Methods 0.000 description 5
- 239000011159 matrix material Substances 0.000 description 5
- 230000010354 integration Effects 0.000 description 3
- 238000005070 sampling Methods 0.000 description 3
- OVSKIKFHRZPJSS-UHFFFAOYSA-N 2,4-D Chemical compound OC(=O)COC1=CC=C(Cl)C=C1Cl OVSKIKFHRZPJSS-UHFFFAOYSA-N 0.000 description 1
- 229930091051 Arenine Natural products 0.000 description 1
- 238000000342 Monte Carlo simulation Methods 0.000 description 1
- 244000309464 bull Species 0.000 description 1
- 101150044474 calB gene Proteins 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 238000006073 displacement reaction Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000007781 pre-processing Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/04—Texture mapping
Landscapes
- Engineering & Computer Science (AREA)
- Computer Graphics (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Image Generation (AREA)
Abstract
と同様その計算量を激減させるて高速且つ高画質な画像
を生成可能な画像生成装置を提供すること。 【構成】 3次元空間中で定義された曲面又はポリゴン
を2次元のスクリーン空間へ幾何変換する幾何変換手段
1と、幾何変換後のスクリーン空間中の曲面又はポリゴ
ンから、曲面又はポリゴンを分割してマイクロポリゴン
を生成するマイクロポリゴン生成手段5と、マイクロポ
リゴンをレンダリングするレンダリング手段16とを含
み、3次元空間中の曲面を2次元平面で計算することを
特徴とする。
Description
フィックス分野において、高速にかつ高品位な画像を生
成する画像生成装置に関する。
表はレイ・トレーシング法やラジオシティ法であった
が、表示しようとするシーンが複雑な場合やモデルが大
きくなると、計算時間が多大にかかるという欠点があっ
た。この欠点は複雑なシーンや大きなモデルを使用して
のアニメーションを製作する場合、特に致命的とも言え
るものであった。
大きな特徴の1つは、非局所的なライティング効果であ
るが、この効果はテクスチャマッピングで近似可能ある
ので、これらの手法によって得られるわずかな非局所的
なライティング効果よりも複雑な形状や大きなモデルを
短時間に、高画質で表示する方がより重要であるという
思想の下で、クック等はマイクロポリゴンという基本形
状に統一してレンダリングを行う手法を考案した。
ている。 Robert L. Cook, Loren Carpenter, Edwin Catmull, "T
he Reyes Image Rendering Architecture", Computer Graphics(SIGGRAP
H'87 Proceedings),Vol.21, No.4, pp.95-102, July 19
87.
の要点を説明する。まず、3次元空間であるワールド空
間で定義された物体を構成するポリゴンや曲面はマイク
ロポリゴンと呼ばれる形状要素に分割される。この分割
は、前方差分法を用いて行うことも可能で、2次元のス
クリーン空間へ変換したときにピクセルの面積の1/4程
度に成るように予測しながら行う。但し、この分割はあ
くまでも3次元の視点空間で行われため、後述するよう
な欠点を有するということを強調しておきたい。
リゴンは、2次元のスクリーン空間へ幾何変換される。
幾何変換されたマイクロポリゴンは、クリッピング後、
ジッタリングという一種のストキャスティック・サンプ
リング法によってピクセルに対する面積寄与率を決め、
テクスチャマッピングに基づくフラットシェーディング
という手法を基本にレンダリングすることで、画像が生
成される。ストキャスティック・サンプリング法は、モ
ンテカルロ法と同様な手法で、この一種であるジッタリ
ングはサブピクセルにオーバラップするマイクロポリゴ
ンのサンプリングに使用する。
ルに分割され、各サブピクセルはその内部に1つのサン
プルポイントを持つ。このサンプルポイント位置はサブ
ピクセルの中央の位置からランダムな変位を加えること
によって決定され、この位置決めの方法をジッタリング
と呼ぶ。このジッタリングの操作は、(描画によって書
き込まれるピクセル数)×(サブピクセルへの分割数)
回必要である。
ロポリゴンを使用したレンダリング方法の要点で、これ
によって生成された画像は、先のレイ・トレーシング法
やラジオシティ法に比べても遜色ないものである。
うな手法では、3次元の視点空間でマイクロポリゴンを
生成するため、生成したマイクロポリゴンを全て2次元
のスクリーン空間に幾何変換しなければならない。生成
されるマイクロポリゴンの個数は、上記論文に記載され
ている例では680万個にものぼっており、より複雑な
シーンでは更にマイクロポリゴンの個数は増える。これ
ら全てのマイクロポリゴンを幾何変換するための計算量
は膨大なものとなる。
マイクロポリゴンを生成できれば、この幾何変換は不要
である。更に、マイクロポリゴンの生成において、3次
元空間で生成する場合には、その位置や大きさを規定す
るためには3つの座標値や成分を算出する計算が必要で
あるが、2次元で取り扱う場合には、これらは2つで済
むので、この点に関しても計算量は、従来の2/3にな
る。
しているため、(描画によって書き込まれるピクセル
数)×(サブピクセルへの分割数)回の乱数の発生が必
要であるが、複雑なシーンでは経験的には3画面分以上
のピクセルへの書き込みがあり、1画面は小さなもので
も640×480ピクセルあり、サブピクセルへの分割
数は上記論文では16なので、少なくとも1474万5
600回もの乱数の発生を行わなければならない。従っ
て、ジッタリング操作に費やされる計算量も膨大なもの
である。しかし、これに代わり、本発明によるようなマ
イクロポリゴンのピクセルに対する面積寄与率を予めテ
ーブルの形で保持しておき、これによって面積寄与率を
決定する手法であれば、ジッタリング操作は不要とな
り、計算量は激減する。
で、2次元のスクリーン空間でマイクロポリゴンを生成
し、マイクロポリゴンのピクセルに対する面積寄与率を
テーブル形で保持し、これによって面積寄与率を決定す
ることで計算量を激減させ、これによって高速にしかも
上記手法と同等の高画質な画像が生成できる画像生成装
置を提供することを目的とする。
に本発明の画像生成装置は、3次元空間中で定義された
曲面を2次元のスクリーン空間へ幾何変換する幾何変換
手段と、幾何変換後のスクリーン空間中の曲面から、曲
面を分割してマイクロポリゴンを生成するマイクロポリ
ゴン生成手段と、マイクロポリゴンをレンダリングする
レンダリング手段という構成を備えたものである。
成装置は、3次元空間中でコントロールポイントによっ
て定義された曲面がある時、コントロールポイントと同
数の曲面上の点を2次元のスクリーン空間へ幾何変換す
る幾何変換手段と、幾何変換後のスクリーン空間中の曲
面上の点からスクリーン空間でのコントロールポイント
を算出するコントロールポイント算出手段と、前記スク
リーン空間中のコントロールポイントを用いて曲面を分
割してマイクロポリゴンを生成するマイクロポリゴン生
成手段と、マイクロポリゴンをレンダリングするレンダ
リング手段という構成を備えたものである。
成装置は、3次元空間中でコントロールポイントによっ
て定義された曲面がある時、コントロールポイントと同
数の曲面上の点を算出する曲面点算出手段と、前記曲面
上の点を2次元のスクリーン空間へ幾何変換する幾何変
換手段と、幾何変換後のスクリーン空間中の曲面上の点
からスクリーン空間でのコントロールポイントを算出す
るコントロールポイント算出手段と、前記スクリーン空
間中のコントロールポイントを用いて曲面を分割してマ
イクロポリゴンを生成するマイクポリゴン生成手段と、
マイクロポリゴンをレンダリングするレンダリング手段
という構成を備えたものである。
成装置は、3次元空間中で定義されたポリゴンを2次元
のスクリーン空間へ幾何変換する幾何変換手段と、幾何
変換後のスクリーン空間中のポリゴンを分割してマイク
ロポリゴンを生成するマイクロポリゴン生成手段と、マ
イクロポリゴンをレンダリングするレンダリング手段と
いう構成を備えたものである。
成装置は、3次元空間中で定義されたポリゴンの頂点と
内分点を2次元のスクリーン空間へ幾何変換する幾何変
換手段と、幾何変換後のスクリーン空間中の頂点と内分
点を用いてポリゴンを分割してマイクロポリゴンを生成
するマイクロポリゴン生成手段と、マイクロポリゴンを
レンダリングするレンダリング手段という構成を備えた
ものである。
成装置は、曲面を与えられた分割数で分割したときにで
きる分割曲面を平行四辺形で近似し、近似した平行四辺
形をレンダリングすることで画像を生成するレンダリン
グ手段を備えたものである。
成装置は、曲面を与えられた分割数で分割したときにで
きる分割点と曲面の頂点を基準点とするとき、基準点を
始点として始点を挟む2つの隣接する基準点を終点とし
てできる2つのベクトルで生成される平行四辺形のマイ
クロポリゴンで分割曲面を近似し、マイクロポリゴンを
レンダリングすることで画像を生成するレンダリング手
段を備えたものである。
成装置は、ポリゴンを与えられた分割数で分割したとき
にできるサブポリゴンを平行四辺形で近似し、近似した
平行四辺形をレンダリングすることで画像を生成するレ
ンダリング手段を備えたものである。
成装置は、ポリゴンを与えられた分割数で分割したとき
にできる分割点とポリゴンの頂点を基準点とするとき、
基準点を始点として始点を挟む2つの隣接する基準点を
終点としてできる2つのベクトルで生成される平行四辺
形のマイクロポリゴンでサブポリゴンを近似し、マイク
ロポリゴンをレンダリングすることで画像を生成するレ
ンダリング手段を備えたものである。
成装置は、ポリゴンを与えられた分割数で分割したとき
にできる分割点とポリゴンの頂点から4近接点を選び、
この近接点を結んでできる四角形サブポリゴンの4辺の
内最大辺の端点1つを始点とし、始点を挟む2つの近接
点を終点とする2つのベクトルできる平行四辺形のマイ
クロポリゴンで前記四角形サブポリゴンを近似し、マイ
クロポリゴンをレンダリングすることで画像を生成する
レンダリング手段を備えたものである。
成装置は、四角形ポリゴンを与えられた分割数で分割し
たときにできる分割点とポリゴンの頂点から4近接点を
選び、この近接点を結んでできる四角形サブポリゴンの
4辺の内、元の四角形ポリゴンの最大辺に対応する四角
形サブポリゴンの辺の端点の1つを始点とし、始点を挟
む2つの近接点を終点とする2つのベクトルできる平行
四辺形のマイクロポリゴンで前記四角形サブポリゴンを
近似し、マイクロポリゴンをレンダリングすることで画
像を生成するレンダリング手段を備えたものである。
成装置は、曲面を与えられた分割数で分割したときにで
きる分割曲面の各ピクセルに対する面積寄与率をテーブ
ルによって求める面積寄与率参照手段と、この面積寄与
率を使ってレンダリングすることで画像を生成するレン
ダリング手段とを備えたものである。
成装置は、曲面を与えられた分割数で分割したときにで
きる分割曲面を平行四辺形近似したマイクロポリゴンの
各ピクセルに対する面積寄与率をテーブルによって求め
る面積寄与率参照手段と、この面積寄与率を使ってレン
ダリングすることで画像を生成するレンダリング手段と
備えたものである。
成装置は、曲面を与えられた分割数で分割したときにで
きる分割曲面を三角形で近似したマイクロポリゴンの各
ピクセルに対する面積寄与率をテーブルによって求める
面積寄与率参照手段と、この面積寄与率を使ってレンダ
リングすることで画像を生成するレンダリング手段とを
備えたものである。
成装置は、ポリゴンを与えられた分割数で分割したとき
にできるサブポリゴンの各ピクセルに対する面積寄与率
をテーブルによって求める面積寄与率参照手段と、この
面積寄与率を使ってレンダリングすることで画像を生成
するレンダリング手段とを備えたものである。
成装置は、ポリゴンを与えられた分割数で分割したとき
にできるサブポリゴンを平行四辺形近似したマイクロポ
リゴンの各ピクセルに対する面積寄与率をテーブルによ
って求める面積寄与率参照手段と、この面積寄与率を使
ってレンダリングすることで画像を生成するレンダリン
グ手段とを備えたものである。
成装置は、ポリゴンを与えられた分割数で分割したとき
にできるサブポリゴンを三角形で近似したマイクロポリ
ゴンの各ピクセルに対する面積寄与率をテーブルによっ
て求める面積寄与率参照手段と、この面積寄与率を使っ
てレンダリングすることで画像を生成するレンダリング
手段とを備えたものである。
成装置は、ポリゴンや曲面を与えられた分割数で分割し
たときにできるサブポリゴンや分割曲面を平行四辺形近
似したマイクロポリゴンを規定する基準点の位置座標と
この基準点を挟む2つの隣辺ベクトルの成分から面積寄
与率のテーブルを参照するアドレスを生成するアドレス
生成手段を備えたものである。
成装置は、ポリゴンや曲面を与えられた分割数で分割し
たときにできるサブポリゴンや分割曲面を三角形で近似
したマイクロポリゴンを規定する基準点の位置座標とこ
の基準点を挟む2つの隣辺ベクトルの成分から面積寄与
率のテーブルを参照するアドレスを生成するアドレス生
成手段を備えたものである。
成装置は、生成されたマイクロポリゴンに対して、マイ
クロポリゴンが規定の大きさ以内か否かを判定する再分
割判定手段と、規定の大きさより大きい場合に元のマイ
クロポリゴンの4辺の長さから再分割するときの分割数
を決定する分割数決定手段と、分割数でマイクロポリゴ
ンを分割してサブマイクロポリゴンを生成するサブマイ
クロポリゴン生成手段と、生成されたサブマイクロポリ
ゴンに対して規定の大きさ以内か否かを前記再分割判定
手段によって判定し、規定の大きさより大きいときは分
割数を更新する分割数更新手段とを有し、前記分割数更
新手段で更新された分割数で前記サブマイクロポリゴン
生成手段によって再帰的にサブマイクロポリゴンを生成
するという特徴を備えたものである。
成装置は、曲面を規定するコントロールポイントの並び
方による曲面の表面の向きを示す情報とこの曲面に対し
て生成されたマイクロポリゴンの法線の向きから、描画
しなくてよいマイクロポリゴンを決定する裏面除去手段
を備えたものである。
成装置は、2次元のスクリーン空間中の曲面に対して、
一番手前あるいは奥の頂点からマイクロポリゴンが生成
されるようにコントロールポイントのインデックスを変
更するインデックス変更手段と、変更後のマイクロポリ
ゴンの発生順番に合わせて輝度値データのアクセス順を
変更するアクセス変更手段という構成を備えたものであ
る。
成装置は、ポリゴンや曲面を与えられた分割数で分割し
たときにできるサブポリゴンや分割曲面の基準点を1ピ
クセル内に固定し、このサブポリゴンや分割曲面を任意
に移動させることで生成するが、エントリは最大サイズ
のサブポリゴンまたは分割曲面が含まれるだけのピクセ
ル数分しか面積寄与率を保持していない面識寄与率テー
ブルを備えたものである。
成装置は、ポリゴンや曲面を与えられた分割数で分割し
たときにできるサブポリゴンや分割曲面を平行四辺形近
似したマイクロポリゴンの基準点を1ピクセル内に固定
し、この基準点を挟む2つの隣辺ベクトルを任意に移動
させることで生成するが、エントリは最大サイズのマイ
クロポリゴンが含まれるだけのピクセル数分しか面積寄
与率を保持していない面識寄与率テーブルを備えたもの
である。
成装置は、ポリゴンや曲面を与えられた分割数で分割し
たときにできるサブポリゴンや分割曲面を三角形で近似
したマイクロポリゴンの基準点を1ピクセル内に固定
し、この基準点を挟む2つの隣辺ベクトルを任意に移動
させることで生成するが、エントリは最大サイズのマイ
クロポリゴンが含まれるだけのピクセル数分しか面積寄
与率を保持していない面積寄与率テーブルを備えたもの
である。
成装置は、ピクセルを計算精度に応じた分割数で分割し
たときにできるサブピクセルの内部の代表点が、ポリゴ
ンや曲面を与えられた分割数で分割したときにできるサ
ブポリゴンや分割曲面を四角形で近似したマイクロポリ
ゴンの規定する領域内か否かを判定する内外判定手段
と、前記内外判定手段の結果に基づきサブピクセルの代
表点がマイクロポリゴンの規定する領域内に入っている
サブピクセルの個数を数えるカウンティング手段と、前
記カウンティング手段で数えた個数にサブピクセルの面
積をかけることで面積寄与率を算出する面積寄与率算出
手段という構成を備えたものである。
成装置は、ピクセルを計算精度に応じた分割数で分割し
たときにできるサブピクセルの内部の代表点が、ポリゴ
ンや曲面を与えられた分割数で分割したときにできるサ
ブポリゴンや分割曲面を平行四辺形近似したマイクロポ
リゴンの規定する領域内か否かを判定する内外判定手段
と、前記内外判定手段の結果に基づきサブピクセルの代
表点がマイクロポリゴンの規定する領域内に入っている
サブピクセルの個数を数えるカウンティング手段と、前
記カウンティング手段で数えた個数にサブピクセルの面
積をかけることで面積寄与率を算出する面積寄与率算出
手段という構成を備えたものである。
成装置は、ピクセルを計算精度に応じた分割数で分割し
たときにできるサブピクセルの内部の代表点が、ポリゴ
ンや曲面を与えられた分割数で分割したときにできるサ
ブポリゴンや分割曲面を三角形で近似したマイクロポリ
ゴンの規定する領域内か否かを判定する内外判定手段
と、前記内外判定手段の結果に基づきサブピクセルの代
表点がマイクロポリゴンの規定する領域内に入っている
サブピクセルの個数を数えるカウンティング手段と、前
記カウンティング手段で数えた個数にサブピクセルの面
積をかけることで面積寄与率を算出する面積寄与率算出
手段という構成を備えたものである。
成装置は、各ピクセルに対して描画用輝度値と計算用輝
度値と面積寄与率の和を保持することが可能な記憶装置
がある時、1つのポリゴンまたは曲面に対して生成され
たマイクロポリゴンの各ピクセルに対する面積寄与率算
出後、前記記憶装置へ書き込む際に、面積寄与率の和が
1より小さい時に限り、前の面積寄与率の和に算出した
面積寄与率の値を加えたテンポラリの値を計算し、テン
ポラリの値が1以下の場合は、面積寄与率の和はテンポ
ラリの値に更新し、計算用輝度値は、算出した面積寄与
率にマイクロポリゴンに与えられた輝度値を乗じた値と
前の計算用輝度値とを加えた値に更新し、テンポラリの
値が1より大きい場合は、計算用輝度値は、1から前の
面積寄与率の和を減じた値にこのマイクロポリゴンに与
えられた輝度値を乗じた値と前の計算用輝度値とを加え
た値に更新し、面積寄与率の和は1に更新するレンダリ
ング手段と、1つのポリゴンまたは曲面に対して生成さ
れた全てのマイクロポリゴンに対して処理が終了したか
否かの判定を行い、終了したという判定ならば、描画用
輝度値を、1から面積寄与率の和を減じた値に前の描画
用輝度値を乗じた値と計算用輝度値とを加えた値に更新
し、更新が終了したならば計算用輝度値と面積寄与率の
和を0に初期化する1面処理終了判定手段とから成る記
憶装置書き込み手段を備えたものである。
成装置は、面積寄与率に不透明度を乗じた値をピクセル
寄与率とするとき、各ピクセルに対して描画用輝度値と
計算用輝度値と面積寄与率の和とピクセル寄与率の和を
保持することが可能な記憶装置がある時、1つのポリゴ
ンまたは曲面に対して生成されたマイクロポリゴンの各
ピクセルに対する面積寄与率算出後、前記記憶装置へ書
き込む際に、面積寄与率の和が1より小さい時に限り、
前の面積寄与率の和に算出した面積寄与率の値を加えた
テンポラリの値を計算し、テンポラリの値が1以下の場
合は、面積寄与率の和はテンポラリの値に更新し、ピク
セル寄与率の和は、マイクロポリゴンに与えられた不透
明度に、算出した面積寄与率を乗じた値と、前のピクセ
ル寄与率の和とを加えた値に更新し、計算用輝度値は、
算出した面積寄与率とマイクロポリゴンに与えられた不
透明度と輝度値とを乗じた値と、前の計算用輝度値とを
加えた値に更新し、テンポラリの値が1より大きい場合
は、計算用輝度値は、1から前の面積寄与率の和を減じ
た値とこのマイクロポリゴンに与えられた不透明度と輝
度値とを乗じた値と、前の計算用輝度値とを加えた値に
更新し、面積寄与率の和は1に更新し、ピクセル寄与率
の和は1から前の面積寄与率の和を減じた値にマイクロ
ポリゴンに与えられた不透明度を乗じた値と、前のピク
セル寄与率の和とを加えた値に更新するレンダリング手
段と、1つのポリゴンまたは曲面に対して生成された全
てのマイクロポリゴンに対して処理が終了したか否かの
判定を行い、終了したという判定ならば、描画用輝度値
を、1からピクセル寄与率の和を減じた値に前の描画用
輝度値を乗じた値と計算用輝度値とを加えた値に更新
し、更新が終了したならば計算用輝度値と面積寄与率の
和とピクセル寄与率の和を0に初期化する1面処理終了
判定手段とから成る記憶装置書き込み手段を備えたもの
である。
成装置は、各ピクセルに対して描画用輝度値と計算用輝
度値と面積寄与率の和を保持することが可能な記憶装置
がある時、1つのポリゴンまたは曲面に対して生成され
たマイクロポリゴンの各ピクセルに対する面積寄与率算
出後、前記記憶装置へ書き込む際に、面積寄与率の和が
1より小さい時に限り、前の面積寄与率の和に算出した
面積寄与率の値を加えたテンポラリの値を計算し、テン
ポラリの値が1以下の場合は、面積寄与率の和はテンポ
ラリの値に更新し、計算用輝度値は、算出した面積寄与
率と、描画用輝度値からマイクロポリゴンに与えられた
輝度値を減じた値とを乗じた値を、前の計算用輝度値か
ら減じた値に更新し、テンポラリの値が1より大きい場
合は、計算用輝度値は、1から前の面積寄与率の和を減
じた値と、描画用輝度値からマイクロポリゴンに与えら
れた輝度値を減じた値とを乗じた値を、前の計算用輝度
値から減じた値に更新し、面積寄与率の和は1に更新す
るレンダリング手段と、1つのポリゴンまたは曲面に対
して生成された全てのマイクロポリゴンに対して処理が
終了したか否かの判定を行い、終了したという判定なら
ば、描画用輝度値を計算用輝度値に更新し、更新が終了
したならば計算用輝度値と面積寄与率の和を0に初期化
する1面処理終了判定手段とから成る記憶装置書き込み
手段を備えたものである。
成装置は、各ピクセルに対して描画用輝度値と計算用輝
度値と面積寄与率の和を保持することが可能な記憶装置
がある時、1つのポリゴンまたは曲面に対して生成され
たマイクロポリゴンの各ピクセルに対する面積寄与率算
出後、前記記憶装置へ書き込む際に、面積寄与率の和が
1より小さい時に限り、前の面積寄与率の和に算出した
面積寄与率の値を加えたテンポラリの値を計算し、テン
ポラリの値が1以下の場合は、面積寄与率の和はテンポ
ラリの値に更新し、計算用輝度値は、算出した面積寄与
率と、マイクポリゴンに与えられた不透明度と、描画用
輝度値からマイクロポリゴンに与えられた輝度値を減じ
た値とを乗じた値を、前の計算用輝度値から減じた値に
更新し、テンポラリの値が1より大きい場合は、計算用
輝度値は、1から前の面積寄与率の和を減じた値と、マ
イクポリゴンに与えられた不透明度と、描画用輝度値か
らマイクロポリゴンに与えられた輝度値を減じた値とを
乗じた値を、前の計算用輝度値から減じた値に更新し、
面積寄与率の和は1に更新するレンダリング手段と、1
つのポリゴンまたは曲面に対して生成された全てのマイ
クロポリゴンに対して処理が終了したか否かの判定を行
い、終了したという判定ならば、描画用輝度値を計算用
輝度値に更新し、更新が終了したならば計算用輝度値と
面積寄与率の和を0に初期化する1面処理終了判定手段
とから成る記憶装置書き込み手段を備えたものである。
成装置は、各ピクセルの輝度値と面積寄与率の和を保持
することが可能な記憶装置に対して、マイクロポリゴン
の各ピクセルに対する面積寄与率算出後、前記記憶装置
へ書き込む際に、面積寄与率の和が1より小さい時に限
り、前の面積寄与率の和に算出した面積寄与率の値を加
えたテンポラリの値を計算し、テンポラリの値が1以下
の場合は、前の面積寄与率の和をテンポラリの値に更新
し、輝度値については、算出した面積寄与率にマイクロ
ポリゴンに与えられた輝度値を乗じた値に前の輝度値を
加えた値に更新し、テンポラリの値が1より大きい場合
は、輝度値については、1から前の面積寄与率の和を減
じた値にこのマイクロポリゴンに与えられた輝度値を乗
じた値に前の輝度値を加えた値に更新し、面積寄与率の
和は1に更新するレンダリング手段と、全てのポリゴン
または曲面の処理が終わったか否かの判定を行う1シー
ン処理終了判定手段と、前記1シーン処理終了判定手段
で終了したという判定がなされたならば、面積寄与率の
和が1より小さいピクセルに対して、輝度値を記憶して
いた輝度値に、1から面積寄与率の和を減じた値と背景
として与えられた輝度値とを乗じた値を加えた値に更新
する輝度値修正手段とから成る記憶装置書き込み手段を
備えたものである。
成装置は、面積寄与率に不透明度を乗じた値をピクセル
寄与率とするとき、各ピクセルに対して輝度値とピクセ
ル寄与率の和を保持することが可能な記憶装置がある
時、マイクロポリゴンの各ピクセルに対する面積寄与率
算出後、前記記憶装置へ書き込む際に、ピクセル寄与率
の和が1より小さい時に限り、前のピクセル寄与率の和
に算出した面積寄与率とマイクロポリゴンに与えられた
不透明度を乗じた値を加えたテンポラリの値を計算し、
テンポラリの値が1以下の場合は、前のピクセル寄与率
の和をテンポラリの値に更新し、輝度値については、算
出した面積寄与率とマイクロポリゴンに与えられた不透
明度と輝度値とを乗じた値に前の輝度値を加えた値に更
新し、テンポラリの値が1より大きい場合は、輝度値に
ついては、1から前のピクセル寄与率の和を減じた値に
このマイクロポリゴンに与えられた輝度値を乗じた値
と、前の輝度値とを加えた値に更新し、ピクセル寄与率
の和は1に更新するレンダリング手段と、全てのポリゴ
ンまたは曲面の処理が終わったか否かの判定を行う1シ
ーン処理終了判定手段と、前記1シーン処理終了判定手
段で終了したという判定がなされたならば、ピクセル寄
与率の和が1より小さいピクセルに対して、輝度値を記
憶していた輝度値に、1からピクセル寄与率の和を減じ
た値と背景として与えられた輝度値とを乗じた値を加え
た値に更新する輝度値修正手段とから成る記憶装置書き
込み手段を備えたものである。
成装置は、面積寄与率に不透明度を乗じた値をピクセル
寄与率とするとき、各ピクセルの輝度値とピクセル寄与
率の和を保持することが可能な輝度用の記憶装置と面積
寄与率の和を保持することが可能な面積寄与率用の記憶
装置に対して、1つのポリゴンまたは曲面に対して生成
されたマイクロポリゴンの各ピクセルに対する面積寄与
率算出後、前記記憶装置へ書き込む際に、面積寄与率の
和とピクセル寄与率の和がどちらも1より小さい時に限
り、前の面積寄与率の和に算出した面積寄与率の値を加
えた面積寄与率の和のテンポラリの値と、前のピクセル
寄与率の和に、算出した面積寄与率とマイクロポリゴン
に与えられた不透明度とを乗じた値を加えたピクセル寄
与率の和のテンポラリの値とを計算し、面積寄与率の和
のテンポラリの値とピクセル寄与率の和のテンポラリの
値が共に1以下の場合は、面積寄与率の和は面積寄与率
の和のテンポラリの値に更新し、ピクセル寄与率の和は
ピクセル寄与率の和のテンポラリの値に更新し、輝度値
は、算出した面積寄与率とマイクロポリゴンに与えられ
た不透明度と輝度値とを乗じた値を、前の輝度値に加え
た値に更新し、面積寄与率の和のテンポラリの値が1よ
り大きく、ピクセル寄与率の和のテンポラリの値が1以
下の場合は、輝度値は、1から前の面積寄与率の和を減
じた値と、マイクポリゴンに与えられた不透明度と輝度
値とを乗じた値を、前の輝度値に加えた値に更新し、面
積寄与率の和は1に更新し、ピクセル寄与率の和は前の
ピクセル寄与率の和に、1から前の面積寄与率の和を減
じた値とマイクロポリゴンに与えられた不透明度とを乗
じた値を加えた値に更新し、ピクセル寄与率の和のテン
ポラリの値が1より大きい場合は、輝度値は1から前の
ピクセル寄与率の和を減じた値にマイクロポリゴンにあ
たられた輝度値を乗じた値と、前の輝度値とを加えた値
に更新し、面積寄与率の和とピクセル寄与率の和は1に
更新するレンダリング手段と、1つのポリゴンまたは曲
面に対して生成された全てのマイクロポリゴンに対して
処理が終了したか否かの判定を行い、終了したという判
定ならば、前記面積寄与率用の記憶装置の内容を0に初
期化する1面処理終了判定手段と、全てのポリゴンまた
は曲面の処理が終わったか否かの判定を行う1シーン処
理終了判定手段と、前記1シーン処理終了判定手段で終
了したという判定がなされたならば、ピクセル寄与率の
和が1より小さいピクセルに対して、輝度値を記憶して
いた輝度値に、1からピクセル寄与率の和を減じた値と
背景として与えられた輝度値とを乗じた値を加えた値に
更新する輝度値修正手段とから成る記憶装置書き込み手
段を備えたものである。
定義された曲面やポリゴンを2次元のスクリーン空間へ
幾何変換した後、マイクロポリゴンの生成を行うので、
幾何変換の計算量は従来に比べ激減し、高速化が図れ
る。すなわち、曲面やポリゴンの2次元のスクリーン空
間への幾何変換は、実際には、これらを定義する頂点や
コントロールポイント、内分点を幾何変換する訳である
が、これらの個数はマイクロポリゴンの個数に比べて1
桁から3桁ほど少ない。
とも1桁から2桁程減少するので、これによる高速化へ
の効果は大きい。更に、マイクロポリゴンの生成過程に
おいても、従来のように3次元空間で生成する場合に
は、その位置や大きさを規定するためには3つの座標値
や成分を算出する計算が必要であるが、2次元で取り扱
う場合には、これらは2つで済むので、この点に関して
も計算量は従来の2/3になる。
リングしていたので、乱数の発生が必要であったのに対
し、本発明では、面積寄与率をテーブルによって決定し
ているので、その必要がなく高速に処理することができ
る。また、本発明による手法は、面積寄与率をテーブル
として用意するので、ハードウェア化が容易であるとい
う特徴をも有する。更に、テーブルのエントリ数は、マ
イクロポリゴンを平行四辺形や三角形に限ることによ
り、減少することができる。その際、曲面やポリゴンを
分割したときにできる分割曲面やサブポリゴンをこの平
行四辺形や三角形のマイクロポリゴンで近似することに
なる。面積寄与率はテーブルで求める他に計算でも算出
できるので、本発明では面積積分を応用した手法を用い
てこれを提供する。これは、面積寄与率のテーブルを作
成する時にも用いることができる。
ゴンは基準点の位置座標と基準点を挟む2つのベクトル
で規定できるので、本発明では、これらからテーブルを
引くときのアドレスを生成する。マイクロポリゴンの最
大サイズを決め、最大サイズに到るまでのマイクロポリ
ゴンの大きさを離散的に定めておくことによりテーブル
は有限のサイズとなる。このとき、最大サイズのマイク
ロポリゴンの基準点を1ピクセル内に固定しておき、基
準点の位置は変えずに最大サイズのマイクロポリゴンを
任意の位置に移動してもはみ出ないようなピクセルの矩
形領域が決まる。
は、この矩形に含まれるピクセル数だけの面積寄与率が
保持されていれば十分である。しかし、これでは1つの
エントリのサイズが大きくなるので、本発明では、最大
サイズのマイクロポリゴンを含むことが可能な矩形の部
分領域分に含まれるピクセル数だけの面積寄与率と、こ
の部分領域が元の矩形領域のどこに位置しているかを示
す識別子をエントリとして持つことにより面積寄与率の
テーブルのサイズを小さくする。
いるということは、ポリゴンや曲面を所定の手続きで分
割した場合にできるサブポリゴンや分割曲面が、この最
大サイズより大きいときには再分割する必要がある。本
発明ではこの再分割に対して、再帰的な再分割のアルゴ
リズムによってこれに対処する。
像には反映されないものが存在する。特に顕著なものは
裏を向いているもので、本発明ではこの裏向きのマイク
ロポリゴンを除去する手法を提供する。マイクロポリゴ
ンが裏を向いているか否かは、元の曲面の表面の向きと
マイクロポリゴンの法線の向きとによって定めることが
でき、本発明でもこれに基づいて決めている。
てソーティングが行われており、ソート法で隠れ面処理
を行う場合、曲面に関してはマイクロポリゴンの発生順
序を考慮しないと、奥の見えないマイクロポリゴンが描
画されてしまい、また、マイクロポリゴンの発生順序は
コントロールポイントのインデックスの順序によってコ
ントロールできるが、このとき、テクスチャ等の輝度値
データに対するアクセス順序についても考慮しておかな
いとテクスチャの貼る向きがおかしくなるという事態が
生じる。本発明では、この点を考慮して、マイクロポリ
ゴンの発生順序に合わせて、輝度値データへのアクセス
順序も変更して上記の問題を除去する。
メモリ等への書き込みが必要である。本発明では、エリ
アシングを除去するために面積寄与率を考慮した形で、
この記憶装置への書き込みを行うことができる。各ピク
セルの面積寄与率は誤差がなければ、1以下なのである
が、実際には誤差があるため、マイクロポリゴンの面積
寄与率を1つのピクセルについて足していくと1を越え
てしまうことがあり、本発明では、これに対処するた
め、面積寄与率の値が1以下となるようにしており、物
体の透明表現に対する対応も行うようにしている。ま
た、本発明は記憶装置に対する書き込み方が異なる奥か
ら書き込む場合と、手前から書き込む場合のどちらの場
合にも対応することができる。
詳細に説明する。まず、図1を参照して、本発明の第1
の実施例の画像生成装置について説明する。図1は本発
明の第1の実施例による画像生成装置の構成を示す図で
ある。図1において、1は物体が定義されている3次元
ワールド空間で曲面上の点を算出する曲面点算出手段、
2は3次元ワールド空間から2次元のスクリーン空間へ
の変換を行う幾何変換手段、3は2次元スクリーン空間
で曲面を定義するコントロールポイントを算出するコン
トロールポイント算出手段、4はコントロールポイント
のインデックスの変更を行うインデックス変更手段であ
る。
クロポリゴン生成手段、6は裏を向いているマイクロポ
リゴンを除去する裏面除去手段、7はマイクロポリゴン
のサイズが規定以内か否かの判定を行う再分割判定手
段、8はマイクロポリゴンの再分割数の変更を行う分割
数変更手段、9はマイクロポリゴンの再分割数を決める
分割数決定手段、10はサブマイクロポリゴンの生成を
行うサブマイクロポリゴン生成手段、11は面積寄与率
を参照する際のアドレスを生成するアドレス生成手段、
12はマイクロポリゴンのピクセルに対する面積寄与率
を求める面積寄与率参照手段、13はマイクロポリゴン
の生成順に合わせてテクスチャデータのアクセス順番を
変更するアクセス変更手段、14はテクスチャデータを
求めるテクスチャデータ参照手段である。
憶装置書き込み手段で、16のマイクロポリゴンのレン
ダリングを行うレンダリング手段と、17の1つの曲面
に対する処理が終わったか否かの判定を行う1面処理終
了判定手段と、18の1つの場面に対する処理が終わっ
たか否かの判定を行う1シーン処理終了判定手段と、1
9の記憶装置内の輝度値データの修正を行う輝度値修正
手段とからなる。
置の動作について、詳細に説明する。本発明の動作を説
明するにあたり、曲面としてはユニフォームな双3次B
スプライン曲面を、ポリゴンについては四角形ポリゴン
を双3次Bスプライン曲面の特殊な場合として説明を行
う。双3次Bスプライン曲面は、例えば、図3に示すよ
うなものであり、図のように曲面は16個のコントロー
ルポイントP00,P01,・・・ ,P03,P10,・・・ ,P33
で規定され、曲面の方程式は座標毎独立に定義され、2
つの独立なパラメータu,v(0≦u,v≦1)を固定
する毎に曲面上の点の座標が求められる。この定義方程
式は、x,y,zに対し、それぞれ、
,Px03 ,Px10 ,・・・ ,Px33 はコントロールポイ
ントP00,P01,・・・ ,P03,P10,・・・ ,P33のx座
標で、Py00 ,Py00 ,・・・ ,Py33 、Pz00 ,Pz01
,・・・ ,Pz33 はy,z座標である。4頂点の座標が
反時計回りに(x1 ,y1 ,z1 ),(x2 ,y2 ,z
2 ),(x3 ,y3 ,z3 ),(x4 ,y4 ,z4 )で
与えられる3次元空間中の四角形ポリゴンは、コントロ
ールポイントを、
(数3)で定義することができる。3次元ワールド空間
中の物体は、以上の双3次Bスプライン曲面や四角形ポ
リゴンで構成されており、これらの曲面やポリゴンは投
影を行う2次元スクリーン空間に対する奥行きについ
て、遠くのものから近くのものへ、もしくは近くのもの
から遠くのものへのいずれかに、予めソーティングされ
ているものと仮定する。
中で定義されている双3次Bスプライン曲面に対して
は、曲面の16個のコントロールポイント、Pwij (P
wxij,Pwyij,Pwzij);i,j=0,1,2,3、を
入力し、曲面上の16点、Qwij (Qwxij,Qwyij,Q
wzij);i,j=0,1,2,3、を算出して、幾何変
換手段2へ出力する。また、上述のようにコントロール
ポイントで定義された四角形ポリゴンに対しては、コン
トロールポイントの座標値をそのままQwij として幾何
変換手段2へ出力する。曲面の場合、この曲面上の16
点とパラメータu,vとは図4に示すように、以下の関
係によって規定されているものとする。
行うことができる。但し、(・・・ )Tは行ベクトルの転
置、つまり列ベクトルを表し、また行列Mは以下に示す
正則な16元の定数行列である。
力、Qwij(Qwxij,Qwyij,Qwzij);i,j=0,
1,2,3、を入力として、視点情報(視点の位置座
標、視線ベクトル、視線に対するアッパーベクトル)と
スクリーン空間に関する情報(視点からスクリーン空間
までの距離、無限遠点、焦点、投影面の横幅と高さ等)
に基づき、通常コンピュウータグラフィックスで行われ
ているように、Qwijを2次元のスクリーン空間上の
点、Qsij (Qsxij,Qsyij);i,j=0,1,2,
3、へ変換し、このQsij をコントロールポイント算出
手段3へ出力する。
変換手段2の出力、Qsij (Qsxij,Qsyij);i,j
=0,1,2,3、を入力とし、双3次Bスプライン曲
面に対しては、この16点Qsijを通るスクリーン空間
上の双3次Bスプライン曲面を規定するコントロールポ
イントPsij (Psxij,Psyij);i,j=0,1,
2,3、を算出し、インデックス変更手段4へ出力す
る。また、四角形ポリゴンに対しては、Qsij をそのま
まコントロールポイントPsij としてインデックス変更
手段4へ出力する。曲面の場合、コントロールポイント
Psij(Psxij,Psyij)の算出は、
とができる。
である。小数点以下9桁で求めたM-1の要素を行毎に列
の順番で記述すると以下のようになる。 (第1行)1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 (第2行)-0.833333333,3.000000003,-1.500000001,0.
333333333,0,0,0,0,0,0,0,0,0,0,0,0 (第3行)0.333333333,-1.500000001,3.000000003,-0.
833333333,0,0,0,0,0,0,0,0,0,0,0,0 (第4行)0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0
03,0,0,0,-1.500000001,0,0,0,0.333333333,0,0,0 (第6行)0.694444462,-2.500000003,1.250000032,-0.
277777796,-2.500000033,9.000000009,-4.500000004,1.
000000031,1.250000032,-4.500000004,2.250000002,-0.
500000031,-0.277777796,1.000000031,-0.500000031,0.
111111129 (第7行)-0.277777796,1.250000032,-2.500000033,0.
694444462,1.000000031,-4.500000004,9.000000009,-2.
500000033,-0.500000031,2.250000002,-4.500000004,1.
250000032,0.111111129,-0.500000031,1.000000031,-0.
277777796 (第8行)0,0,0,-0.833333333,0,0,0,3.000000003,0,
0,0,-1.500000001,0,0,0,0.333333333
01,0,0,0,3.000000003,0,0,0,-0.833333333,0,0,0 (第10行)-0.277777796,1.000000031,-0.500000031,
0.111111129,1.250000032,-4.500000004,2.250000002,-
0.500000031,-2.500000033,9.000000009,-4.500000004,
1.000000031,0.694444462,-2.500000033,1.250000032,-
0.277777796 (第11行)0.111111129,-0.500000031,1.000000031,-
0.277777796,-0.500000031,2.250000002,-4.500000004,
1.250000032,1.000000031,-4.500000004,9.000000009,-
2.500000033,-0.277777796,1.250000032,-2.500000033,
0.694444462
1.500000001,0,0,0,3.000000003,0,0,0,-0.833333333 (第13行)0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0 (第14行)0,0,0,0,0,0,0,0,0,0,0,0,-0.833333333,
3.000000003,-1.500000001,0.333333333 (第15行)0,0,0,0,0,0,0,0,0,0,0,0,0.333333333,-
1.500000001,3.000000003,-0.833333333 (第16行)0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1
て、uを0から1へ変化させると、コントロールポイン
トのPs00からPs03 の方向に曲面上の点が発生され
る。インデックス変更手段4は、曲面やポリゴンが2次
元スクリーン空間に対する奥行き方向に関して、遠くの
ものから近くのものへソーティングされている場合は、
Ps00 ,Ps03 ,Ps30 ,Ps33 のうち、1番目と2番
目に奥にある点を選び、1番奥にある点を新たにPs00
、2番目に奥にある点をPs03 と成るように、コント
ロールポイントのインデックスの付け変えを行うもので
ある。
くのものへソーティングされている場合には、Ps00 ,
Ps03 ,Ps30 ,Ps33 のうち、1番目と2番目に手前
にある点を選び、1番手前にある点を新たにPs00 、2
番目に手前にある点をPs03と成るように、コントロー
ルポイントのインデックスの付け変えを行う。
ないというのも含めるとその結果は8種類あり、元の
(Ps00 ,Ps03 )に対する対応を列記すると、(Ps0
0,Ps03 )(Ps00 ,Ps30 )(Ps30 ,Ps33 )(P
s30 ,Ps00 )(Ps33 ,Ps30 )(Ps33 ,Ps03 )
(Ps03 ,Ps00 )(Ps03 ,Ps33 )(Ps00 ,Ps0
3 )(Ps00 ,Ps03 )となる。
ス置換情報は保持される。このインデックス置換情報
は、元のPs00 とPs03 に対して、Ps00 ,Ps03 ,P
s30 ,Ps33 のどれに付け変えたかというもので、テー
ブル化することも可能である。この情報は後でアクセス
変更手段13において使う。インデックスの付け変えが
終わったコントロールポイントを、新たにPsij (Psx
ij,Psyij);i,j=0,1,2,3、とし、マイク
ロポリゴン生成手段5へ出力される。
リゴンに貼るテクスチャデータのサイズに基づいて、曲
面を分割して分割曲面やサブポリゴンを生成し、これに
対応する1つの四角形マイクロポリゴン、または1つの
平行四辺形マイクロポリゴン、または2つの三角形マイ
クロポリゴンのいずれかを生成するものである。動作の
説明を行う前に、まず用語の説明をする。まず、分割曲
面とは、曲面を分割したときの元の曲面に対する部分曲
面で図5にその例を示す。サブポリゴンとは、ポリゴン
を分割したときの部分平面で図6にその例を示す。
ブポリゴンは分割線の部分曲線によって囲まれた領域
で、この部分曲線の端点である、分割線の交点を分割点
と呼ぶことにする。四角形マイクポリゴンとは、分割曲
面またはサブポリゴンを4つ分割点で規定した四角形で
近似したもので、基準点(x,y)と3つのベクトル
(dx ,dy ),(px ,py ),(qx ,qy )によ
って定義できる。図7(a)にその例を示す。
面やサブポリゴンの4つの分割点の内3つの分割点で規
定された平行四辺形で近似したもので、基準点(x,
y)と2つのベクトル(dx ,dy ),(px ,py )
によって定義できる。図7(b)にその例を示す。ま
た、三角形マイクロポリゴンとは、分割曲面やサブポリ
ゴンの4つの分割点の内、それぞれ3つの分割点で規定
される2つの三角形で近似したもので、各三角形マイク
ロポリゴンは、基準点(x,y)と2つのベクトル(d
x ,dy ),(px ,py )によって定義できる。図7
(c)にその例を示す。
について説明する。上述のようにマイクロポリゴンは分
割点で生成されるので、まず初めに分割点を生成する。
生成する分割点の個数は、テクスチャのサイズによって
決まり、テクスチャのサイズが、m×nならばm+1×
n+1個の分割点を生成する。生成方法は、(数1)
(数2)を用いて行うことができる。まず、インデック
ス変更手段4から出力されたコントロールポイントの座
標から(数1)(数2)の方程式によりコントロールポ
イントの座標を必要とする部分を規定し、パラメータ
u,vについては、刻み値(増分)を1/m,1/nと
して、u,vを0から1まで変化したときの曲面上の点
を発生する。この曲面上の点が、実は分割点である。
ゴリズムを用いても行うことができる。ここでは(数
1)(数2)を用いた計算方法の1つの例として次の方
法を述べる。(数1)(数2)に対して、vは0から1
まで1/nの増分で変化させ、vを固定する毎に、uを
0から1/mづつ増加させながら1まで変化させて、1
行分の分割点を生成し、uが1になったならば、vを1
/n増加させて次の行の分割点を生成する。この操作を
v=1になるまで繰り返すと、m+1×n+1個の曲面
上の点が生成される。
テクスチャの貼る方向が変化した場合(縦横の関係が交
換された場合)は、uの増分は1/nとなり、vの増分
は1/mとなる。縦横の関係が変化したかどうかは、イ
ンデックス置換情報によって知ることができる。テクス
チャのサイズを2の累乗で示されるものに限ると1/
m,1/nの除算は、シフト演算で行うことができる。
つまり、テクスチャサイズを2m ×2n とすると、増分
は1/2m ,1/2n となるので、この計算はm,nビ
ットの右シフトで行うことができる。
イズは2m ×2n として話を進めていくことにする。生
成された分割点の座標値は、必要精度に応じて丸められ
る。1つのマイクロポリゴンを生成するには、少なくと
も4つの分割点の座標値は保持しておかなければならな
い。逆に言うと、4つの分割点を保持できる領域があれ
ばマイクロポリゴンの生成は行えるが、ここでは、生成
された分割点の座標値は全て、一旦保持するものとして
話を進める。生成され、丸められた分割点の座標を(X
ij,Yij),0≦i≦2m ,0≦j≦2n とする。
ロポリゴンの生成について説明する。図から分かるよう
に基準点は(Xij,Yij)で、(dx ,dy )=(Xi+
1j−Xij,Yi+1j−Yij),(px , py )=(Xij+1
−Xij,Yij+1−Yij),(qx ,qy )=(Xi+1j+1
−Xij+1,Yi+1j+1−Yij+1),0≦i≦2m −1,0
≦j≦2n −1として四角形マイクロポリゴンを生成す
る。
して、平行四辺形マイクロポリゴンの生成について説明
する。単純な生成方法としては図8(b−1)のよう
に、基準点は(Xij,Yij)で、(dx ,dy )=(X
i+1j−Xij,Yi+1j−Yij),(px ,py )=(Xij
+1−Xij,Yij+1−Yij),0≦i≦2m −1,0≦j
≦2n −1として生成する。近似の度合いを上げる方法
としては、曲面の頂点に対応するコントロールポイント
Ps00 ,Ps03 ,Ps30 ,Ps33 から線分l1 =Ps00
Ps30 ,l2 =Ps03 Ps33 の長さ(距離)を計算す
る。
散空間における距離(2点の座標毎の差の絶対値和)で
よい。l1 ≧l2 の時は、図8(b−1)の先に述べた
方法で平行四辺形マイクロポリゴンを生成する。l1 ≧
l2 の時は図8(b−2)のように、基準点を(Xi+1
j,Yi+1j)で、(dx ,dy )=(Xij−Xi+1j,Yi
j−Yi+1j),(px ,py )=(Xi+1j+1−Xi+1j,
Yi+1j+1−Yi+1j),0≦i≦2m −1,0≦j≦2n
−1として生成する。
イクロポリゴンの生成について説明する。図8(c)の
ように1つの分割曲面やサブポリゴンに対して、2つの
三角形マイクロポリゴンが生成され、1つ目は基準点を
(Xij,Yij),(dx ,dy )=(Xi+1j−Xij,Y
i+1j−Yij),(px ,py )=(Xij+1−Xij,Yij
+1−Yij)として、2つ目は(Xi+1j,Yi+1j)で、
(dx ,dy )=(Xij−Xi+1j,Yij−Yi+1j),
(px ,py )=(Xi+1j+1−Xi+1j,Yi+1j+1−Yi+
1j)として生成される。但し、0≦i≦2m −1,0≦
j≦2n −1である。
ンのうち、スクリーン空間の表示される領域外に存在す
るマイクロポリゴンは以降の処理が行われないよう除去
される。これはいわゆるクリッピング処理に相当するも
のである。表示される領域内のマイクロポリゴンは、裏
面除去手段6へ出力されるが、マイクロポリゴンを生成
する4つの分割点の座標値は、再分割判定手段7での処
理が終了して、アドレス生成手段11に出力されるま
で、マイクロポリゴン毎に保持していなければならな
い。
面が表示される場合のマイクロポリゴンを除去するもの
で、図10にその様子を示す。これを行うためには、曲
面のコントロールポイントの並びに対して、どちらの面
を表面とするかを示した情報が予め曲面に対して与えら
れていなければならない。つまり、図11に示すような
場合、括弧なしのコントロールポイントの並びの場合
は、右手系で示した向きが表面の時は紙面の裏側がこの
曲面の表面で、左手系で示した向きが表面の時は紙面の
向きがこの曲面の表面となる。
場合は、右手系で示した向きがの表面の時は紙面の向き
がこの曲面の表面で、左手系で示した向きが表面の時は
紙面の裏側の向きがこの曲面の表面となる。従って、コ
ントロールポイントの並びが括弧なしのタイプなのか括
弧ありのタイプなのかという情報とそれに対して右手系
で示した向きを表面とするのか、左手系で示した向きを
表面とするのかの情報は予め曲面に与えられているもの
とする。
)の外積の符号を比較することで裏面を向いたマイク
ロポリゴンを除去する。例えば、コントロールポイント
の並びが括弧なしのタイプで右手系の向きが表面の場
合、図8(a)(b−1)(c)のマイクロポリゴンの
時は、(dx ,dy )と(px ,py )の外積の符号が
負の時はこのマイクロポリゴンは反転されて裏面が見え
ているので除去し、図8(b−2)のマイクロポリゴン
の時は外積の符号が正の時は除去する。
更手段4でコントロールポイントのインデックスの変更
が起こるとコントロールポイントの並びが括弧ありのタ
イプから括弧なしのタイプや、その逆のことが起こるの
でその時は左右系に関する情報は反転させなければなら
ない。裏面除去手段6で除去されなかったマイクロポリ
ゴンのデータは再分割判定手段7へ出力される。
ロポリゴンが予め定められているサイズより大きいか否
かを判定する。この判定は、マイクロポリゴンのサイズ
というものをどう定義するかによって異なるが、一般に
は面積やマイクロポリゴンの辺の長さで定めるべきもの
である。ここでは例として辺の長さでサイズを規定する
ものとする。マイクロポリゴンの辺とは、マイクロポリ
ゴンを規定するベクトルの大きさに対応するので、四角
形マイクロポリゴンの場合は、ベクトル(dx,dy
),(px ,py ),(qx ,qy )の大きさを計算
し、これが規定のサイズ以下か否かを判定する。
形マイクロポリゴンの場合は、ベクトル(dx ,dy
),(px ,py )の大きさを計算し、これが規定の
サイズ以下か否かを判定する。また、この判定はテー
ブルによっても行うことできる。例えば、ベクトルを規
定する精度が0.25刻みで、規定のサイズが1の場合は、
(表1)に示す判定表によってこの判定が行える。(表
1)において、縦横の数は各ベクトルの成分の絶対値を
表し、イエスの場合は大きさが1以下のときで、ノーの
場合は1より大きい場合を示している。
ス)と判定されたマイクロポリゴンのデータはアドレス
生成手段11に出力され、規定サイズより大きい(ノ
ー)と判定されたマイクロポリゴンは再分割が必要なた
め、分割数変更手段8、分割数決定手段9、サブマイク
ロポリゴン生成手段10での処理へとまわされる。
9、サブマイクロポリゴン生成手段10において再帰的
に行われるマイクロポリゴンの再分割の一連の処理につ
いて説明する。最初の再分割の時は、分割数変更手段8
は何も行わず、分割数決定手段9での処理が行われる。
分割数決定手段9はマイクロポリゴンを生成する4つの
分割点の座標、(Xij,Yij),(Xi+1j,Yi+1j),
(Xi+1j+1,Yi+1j+1),(Xij+1,Yij+1)から再分
割を行う際の分割数を決定するものである。ここでは、
分割数は2の累乗で示される数に規定しているが、これ
は先に述べたように除算の代わりにシフト演算で高速に
行うためのもので、ここで述べる方法は分割数として他
の一般的な数を用いることもできることに注意を要す
る。分割数決定手段9では、まず、
出する。この非負整数m’,n’が求める分割数であ
る。サブマイクロポリゴン生成手段10は、元のマイク
ロポリゴンを生成する4つの分割点の座標、(Xij,Y
ij),(Xi+1j,Yi+1j),(Xi+1j+1,Yi+1j+1),
(Xij+1,Yij+1)と分割数m’,n’から新たな分割
点を発生させて、サブマイクロポリゴンを生成するもの
である。ここで、サブマイクロポリゴンとはマイクロポ
リゴンを分割したときにできるマイクロポリゴンのこと
で、データ上はマイクロポリゴンと何等変わりない。図
9のように、発生する分割点を
点を用いて、マイクロポリゴン生成手段5で述べた、四
角形マイクロポリゴンや平行四辺形マイクロポリゴン、
三角形マイクロポリゴンの生成と同様な方法で、サブマ
イクロポリゴンを生成する。生成された全てのサブマイ
クロポリゴンに対して、再び再分割判定手段7で規定サ
イズ以下か否かの判定を行う。規定サイズ以下であると
判定された場合は、アドレス生成手段11へこれらのデ
ータは出力される。規定サイズより大きい時は、分割数
変更手段8で分割数の変更が行われる。
角形マイクロポリゴンの場合、(dx ,dy )は規定サ
イズ以下で、(px ,py )が規定サイズより大きい時
は、m’は元のままでn’=n’+1とし、(dx ,d
y )は規定サイズより大きく、(px ,py )が規定サ
イズ以下の時は、m’=m’+1に更新し、n’は元の
ままとし、(dx ,dy ),(px ,py )共に規定サ
イズより大きい時は、m’=m’+1,n’=n’+1
とする。四角形マイクロポリゴンの時も同様に行う。
の際には、分割数決定手段9での処理は飛ばされ、サブ
マイクロポリゴン生成手段10で、更新された分割数を
用いてサブマイクロポリゴンの生成を前回と同様の方法
で行う。以上の処理を再帰的に繰り返すことで、マイク
ロポリゴンを再分割してサブマイクロポリゴンの生成を
行い、規定サイズ以下になった(サブ)マイクロポリゴ
ンがアドレス生成手段11へ送られる。
手段12で、テーブル化されているマイクロポリゴンの
ピクセルに対する面積寄与率を参照するためのアドレス
を生成するものである。アドレスの生成方法について説
明する前に、まず、図13を用いて面積寄与率と面積寄
与率テーブルについて簡単に説明しておくことにする。
ピクセルを仮想的に1辺の長さが1の正方形とみなした
ときに、ピクセルとマイクロポリゴンの共有領域の面積
のことを、このピクセルに対する面積寄与率という。
の共有領域の面積のピクセルの面積に対する比率のこと
である。図12では、斜線などで示されたピクセルとマ
イクロポリゴンの共有領域の面積が、このマイクロポリ
ゴンの各ピクセルに対する面積寄与率である。四角形マ
イクロポリゴンや平行四辺形マイクロポリゴンの場合、
マイクロポリゴンの規定のサイズを1以下とし、基準点
は5×5ピクセルの領域の中心の1ピクセル内部に固定
すると、マイクロポリゴンを規定するベクトルが任意に
動いても、この5×5ピクセルの領域内部に納まる(三
角形マイクロポリゴンの場合は3×3の領域である)。
領域内に納まり、1つのマイクロポリゴンが面積寄与率
を与えられるピクセル数の最大値は6個である(精度が
0.25刻みの場合)。1つのマイクロポリゴンがこの領域
内で与えられたときには、3×3、つまり9個のピクセ
ルに対して面積寄与率がどのように与えられているかを
情報として持っていれば、ピクセルに対する面積寄与率
の情報としては十分であるといえる。この情報をテーブ
ルとして保持しているのが面積寄与率テーブルである。
3×3の領域の左上のピクセルの座標を与えることで、
この領域の5×5の領域における位置は特定できる。図
13はこの様子を示したもので、マイクロポリゴンを含
む3×3の領域は左上のピクセルの位置(0,0)によ
って特定され、このマイクロポリゴンは4つのピクセル
に対して面積寄与率を与えている。スクリーン空間中の
マイクロポリゴンに対しては、このマイクロポリゴンを
含むように3×3の領域を切り取り、この領域を5×5
の領域へマッピングし、3×3の領域の各ピクセルの面
積寄与率を求めて、スクリーン空間へ逆マッピングすれ
ばスクリーン空間でのピクセルの面積寄与率を求めるこ
とができる。
×5の領域の中心となるように行うので、これに関して
は基準点の座標の整数部を変換すればよい。基準点の位
置がこの中心のピクセルのどこかを確定するには、基準
点の座標の小数点以下の値が分かればよい。マイクロポ
リゴンを規定する要素は、基準点と四角形マイクロポリ
ゴンならば3つのベクトル、平行四辺形、三角形マイク
ロポリゴンならば2つのベクトルであるので、基準点と
ベクトルからアドレスを生成する。
数点以下の値で分類でき、ベクトルに関しては規定サイ
ズ以下なので、例えば、精度が0.25刻みの場合、基準点
に関しては各座標は、0.0,0.25,0.5,0.75 の4種類しか
ないので、合計16通りの区別ができればよく、ベクト
ルの各成分は、-1.0,-0.75,-0.5,-0.25,0.0,0.25,0.5,
0.75,1.0 の9種類なので、四角形マイクロポリゴンの
場合は96通りの区別ができればよく、平行四辺形、三
角形マイクロポリゴンの場合は、94通りの区別ができ
ればよい。
形マイクロポリゴンの場合は図14(a)のように表わ
すことができ、基準点(x,y)に対しては4ビット、
3つのベクトル(dx ,dy,) (px ,py ),及び
(qx ,qy )に対しては24ビット、合計28ビット
でアドレスを生成することができる。又、平行四辺形、
及び三角形マイクロポリゴンの場合は図14の(b)に
示すように表わすことができ、合計20ビットでアドレ
スが生成できる。
11におけるアドレス生成方法について説明する。マイ
クロポリゴンのスクリーン空間における基準点を(X,
Y)とすると、まず、I=[X],J=[Y]により、
(X,Y)からピクセル位置(I,J)を求める。但
し、[x]はガウス記号で、xを越えない最大の整数を
表す。このマイクロポリゴンの基準点を5×5の領域の
中心のピクセル(局所座標系で(2,2)の位置)内部
にマッピングしたときの局所座標表示(x,y)を
部を表す。この(x,y)と四角形マイクロポリゴンな
らば(dx ,dy ),(px ,py ),及び(qx ,q
y )から、平行四辺形、及び三角形マイクロポリゴンな
らば(x,y)、(dx ,dy ),及び(px,py )
から前述の方法でアドレスを生成する。生成されたアド
レスは、面積寄与率参照手段12に出力される。
手段11で生成されたアドレスに基づき、先に述べた3
×3の領域の左上のピクセルの局所座標位置(wi ,w
j )と(wi ,wj )の位置とから局所座標のi座標固
定毎にj座標の増える方向に3×3の領域の9個のピク
セルの面積寄与率をシリアルに出力する。このデータ形
式については図15にその例を示す。(wi ,wj )の
とれる位置は、各座標0,1,2なので、4ビットで表
現することができ、面積寄与率を3ビットで表すと合計
31ビットのデータとして出力される。このデータは記
憶装置書き込み手段15での処理が終わるまで保持され
る。
変更手段4でのインデックス置換情報に基づき、テクス
チャデータへのアクセス順を当初貼り付けようと意図し
ていた方向に変更する。例えば図16のように、テクス
チャデータサイズが2m ×2n でこれらのデータは1次
元的に格納されているとすると、次の2次元数列のいず
れかを用いてアクセスの変更を行う。
せて用い、算出された値がマイクロポリゴンに対してア
クセスすべきテクスチャの番号である。インデックス変
更手段4での元の(Ps00 ,Ps03 )に対する対応は、
(Ps00 ,Ps03 )(Ps00,Ps30 )(Ps30 ,Ps33
)(Ps30 ,Ps00 )(Ps33 ,Ps30 )(Ps33,P
s03 )(Ps03 ,Ps00 )(Ps03 ,Ps33 )(Ps00
,Ps03 )(Ps00,Ps03 )で、この対応に応じて、
(数65)(数66)(数67)(数68)(数69)
(数70)(数71)をアクセス番号算出のための数列
として用いる。
ス変更手段13で算出されたマイクロポリゴンに対して
アクセスすべきテクスチャの番号に応じてテクスチャデ
ータを取り出してくる。テクスチャデータは、基本的に
はRGBの輝度値であるが、この他に物体の不透明度等
がある。また、テクスチャデータのRGB輝度値データ
は照度計算の結果が反映されているものを用いる。つま
り、各種照度計算方法(グロー、フォン、ラジオシティ
等)で計算した結果を反映したデータを用いる。また、
影として表現するための曲面やポリゴンに対しては、影
の照度値を格納下データを用いればいわゆるシャドーマ
ッピングも行うことができる。
グ手段16と1面処理終了判定手段17と1シーン処理
終了判定手段18と輝度値修正手段19からなり、面積
寄与率参照手段12とテクスチャデータ参照手段14で
参照されたピクセルの面積寄与率とテクスチャデータを
用いてマイクロポリゴンのレンダリング、記憶装置への
書き込み、処理の終了判定などを行う。
トシェーディングで、つまり、テクスチャデータで与え
られるRGB値で一色に塗りつぶす計算を行う。記憶装
置書き込み手段15の動作方法には、最初に行われた曲
面やポリゴンに対して適用されたソーティング方法によ
って、幾つかの異なるものがある。また、テクスチャデ
ータに不透明度が与えられているか否かによっても幾つ
かの異なる動作方法がある。以下では、これらの動作方
法について説明する。
ものから近いものへ行われた場合の記憶装置書き込み手
段15の第1、2、3、4の動作方法について説明す
る。第1の方法は、テクスチャデータに不透明度がない
場合である。前提として、各ピクセルに対して描画用輝
度値と計算用輝度値と面積寄与率の和をスクリーン空間
の座標系で保持することが可能な記憶装置があるものと
する。ここで、描画用輝度値、計算用輝度値は共にRG
Bタイプの3次元デーとする。また、面積寄与率の和と
は、1つのピクセルに対して複数のマイクロポリゴンが
面積寄与率を与えるのでそれらの面積寄与率を加算して
いったものである。
リゴンに対して面積寄与率参照手段12で参照した9個
のピクセルに対する面積寄与率とテクスチャデータ参照
手段14で参照したテクスチャデータを用いて、描画用
輝度値と計算用輝度値と面積寄与率の和を計算し、記憶
装置へのリード・モディファイ・ライトを行う。この
時、面積寄与率参照手段12で参照されるデータ形式は
上述の例のように図16で示したようなもので、5×5
の領域の局所座標系に基づいたデータなので、これをス
クリーン空間の座標系へ変換しなければならない。この
変換はアドレス生成手段11の箇所で述べたI,Jを用
いて以下のように行う。
セルの座標を(Iw ,Jw )とする。(wi,wj)=(0,0) な
らばI-2 ≦Iw≦I,J-2 ≦Jw≦J の位置のピクセルにアク
セスする。(wi,wj)=(0,1) ならばI-2 ≦Iw≦I,J-1 ≦Jw
≦J+1 の位置のピクセルにアクセスする。(wi,wj)=(0,
2) ならばI-2 ≦Iw≦I,J ≦Jw≦J+2 の位置のピクセル
にアクセスする。(wi,wj)=(1,0) ならばI-1 ≦Iw≦I+1,
J-2 ≦Jw≦J の位置のピクセルにアクセスする。(wi,w
j)=(1,1) ならばI-1 ≦Iw≦I+1,J-1 ≦Jw≦J+1 の位置
のピクセルにアクセスする。(wi,wj)=(1,2) ならばI-1
≦Iw≦I+1,J ≦Jw≦J+2 の位置のピクセルにアクセスす
る。(wi,wj)=(2,0) ならばI ≦Iw≦I+2,J-2≦Jw≦J の
位置のピクセルにアクセスする。(wi,wj)=(2,1) ならば
I ≦Iw≦I+2,J-1 ≦Jw≦J+1 の位置のピクセルにアクセ
スする。(wi,wj)=(2,2) ならばI ≦Iw≦I+2,J ≦Jw≦J+
2 の位置のピクセルにアクセスする。
う。まず、処理を行う当該ピクセルの面積寄与率の和α
sum を読みだし、αsum が1より小さい時に限り、αsu
m に面積寄与率参照手段12で算出した面積寄与率の値
αを加えたテンポラリの値、Temp=αsum +αを計算す
る。Tempが1以下の場合は、面積寄与率の和はTempに更
新する。計算用輝度値は、αにテクスチャデータ参照手
段14で参照した輝度値(IR ,IG ,IB )を乗じた
値と記憶装置から読み出した計算用輝度値(IcalR,I
calG,IcalB)とを加えた値に更新する。
G ,IB )+(IcalR,IcalG,IcalB)。Tempが1よ
り大きい場合は、計算用輝度値は、(計算用輝度値)=
(1−αsum )(IR ,IG ,IB )+(IcalR,Ica
lG,IcalB)に更新する。また、面積寄与率の和は1に
更新する。1面処理終了判定手段17は、1つのポリゴ
ンまたは曲面に対して生成された全てのマイクロポリゴ
ンに対して処理が終了したか否かの判定を行い、終了し
ていなければ以上の処理を1つのポリゴンまたは曲面に
対して生成された全てのマイクロポリゴンに対して処理
が終了するまで行う。
用輝度値は、記憶装置から読み出した描画用輝度値(I
dR,IdG,IdB)を用いて、(描画用輝度値)=(1−
αsum )(IdR,IdG,IdB)+(IcalR,IcalG,I
calB)に更新する。更新を終了すると、計算用輝度値と
面積寄与率の和を0に初期化する。以上の処理を1シー
ン処理判定手段18で1シーン分全てのデータに対して
処理が終了したと判定されるまで行う。第1の方法で
は、輝度値修正手段19は何も処理しない。
度がある場合である。面積寄与率に不透明度を乗じた値
をピクセル寄与率と定義する。前提として、各ピクセル
に対して描画用輝度値と計算用輝度値と面積寄与率の和
とピクセル寄与率との和を保持することができる記憶装
置があるものとする。面積寄与率参照手段12で参照さ
れたピクセルに対する、5×5の領域からスクリーン空
間への変換方法は第1の方法と同様とする。
を行う当該ピクセルの面積寄与率の和αsum を読みだ
し、αsum が1より小さい時に限り、αsum に面積寄与
率参照手段12で算出した面積寄与率の値αを加えたテ
ンポラリの値、Temp=αsum +αを計算する。Tempが1
以下の場合は、面積寄与率の和はTempに更新する。ピク
セル寄与率の和は、テクスチャデータ参照手段14で参
照された不透明度βに、算出した面積寄与率αを乗じた
値と、記憶装置から読み出したピクセル寄与率の和γと
を加えた値、(ピクセル寄与率の和)=αβ+γに更新
する。計算用輝度値は、αとβとテクスチャデータ参照
手段14で参照された輝度値(IR ,IG,IB )とを乗
じた値と記憶装置から読みだした計算用輝度値(Ical
R,IcalG,IcalB)とを加えた値、(計算用輝度値)
=αβ(IR ,IG,IB )+(IcalR,IcalG,Ical
B)に更新する。
は、(計算用輝度値)=(1−αsum )β(IR ,IG
,IB )+(IcalR,IcalG,IcalB)に更新する。
面積寄与率の和は1に更新し、ピクセル寄与率の和は、
(ピクセル寄与率の和)=(1−αsum )β+γに更新
する。1面処理終了判定手段17は、1つのポリゴンま
たは曲面に対して生成された全てのマイクロポリゴンに
対して処理が終了したか否かの判定を行い、終了してい
なければ以上の処理を1つのポリゴンまたは曲面に対し
て生成された全てのマイクロポリゴンに対して処理が終
了するまで行う。
用輝度値を、記憶装置から読み出した描画用輝度値(I
dR,IdG,IdB)を用いて、(描画用輝度値)=(1−
γ)(IdR,IdG,IdB)+(IcalR,IcalG,Ical
B)に更新する。更新が終了したならば計算用輝度値と
面積寄与率の和とピクセル寄与率の和を0に初期化す
る。以上の処理を1シーン処理判定手段18で1シーン
分全てのデータに対して処理が終了したと判定されるま
で行う。第2の方法では、輝度値修正手段19は何も処
理しない。
度がない場合である。前提として、各ピクセルに対して
描画用輝度値と計算用輝度値と面積寄与率の和とを保持
することができる記憶装置があるものとする。面積寄与
率参照手段12で参照されたピクセルに対する、5×5
の領域からスクリーン空間への変換方法は第1の方法と
同様とする。このとき、レンダリング手段16は、処理
を行う当該ピクセルの面積寄与率の和αsum を読みだ
し、αsum が1より小さい時に限り、αsum に面積寄与
率参照手段12で算出した面積寄与率の値αを加えたテ
ンポラリの値、Temp=αsum +αを計算する。
Tempに更新する。計算用輝度値は、αと記憶装置から読
み出した描画用輝度値(IdR,IdG,IdB)からテクス
チャデータ参照手段14で参照された輝度値(IR ,I
G ,IB )を減じた値とを乗じた値を、記憶装置から読
み出した計算用輝度値(IcalR,IcalG,IcalB)から
減じた値、(計算用輝度値)=(IcalR,IcalG,Ica
lB)−α{(IdR,IdG,IdB)−(IR ,IG ,IB
)}に更新する。Tempが1より大きい場合は、計算用
輝度値は、(計算用輝度値)=(IcalR,IcalG,Ica
lB)−(1−αsum ){(IdR,IdG,IdB)−(IR
,IG ,IB )}1から前の面積寄与率の和を減じた
値と、描画用輝度値からマイクロポリゴンに与えられた
輝度値を減じた値とを乗じた値を、前の計算用輝度値か
ら減じた値に更新し、面積寄与率の和は1に更新する。
ゴンまたは曲面に対して生成された全てのマイクロポリ
ゴンに対して処理が終了したか否かの判定を行い、終了
していなければ以上の処理を1つのポリゴンまたは曲面
に対して生成された全てのマイクロポリゴンに対して処
理が終了するまで行う。処理を終了したという判定を得
ると、描画用輝度値を計算用輝度値に更新し、更新が終
了したならば計算用輝度値と面積寄与率の和を0に初期
化する。以上の処理を1シーン処理判定手段18で1シ
ーン分全てのデータに対して処理が終了したと判定され
るまで行う。第3の方法では、輝度値修正手段19は何
も処理しない。
度がある場合である。前提として、各ピクセルに対して
描画用輝度値と計算用輝度値と面積寄与率の和とを保持
することができる記憶装置があるものとする。面積寄与
率参照手段12で参照されたピクセルに対する、5×5
の領域からスクリーン空間への変換方法は第1の方法と
同様とする。このとき、レンダリング手段16は、処理
を行う当該ピクセルの面積寄与率の和αsum を読みだ
し、αsum が1より小さい時に限り、αsum に面積寄与
率参照手段12で算出した面積寄与率の値αを加えたテ
ンポラリの値、Temp=αsum +αを計算する。
Tempに更新する。計算用輝度値は、αとテクスチャデー
タ参照手段14で参照された不透明度βと記憶装置から
読み出された描画用輝度値(IdR,IdG,IdB)からテ
クスチャデータ参照手段14で参照された輝度値を減じ
た値(IR ,IG ,IB )とを乗じた値を、記憶装置か
ら読み出された計算用輝度値(IcalR,IcalG,Ical
B)から減じた値、(計算用輝度値)=(IcalR,Ical
G,IcalB)−αβ{(IdR,IdG,IdB)−(IR ,
IG ,IB )}に更新する。
は、(計算用輝度値)=(IcalR,IcalG,IcalB)−
(1−αsum )β{(IdR,IdG,IdB)−(IR ,I
G ,IB )}に更新し、面積寄与率の和は1に更新す
る。1面処理終了判定手段17は、1つのポリゴンまた
は曲面に対して生成された全てのマイクロポリゴンに対
して処理が終了したか否かの判定を行い、終了していな
ければ以上の処理を1つのポリゴンまたは曲面に対して
生成された全てのマイクロポリゴンに対して処理が終了
するまで行う。処理を終了したという判定を得ると、描
画用輝度値を計算用輝度値に更新し、更新が終了したな
らば計算用輝度値と面積寄与率の和を0に初期化する。
1シーン分全てのデータに対して処理が終了したと判定
されるまで行う。第4の方法では、輝度値修正手段19
は何も処理しない。
を特徴とする画像生成装置について、ソーティングが奥
行きに対して近いものから遠いものへ行われた場合の記
憶装置書き込み手段15の第5、6、7の動作方法につ
いて説明する。第5の方法は、テクスチャデータに不透
明度がない場合である。前提として、各ピクセルの輝度
値と面積寄与率の和を保持することができる記憶装置が
あるもとする。面積寄与率参照手段12で参照したピク
セルに対する、5×5の領域からスクリーン空間への変
換方法は第1の方法と同様とする。このとき、レンダリ
ング手段16は、処理を行う当該ピクセルの面積寄与率
の和αsumを読みだし、αsum が1より小さい時に限
り、αsum に面積寄与率参照手段12で算出した面積寄
与率の値αを加えたテンポラリの値、Temp=αsum +α
を計算する。
Tempに更新する。輝度値については、αにテクスチャデ
ータ参照手段14で参照した輝度値(IR ,IG ,IB
)を乗じた値に、記憶装置から読み出した輝度値(Id
R,IdG,IdB)を加えた値、(輝度値)=α(IR ,
IG ,IB )+(IdR,IdG,IdB)に更新する。Temp
が1より大きい場合は、輝度値については、(輝度値)
=(1−αsum )(IR,IG ,IB )+(IdR,Id
G,IdB)に更新し、面積寄与率の和は1に更新する。
1シーン分全てのデータに対して処理が終了したと判定
されるまで行う。1シーン処理終了判定手段18におい
て処理が終了したという判定が行われると、輝度値修正
手段19は、面積寄与率の和が1より小さいピクセルに
対して、輝度値を記憶していた輝度値(IdR,IdG,I
dB)に、1から面積寄与率の和αを減じた値と背景とし
て与えられた輝度値(IbR,IbG,IbB)とを乗じた値
を加えた値、(輝度値)=(IdR,IdG,IdB)+(1
−α)(IbR,IbG,IbB)に更新する。
度がある場合である。前提として、各ピクセルに対して
輝度値とピクセル寄与率の和とを保持することができる
記憶装置があるものとする。面積寄与率参照手段12で
参照したピクセルに対する、5×5の領域からスクリー
ン空間への変換方法は第1の方法と同様とする。このと
き、レンダリング手段16は、処理を行う当該ピクセル
のピクセル寄与率の和γsum を読みだし、γsum が1よ
り小さい時に限り、γsum に面積参照手段12で算出し
た面積寄与率αとテクスチャデータ参照手段14で参照
した不透明度βを乗じた値を加えたテンポラリの値、Te
mp=γsum +αβを計算する。
新する。輝度値については、αとβとテクスチャデータ
参照手段14で参照された輝度値(IR ,IG ,IB )
とを乗じた値に記憶装置から読み出された輝度値(Id
R,IdG,IdB)を加えた値、(輝度 )=αβ(IR
,IG ,IB )+(IdR,IdG,IdB)に更新する。T
empが1より大きい場合は、輝度値については、(輝度
値)=(1−γsum)(IR,IG ,IB )+(IdR,I
dG,IdB)に更新し、ピクセル寄与率の和は1に更新す
る。
1シーン分全てのデータに対して処理が終了したと判定
されるまで行う。1シーン処理終了判定手段18におい
て処理が終了したという判定が行われると、輝度値修正
手段19は、ピクセル寄与率の和γsum が1より小さい
ピクセルに対して、輝度値を記憶していた輝度値(Id
R,IdG,IdB)に、1からγsum を減じた値と背景と
して与えられた輝度値(IbR,IbG,IbB)とを乗じた
値を加えた値、(輝度値)=(IdR,IdG,IdB)+
(1−γsum )(IbR,IbG,IbB)に更新する。
度がある場合である。前提として、各ピクセルの輝度値
とピクセル寄与率の和とを保持することができる輝度用
の記憶装置と面積寄与率の和とを保持することができる
面積寄与率用の記憶装置があるものとする。面積寄与率
参照手段12で参照されたピクセルに対する、5×5の
領域からスクリーン空間への変換方法は第1の方法と同
様とする。
を行う当該ピクセルの面積寄与率の和αsum とピクセル
寄与率の和γsum を読み出し、αsum ,γsum が共に1
より小さい時に限り、αsum に面積寄与率参照手段12
で算出した面積寄与率αの値を加えた面積寄与率の和の
テンポラリの値、Temp1 =αsum +αと、γsum にαと
テクスチャデータ参照手段14で参照された不透明度β
とを乗じた値を加えたピクセル寄与率の和のテンポラリ
の値、Temp2 =γsum +αβとを計算する。Temp1 ,Te
mp2 が共に1以下の場合は、面積寄与率の和はTemp1 に
更新し、ピクセル寄与率の和はTemp2に更新する。
手段14で参照された輝度値(IR,IG ,IB )とを
乗じた値を、輝度用の記憶装置から読み出された輝度値
(IdR,IdG,IdB)に加えた値、(輝度値)=αβ
(IR ,IG ,IB )+(IdR,IdG,IdB)に更新す
る。Temp1 が1より大きく、Temp2 が1以下の場合は、
輝度値は、(輝度値)=(1−αsum )β(IR ,IG
,IB )+(IdR,IdG,IdB)に更新する。面積寄
与率の和は1に更新し、ピクセル寄与率の和は、(ピク
セル寄与率の和)=γsum +(1−αsum )βに更新す
る。Temp2 が1より大きい場合は、輝度値は、(輝度
値)=(1−γsum )(IR ,IG ,IB )+(IdR,
IdG,IdB)に更新する。面積寄与率の和とピクセル寄
与率の和は1に更新する。
ゴンまたは曲面に対して生成された全てのマイクロポリ
ゴンに対して処理が終了したか否かの判定を行い、終了
していなければ以上の処理を1つのポリゴンまたは曲面
に対して生成された全てのマイクロポリゴンに対して処
理が終了するまで繰り返す。処理を終了したという判定
を得ると、面積寄与率用の記憶装置の内容を0に初期化
する。上記の処理を1シーン処理判定手段18で1シー
ン分全てのデータに対して処理が終了したと判定される
まで行う。
が終了したという判定が行われると、輝度値修正手段1
9は、ピクセル寄与率の和γsumが1より小さいピクセ
ルに対して、輝度値を記憶していた輝度値(IdR,Id
G,IdB)に、1からγsum を減じた値と背景として与
えられた輝度値(IbR,IbG,IbB)とを乗じた値を加
えた値、(輝度値)=(IdR,IdG,IdB)+(1−γ
sum )(IbR,IbG,IbB)に更新する。
参照して詳細に説明する。第1の実施例では面積寄与率
をテーブルを参照して算出する方式を採用したが、第2
の実施例ではこの部分を計算で算出する方式を採用す
る。図2は本発明の第2の実施例による画像生成装置の
構成図である。図2において、201はサブポリゴンの
内点がマイクロポリゴンの規定する領域内部にはいって
いるか否かを判定する内外判定手段、202はマイクロ
ポリゴンの規定する領域内部にはいっているサブポリゴ
ンの個数を数えるカウンティング手段、203は1ピク
セルに対する処理が終了したか否かを判定する1ピクセ
ル処理終了判定手段、205は規定領域内の全てのピク
セルに対して処理が終了したか否かを判定する規定領域
内ピクセル終了判定手段である。
る画像生成装置について、以下、その理論的背景につい
て述べ、その後、動作について説明する。第1の実施例
でも説明したように、マイクロポリゴンの規定サイズを
1以下とすれば、マイクロポリゴンは5×5ピクセルの
領域内にはいる(但し、基準点は5×5の領域の中心の
ピクセル内部にある)。この5×5の領域をΩ、マイク
ロポリゴンの囲む領域をD,(i,j)の位置のピクセ
ルの領域をPijとすると、面積寄与率の定義から次の式
(数73)が成り立つ。
時、S上の可積分関数fに対して次の関係が成り立つ。
但し、AはSの部分集合である。
から、
ことについて考える。図17はPijの各辺を2n 等分し
て、22n個のサブピクセルを生成したときの図である。
上述のサブピクセルの内点を重心とすると、新たにkl
座標系を導入して、この重心は、
の離散化式の極限で表すことができる。
有領域にいくつ入っているかを数え、それにサブピクセ
ルの面積を乗じた式を表わすものと解釈できる。従っ
て、重心が共有領域内か否かの判定を行う必要がある。
これは次の4つの補題によって行うことができる(図1
8参照)。
つのベクトル(dx ,dy )(px,py )と任意の点
(α,β)が与えられ、(α−x,β−y)=s(dx
,dy )+t(px ,py )と表わされると、0≦s
≦1かつ0≦t≦1ならば、(α,β)は基準点(x,
y)とこれを挟む2つのベクトル(dx ,dy )(p
x,py )で規定される平行四辺形の内部(境界を含
む)にある。
つのベクトル(dx ,dy )(px,py )と任意の点
(α,β)が与えられ、(α−x,β−y)=s(dx
,dy )+t(px ,py )と表わされると、0<s
<1かつ0<t<1ならば、(α,β)は基準点(x,
y)とこれを挟む2つのベクトル(dx ,dy )(p
x,py )で規定される平行四辺形の内部(境界を含ま
ない)にある。
つのベクトル(dx ,dy )(px,py )と任意の点
(α,β)が与えられ、(α−x,β−y)=s(dx
,dy )+t(px ,py )と表わされると、0≦s
≦1かつ0≦t≦1かつ0≦s+t≦1ならば、(α,
β)は基準点(x,y)とこれを挟む2つのベクトル
(dx ,dy )(px ,py )で規定される三角形の内
部(境界を含む)にある。
つのベクトル(dx ,dy )(px,py )と任意の点
(α,β)が与えられ、(α−x,β−y)=s(dx
,dy )+t(px ,py )と表わされると、0<s
<1かつ0<t<1かつ0<s+t<1ならば、(α,
β)は基準点(x,y)とこれを挟む2つのベクトル
(dx ,dy )(px ,py )で規定される三角形の内
部(境界を含まない)にある。
s,tは、dx py −px dy ≠0であれば、
=0であれば解はない(平行四辺形、三角形が潰れてい
ることを表す)。以上のことを踏まえて、その動作につ
いて説明する。マイクロポリゴンを規定する基準点とベ
クトルのデータと、基準点をその中心においた時の5×
5のピクセル領域のデータが内外判定手段201に入力
される。但し、四角形マイクロポリゴンの場合は2つの
三角形に分割されているものとする。内外判定手段20
1ではdx py −px dy =0か否かの判定を行い、0
ならば5×5の領域の全てのピクセルの面積寄与率は0
として全ての処理を終了する。dx py −px dy≠0
ならば5×5の領域のピクセル毎に、次の処理を行う。
を(数80)で求める。平行四辺形マイクロポリゴンな
らば、補題1、補題2を満たすか否かを判定し、四角
形、三角形マイクロポリゴンならば補題3、補題4を満
たすか否かを判定し、カウティング手段202で満たし
ている場合はそれぞれのカウンタを1増加させる(補題
1、2、3、4のカウンタをcount1,count2,cout3,cout
4 とする)。
203で、1ピクセル内の全てのサブピクセルに対して
終了したと判定するまで繰り返す。1ピクセル処理終了
判定手段203で、1ピクセル内の全てのサブピクセル
に対して終了したと判定されたならば、面積寄与率算出
手段204で、入力されたものが平行四辺形マイクロポ
リゴンならば、cout=cout2+(cout1-cout2)/2を計算し、
四角形、三角形マイクロポリゴンならば、cout=cout4+
(cout3-cout4)/2を計算する。
ことでこのピクセルの面積寄与率を算出する。求めた面
積寄与率は、精度に応じて全てプラスの方向に丸める。
この処理を、規定領域内ピクセル終了判定手段205
で、5×5の領域の全てのピクセルに対して終了したと
判定されるまで繰り返し、終了したと判定されたならば
全ての処理を終了する。
行ったが、第1の実施例で述べたように、規定サイズが
1以下の場合は最大のマイクロポリゴンでも3×3の領
域にはいるので、前処理としてマイクロポリゴンが内部
に含まれる最小の矩形領域を求める手段を設ければ処理
するピクセル数はもっと減らすことができる。例えば図
19に示すように、2×2のピクセルの領域でよいこと
が分かる。また、第2の実施例による面積寄与率算出手
段は、第1の実施例における面積寄与率のテーブルを作
成するときにも用いることができる。
空間で定義された曲面やポリゴンを2次元のスクリーン
空間へ幾何変換した後、マイクロポリゴンの生成を行う
ようにしたので、幾何変換の計算量は従来に比べ激減
し、処理の高速化を図ることができる。又、マイクロポ
リゴンの生成過程においても、2次元で取り扱うように
したので、座標値や成分を算出する計算は従来の3つで
はなく2つでよい。
て決定しているので、高速に処理を行うことができるほ
か、ハードウェア化が容易である。本発明では面積積分
を応用して高速に面積寄与率を算出する手法も提供し、
更にそれを面積寄与率のテーブルの作成に用いることも
できる。また、本発明は、面積寄与率のテーブルを用い
る場合、そのサイズを小さくする工夫がなされ、マイク
ロポリゴンを規定サイズ以下にするための再分割につい
ても、有効な再帰的再分割のアルゴリズムを提供する。
た画像には反映されないものが存在するが、本発明で
は、この裏向きのマイクロポリゴンを除去する手法を提
供し、実際に画像を生成するためのフレームメモリ等へ
の書き込みを効果的に行う方法を式を提供することによ
り、より高速に質の良い画像を提供することができる。
構成図
構成図
を示す説明図
図
行四辺形よりなるマイクロポリゴンの説明図(c)は三
角形よりなるマイクロポリゴンの説明図
(b−1)はマイクロポリゴンの生成方法の説明図(b
−2)はマイクロポリゴンの生成方法の説明図(c)は
マイクロポリゴンの生成方法の説明図
分割点の説明図
イン曲面の模式図
を示す説明図
ための説明図。
の構成図
る出力データ(数列)を示す図
題の説明図
す図
Claims (36)
- 【請求項1】3次元空間中で定義された曲面を2次元の
スクリーン空間へ幾何変換する幾何変換手段と、幾何変
換後のスクリーン空間中の曲面から、曲面を分割してマ
イクロポリゴンを生成するマイクロポリゴン生成手段
と、マイクロポリゴンをレンダリングするレンダリング
手段とを備えたことを特徴とする画像生成装置。 - 【請求項2】3次元空間中でコントロールポイントによ
って定義された曲面がある時、コントロールポイントと
同数の曲面上の点を2次元のスクリーン空間へ幾何変換
する幾何変換手段と、幾何変換後のスクリーン空間中の
曲面上の点からスクリーン空間でのコントロールポイン
トを算出するコントロールポイント算出手段と、前記ス
クリーン空間中のコントロールポイントを用いて曲面を
分割してマイクロポリゴンを生成するマイクロポリゴン
生成手段と、マイクロポリゴンをレンダリングするレン
ダリング手段とを備えたことを特徴とする画像生成装
置。 - 【請求項3】3次元空間中でコントロールポイントによ
って定義された曲面がある時、コントロールポイントと
同数の曲面上の点を算出する曲面点算出手段と、前記曲
面上の点を2次元のスクリーン空間へ幾何変換する幾何
変換手段と、幾何変換後のスクリーン空間中の曲面上の
点からスクリーン空間でのコントロールポイントを算出
するコントロールポイント算出手段と、前記スクリーン
空間中のコントロールポイントを用いて曲面を分割して
マイクロポリゴンを生成するマイクポリゴン生成手段
と、マイクロポリゴンをレンダリングするレンダリング
手段とを備えたことを特徴とする画像生成装置。 - 【請求項4】3次元空間中で定義されたポリゴンを2次
元のスクリーン空間へ幾何変換する幾何変換手段と、幾
何変換後のスクリーン空間中のポリゴンを分割してマイ
クロポリゴンを生成するマイクロポリゴン生成手段と、
マイクロポリゴンをレンダリングするレンダリング手段
とを備えたことを特徴とする画像生成装置。 - 【請求項5】3次元空間中で定義されたポリゴンの頂点
と内分点を2次元のスクリーン空間へ幾何変換する幾何
変換手段と、幾何変換後のスクリーン空間中の頂点と内
分点を用いてポリゴンを分割してマイクロポリゴンを生
成するマイクロポリゴン生成手段と、マイクロポリゴン
をレンダリングするレンダリング手段とを備えたことを
特徴とする画像生成装置。 - 【請求項6】曲面を与えられた分割数で分割したときに
できる分割曲面を平行四辺形で近似し、近似した平行四
辺形をレンダリングすることで画像を生成するレンダリ
ング手段を備えたことを特徴とする請求項1、2、3、
4、又は5記載の画像生成装置。 - 【請求項7】曲面を与えられた分割数で分割したときに
できる分割点と曲面の頂点を基準点とするとき、基準点
を始点として始点を挟む2つの隣接する基準点を終点と
してできる2つのベクトルで生成される平行四辺形のマ
イクロポリゴンで分割曲面を近似し、マイクロポリゴン
をレンダリングすることで画像を生成するレンダリング
手段を備えたことを特徴とする請求項1、2、3、4、
又は5記載の画像生成装置。 - 【請求項8】ポリゴンを与えられた分割数で分割したと
きにできるサブポリゴンを平行四辺形で近似し、近似し
た平行四辺形をレンダリングすることで画像を生成する
レンダリング手段を備えたことを特徴とする請求項1、
2、3、4、又は5記載の画像生成装置。 - 【請求項9】ポリゴンを与えられた分割数で分割したと
きにできる分割点とポリゴンの頂点を基準点とすると
き、基準点を始点として始点を挟む2つの隣接する基準
点を終点としてできる2つのベクトルで生成される平行
四辺形のマイクロポリゴンでサブポリゴンを近似し、マ
イクロポリゴンをレンダリングすることで画像を生成す
るレンダリング手段を備えたことを特徴とする請求項
1、2、3、4、又は5記載の画像生成装置。 - 【請求項10】ポリゴンを与えられた分割数で分割した
ときにできる分割点とポリゴンの頂点から4近接点を選
び、この近接点を結んでできる四角形サブポリゴンの4
辺の内最大辺の端点1つを始点とし、始点を挟む2つの
近接点を終点とする2つのベクトルできる平行四辺形の
マイクロポリゴンで前記四角形サブポリゴンを近似し、
マイクロポリゴンをレンダリングすることで画像を生成
するレンダリング手段を備えたことを特徴とする請求項
1、2、3、4、又は5記載の画像生成装置。 - 【請求項11】四角形ポリゴンを与えられた分割数で分
割したときにできる分割点とポリゴンの頂点から4近接
点を選び、この近接点を結んでできる四角形サブポリゴ
ンの4辺の内、元の四角形ポリゴンの最大辺に対応する
四角形サブポリゴンの辺の端点の1つを始点とし、始点
を挟む2つの近接点を終点とする2つのベクトルできる
平行四辺形のマイクロポリゴンで前記四角形サブポリゴ
ンを近似し、マイクロポリゴンをレンダリングすること
で画像を生成するレンダリング手段を備えたことを特徴
とする請求項1、2、3、4、又は5記載の画像生成装
置。 - 【請求項12】曲面を与えられた分割数で分割したとき
にできる分割曲面の各ピクセルに対する面積寄与率をテ
ーブルによって求める面積寄与率参照手段と、この面積
寄与率を使ってレンダリングすることで画像を生成する
レンダリング手段とを備えたことを特徴とする請求項
1、2、3、4、又は5記載の画像生成装置。 - 【請求項13】曲面を与えられた分割数で分割したとき
にできる分割曲面を平行四辺形近似したマイクロポリゴ
ンの各ピクセルに対する面積寄与率をテーブルによって
求める面積寄与率参照手段と、この面積寄与率を使って
レンダリングすることで画像を生成するレンダリング手
段とを備えたことを特徴とする請求項1、2、3、4、
又は5記載の画像生成装置。 - 【請求項14】曲面を与えられた分割数で分割したとき
にできる分割曲面を三角形で近似したマイクロポリゴン
の各ピクセルに対する面積寄与率をテーブルによって求
める面積寄与率参照手段と、この面積寄与率を使ってレ
ンダリングすることで画像を生成するレンダリング手段
とを備えたことを特徴とする請求項1、2、3、4、又
は5記載の画像生成装置。 - 【請求項15】ポリゴンを与えられた分割数で分割した
ときにできるサブポリゴンの各ピクセルに対する面積寄
与率をテーブルによって求める面積寄与率参照手段と、
この面積寄与率を使ってレンダリングすることで画像を
生成するレンダリング手段とを備えたことを特徴とする
請求項1、2、3、4、又は5記載の画像生成装置。 - 【請求項16】ポリゴンを与えられた分割数で分割した
ときにできるサブポリゴンを平行四辺形近似したマイク
ロポリゴンの各ピクセルに対する面積寄与率をテーブル
によって求める面積寄与率参照手段と、この面積寄与率
を使ってレンダリングすることで画像を生成するレンダ
リング手段とを備えたことを特徴とする請求項1、2、
3、4、又は5記載の画像生成装置。 - 【請求項17】ポリゴンを与えられた分割数で分割した
ときにできるサブポリゴンを三角形で近似したマイクロ
ポリゴンの各ピクセルに対する面積寄与率をテーブルに
よって求める面積寄与率参照手段と、この面積寄与率を
使ってレンダリングすることで画像を生成するレンダリ
ング手段とを備えたことを特徴とする請求項1、2、
3、4、又は5記載の画像生成装置。 - 【請求項18】ポリゴンや曲面を与えられた分割数で分
割したときにできるサブポリゴンや分割曲面を平行四辺
形近似したマイクロポリゴンを規定する基準点の位置座
標とこの基準点を挟む2つの隣辺ベクトルの成分から面
積寄与率のテーブルを参照するアドレスを生成するアド
レス生成手段を備えたことを特徴とする請求項12、1
3、14、15、16、又は17記載の画像生成装置。 - 【請求項19】ポリゴンや曲面を与えられた分割数で分
割したときにできるサブポリゴンや分割曲面を三角形で
近似したマイクロポリゴンを規定する基準点の位置座標
とこの基準点を挟む2つの隣辺ベクトルの成分から面積
寄与率のテーブルを参照するアドレスを生成するアドレ
ス生成手段を備えたことを特徴とする請求項12、1
3、14、15、16、又は17記載の画像生成装置。 - 【請求項20】生成されたマイクロポリゴンに対して、
マイクロポリゴンが規定の大きさ以内か否かを判定する
再分割判定手段と、規定の大きさより大きい場合に元の
マイクロポリゴンの4辺の長さから再分割するときの分
割数を決定する分割数決定手段と、分割数でマイクロポ
リゴンを分割してサブマイクロポリゴンを生成するサブ
マイクロポリゴン生成手段と、生成されたサブマイクロ
ポリゴンに対して規定の大きさ以内か否かを前記再分割
判定手段によって判定し、規定の大きさより大きいとき
は分割数を更新する分割数更新手段とを有し、前記分割
数更新手段で更新された分割数で前記サブマイクロポリ
ゴン生成手段によって再帰的にサブマイクロポリゴンを
生成することを特徴とする請求項1、2、3、4、又は
5記載の画像生成装置。 - 【請求項21】曲面を規定するコントロールポイントの
並び方による曲面の表面の向きを示す情報とこの曲面に
対して生成されたマイクロポリゴンの法線の向きから、
描画しなくてよいマイクロポリゴンを決定する裏面除去
手段を備えたことを特徴とする請求項1、2、3、4、
又は5記載の画像生成装置。 - 【請求項22】2次元のスクリーン空間中の曲面に対し
て、一番手前あるいは奥の頂点からマイクロポリゴンが
生成されるようにコントロールポイントのインデックス
を変更するインデックス変更手段と、変更後のマイクロ
ポリゴンの発生順番に合わせて輝度値データのアクセス
順を変更するアクセス変更手段とを備えたことを特徴と
する請求項1、2、3、4、又は5記載の画像生成装
置。 - 【請求項23】ポリゴンや曲面を与えられた分割数で分
割したときにできるサブポリゴン及び分割曲面の基準点
を1ピクセル内に固定し、サブポリゴン及び分割曲面を
任意に移動させて生成し、エントリは最大サイズのサブ
ポリゴンまたは分割曲面が含まれるだけのピクセル数分
しか面積寄与率を保持していない面積寄与率テーブルを
備えたことを特徴とする請求項12、13、14、1
5、16、又は17記載の画像生成装置。 - 【請求項24】ポリゴンや曲面を与えられた分割数で分
割したときにできるサブポリゴンや分割曲面を平行四辺
形近似したマイクロポリゴンの基準点を1ピクセル内に
固定し、この基準点を挟む2つの隣辺ベクトルを任意に
移動させて生成し、エントリは最大サイズのマイクロポ
リゴンが含まれるだけのピクセル数分しか面積寄与率を
保持していない面積寄与率テーブルを備えたことを特徴
とする請求項12、13、14、15、16、又は17
記載の画像生成装置。 - 【請求項25】ポリゴンや曲面を与えられた分割数で分
割したときにできるサブポリゴンや分割曲面を三角形で
近似したマイクロポリゴンの基準点を1ピクセル内に固
定し、この基準点を挟む2つの隣辺ベクトルを任意に移
動させて生成し、エントリは最大サイズのマイクロポリ
ゴンが含まれるだけのピクセル数分しか面積寄与率を保
持していない面積寄与率テーブルを備えたことを特徴と
する請求項12、13、14、15、16、又は17記
載の画像生成装置。 - 【請求項26】ピクセルを計算精度に応じた分割数で分
割したときにできるサブピクセルの内部の代表点が、ポ
リゴンや曲面を与えられた分割数で分割したときにでき
るサブポリゴンや分割曲面を四角形で近似したマイクロ
ポリゴンの規定する領域内か否かを判定する内外判定手
段と、前記内外判定手段の結果に基づきサブピクセルの
代表点がマイクロポリゴンの規定する領域内に入ってい
るサブピクセルの個数を数えるカウンティング手段と、
前記カウンティング手段で数えた個数にサブピクセルの
面積をかけて面積寄与率を算出する面積寄与率算出手段
とを備えたことを特徴とする請求項1、2、3、4、又
は5記載の画像生成装置。 - 【請求項27】ピクセルを計算精度に応じた分割数で分
割したときにできるサブピクセルの内部の代表点が、ポ
リゴンや曲面を与えられた分割数で分割したときにでき
るサブポリゴンや分割曲面を平行四辺形で近似したマイ
クロポリゴンの規定する領域内か否かを判定する内外判
定手段と、前記内外判定手段の結果に基づきサブピクセ
ルの代表点がマイクロポリゴンの規定する領域内に入っ
ているサブピクセルの個数を数えるカウンティング手段
と、前記カウンティング手段で数えた個数にサブピクセ
ルの面積をかけることで面積寄与率を算出する面積寄与
率算出手段とを備えたことを特徴とする請求項1、2、
3、4、又は5記載の画像生成装置。 - 【請求項28】ピクセルを計算精度に応じた分割数で分
割したときにできるサブピクセルの内部の代表点が、ポ
リゴンや曲面を与えられた分割数で分割したときにでき
るサブポリゴンや分割曲面を三角形で近似したマイクロ
ポリゴンの規定する領域内か否かを判定する内外判定手
段と、前記内外判定手段の結果に基づきサブピクセルの
代表点がマイクロポリゴンの規定する領域内に入ってい
るサブピクセルの個数を数えるカウンティング手段と、
前記カウンティング手段で数えた個数にサブピクセルの
面積をかけることで面積寄与率を算出する面積寄与率算
出手段とを備えたことを特徴とする請求項1、2、3、
4、又は5記載の画像生成装置。 - 【請求項29】前記面積寄与率算出手段は算出した面積
寄与率を全てプラスの方向に丸めることを特徴とする請
求項26、27、又は28記載の画像生成装置。 - 【請求項30】各ピクセルに対して描画用輝度値と計算
用輝度値と面積寄与率の和とを保持することが可能な記
憶装置に対し、1つのポリゴンまたは曲面に対して生成
されたマイクロポリゴンの各ピクセルに対して算出され
た面積寄与率を書き込む際、面積寄与率の和が1より小
さいとき、前の面積寄与率の和に前記算出された面積寄
与率の値を加えたテンポラリの値を計算し、テンポラリ
の値が1以下の場合は、面積寄与率の和は前記テンポラ
リの値に更新し、前記計算用輝度値は前記算出された面
積寄与率にマイクロポリゴンに与えた輝度値を乗じた値
と前の計算用輝度値とを加えた値に更新し、前記テンポ
ラリの値が1より大きい場合は、計算用輝度値は1から
前の面積寄与率の和を減じた値にこのマイクロポリゴン
に与えた輝度値を乗じた値と前の計算用輝度値とを加え
た値に更新し、面積寄与率の和は1に更新するレンダリ
ング手段と、1つのポリゴンまたは曲面に対して生成さ
れた全てのマイクロポリゴンに対して処理が終了したか
否か判定し、終了したと判定した場合、描画用輝度値
を、1から面積寄与率の和を減じた値に前の描画用輝度
値を乗じた値と計算用輝度値とを加えた値に更新し、更
新が終了したならば計算用輝度値と面積寄与率の和を0
に初期化する1面処理終了判定手段とから成る記憶装置
書き込み手段を備えたことを特徴とする請求項1、2、
3、4、又は5記載の画像生成装置。 - 【請求項31】面積寄与率に不透明度を乗じた値をピク
セル寄与率とするとき、各ピクセルに対して描画用輝度
値と計算用輝度値と面積寄与率の和とピクセル寄与率の
和を保持することが可能な記憶装置に対し、1つのポリ
ゴンまたは曲面に対して生成されたマイクロポリゴンの
各ピクセルに対して算出された面積寄与率を書き込む
際、面積寄与率の和が1より小さいとき、前の面積寄与
率の和に前記算出された面積寄与率の値を加えたテンポ
ラリの値を計算し、前記テンポラリの値が1以下の場合
は、面積寄与率の和は前記テンポラリの値に更新し、ピ
クセル寄与率の和はマイクロポリゴンに与えた不透明度
に対し前記算出した面積寄与率を乗じた値と前のピクセ
ル寄与率の和とを加えた値に更新し、計算用輝度値は前
記算出した面積寄与率とマイクロポリゴンに与えた不透
明度と輝度値とを乗じた値と、前の計算用輝度値とを加
えた値に更新し、前記テンポラリの値が1より大きい場
合は、計算用輝度値は1から前の面積寄与率の和を減じ
た値とこのマイクロポリゴンに与えた不透明度と輝度値
とを乗じた値と、前の計算用輝度値とを加えた値に更新
し、面積寄与率の和は1に更新し、ピクセル寄与率の和
は1から前の面積寄与率の和を減じた値にマイクロポリ
ゴンに与えた不透明度を乗じた値と、前のピクセル寄与
率の和とを加えた値に更新するレンダリング手段と、1
つのポリゴンまたは曲面に対して生成された全てのマイ
クロポリゴンに対して処理が終了したか否かの判定を行
い、終了したという判定ならば、描画用輝度値を、1か
らピクセル寄与率の和を減じた値に前の描画用輝度値を
乗じた値と計算用輝度値とを加えた値に更新し、更新が
終了したならば計算用輝度値と面積寄与率の和とピクセ
ル寄与率の和を0に初期化する1面処理終了判定手段と
からなる記憶装置書き込み手段を備えたことを特徴とす
る請求項1、2、3、4、又は5記載の画像生成装置。 - 【請求項32】各ピクセルに対して描画用輝度値と計算
用輝度値と面積寄与率の和を保持することが可能な記憶
装置に対し、1つのポリゴンまたは曲面に対して生成さ
れたマイクロポリゴンの各ピクセルに対して算出された
面積寄与率を書き込む際、面積寄与率の和が1より小さ
いとき、前の面積寄与率の和に前記算出された面積寄与
率の値を加えたテンポラリの値を計算し、テンポラリの
値が1以下の場合は、面積寄与率の和は前記テンポラリ
の値に更新し、計算用輝度値は前記算出された面積寄与
率と、描画用輝度値からマイクロポリゴンに与えた輝度
値を減じた値とを乗じた値を前の計算用輝度値から減じ
た値に更新し、テンポラリの値が1より大きい場合は、
計算用輝度値は1から前の面積寄与率の和を減じた値
と、描画用輝度値からマイクロポリゴンに与えた輝度値
を減じた値とを乗じた値を、前の計算用輝度値から減じ
た値に更新し、面積寄与率の和は1に更新するレンダリ
ング手段と、1つのポリゴンまたは曲面に対して生成さ
れた全てのマイクロポリゴンに対して処理が終了したか
否かの判定を行い、終了したという判定ならば、描画用
輝度値を計算用輝度値に更新し、更新が終了したならば
計算用輝度値と面積寄与率の和を0に初期化する1面処
理終了判定手段とから成る記憶装置書き込み手段を備え
たことを特徴とする請求項1、2、3、4、又は5記載
の画像生成装置。 - 【請求項33】各ピクセルに対して描画用輝度値と計算
用輝度値と面積寄与率の和を保持することが可能な記憶
装置がある時、1つのポリゴンまたは曲面に対して生成
されたマイクロポリゴンの各ピクセルに対する面積寄与
率算出後、前記記憶装置へ書き込む際に、面積寄与率の
和が1より小さい時に限り、前の面積寄与率の和に算出
した面積寄与率の値を加えたテンポラリの値を計算し、
テンポラリの値が1以下の場合は、面積寄与率の和はテ
ンポラリの値に更新し、計算用輝度値は、算出した面積
寄与率と、マイクポリゴンに与えられた不透明度と、描
画用輝度値からマイクロポリゴンに与えられた輝度値を
減じた値とを乗じた値を、前の計算用輝度値から減じた
値に更新し、テンポラリの値が1より大きい場合は、計
算用輝度値は、1から前の面積寄与率の和を減じた値
と、マイクポリゴンに与えられた不透明度と、描画用輝
度値からマイクロポリゴンに与えられた輝度値を減じた
値とを乗じた値を、前の計算用輝度値から減じた値に更
新し、面積寄与率の和は1に更新するレンダリング手段
と、1つのポリゴンまたは曲面に対して生成された全て
のマイクロポリゴンに対して処理が終了したか否かの判
定を行い、終了したという判定ならば、描画用輝度値を
計算用輝度値に更新し、更新が終了したならば計算用輝
度値と面積寄与率の和を0に初期化する1面処理終了判
定手段とから成る記憶装置書き込み手段を備えたことを
特徴とする請求項1、2、3、4、又は5記載の画像生
成装置。 - 【請求項34】各ピクセルの輝度値と面積寄与率の和を
保持することが可能な記憶装置に対して、マイクロポリ
ゴンの各ピクセルに対する面積寄与率算出後、前記記憶
装置へ書き込む際に、面積寄与率の和が1より小さい時
に限り、前の面積寄与率の和に算出した面積寄与率の値
を加えたテンポラリの値を計算し、テンポラリの値が1
以下の場合は、前の面積寄与率の和をテンポラリの値に
更新し、輝度値については、算出した面積寄与率にマイ
クロポリゴンに与えられた輝度値を乗じた値に前の輝度
値を加えた値に更新し、テンポラリの値が1より大きい
場合は、輝度値については、1から前の面積寄与率の和
を減じた値にこのマイクロポリゴンに与えられた輝度値
を乗じた値に前の輝度値を加えた値に更新し、面積寄与
率の和は1に更新するレンダリング手段と、全てのポリ
ゴンまたは曲面の処理が終わったか否かの判定を行う1
シーン処理終了判定手段と、前記1シーン処理終了判定
手段で終了したという判定がなされたならば、面積寄与
率の和が1より小さいピクセルに対して、輝度値を記憶
していた輝度値に、1から面積寄与率の和を減じた値と
背景として与えられた輝度値とを乗じた値を加えた値に
更新する輝度値修正手段とから成る記憶装置書き込み手
段を備えたことを特徴とする請求項1、2、3、4、又
は5記載の画像生成装置。 - 【請求項35】面積寄与率に不透明度を乗じた値をピク
セル寄与率とするとき、各ピクセルに対して輝度値とピ
クセル寄与率の和を保持することが可能な記憶装置があ
る時、マイクロポリゴンの各ピクセルに対する面積寄与
率算出後、前記記憶装置へ書き込む際に、ピクセル寄与
率の和が1より小さい時に限り、前のピクセル寄与率の
和に算出した面積寄与率とマイクロポリゴンに与えられ
た不透明度を乗じた値を加えたテンポラリの値を計算
し、テンポラリの値が1以下の場合は、前のピクセル寄
与率の和をテンポラリの値に更新し、輝度値について
は、算出した面積寄与率とマイクロポリゴンに与えられ
た不透明度と輝度値とを乗じた値に前の輝度値を加えた
値に更新し、テンポラリの値が1より大きい場合は、輝
度値については、1から前のピクセル寄与率の和を減じ
た値にこのマイクロポリゴンに与えられた輝度値を乗じ
た値と、前の輝度値とを加えた値に更新し、ピクセル寄
与率の和は1に更新するレンダリング手段と、全てのポ
リゴンまたは曲面の処理が終わったか否かの判定を行う
1シーン処理終了判定手段と、前記1シーン処理終了判
定手段で終了したという判定がなされたならば、ピクセ
ル寄与率の和が1より小さいピクセルに対して、輝度値
を記憶していた輝度値に、1からピクセル寄与率の和を
減じた値と背景として与えられた輝度値とを乗じた値を
加えた値に更新する輝度値修正手段とから成る記憶装置
書き込み手段を備えたことを特徴とする請求項1、2、
3、4、又は5記載の画像生成装置。 - 【請求項36】面積寄与率に不透明度を乗じた値をピク
セル寄与率とするとき、各ピクセルの輝度値とピクセル
寄与率の和を保持することが可能な輝度用の記憶装置と
面積寄与率の和を保持することが可能な面積寄与率用の
記憶装置に対して、1つのポリゴンまたは曲面に対して
生成されたマイクロポリゴンの各ピクセルに対する面積
寄与率算出後、前記記憶装置へ書き込む際に、面積寄与
率の和とピクセル寄与率の和がどちらも1より小さい時
に限り、前の面積寄与率の和に算出した面積寄与率の値
を加えた面積寄与率の和のテンポラリの値と、前のピク
セル寄与率の和に、算出した面積寄与率とマイクロポリ
ゴンに与えられた不透明度とを乗じた値を加えたピクセ
ル寄与率の和のテンポラリの値とを計算し、面積寄与率
の和のテンポラリの値とピクセル寄与率の和のテンポラ
リの値が共に1以下の場合は、面積寄与率の和は面積寄
与率の和のテンポラリの値に更新し、ピクセル寄与率の
和はピクセル寄与率の和のテンポラリの値に更新し、輝
度値は、算出した面積寄与率とマイクロポリゴンに与え
られた不透明度と輝度値とを乗じた値を、前の輝度値に
加えた値に更新し、面積寄与率の和のテンポラリの値が
1より大きく、ピクセル寄与率の和のテンポラリの値が
1以下の場合は、輝度値は、1から前の面積寄与率の和
を減じた値と、マイクポリゴンに与えられた不透明度と
輝度値とを乗じた値を、前の輝度値に加えた値に更新
し、面積寄与率の和は1に更新し、ピクセル寄与率の和
は前のピクセル寄与率の和に、1から前の面積寄与率の
和を減じた値とマイクロポリゴンに与えられた不透明度
とを乗じた値を加えた値に更新し、ピクセル寄与率の和
のテンポラリの値が1より大きい場合は、輝度値は1か
ら前のピクセル寄与率の和を減じた値にマイクロポリゴ
ンにあたられた輝度値を乗じた値と、前の輝度値とを加
えた値に更新し、面積寄与率の和とピクセル寄与率の和
は1に更新するレンダリング手段と、1つのポリゴンま
たは曲面に対して生成された全てのマイクロポリゴンに
対して処理が終了したか否かの判定を行い、終了したと
いう判定ならば、前記面積寄与率用の記憶装置の内容を
0に初期化する1面処理終了判定手段と、全てのポリゴ
ンまたは曲面の処理が終わったか否かの判定を行う1シ
ーン処理終了判定手段と、前記1シーン処理終了判定手
段で終了したという判定がなされたならば、ピクセル寄
与率の和が1より小さいピクセルに対して、輝度値を記
憶していた輝度値に、1からピクセル寄与率の和を減じ
た値と背景として与えられた輝度値とを乗じた値を加え
た値に更新する輝度値修正手段とから成る記憶装置書き
込み手段を備えたことを特徴とする請求項1、2、3、
4、又は5記載の画像生成装置。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP34942693A JP3313221B2 (ja) | 1993-12-28 | 1993-12-28 | 画像生成方法及び画像生成装置 |
CA002138841A CA2138841C (en) | 1993-12-28 | 1994-12-22 | Apparatus and method for generating an image for 3-dimensional computer graphics |
FR9415806A FR2714505B1 (fr) | 1993-12-28 | 1994-12-28 | Dispositif et procédé pour générer une image destinée à un traitement graphique d'ordinateur tridimensionnel. |
US08/918,380 US5903273A (en) | 1993-12-28 | 1997-08-26 | Apparatus and method for generating an image for 3-dimensional computer graphics |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP34942693A JP3313221B2 (ja) | 1993-12-28 | 1993-12-28 | 画像生成方法及び画像生成装置 |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2001168928A Division JP3522714B2 (ja) | 2001-06-05 | 2001-06-05 | 画像生成方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH07200867A true JPH07200867A (ja) | 1995-08-04 |
JP3313221B2 JP3313221B2 (ja) | 2002-08-12 |
Family
ID=18403671
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP34942693A Expired - Fee Related JP3313221B2 (ja) | 1993-12-28 | 1993-12-28 | 画像生成方法及び画像生成装置 |
Country Status (4)
Country | Link |
---|---|
US (1) | US5903273A (ja) |
JP (1) | JP3313221B2 (ja) |
CA (1) | CA2138841C (ja) |
FR (1) | FR2714505B1 (ja) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6246414B1 (en) | 1997-11-17 | 2001-06-12 | Nec Corporation | Image processing in which polygon is divided |
JP2010286896A (ja) * | 2009-06-09 | 2010-12-24 | Canon Inc | 描画処理装置及び描画処理方法 |
JP5002742B2 (ja) * | 2000-03-17 | 2012-08-15 | ヒューレット・パッカード・カンパニー | パラメトリックテクスチャマップを使用して3dオブジェクトをレンダリングするための装置および方法 |
Families Citing this family (48)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1026639A3 (en) * | 1999-02-04 | 2002-09-04 | Canon Kabushiki Kaisha | 3D computer graphics processing apparatus and method |
US6515673B1 (en) | 2000-02-16 | 2003-02-04 | Enroute, Inc. | Displaying immersive videos using tiled decompression |
US7259760B1 (en) | 2000-02-16 | 2007-08-21 | Be Here Corporation | Polygonal curvature mapping to increase texture efficiency |
US6559853B1 (en) | 2000-02-16 | 2003-05-06 | Enroute, Inc. | Environment map creation using texture projections with polygonal curved surfaces |
US6897858B1 (en) | 2000-02-16 | 2005-05-24 | Enroute, Inc. | Partial image decompression of a tiled image |
US6819333B1 (en) * | 2000-05-12 | 2004-11-16 | Silicon Graphics, Inc. | System and method for displaying an image using display distortion correction |
US7245299B2 (en) * | 2003-05-12 | 2007-07-17 | Adrian Sfarti | Bicubic surface real-time tesselation unit |
USRE42534E1 (en) | 2000-07-28 | 2011-07-12 | Adrian Sfarti | Bicubic surface real-time tesselation unit |
US6504537B1 (en) | 2000-09-05 | 2003-01-07 | Nvidia Corporation | System, method and article of manufacture for fractional tessellation during graphics processing |
US7280108B2 (en) * | 2000-12-11 | 2007-10-09 | Adrian Sfarti | Bicubic surface rendering |
US7302111B2 (en) * | 2001-09-12 | 2007-11-27 | Micronic Laser Systems A.B. | Graphics engine for high precision lithography |
KR100440492B1 (ko) * | 2002-03-18 | 2004-07-15 | 신종계 | 곡면을 평면으로 전개시키는 방법 |
US7199806B2 (en) * | 2003-03-19 | 2007-04-03 | Sun Microsystems, Inc. | Rasterization of primitives using parallel edge units |
US8471852B1 (en) * | 2003-05-30 | 2013-06-25 | Nvidia Corporation | Method and system for tessellation of subdivision surfaces |
CN1871051A (zh) * | 2003-10-29 | 2006-11-29 | 松下电器产业株式会社 | 游戏系统 |
CN1874827B (zh) * | 2003-10-29 | 2010-05-12 | 松下电器产业株式会社 | 游戏系统、游戏执行设备和便携式存储介质 |
KR101107114B1 (ko) * | 2004-01-06 | 2012-01-30 | 엔엑스피 비 브이 | 그래픽 객체들을 렌더링하는 방법 |
US7295204B2 (en) * | 2004-12-14 | 2007-11-13 | Adrian Sfarti | Rapid zippering for real time tesselation of bicubic surfaces |
US7760231B2 (en) * | 2005-03-09 | 2010-07-20 | Pixar | Animated display calibration method and apparatus |
KR100767278B1 (ko) * | 2005-04-15 | 2007-10-17 | 충남대학교산학협력단 | 3차원 곡면의 2차원 평면으로의 패턴전개를 이용한맞춤의복의 디자인 방법 |
US8571346B2 (en) * | 2005-10-26 | 2013-10-29 | Nvidia Corporation | Methods and devices for defective pixel detection |
US7750956B2 (en) * | 2005-11-09 | 2010-07-06 | Nvidia Corporation | Using a graphics processing unit to correct video and audio data |
US8588542B1 (en) | 2005-12-13 | 2013-11-19 | Nvidia Corporation | Configurable and compact pixel processing apparatus |
US8737832B1 (en) | 2006-02-10 | 2014-05-27 | Nvidia Corporation | Flicker band automated detection system and method |
US8979753B2 (en) * | 2006-05-31 | 2015-03-17 | University Of Rochester | Identifying risk of a medical event |
US20080002880A1 (en) * | 2006-06-30 | 2008-01-03 | Intelisum, Inc. | Systems and methods for fusing over-sampled image data with three-dimensional spatial data |
US8594441B1 (en) | 2006-09-12 | 2013-11-26 | Nvidia Corporation | Compressing image-based data using luminance |
US9007388B1 (en) | 2006-09-28 | 2015-04-14 | Pixar | Caching attributes of surfaces without global parameterizations |
US8189006B1 (en) * | 2006-09-28 | 2012-05-29 | Pixar | Caching attributes of surfaces without global parameterizations |
KR100887466B1 (ko) | 2006-10-12 | 2009-03-10 | 태광엠티씨 주식회사 | 금형 형상 설계를 위한 연속 원활한 수학 면의 생성 방법 |
US8723969B2 (en) * | 2007-03-20 | 2014-05-13 | Nvidia Corporation | Compensating for undesirable camera shakes during video capture |
US8724895B2 (en) * | 2007-07-23 | 2014-05-13 | Nvidia Corporation | Techniques for reducing color artifacts in digital images |
US8570634B2 (en) * | 2007-10-11 | 2013-10-29 | Nvidia Corporation | Image processing of an incoming light field using a spatial light modulator |
US8780128B2 (en) * | 2007-12-17 | 2014-07-15 | Nvidia Corporation | Contiguously packed data |
US9177368B2 (en) * | 2007-12-17 | 2015-11-03 | Nvidia Corporation | Image distortion correction |
US8698908B2 (en) * | 2008-02-11 | 2014-04-15 | Nvidia Corporation | Efficient method for reducing noise and blur in a composite still image from a rolling shutter camera |
US9379156B2 (en) * | 2008-04-10 | 2016-06-28 | Nvidia Corporation | Per-channel image intensity correction |
US8373718B2 (en) * | 2008-12-10 | 2013-02-12 | Nvidia Corporation | Method and system for color enhancement with color volume adjustment and variable shift along luminance axis |
US8749662B2 (en) * | 2009-04-16 | 2014-06-10 | Nvidia Corporation | System and method for lens shading image correction |
US8698918B2 (en) * | 2009-10-27 | 2014-04-15 | Nvidia Corporation | Automatic white balancing for photography |
US9401046B2 (en) * | 2011-02-07 | 2016-07-26 | Intel Corporation | Micropolygon splatting |
US9798698B2 (en) | 2012-08-13 | 2017-10-24 | Nvidia Corporation | System and method for multi-color dilu preconditioner |
US9508318B2 (en) | 2012-09-13 | 2016-11-29 | Nvidia Corporation | Dynamic color profile management for electronic devices |
US9307213B2 (en) | 2012-11-05 | 2016-04-05 | Nvidia Corporation | Robust selection and weighting for gray patch automatic white balancing |
US9756222B2 (en) | 2013-06-26 | 2017-09-05 | Nvidia Corporation | Method and system for performing white balancing operations on captured images |
US9826208B2 (en) | 2013-06-26 | 2017-11-21 | Nvidia Corporation | Method and system for generating weights for use in white balancing an image |
CN105654460A (zh) * | 2014-12-03 | 2016-06-08 | 富泰华工业(深圳)有限公司 | 点云拼接系统及方法 |
CN108924521A (zh) * | 2018-05-31 | 2018-11-30 | 晨星半导体股份有限公司 | 投影系统的梯形校正方法及设备 |
Family Cites Families (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2194656B (en) * | 1986-09-03 | 1991-10-09 | Ibm | Method and system for solid modelling |
US4855934A (en) * | 1986-10-03 | 1989-08-08 | Evans & Sutherland Computer Corporation | System for texturing computer graphics images |
US4935879A (en) * | 1987-08-05 | 1990-06-19 | Daikin Industries, Ltd. | Texture mapping apparatus and method |
US4901064A (en) * | 1987-11-04 | 1990-02-13 | Schlumberger Technologies, Inc. | Normal vector shading for 3-D graphics display system |
US5361386A (en) * | 1987-12-04 | 1994-11-01 | Evans & Sutherland Computer Corp. | System for polygon interpolation using instantaneous values in a variable |
GB8728836D0 (en) * | 1987-12-10 | 1988-01-27 | Quantel Ltd | Electronic image processing |
US4888583A (en) * | 1988-03-14 | 1989-12-19 | Ligocki Terry J | Method and apparatus for rendering an image from data arranged in a constructive solid geometry format |
US5107444A (en) * | 1988-09-13 | 1992-04-21 | Computer Design, Inc. | Method and apparatus for flattening three-dimensional surfaces |
US5448687A (en) * | 1988-09-13 | 1995-09-05 | Computer Design, Inc. | Computer-assisted design system for flattening a three-dimensional surface and for wrapping a flat shape to a three-dimensional surface |
GB8828342D0 (en) * | 1988-12-05 | 1989-01-05 | Rediffusion Simulation Ltd | Image generator |
US5058042A (en) * | 1989-04-03 | 1991-10-15 | Hewlett-Packard Company | Method for employing a hierarchical display list in global rendering |
US5255352A (en) * | 1989-08-03 | 1993-10-19 | Computer Design, Inc. | Mapping of two-dimensional surface detail on three-dimensional surfaces |
JP3092131B2 (ja) * | 1989-12-28 | 2000-09-25 | 日本電気株式会社 | 画像生成装置 |
US5307450A (en) * | 1991-02-19 | 1994-04-26 | Silicon Graphics, Inc. | Z-subdivision for improved texture mapping |
US5299298A (en) * | 1991-02-28 | 1994-03-29 | Hewlett-Packard Company | Accelerated shadow testing method for three dimensional graphics rendering system |
JPH0528235A (ja) * | 1991-07-20 | 1993-02-05 | Fuji Xerox Co Ltd | 色変換処理装置 |
JPH05108811A (ja) * | 1991-10-04 | 1993-04-30 | Nec Home Electron Ltd | 3次元グラフイツクス画像データの符号化方法及び復号化方法 |
US5555356A (en) * | 1992-10-29 | 1996-09-10 | International Business Machines Corporation | System and method for generating a trimmed parametric surface for display on a graphic display device |
CA2103395C (en) * | 1992-11-24 | 2004-08-17 | Masakazu Suzuoki | Apparatus and method for providing texture of a moving image to a surface of an object to be displayed |
JP3240447B2 (ja) * | 1993-02-19 | 2001-12-17 | 株式会社リコー | 画像処理装置 |
US5490240A (en) * | 1993-07-09 | 1996-02-06 | Silicon Graphics, Inc. | System and method of generating interactive computer graphic images incorporating three dimensional textures |
-
1993
- 1993-12-28 JP JP34942693A patent/JP3313221B2/ja not_active Expired - Fee Related
-
1994
- 1994-12-22 CA CA002138841A patent/CA2138841C/en not_active Expired - Fee Related
- 1994-12-28 FR FR9415806A patent/FR2714505B1/fr not_active Expired - Fee Related
-
1997
- 1997-08-26 US US08/918,380 patent/US5903273A/en not_active Expired - Lifetime
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6246414B1 (en) | 1997-11-17 | 2001-06-12 | Nec Corporation | Image processing in which polygon is divided |
KR100349483B1 (ko) * | 1997-11-17 | 2002-11-18 | 닛뽕덴끼 가부시끼가이샤 | 폴리곤이분할되는화상처리 |
JP5002742B2 (ja) * | 2000-03-17 | 2012-08-15 | ヒューレット・パッカード・カンパニー | パラメトリックテクスチャマップを使用して3dオブジェクトをレンダリングするための装置および方法 |
JP2010286896A (ja) * | 2009-06-09 | 2010-12-24 | Canon Inc | 描画処理装置及び描画処理方法 |
Also Published As
Publication number | Publication date |
---|---|
US5903273A (en) | 1999-05-11 |
JP3313221B2 (ja) | 2002-08-12 |
FR2714505A1 (fr) | 1995-06-30 |
CA2138841C (en) | 2000-03-21 |
CA2138841A1 (en) | 1995-06-29 |
FR2714505B1 (fr) | 1997-01-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3313221B2 (ja) | 画像生成方法及び画像生成装置 | |
JP4385524B2 (ja) | ポリゴンデータの生成方法及び、これを用いた画像表示装置 | |
CN101116111B (zh) | 使用3d光栅化算法的2d/3d线条渲染 | |
EP1127337B2 (en) | Shading 3-dimensional computer generated images | |
JP2910979B2 (ja) | コンピュータグラフィックシステムのサブピクセルマスク発生方法および装置 | |
KR100261076B1 (ko) | 범프 맵핑과 퐁 쉐이딩을 동시에 수행하는 렌더링방법 및 장치 | |
US6577305B1 (en) | Apparatus and method for performing setup operations in a 3-D graphics pipeline using unified primitive descriptors | |
JP3675488B2 (ja) | 線形補間を用いて非同次2次遠近テクスチャマッピング座標を決定する回路 | |
JP2005228320A (ja) | 深さ画像基盤の3次元グラフィックデータの高速視覚化方法、装置及びプログラムを記録したコンピュータ可読記録媒体 | |
JPS63502464A (ja) | 実時間像発生システムに於ける包括的な歪み補正 | |
GB2343603A (en) | Shading 3-dimensional computer generated images | |
JPWO2003001458A1 (ja) | 情報処理装置 | |
JPH0916806A (ja) | 立体画像処理装置 | |
US20210398358A1 (en) | Optimizations to Reduce Multi-Channel Ray Casting for Color Sampling | |
CN111612882A (zh) | 图像处理方法、装置、计算机存储介质及电子设备 | |
JPH03202981A (ja) | 三次元図形表示方法及びシステム | |
Rosen | Rectilinear texture warping for fast adaptive shadow mapping | |
KR100305461B1 (ko) | 그래픽처리장치 | |
JP3522714B2 (ja) | 画像生成方法 | |
CN109377552A (zh) | 图像遮挡计算方法、装置、计算设备及存储介质 | |
EP0676724A2 (en) | Texture mapping method and image processing apparatus | |
KR100848687B1 (ko) | 3차원 그래픽 처리 장치 및 그것의 동작 방법 | |
JPH11242753A (ja) | 3次元描画方法および装置 | |
JPH11185052A (ja) | 3次元コンピュータグラフィックスのテクスチャマッピング座標計算装置および方法 | |
CA2261245C (en) | Division circuit and graphic display processing apparatus |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090531 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100531 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110531 Year of fee payment: 9 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110531 Year of fee payment: 9 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120531 Year of fee payment: 10 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120531 Year of fee payment: 10 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130531 Year of fee payment: 11 |
|
LAPS | Cancellation because of no payment of annual fees |