JP2004029864A - 三角形ポリゴン描画装置および三角形ポリゴン描画方法 - Google Patents
三角形ポリゴン描画装置および三角形ポリゴン描画方法 Download PDFInfo
- Publication number
- JP2004029864A JP2004029864A JP2002161925A JP2002161925A JP2004029864A JP 2004029864 A JP2004029864 A JP 2004029864A JP 2002161925 A JP2002161925 A JP 2002161925A JP 2002161925 A JP2002161925 A JP 2002161925A JP 2004029864 A JP2004029864 A JP 2004029864A
- Authority
- JP
- Japan
- Prior art keywords
- pixel
- coordinate
- vertex
- polygon
- pixels
- 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
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
- G06T17/20—Finite element generation, e.g. wire-frame surface description, tesselation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T11/00—2D [Two Dimensional] image generation
- G06T11/40—Filling a planar surface by adding surface attributes, e.g. colour or texture
Landscapes
- Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Graphics (AREA)
- Geometry (AREA)
- Software Systems (AREA)
- Image Generation (AREA)
Abstract
【解決手段】各種成分に関する増分パラメータと、メジャーエッジ、マイナーエッジの増分パラメータとをX方向、Y方向について頂点V0〜V2から計算するパラメータ計算手段1と、メジャーエッジの向き、傾きに応じて、三角形ポリゴン形状を4種類に分類して移動方向を決定する三角形タイプ判別手段2と、スタートピクセルの各種成分を計算するスタートピクセル計算手段3と、スタートピクセルから順に、ピクセルをX方向へ補間してメジャーエッジをはじめて越えたピクセルMを退避するとともに、メジャーエッジからマイナーエッジまでピクセルを補間して三角形ポリゴンの1スキャンラインを描画し、退避したピクセルMをY方向へ補間して次のスキャンラインのスタートピクセルとするピクセル移動手段4,ピクセル補間手段5とを備える。
【選択図】 図1
Description
【発明の属する技術分野】
この発明は、コンピュータグラフィクスの画像をディスプレイ上に表示する技術分野において、三角形ポリゴンをピクセルに分解して描画する三角形ポリゴン描画装置および三角形ポリゴン描画方法に係るものである。
【0002】
【従来の技術】
図6は従来の三角形ポリゴン描画方法を説明するための図である。この従来の三角形ポリゴン描画方法は、例えば以下の文献に開示されており、エッジ処理とスパン処理とを繰り返すことによりピクセルを生成する。
【0003】
<文献>
“Computer Graphics Principles and Practice Second Edition”pp.883−pp.885James D.Foley,Andries van Dam,StevenK.Feiner,John F.Hughes共著
【0004】
次に動作について説明する。
図6(b)に示すように、この三角形ポリゴン描画方法は、セットアップ処理、エッジ処理およびスパン処理の3つの処理に分類される。
【0005】
まずセットアップ処理では、図6(a)の左エッジ(Left edge),右エッジ(Right edge),スパン(右エッジと左エッジ間のスキャンライン、Current span)の増分パラメータをピクセルの各種成分について計算する。ピクセルの各種成分とは、デプス値(z),カラー値(r,g,b,a),テクスチャ座標(s,t)などである。セットアップ処理は1つの三角形ポリゴンについて1回だけ行われる。
【0006】
次のエッジ処理では、セットアップ処理で求めたエッジの増分パラメータを用いて、左エッジのピクセルPleftと右エッジのピクセルPrightとを補間処理により算出する。例えば左エッジのX座標は、次の式(1)のようにして、前回のX座標Xoldに増分パラメータΔXleftを加算することにより計算できる。
【0007】
Xnew=Xold+ΔXleft (1)
【0008】
スパン処理は、エッジ処理で求めた左エッジのピクセルPleftと右エッジのピクセルPrightとで挟まれたスキャンライン方向のピクセルを補間処理により順次求めていく。エッジ処理のときと同様、次の式(2)のようにして、X方向増分パラメータを加算することにより新しいピクセルを計算できる。
【0009】
Pi=Pi−1+ΔPx (2)
【0010】
上記のエッジ処理とスパン処理とを頂点V0から頂点V1まで繰り返すことにより、三角形ポリゴンを構成する全ピクセルを生成する。
【0011】
【発明が解決しようとする課題】
従来の三角形ポリゴン描画装置および三角形ポリゴン描画方法は以上のように構成されているので、スキャンライン更新時に左エッジのピクセル(Pleft)を算出するときに、ピクセルの中心点におけるピクセル値を再計算(サブピクセルコレクション)しなければならないという課題があった。
【0012】
サブピクセルコレクションは、エッジのピクセル値をピクセルの中心点の値に補正するための処理で、以下の式(3)で表現される。
【0013】
P0=Pleft+(X0−Xleft)・ΔPx (3)
【0014】
ここで、X0はピクセルの中心点のX座標、ΔPxはX方向のピクセル増分パラメータであり、例えばZの場合であればZ0=Zleft+(X0−Xleft)・ΔZxとなる。式(3)から、サブピクセルコレクションには、加算回路よりも回路規模が一般に大きい乗算回路が必要となることが分かる。サブピクセルコレクションは比較的計算量が多いため、スキャンライン更新のオーバーヘッドが非常に大きく、H/W量が増大してしまう。
【0015】
この発明は上記のような課題を解決するためになされたもので、スキャンライン更新時のサブピクセルコレクションを不要とし、しかも単純な制御で効率良く三角形ポリゴンの描画を行うことが可能な三角形ポリゴン描画方法を提供することを目的とする。
【0016】
【課題を解決するための手段】
この発明に係る三角形ポリゴン描画装置は、三角形ポリゴンのY座標最小頂点、Y座標最大頂点および残りの頂点から、ピクセルの各種成分に関するX方向およびY方向の増分パラメータについて計算するパラメータ計算手段と、メジャーエッジの向きおよび傾きに応じて、三角形ポリゴンの形状を4種類に分類してピクセルの移動方向を決定する三角形タイプ判別手段と、Y座標最小頂点またはY座標最大頂点に最も近いスタートピクセルの各種成分を計算するスタートピクセル計算手段と、スタートピクセルから順に、ピクセルをX方向へ補間してメジャーエッジをはじめて越えたピクセルを退避するとともに、メジャーエッジからマイナーエッジまでピクセルを補間して三角形ポリゴンの1スキャンラインを描画し、退避したピクセルをY方向へ補間して次のスキャンラインのスタートピクセルとするピクセル描画手段とを備えるようにしたものである。
【0017】
この発明に係る三角形ポリゴン描画装置は、メジャーエッジが左側にあり、Y座標最小頂点のX座標がY座標最大頂点のX座標よりも小さい三角形ポリゴンを三角形タイプ判別手段が判別すると、ピクセル描画手段は、Y座標最小頂点に最も近いスタートピクセルから順に、+X方向および+Y方向へピクセルを移動して描画するようにしたものである。
【0018】
この発明に係る三角形ポリゴン描画装置は、メジャーエッジが左側にあり、Y座標最小頂点のX座標がY座標最大頂点のX座標よりも大きい三角形ポリゴンを三角形タイプ判別手段が判別すると、ピクセル描画手段は、Y座標最大頂点に最も近いスタートピクセルから順に、+X方向および−Y方向へピクセルを移動して描画するようにしたものである。
【0019】
この発明に係る三角形ポリゴン描画装置は、メジャーエッジが右側にあり、Y座標最小頂点のX座標がY座標最大頂点のX座標よりも小さい三角形ポリゴンを三角形タイプ判別手段が判別すると、ピクセル描画手段は、Y座標最大頂点に最も近いスタートピクセルから順に、−X方向および−Y方向へピクセルを移動して描画するようにしたものである。
【0020】
この発明に係る三角形ポリゴン描画装置は、メジャーエッジが右側にあり、Y座標最小頂点のX座標がY座標最大頂点のX座標よりも大きい三角形ポリゴンを三角形タイプ判別手段が判別すると、ピクセル描画手段は、Y座標最小頂点に最も近いスタートピクセルから順に、−X方向および+Y方向へピクセルを移動して描画するようにしたものである。
【0021】
この発明に係る三角形ポリゴン描画装置は、ピクセル描画手段は、ピクセルの三角形ポリゴン内部または外部の判定を前もって行い、ピクセルの移動方向をあらかじめ決定するようにしたものである。
【0022】
この発明に係る三角形ポリゴン描画方法は、三角形ポリゴンのY座標最小頂点、Y座標最大頂点および残りの頂点から、ピクセルの各種成分に関するX方向およびY方向の増分パラメータについて計算するパラメータ計算ステップと、メジャーエッジの向きおよび傾きに応じて、三角形ポリゴンの形状を4種類に分類してピクセルの移動方向を決定する三角形タイプ判別ステップと、Y座標最小頂点またはY座標最大頂点に最も近いスタートピクセルの各種成分を計算するスタートピクセル計算ステップと、スタートピクセルから順に、ピクセルをX方向へ補間してメジャーエッジをはじめて越えたピクセルを退避するとともに、メジャーエッジからマイナーエッジまでピクセルを補間して三角形ポリゴンの1スキャンラインを描画し、退避したピクセルをY方向へ補間して次のスキャンラインのスタートピクセルとするピクセル描画ステップとを備えるようにしたものである。
【0023】
【発明の実施の形態】
以下、この発明の実施の一形態を説明する。
実施の形態1.
図1はこの発明の実施の形態1による三角形ポリゴン描画装置の構成を示す図である。
図1において、1は三角形ポリゴンの頂点データから増分パラメータを計算するパラメータ計算手段、2はパラメータ計算手段1から三角形ポリゴンの形状を4種類に分類する三角形タイプ判別手段、3はパラメータ計算手段1からスタートピクセルを計算するスタートピクセル計算手段、4は三角形タイプ判別手段2の判別結果に応じてピクセルをX方向またはY方向へ移動させるピクセル移動手段(ピクセル描画手段)、5はピクセル移動手段4に応じてピクセル値を補間するピクセル補間手段(ピクセル描画手段)である。
【0024】
次に動作について説明する。
図2はこの発明の実施の形態1による三角形ポリゴン描画装置の動作(三角形ポリゴン描画方法)を説明するための図である。
図2(a)において、まず頂点ソートステップST1では、パラメータ計算手段1が三角形の頂点のソーティングを行う。このソーティングでは、Y座標が最小である頂点(Y座標最小頂点)をV0(X0,Y0),Y座標が最大である頂点(Y座標最大頂点)をV1(X1,Y1),残る頂点をV2(X2,Y2)となるようにする(図2(b)参照)。なおここでは、左上をX−Y座標系の原点Oと仮定している。
【0025】
次のパラメータ計算ステップST2では、パラメータ計算手段1は、三角形ポリゴンの頂点データV0,V1,V2からX方向およびY方向の増分パラメータをピクセルの各種成分について計算する。ピクセルの各種成分とは、デプス値(Z),カラー値(R,G,B,A),テクスチャ座標(U,V)などである。例えば頂点V0,V1,V2のZ値をそれぞれz1,z2,z3とすると、Z成分のX方向増分パラメータdZdxおよびY方向増分パラメータdZdyは平面の方程式を利用して以下の式(4),式(5)で計算される。
【0026】
【0027】
【0028】
ここで、式(4),式(5)の記号Cは三角形V0V1V2の外積であり、以下の式(6)で表される。
【0029】
【0030】
同様に、パラメータ計算ステップST2において、パラメータ計算手段1は、ピクセルがエッジのどちら側にあるかの判定を行うために、エッジファンクションのX方向およびY方向の増分パラメータの計算も行う。エッジファンクションはメジャーエッジ、マイナーエッジ0,マイナーエッジ1について計算する。
【0031】
タイプ判別ステップST3へ移行すると、三角形タイプ判別手段2は、パラメータ計算ステップST2で計算された外積Cの符号などを用いて、次の図3に示すように、三角形ポリゴンの形状を4種類に分類する。
図3はタイプ判別ステップで分類する4種類の三角形ポリゴンの形状を説明するための図である。4種類の三角形ポリゴンは以下のような形状になっている。
【0032】
図3(a)の三角形ポリゴンType1
・メジャーエッジが左側にある
・頂点V0のX座標が頂点V1のX座標より小さい
【0033】
図3(b)の三角形ポリゴンType2
・メジャーエッジが左側にある
・頂点V0のX座標が頂点V1のX座標より大きい
【0034】
図3(c)の三角形ポリゴンType3
・メジャーエッジが右側にある
・頂点V0のX座標が頂点V1のX座標より小さい
【0035】
図3(d)の三角形ポリゴンType4
・メジャーエッジが右側にある
・頂点V0のX座標が頂点V1のX座標より大きい
【0036】
つまり、メジャーエッジの向きおよび傾きから三角形ポリゴンを4種類に分類・判別しており、次に示すように、ピクセルのX方向およびY方向の移動方向を決定するために行っている。各三角形ポリゴンの種類とピクセルの移動方向(図3(a)〜図3(d)中の矢印で示す)との対応は以下の通りである。
【0037】
図3(a)の三角形ポリゴンType1
頂点V0から下右の方向(+Y方向および+X方向)へピクセルの移動を行う
【0038】
図3(b)の三角形ポリゴンType2
頂点V1から上右の方向(−Y方向および+X方向)へピクセルの移動を行う
【0039】
図3(c)の三角形ポリゴンType3
頂点V1から上左の方向(−Y方向および−X方向)へピクセルの移動を行う
【0040】
図3(d)の三角形ポリゴンType4
頂点V0から下左の方向(+Y方向および−X方向)へピクセルの移動を行う
【0041】
スタートピクセル計算ステップST4では、パラメータ計算ステップST2で計算された増分パラメータを使って、スタートピクセル計算手段3がスタートピクセルの計算を行う(図2(c)参照)。スタートピクセルは頂点V0または頂点V1に最も近いピクセルの中心点の各成分値を計算する(サブピクセルコレクション)。例えばZ成分のスタートピクセルは以下の式(7)で計算される。なおここで、px0,py0は、それぞれスタートピクセルのX座標およびY座標であり、共に整数値である。
【0042】
【0043】
次にステップST5およびステップST6において、カレントピクセルがメジャーエッジを越えるまで(ステップST5でNOとなる間は)X方向へ補間していく(ステップST6,図2(d)参照)。X方向の向きはタイプ判別ステップST3で求めた結果で決定される。補間処理はステップST2で計算したX方向増分パラメータを加算することにより行う。例えば、Z成分の補間処理は以下の式(8)で計算される。
【0044】
Znew=Zcurrent+dZdx (8)
【0045】
ピクセルがメジャーエッジを越えたら(ステップST5でYESとなると)、そのピクセルの各成分値をMに保存(退避)しておく(ステップST7)。この保存されたピクセルMは次のスキャンライン処理へ移動するためのピクセルである。
図4はピクセルの描画方向と保存されるピクセルMとを示す図である。図4において、丸印を付したピクセルが保存されるピクセルMを表している。なお、メジャーエッジを越えたかどうかの判断はエッジファンクションの符号判定で簡単に行うことができる。
【0046】
ステップST8,ステップST9,ステップST10では、カレントピクセルがマイナーエッジ0またはマイナーエッジ1を越えるまで(ステップST8でNOの間)X方向へ補間して生成されたピクセルの描画を行う(ステップST9,ステップST10,図2(e)参照)。X方向の向きはタイプ判別ステップST3で求めた判別結果で決定される。補間処理はステップST2で計算したX方向増分パラメータを加算することにより行う。これらのステップにより1スキャンライン分のピクセルの生成と描画を行うことができる。
【0047】
カレントピクセルがマイナーエッジを越えて(ステップST8でYES)ステップST11へ移行すると、ステップST7で保存されたピクセルMをリカバリし、ピクセルMをカレントピクセルとする。そしてステップST12およびステップST13でそのカレントピクセルのY座標がY1を越えていなければY方向の補間を行う(図2(f)参照)。Y方向の向きはタイプ判別ステップST3で求めた判別結果で決定される。補間処理はステップST2で計算されたY方向増分パラメータを加算することにより行う。例えば、Z成分の補間処理は以下の式(9)で計算される。
【0048】
Znew=Zcurrent+dZdy (9)
【0049】
一方、カレントピクセルのY座標がY1を越えたら(ステップST13でYES)全てのスキャンラインについて描画がすんだことになるので、そこで三角形の描画を終了する。
【0050】
このように、図3の三角形ポリゴンの分類に応じてピクセルの移動方向を決定し、頂点V0または頂点V1に最も近いスタートピクセルからX方向へ補間する。メジャーエッジをはじめて越えたピクセルMは退避しておき、マイナーエッジ0またはマイナーエッジ1を越えるまでX方向にピクセルの補間・描画処理を行っている。
【0051】
そしてスキャンライン更新の際には、ピクセルMをリカバリしてY方向へ補間し、次のスキャンラインでは、この補間したピクセルMからX方向へ補間していく。したがって、次のスキャンラインに移ると、補間したピクセルMは必ず三角形ポリゴンの外側になり、メジャーエッジへ向かってX方向へ補間されていくようになる。逆に言えば、ピクセルMをY方向へ補間すると必ず三角形ポリゴンの外側になり、メジャーエッジへ向かってX方向に補間されるように、図3の分類、スタートピクセル、X,Y方向の移動方向を決めている。
【0052】
以下、メジャーエッジをはじめて越えてからマイナーエッジを越えるまで、X方向へピクセルの補間・描画を繰り返すことで(頂点V1または頂点V0のY座標を越えるまで補間・描画を繰り返す)、スキャンライン更新の際には単純な加算計算だけですむようになり、計算量を抑制でき、スキャンライン更新のオーバーヘッドを小さくすることができる(H/W量を削減できる)。
【0053】
以上のように、この実施の形態1によれば、三角形ポリゴンの頂点V0,頂点V1および頂点V2から、ピクセルの各種成分に関するX方向およびY方向の増分パラメータについて計算するパラメータ計算手段1と(パラメータ計算ステップ)、メジャーエッジの向きおよび傾きに応じて、三角形ポリゴンの形状を4種類に分類してピクセルの移動方向を決定する三角形タイプ判別手段2と(三角形タイプ判別ステップ)、頂点V0または頂点V1に最も近いスタートピクセルの各種成分を計算するスタートピクセル計算手段3と(スタートピクセル計算ステップ)、スタートピクセルから順に、ピクセルをX方向へ補間してメジャーエッジをはじめて越えたピクセルMを退避するとともに、メジャーエッジからマイナーエッジ0またはマイナーエッジ1までピクセルを補間して三角形ポリゴンの1スキャンラインを描画し、退避したピクセルMをY方向へ補間して次のスキャンラインのスタートピクセルとするピクセル移動手段4およびピクセル補間手段5(ピクセル描画ステップ)とを備えるようにしたので、三角形ポリゴンの形状を4種類に分類してピクセルの移動方向を決定できるようになり、演算量の多いサブピクセルコレクションを不要とし、簡単な制御で効率良く三角形ポリゴンを描画できるという効果が得られる。
【0054】
また、この実施の形態1によれば、メジャーエッジが左側にあり、Y座標最小頂点のX座標がY座標最大頂点のX座標よりも小さい三角形ポリゴンを三角形タイプ判別手段が判別すると、ピクセル描画手段は、Y座標最小頂点に最も近いスタートピクセルから順に、+X方向および+Y方向へピクセルを移動して描画するようにしたので、三角形ポリゴンの形状に応じてピクセルの移動方向を決定できるようになり、演算量の多いサブピクセルコレクションを不要とし、簡単な制御で効率良く三角形ポリゴンを描画できるという効果が得られる。
【0055】
さらに、この実施の形態1によれば、メジャーエッジが左側にあり、Y座標最小頂点のX座標がY座標最大頂点のX座標よりも大きい三角形ポリゴンを三角形タイプ判別手段が判別すると、ピクセル描画手段は、Y座標最大頂点に最も近いスタートピクセルから順に、+X方向および−Y方向へピクセルを移動して描画するようにしたので、三角形ポリゴンの形状に応じてピクセルの移動方向を決定できるようになり、演算量の多いサブピクセルコレクションを不要とし、簡単な制御で効率良く三角形ポリゴンを描画できるという効果が得られる。
【0056】
さらに、この実施の形態1によれば、メジャーエッジが右側にあり、Y座標最小頂点のX座標がY座標最大頂点のX座標よりも小さい三角形ポリゴンを三角形タイプ判別手段が判別すると、ピクセル描画手段は、Y座標最大頂点に最も近いスタートピクセルから順に、−X方向および−Y方向へピクセルを移動して描画するようにしたので、三角形ポリゴンの形状に応じてピクセルの移動方向を決定できるようになり、演算量の多いサブピクセルコレクションを不要とし、簡単な制御で効率良く三角形ポリゴンを描画できるという効果が得られる。
【0057】
さらに、この実施の形態1によれば、メジャーエッジが右側にあり、Y座標最小頂点のX座標がY座標最大頂点のX座標よりも大きい三角形ポリゴンを三角形タイプ判別手段が判別すると、ピクセル描画手段は、Y座標最小頂点に最も近いスタートピクセルから順に、−X方向および+Y方向へピクセルを移動して描画するようにしたので、三角形ポリゴンの形状に応じてピクセルの移動方向を決定できるようになり、演算量の多いサブピクセルコレクションを不要とし、簡単な制御で効率良く三角形ポリゴンを描画できるという効果が得られる。
【0058】
実施の形態2.
図5はこの発明の実施の形態2による三角形ポリゴン描画装置の構成を示す図である。図1と同一符号は同一または相当する構成である。
図5において、6はピクセル移動方向先行判断手段(ピクセル描画手段)であり、ピクセルの三角形ポリゴン内部または外部の判定を前もって行うことにより、ピクセルの移動方向をあらかじめ決定するものである。
【0059】
この実施の形態2の動作は実施の形態1と基本的に同じ動作であり、エッジファンクションの値を前もって計算しておくことにより、ピクセルの移動方向をあらかじめ決定しておく点のみが異なっている。つまり、エッジファンクションの加算と、ピクセル(例えばZ値)の加算とを同時に行うのではなく、エッジファンクションの加算を前もって(例えば1クロック先)処理するようにし、マイナーエッジを越えたかどうかの判定を予め行うことができるようにする。
【0060】
エッジに沿って補間処理を行わずに1ピクセル単位でピクセルの移動および補間を行うので、スキャンライン更新毎のサブピクセルコレクションが不要となる。これにより複雑な演算処理が不要となり、描画速度を向上することができるばかりでなく、H/W量も削減することができる。
【0061】
以上のように、この実施の形態2によれば、エッジファンクションの値を前もって計算してピクセルの三角形ポリゴン内部または外部の判定を前もって行い、ピクセルの移動方向をあらかじめ決定するピクセル移動方向先行判断手段6を備えるようにしたので、X方向およびY方向におけるピクセルの無駄な加算処理(マイナーエッジを越えてしまうピクセルなど)が不要となり、描画効率をさらに向上できるという効果が得られる。
【0062】
【発明の効果】
以上のように、この発明によれば、三角形ポリゴンのY座標最小頂点、Y座標最大頂点および残りの頂点から、ピクセルの各種成分に関するX方向およびY方向の増分パラメータについて計算するパラメータ計算手段と、メジャーエッジの向きおよび傾きに応じて、三角形ポリゴンの形状を4種類に分類してピクセルの移動方向を決定する三角形タイプ判別手段と、Y座標最小頂点またはY座標最大頂点に最も近いスタートピクセルの各種成分を計算するスタートピクセル計算手段と、スタートピクセルから順に、ピクセルをX方向へ補間してメジャーエッジをはじめて越えたピクセルを退避するとともに、メジャーエッジからマイナーエッジまでピクセルを補間して三角形ポリゴンの1スキャンラインを描画し、退避したピクセルをY方向へ補間して次のスキャンラインのスタートピクセルとするピクセル描画手段とを備えるようにしたので、三角形ポリゴンの形状を4種類に分類してピクセルの移動方向を決定できるようになり、演算量の多いサブピクセルコレクションを不要とし、簡単な制御で効率良く三角形ポリゴンを描画できるという効果が得られる。
【0063】
この発明によれば、三角形ポリゴンのY座標最小頂点、Y座標最大頂点および残りの頂点から、ピクセルの各種成分に関するX方向およびY方向の増分パラメータについて計算するパラメータ計算ステップと、メジャーエッジの向きおよび傾きに応じて、三角形ポリゴンの形状を4種類に分類してピクセルの移動方向を決定する三角形タイプ判別ステップと、Y座標最小頂点またはY座標最大頂点に最も近いスタートピクセルの各種成分を計算するスタートピクセル計算ステップと、スタートピクセルから順に、ピクセルをX方向へ補間してメジャーエッジをはじめて越えたピクセルを退避するとともに、メジャーエッジからマイナーエッジまでピクセルを補間して三角形ポリゴンの1スキャンラインを描画し、退避したピクセルをY方向へ補間して次のスキャンラインのスタートピクセルとするピクセル描画ステップとを備えるようにしたので、三角形ポリゴンの形状を4種類に分類してピクセルの移動方向を決定できるようになり、演算量の多いサブピクセルコレクションを不要とし、簡単な制御で効率良く三角形ポリゴンを描画できるという効果が得られる。
【図面の簡単な説明】
【図1】この発明の実施の形態1による三角形ポリゴン描画装置の構成を示す図である。
【図2】この発明の実施の形態1による三角形ポリゴン描画装置の動作を説明するための図である。
【図3】タイプ判別ステップで分類する4種類の三角形ポリゴンの形状を説明するための図である。
【図4】ピクセルの描画方向と保存されるピクセルとを示す図である。
【図5】この発明の実施の形態2による三角形ポリゴン描画装置の構成を示す図である。
【図6】従来の三角形ポリゴン描画方法を説明するための図である。
【符号の説明】
1 パラメータ計算手段、2 三角形タイプ判別手段、3 スタートピクセル計算手段、4 ピクセル移動手段(ピクセル描画手段)、5 ピクセル補間手段(ピクセル描画手段)、6 ピクセル移動方向先行判断手段(ピクセル描画手段)。
Claims (7)
- 三角形ポリゴンをピクセルに分解して描画する三角形ポリゴン描画装置において、
上記三角形ポリゴンのY座標最小頂点、Y座標最大頂点および残りの頂点から、上記ピクセルの各種成分に関するX方向およびY方向の増分パラメータについて計算するパラメータ計算手段と、
メジャーエッジの向きおよび傾きに応じて、上記三角形ポリゴンの形状を4種類に分類して上記ピクセルの移動方向を決定する三角形タイプ判別手段と、
上記Y座標最小頂点または上記Y座標最大頂点に最も近いスタートピクセルの各種成分を計算するスタートピクセル計算手段と、
上記スタートピクセルから順に、上記ピクセルをX方向へ補間してメジャーエッジをはじめて越えた上記ピクセルを退避するとともに、上記メジャーエッジからマイナーエッジまで上記ピクセルを移動して上記三角形ポリゴンの1スキャンラインを描画し、上記退避したピクセルをY方向へ補間して次のスキャンラインのスタートピクセルとするピクセル描画手段とを備えることを特徴とする三角形ポリゴン描画装置。 - メジャーエッジが左側にあり、Y座標最小頂点のX座標がY座標最大頂点のX座標よりも小さい三角形ポリゴンを三角形タイプ判別手段が判別すると、
ピクセル描画手段は、Y座標最小頂点に最も近いスタートピクセルから順に、+X方向および+Y方向へピクセルを移動して描画することを特徴とする請求項1記載の三角形ポリゴン描画装置。 - メジャーエッジが左側にあり、Y座標最小頂点のX座標がY座標最大頂点のX座標よりも大きい三角形ポリゴンを三角形タイプ判別手段が判別すると、
ピクセル描画手段は、Y座標最大頂点に最も近いスタートピクセルから順に、+X方向および−Y方向へピクセルを移動して描画することを特徴とする請求項1記載の三角形ポリゴン描画装置。 - メジャーエッジが右側にあり、Y座標最小頂点のX座標がY座標最大頂点のX座標よりも小さい三角形ポリゴンを三角形タイプ判別手段が判別すると、
ピクセル描画手段は、Y座標最大頂点に最も近いスタートピクセルから順に、−X方向および−Y方向へピクセルを移動して描画することを特徴とする請求項1記載の三角形ポリゴン描画装置。 - メジャーエッジが右側にあり、Y座標最小頂点のX座標がY座標最大頂点のX座標よりも大きい三角形ポリゴンを三角形タイプ判別手段が判別すると、
ピクセル描画手段は、Y座標最小頂点に最も近いスタートピクセルから順に、−X方向および+Y方向へピクセルを移動して描画することを特徴とする請求項1記載の三角形ポリゴン描画装置。 - ピクセル描画手段は、ピクセルの三角形ポリゴン内部または外部の判定を前もって行い、ピクセルの移動方向をあらかじめ決定することを特徴とする請求項1記載の三角形ポリゴン描画装置。
- 三角形ポリゴンをピクセルに分解して描画する三角形ポリゴン描画方法において、
上記三角形ポリゴンのY座標最小頂点、Y座標最大頂点および残りの頂点から、上記ピクセルの各種成分に関するX方向およびY方向の増分パラメータについて計算するパラメータ計算ステップと、
メジャーエッジの向きおよび傾きに応じて、上記三角形ポリゴンの形状を4種類に分類して上記ピクセルの移動方向を決定する三角形タイプ判別ステップと、
上記Y座標最小頂点または上記Y座標最大頂点に最も近いスタートピクセルの各種成分を計算するスタートピクセル計算ステップと、
上記スタートピクセルから順に、上記ピクセルをX方向へ補間してメジャーエッジをはじめて越えた上記ピクセルを退避するとともに、上記メジャーエッジからマイナーエッジまで上記ピクセルを移動して上記三角形ポリゴンの1スキャンラインを描画し、上記退避したピクセルをY方向へ補間して次のスキャンラインのスタートピクセルとするピクセル描画ステップとを備えることを特徴とする三角形ポリゴン描画方法。
Priority Applications (6)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002161925A JP3507057B2 (ja) | 2002-06-03 | 2002-06-03 | 三角形ポリゴン描画装置および三角形ポリゴン描画方法 |
EP03730808A EP1510971A4 (en) | 2002-06-03 | 2003-06-03 | DEVICE FOR TRACING A TRIANGULAR POLYGON AND METHOD OF TRACING A TRIANGULAR POLYGON |
CNB038007762A CN1294539C (zh) | 2002-06-03 | 2003-06-03 | 三角多边形描绘装置和三角多边形描绘方法 |
PCT/JP2003/007036 WO2003102875A1 (fr) | 2002-06-03 | 2003-06-03 | Dispositif de trace d'un polygone triangulaire et procede de trace d'un polygone triangulaire |
US10/483,492 US20040164985A1 (en) | 2002-06-03 | 2003-06-03 | Triangle polygon plotting device and triangle polygon plotting method |
KR1020047000460A KR100594555B1 (ko) | 2002-06-03 | 2003-06-03 | 삼각형 폴리곤 묘화 장치 및 삼각형 폴리곤 묘화 방법 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002161925A JP3507057B2 (ja) | 2002-06-03 | 2002-06-03 | 三角形ポリゴン描画装置および三角形ポリゴン描画方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2004029864A true JP2004029864A (ja) | 2004-01-29 |
JP3507057B2 JP3507057B2 (ja) | 2004-03-15 |
Family
ID=29706593
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002161925A Expired - Fee Related JP3507057B2 (ja) | 2002-06-03 | 2002-06-03 | 三角形ポリゴン描画装置および三角形ポリゴン描画方法 |
Country Status (6)
Country | Link |
---|---|
US (1) | US20040164985A1 (ja) |
EP (1) | EP1510971A4 (ja) |
JP (1) | JP3507057B2 (ja) |
KR (1) | KR100594555B1 (ja) |
CN (1) | CN1294539C (ja) |
WO (1) | WO2003102875A1 (ja) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006331209A (ja) * | 2005-05-27 | 2006-12-07 | Mitsubishi Electric Corp | 図形描画装置及びプログラム |
JP2007087283A (ja) * | 2005-09-26 | 2007-04-05 | Mitsubishi Electric Corp | 図形描画装置及び図形描画プログラム |
KR100742155B1 (ko) | 2005-12-30 | 2007-07-24 | 엠텍비젼 주식회사 | 스캔라인 형성 방법 및 장치 |
JP2009134620A (ja) * | 2007-11-30 | 2009-06-18 | Fujitsu Ltd | 描画装置、描画プログラムおよび描画方法 |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7800631B2 (en) * | 2003-03-18 | 2010-09-21 | Qualcomm Incorporated | Triangle rendering using direct evaluation |
JP4621617B2 (ja) * | 2006-03-28 | 2011-01-26 | 株式会社東芝 | 図形描画装置、図形描画方法、及びプログラム |
US20080218520A1 (en) * | 2007-03-09 | 2008-09-11 | Graham Sellers | Acceleration of Triangle Scan Conversion Through Minor Direction Detection |
KR101517465B1 (ko) | 2007-12-07 | 2015-05-04 | 삼성전자주식회사 | 폴리곤의 특징에 적응된 순서로 래스터화하는 래스터화엔진 및 3차원 그래픽스 시스템 |
KR100954638B1 (ko) * | 2008-04-03 | 2010-04-27 | 재단법인서울대학교산학협력재단 | 벡터 그래픽스 래스터라이제이션 방법 |
US9633458B2 (en) * | 2012-01-23 | 2017-04-25 | Nvidia Corporation | Method and system for reducing a polygon bounding box |
US8976188B1 (en) | 2012-04-20 | 2015-03-10 | Google Inc. | Optimized data communication system and method for an image rendering system |
US9721363B2 (en) | 2014-05-19 | 2017-08-01 | Google Inc. | Encoding polygon data for fast retrieval and rendering |
KR102354989B1 (ko) * | 2015-04-14 | 2022-01-24 | 삼성전자주식회사 | 경로 렌더링을 위한 타일 비닝을 수행하는 방법 및 장치. |
KR102618560B1 (ko) | 2016-06-15 | 2023-12-27 | 삼성전자주식회사 | 경로 렌더링을 수행하는 방법 및 장치 |
JP6942964B2 (ja) * | 2017-01-17 | 2021-09-29 | カシオ計算機株式会社 | 図形描画方法、図形描画装置、及びプログラム |
Family Cites Families (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0812705B2 (ja) | 1986-09-29 | 1996-02-07 | 株式会社東芝 | 画像処理装置 |
US5136664A (en) * | 1988-02-23 | 1992-08-04 | Bersack Bret B | Pixel rendering |
US5343558A (en) * | 1991-02-19 | 1994-08-30 | Silicon Graphics, Inc. | Method for scan converting shaded triangular polygons |
JPH0710404A (ja) * | 1993-06-24 | 1995-01-13 | Otis Elevator Co | エレベーターのかご |
JPH07105404A (ja) * | 1993-10-04 | 1995-04-21 | Ricoh Co Ltd | 立体画像処理装置及びその処理方法 |
US5563995A (en) * | 1993-12-28 | 1996-10-08 | Matsushita Electric Industrial Co., Ltd. | Method and system for directly drawing a convex polygon having a given number of vertices with high speed |
JPH087123A (ja) * | 1994-06-21 | 1996-01-12 | Nippon Steel Corp | 三次元画像処理方法及び装置 |
JPH08101921A (ja) * | 1994-09-30 | 1996-04-16 | Sony Corp | 三角形の頂点の並び換え装置 |
US5815166A (en) * | 1995-03-24 | 1998-09-29 | 3Dlabs Inc., Ltd. | Graphics subsystem with slaveable rasterizer |
JPH10188003A (ja) * | 1996-12-20 | 1998-07-21 | Sony Corp | 描画方法および描画装置 |
JPH10261107A (ja) * | 1997-01-14 | 1998-09-29 | Fujitsu Ltd | 輝度補間方法及び装置 |
US6034699A (en) * | 1997-05-01 | 2000-03-07 | Ati Technologies, Inc. | Rendering polygons |
US6016151A (en) * | 1997-09-12 | 2000-01-18 | Neomagic Corp. | 3D triangle rendering by texture hardware and color software using simultaneous triangle-walking and interpolation for parallel operation |
US6501474B1 (en) * | 1999-11-29 | 2002-12-31 | Ati International Srl | Method and system for efficient rendering of image component polygons |
JP2001209369A (ja) * | 2000-01-25 | 2001-08-03 | Mitsubishi Electric Corp | 3次元グラフィック用データの生成方法及び記録媒体 |
JP2001273518A (ja) * | 2000-03-28 | 2001-10-05 | Toshiba Corp | レンダリング装置 |
JP4581261B2 (ja) * | 2001-02-14 | 2010-11-17 | ソニー株式会社 | 演算装置、演算処理方法及び画像処理装置 |
US6975317B2 (en) * | 2002-03-12 | 2005-12-13 | Sun Microsystems, Inc. | Method for reduction of possible renderable graphics primitive shapes for rasterization |
-
2002
- 2002-06-03 JP JP2002161925A patent/JP3507057B2/ja not_active Expired - Fee Related
-
2003
- 2003-06-03 EP EP03730808A patent/EP1510971A4/en not_active Withdrawn
- 2003-06-03 WO PCT/JP2003/007036 patent/WO2003102875A1/ja active Application Filing
- 2003-06-03 KR KR1020047000460A patent/KR100594555B1/ko not_active IP Right Cessation
- 2003-06-03 CN CNB038007762A patent/CN1294539C/zh not_active Expired - Fee Related
- 2003-06-03 US US10/483,492 patent/US20040164985A1/en not_active Abandoned
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006331209A (ja) * | 2005-05-27 | 2006-12-07 | Mitsubishi Electric Corp | 図形描画装置及びプログラム |
JP4684744B2 (ja) * | 2005-05-27 | 2011-05-18 | 三菱電機株式会社 | 図形描画装置及びプログラム |
JP2007087283A (ja) * | 2005-09-26 | 2007-04-05 | Mitsubishi Electric Corp | 図形描画装置及び図形描画プログラム |
JP4664169B2 (ja) * | 2005-09-26 | 2011-04-06 | 三菱電機株式会社 | 図形描画装置及び図形描画プログラム |
KR100742155B1 (ko) | 2005-12-30 | 2007-07-24 | 엠텍비젼 주식회사 | 스캔라인 형성 방법 및 장치 |
JP2009134620A (ja) * | 2007-11-30 | 2009-06-18 | Fujitsu Ltd | 描画装置、描画プログラムおよび描画方法 |
JP4568750B2 (ja) * | 2007-11-30 | 2010-10-27 | 富士通株式会社 | 描画装置、描画プログラムおよび描画方法 |
Also Published As
Publication number | Publication date |
---|---|
CN1294539C (zh) | 2007-01-10 |
WO2003102875A1 (fr) | 2003-12-11 |
CN1543627A (zh) | 2004-11-03 |
KR100594555B1 (ko) | 2006-06-30 |
JP3507057B2 (ja) | 2004-03-15 |
KR20040028920A (ko) | 2004-04-03 |
US20040164985A1 (en) | 2004-08-26 |
EP1510971A1 (en) | 2005-03-02 |
EP1510971A4 (en) | 2009-11-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2004029864A (ja) | 三角形ポリゴン描画装置および三角形ポリゴン描画方法 | |
KR102101626B1 (ko) | 스크린 위치에 따라 달라지는 분해능을 가진 다수의 렌더 타겟을 위한 텍스처 매핑을 위한 그라디언트 조정 | |
US7414636B2 (en) | Rendering apparatus, rendering processing method and computer program product | |
JP2000182038A (ja) | 歪まされた情報からの遠近法的矯正デ―タの生成方法及びこれに用いる装置並びにコンピュ―タプログラム製品 | |
CN106204441B (zh) | 一种图像局部放大的方法及装置 | |
US6421063B1 (en) | Pixel zoom system and method for a computer graphics system | |
JP2612260B2 (ja) | テクスチヤマツピング装置 | |
JP3892016B2 (ja) | 画像処理装置および画像処理方法 | |
JP2009009345A (ja) | ベクター画像描画装置、ベクター画像描画方法およびプログラム | |
JP2957511B2 (ja) | グラフィック処理装置 | |
US6556203B1 (en) | Tile-based digital differential analyzer rasterization | |
CN111932566B (zh) | 一种模型轮廓图生成方法、装置和系统 | |
CN114741188A (zh) | 图形元素处理方法、装置、电子设备及存储介质 | |
JPH0695340B2 (ja) | 画像マッチング方法 | |
CN108564523B (zh) | Gpu中一种任意视口变换的实现方法 | |
JPH05298456A (ja) | テクスチャ・マッピング方式 | |
Loviscach | Efficient magnification of bi-level textures | |
US7454320B1 (en) | System and method for calculating partial differential equations in a hardware graphics pipeline | |
JP2611599B2 (ja) | コンピュータグラフイックスのデータ処理方法及び装置 | |
JP2021064334A (ja) | 画像処理装置、画像処理方法、及びプログラム | |
JP2000298729A (ja) | 二次元画像生成装置 | |
JP2004054635A (ja) | 画像処理装置およびその方法 | |
JP2000338959A (ja) | 画像処理装置 | |
JP2720818B2 (ja) | 三次元多角形描画方式 | |
JP5504142B2 (ja) | 画像処理装置、画像処理方法及び画像処理プログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20031217 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20071226 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20081226 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20091226 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20091226 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101226 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111226 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111226 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121226 Year of fee payment: 9 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121226 Year of fee payment: 9 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20131226 Year of fee payment: 10 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |