JP2001195602A - テクスチャマッピング法 - Google Patents
テクスチャマッピング法Info
- Publication number
- JP2001195602A JP2001195602A JP2000005824A JP2000005824A JP2001195602A JP 2001195602 A JP2001195602 A JP 2001195602A JP 2000005824 A JP2000005824 A JP 2000005824A JP 2000005824 A JP2000005824 A JP 2000005824A JP 2001195602 A JP2001195602 A JP 2001195602A
- Authority
- JP
- Japan
- Prior art keywords
- equation
- texture
- value
- linear interpolation
- calculated
- 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.)
- Withdrawn
Links
Landscapes
- Processing Or Creating Images (AREA)
- Image Generation (AREA)
Abstract
(57)【要約】
【課題】テクスチャ画像の画素サイズと描画画像の画素
サイズとの比率KをK=max[{(δU/δX)2 +
(δV/δX)2 }1/2 、{(δU/δY)2 +(δV
/δY)2 }1/2 ]により算出する工程(但し、U、V
はテクスチャ座標、X、Yは表示座標)を有するテクス
チャマッピング法に関し、K値を少ない演算量で算出す
る。 【解決手段】線形補間パラメタLを導入し、L=Q2 K
と近似し(但し、Qは透視変換に伴う歪を補正するため
の線形補間パラメタ)、L、Qをそれぞれ線形補間し、
K=L/Q2 を演算することによりK値を算出する。
サイズとの比率KをK=max[{(δU/δX)2 +
(δV/δX)2 }1/2 、{(δU/δY)2 +(δV
/δY)2 }1/2 ]により算出する工程(但し、U、V
はテクスチャ座標、X、Yは表示座標)を有するテクス
チャマッピング法に関し、K値を少ない演算量で算出す
る。 【解決手段】線形補間パラメタLを導入し、L=Q2 K
と近似し(但し、Qは透視変換に伴う歪を補正するため
の線形補間パラメタ)、L、Qをそれぞれ線形補間し、
K=L/Q2 を演算することによりK値を算出する。
Description
【0001】
【発明の属する技術分野】本発明は、グラフィックス装
置において、スキャナなどで取り込んだ絵、写真あるい
はコンピュータで作成された二次元画像を三次元図形の
表面に貼り付けて質感を持った画像を生成するための図
形処理法であるテクスチャマッピング法に関する。
置において、スキャナなどで取り込んだ絵、写真あるい
はコンピュータで作成された二次元画像を三次元図形の
表面に貼り付けて質感を持った画像を生成するための図
形処理法であるテクスチャマッピング法に関する。
【0002】
【従来の技術】図5は一般的なグラフィックス装置の概
略的構成図であり、図5中、100はCRTなどの表示
装置、110は表示装置100の各画素に対応する記憶
領域を有し、表示装置100の各画素の色値を、対応す
る記録領域に記憶するフレームバッファ、120はテク
スチャ画像情報を記憶するテクスチャメモリである。
略的構成図であり、図5中、100はCRTなどの表示
装置、110は表示装置100の各画素に対応する記憶
領域を有し、表示装置100の各画素の色値を、対応す
る記録領域に記憶するフレームバッファ、120はテク
スチャ画像情報を記憶するテクスチャメモリである。
【0003】また、130は図形データの生成や、座標
変換、ライティング、クリッピングなどのジオメトリ処
理を行うCPUであり、一般に、図形データは、3次元
空間における三角形や線分の頂点データで定義され、ジ
オメトリ処理は、頂点データに対して施される。
変換、ライティング、クリッピングなどのジオメトリ処
理を行うCPUであり、一般に、図形データは、3次元
空間における三角形や線分の頂点データで定義され、ジ
オメトリ処理は、頂点データに対して施される。
【0004】また、140は描画プロセッサであり、1
41は三角形や線分などの図形内部のデータ、たとえ
ば、座標値と色値を、ジオメトリ処理された図形の各頂
点の座標値と色値から線形補間して算出し、フレームバ
ッファ110内の座標で指定される各画素に対応する記
録領域にその色値を書き込む描画部である。
41は三角形や線分などの図形内部のデータ、たとえ
ば、座標値と色値を、ジオメトリ処理された図形の各頂
点の座標値と色値から線形補間して算出し、フレームバ
ッファ110内の座標で指定される各画素に対応する記
録領域にその色値を書き込む描画部である。
【0005】また、142はフレームバッファ110か
ら表示装置100の各画素の色値を適切なタイミングで
順次読み出し、デジタル/アナログ変換などを施して表
示制御を行う表示部である。なお、描画部141の機能
はCPU130で実現しても良いし、フレームバッファ
110とテクスチャメモリ120は同一の記憶手段上に
配置しても良い。
ら表示装置100の各画素の色値を適切なタイミングで
順次読み出し、デジタル/アナログ変換などを施して表
示制御を行う表示部である。なお、描画部141の機能
はCPU130で実現しても良いし、フレームバッファ
110とテクスチャメモリ120は同一の記憶手段上に
配置しても良い。
【0006】このように構成されたグラフィックス装置
においては、テクスチャマッピングは、CPU130な
どの指示により、描画部141がテクスチャメモリ12
0からフレームバッファ110内の各画素に対応するテ
クスチャ画素の情報を取り出し、その情報をフレームバ
ッファ110内の各画素の色値に反映させることにより
行われる。
においては、テクスチャマッピングは、CPU130な
どの指示により、描画部141がテクスチャメモリ12
0からフレームバッファ110内の各画素に対応するテ
クスチャ画素の情報を取り出し、その情報をフレームバ
ッファ110内の各画素の色値に反映させることにより
行われる。
【0007】一般に、描画される3次元図形は三角形に
分割され、テクスチャマッピングが行われる場合には、
図6に示すように、三角形の各頂点にテクスチャ座標が
与えられる。また、描画を行う図形内の各ピクセルのテ
クスチャ座標を計算する場合には、図形の各頂点に与え
られたテクスチャ座標から図形内の各ピクセルのテクス
チャ座標を補間する必要がある。
分割され、テクスチャマッピングが行われる場合には、
図6に示すように、三角形の各頂点にテクスチャ座標が
与えられる。また、描画を行う図形内の各ピクセルのテ
クスチャ座標を計算する場合には、図形の各頂点に与え
られたテクスチャ座標から図形内の各ピクセルのテクス
チャ座標を補間する必要がある。
【0008】しかし、色値やZ値(奥行き情報)の場合
と同様に、テクスチャ座標を表示座標系(デバイス座標
系)で線形補間すると、透視変換(視点から見て遠くに
あるものを小さくするような変換)が行われた場合、テ
クスチャマッピングの結果が歪んだものとなってしまう
場合がある。
と同様に、テクスチャ座標を表示座標系(デバイス座標
系)で線形補間すると、透視変換(視点から見て遠くに
あるものを小さくするような変換)が行われた場合、テ
クスチャマッピングの結果が歪んだものとなってしまう
場合がある。
【0009】たとえば、図7Aに示すように、四角形1
50を2個の三角形151、152に分割し、四角形1
50にテクスチャ画像160を貼り付けて描画する場合
において、たとえば、図7Aに示す四角形150が図7
Bに示す四角形150になるように透視変換を行うと、
四角形150の中心のピクセル153のテクスチャ座標
は、頂点S2、S3のテクスチャ座標から線形補間され
ることになる。
50を2個の三角形151、152に分割し、四角形1
50にテクスチャ画像160を貼り付けて描画する場合
において、たとえば、図7Aに示す四角形150が図7
Bに示す四角形150になるように透視変換を行うと、
四角形150の中心のピクセル153のテクスチャ座標
は、頂点S2、S3のテクスチャ座標から線形補間され
ることになる。
【0010】この場合、四角形150の頂点S1、S
2、S3、S4のテクスチャ座標がそれぞれ(0,
0)、(1,0)、(0,1)、(1,1)であるとす
ると、ピクセル153のテクスチャ座標は(0.5,0.
5)となるので、図7B示す四角形150のテクスチャ
マッピングの結果は、図7Cに示すように、不自然なも
のとなってしまう。
2、S3、S4のテクスチャ座標がそれぞれ(0,
0)、(1,0)、(0,1)、(1,1)であるとす
ると、ピクセル153のテクスチャ座標は(0.5,0.
5)となるので、図7B示す四角形150のテクスチャ
マッピングの結果は、図7Cに示すように、不自然なも
のとなってしまう。
【0011】ここで、二点P1 、P2 間をm:1−m
(但し、0≦m≦1)に内分する点をPC として、点P
1 、P2 の或るパラメタ値をa1 、a2 とする場合、P
C のパラメタ値aC は、 aC =(1−m)a1+ma2 (式1) となる。三角形や線分などの内部を塗りつぶす場合、通
常、各画素の色値やZ値は、(式1)により補間され
る。
(但し、0≦m≦1)に内分する点をPC として、点P
1 、P2 の或るパラメタ値をa1 、a2 とする場合、P
C のパラメタ値aC は、 aC =(1−m)a1+ma2 (式1) となる。三角形や線分などの内部を塗りつぶす場合、通
常、各画素の色値やZ値は、(式1)により補間され
る。
【0012】テクスチャマッピングを行う場合にも、図
形内部の各画素におけるテクスチャ座標を補間する必要
があるが、透視変換に伴う歪を補正する必要があるた
め、図形内部の各画素におけるテクスチャ座標は、以下
の(式2)、(式3)により補間される。
形内部の各画素におけるテクスチャ座標を補間する必要
があるが、透視変換に伴う歪を補正する必要があるた
め、図形内部の各画素におけるテクスチャ座標は、以下
の(式2)、(式3)により補間される。
【0013】すなわち、前記内分点PC におけるテクス
チャ座標(UC ,VC )は、点P1、P2 におけるテク
スチャ座標を(U1 ,V1 )、(U2 ,V2 )、点
P1 、P 2 における透視変換に伴う歪を補正するための
線形補間パラメタをQ1 、Q2 とすると、 UC ={(1−m)Q1U1+mQ2U2 }/{(1−m)Q1+mQ2 } (式2) VC ={(1−m)Q1V1+mQ2V2 }/{(1−m)Q1 +mQ2 } (式3) により補間される。
チャ座標(UC ,VC )は、点P1、P2 におけるテク
スチャ座標を(U1 ,V1 )、(U2 ,V2 )、点
P1 、P 2 における透視変換に伴う歪を補正するための
線形補間パラメタをQ1 、Q2 とすると、 UC ={(1−m)Q1U1+mQ2U2 }/{(1−m)Q1+mQ2 } (式2) VC ={(1−m)Q1V1+mQ2V2 }/{(1−m)Q1 +mQ2 } (式3) により補間される。
【0014】ここで、S=QU、T=QVとおくと、
(式2)、(式3)は、 UC ={(1−m)S1+mS2 }/{(1−m)Q1+mQ2 } (式4) VC ={(1−m)T1+mT2 }/{(1−m)Q1+mQ2 } (式5) となる。
(式2)、(式3)は、 UC ={(1−m)S1+mS2 }/{(1−m)Q1+mQ2 } (式4) VC ={(1−m)T1+mT2 }/{(1−m)Q1+mQ2 } (式5) となる。
【0015】(式4)、(式5)において、分子はそれ
ぞれパラメタS、Tの線形補間式、分母はパラメタQの
線形補間式となっている。したがって、二点P1 、P2
間の内分点PC におけるテクスチャ座標(UC ,VC)
は、線形補間パラメタS、T、Qを線形補間し、内分点
PC におけるそれぞれの補間値SC 、TC 、QC を求
め、SC 、TC をQC で除算することにより算出するこ
とができる。
ぞれパラメタS、Tの線形補間式、分母はパラメタQの
線形補間式となっている。したがって、二点P1 、P2
間の内分点PC におけるテクスチャ座標(UC ,VC)
は、線形補間パラメタS、T、Qを線形補間し、内分点
PC におけるそれぞれの補間値SC 、TC 、QC を求
め、SC 、TC をQC で除算することにより算出するこ
とができる。
【0016】
【発明が解決しようとする課題】このような歪補正処理
を行うことにより、自然な遠近感を考慮したテクスチャ
マッピングを行うことができ、表示画像の質感を高める
ことができるが、歪補正付きテクスチャマッピングを行
うと、フレームバッファ110の各画素に含まれるテク
スチャ画素の数が図形内の画素の位置によって異なると
いう現象が発生する場合がある。
を行うことにより、自然な遠近感を考慮したテクスチャ
マッピングを行うことができ、表示画像の質感を高める
ことができるが、歪補正付きテクスチャマッピングを行
うと、フレームバッファ110の各画素に含まれるテク
スチャ画素の数が図形内の画素の位置によって異なると
いう現象が発生する場合がある。
【0017】たとえば、図8において、格子模様170
は歪補正されたテクスチャ画素を示し、画素180、画
素190はフレームバッファ110の画素を示している
が、この例では、画素180が画素190よりも多くの
テクスチャ画素を含んでいることを示している。
は歪補正されたテクスチャ画素を示し、画素180、画
素190はフレームバッファ110の画素を示している
が、この例では、画素180が画素190よりも多くの
テクスチャ画素を含んでいることを示している。
【0018】このようなケースで、図形内の各画素に対
応するテクスチャ色を、その画素内に含まれている1つ
のテクスチャ画素を選択して代表させると、図形内でテ
クスチャ画像を粗くサンプリングすることになり、不自
然で見にくいマッピング結果を生成することになる。こ
の現象をエイリアシングと呼ぶ。
応するテクスチャ色を、その画素内に含まれている1つ
のテクスチャ画素を選択して代表させると、図形内でテ
クスチャ画像を粗くサンプリングすることになり、不自
然で見にくいマッピング結果を生成することになる。こ
の現象をエイリアシングと呼ぶ。
【0019】エイリアシングを回避する方法として、た
とえば、図形内の各画素に含まれている全てのテクスチ
ャ画素を導きだし、全てのテクスチャ画素のテクスチャ
色を適切に混ぜ合わせる方法が考えられる。しかし、こ
の方法では、莫大な演算量を必要としてしまう。
とえば、図形内の各画素に含まれている全てのテクスチ
ャ画素を導きだし、全てのテクスチャ画素のテクスチャ
色を適切に混ぜ合わせる方法が考えられる。しかし、こ
の方法では、莫大な演算量を必要としてしまう。
【0020】そこで、通常は、あらかじめ1種類のテク
スチャ画像を複数の解像度でフィルタリングした複数の
テクスチャ画像を用意しておき、図形内の画素と基準と
なるテクスチャ画像の画素サイズの比率に応じて、適切
にフィルタリングされているテクスチャ画像を選択して
テクスチャマッピングを行う方法が採用されている。こ
の方法は、ミップマップ法と呼ばれている。
スチャ画像を複数の解像度でフィルタリングした複数の
テクスチャ画像を用意しておき、図形内の画素と基準と
なるテクスチャ画像の画素サイズの比率に応じて、適切
にフィルタリングされているテクスチャ画像を選択して
テクスチャマッピングを行う方法が採用されている。こ
の方法は、ミップマップ法と呼ばれている。
【0021】ミップマップ法では、テクスチャ画像の画
素サイズと、フレームバッファに描画される画像の画素
サイズとの比率Kを計算する必要があるが、たとえば、
文献「Advanced Animation and Rendering Techniq
ues」には、K値の算出方法として、(式6)が開示さ
れている。但し、X、Yはバッファメモリの画素の座標
(表示座標)である。 K=max[{(δU/δX)2 +(δV/δX)2 }1/2 , {(δU/δY)2 +(δV/δY)2 }1/2 ] (式6)
素サイズと、フレームバッファに描画される画像の画素
サイズとの比率Kを計算する必要があるが、たとえば、
文献「Advanced Animation and Rendering Techniq
ues」には、K値の算出方法として、(式6)が開示さ
れている。但し、X、Yはバッファメモリの画素の座標
(表示座標)である。 K=max[{(δU/δX)2 +(δV/δX)2 }1/2 , {(δU/δY)2 +(δV/δY)2 }1/2 ] (式6)
【0022】しかし、(式6)を演算する従来方法は、
多大な演算量が必要となるため、たとえば、特開平9−
27039号公報には、表示面の横方向、つまり、X方
向についてのみの変化率 {(δU/δX)2 +(δV/δX)2 }1/2 (式7) をK値算出のために使用する方法が開示されている。し
かし、この方法では、縦方向すなわちY方向の変化率情
報が完全に欠落してしまうため、図形によってはミップ
マップの選択が著しく不正確となってしまう。
多大な演算量が必要となるため、たとえば、特開平9−
27039号公報には、表示面の横方向、つまり、X方
向についてのみの変化率 {(δU/δX)2 +(δV/δX)2 }1/2 (式7) をK値算出のために使用する方法が開示されている。し
かし、この方法では、縦方向すなわちY方向の変化率情
報が完全に欠落してしまうため、図形によってはミップ
マップの選択が著しく不正確となってしまう。
【0023】本発明は、かかる点に鑑み、少ない演算量
で(式6)のK値を算出することができるようにし、ミ
ップマップの選択を正確に行い、良好なテクスチャマッ
ピングを行うことができるようにしたテクスチャマッピ
ング法を提供することを目的とする。
で(式6)のK値を算出することができるようにし、ミ
ップマップの選択を正確に行い、良好なテクスチャマッ
ピングを行うことができるようにしたテクスチャマッピ
ング法を提供することを目的とする。
【0024】
【課題を解決するための手段】本発明は、テクスチャ画
像の画素サイズと描画画像の画素サイズとの比率Kを
(式6)により算出する工程を有するテクスチャマッピ
ング法において、通常の歪補正付きテクスチャマッピン
グにおいて必要とされている演算を利用するか、あるい
は、(式6)を相対誤差および演算量の少ない近似式に
置き換えることにより(式6)のK値を算出するという
ものである。
像の画素サイズと描画画像の画素サイズとの比率Kを
(式6)により算出する工程を有するテクスチャマッピ
ング法において、通常の歪補正付きテクスチャマッピン
グにおいて必要とされている演算を利用するか、あるい
は、(式6)を相対誤差および演算量の少ない近似式に
置き換えることにより(式6)のK値を算出するという
ものである。
【0025】本発明によれば、通常の歪補正付きテクス
チャマッピングにおいて必要とされている演算を利用す
るか、あるいは、(式6)を相対誤差および演算量の少
ない近似式に置き換えることにより(式6)のK値を算
出するとしているので、少ない演算量で(式6)のK値
を算出することができる。
チャマッピングにおいて必要とされている演算を利用す
るか、あるいは、(式6)を相対誤差および演算量の少
ない近似式に置き換えることにより(式6)のK値を算
出するとしているので、少ない演算量で(式6)のK値
を算出することができる。
【0026】
【発明の実施の形態】以下、図1〜図4を参照して、本
発明の第1実施形態〜第4実施形態について説明する
が、これら第1実施形態〜第4実施形態の説明に使用す
るX、Y、S、T、U、V、Qは既述したものと同一の
ものである。
発明の第1実施形態〜第4実施形態について説明する
が、これら第1実施形態〜第4実施形態の説明に使用す
るX、Y、S、T、U、V、Qは既述したものと同一の
ものである。
【0027】図1は本発明の第1実施形態を概略的に示
すフローチャートであり、本発明の第1実施形態は、 Ux=(δS/δX)Q−(δQ/δX)S (式8) Vx=(δT/δX)Q−(δQ/δX)T (式9) Uy=(δS/δY)Q−(δQ/δY)S (式10) Vy=(δT/δY)Q−(δQ/δY)T (式11) とし、Ux、Vx、Uy、Vy、Qをそれぞれ線形補間
し、 δU/δX=Ux/Q2 (式12) δV/δX=Vx/Q2 (式13) δU/δY=Uy/Q2 (式14) δV/δY=Vy/Q2 (式15) として、(式6)のK値を算出するというものである。
以下、本発明の第1実施形態により(式6)のK値を算
出できることを説明する。
すフローチャートであり、本発明の第1実施形態は、 Ux=(δS/δX)Q−(δQ/δX)S (式8) Vx=(δT/δX)Q−(δQ/δX)T (式9) Uy=(δS/δY)Q−(δQ/δY)S (式10) Vy=(δT/δY)Q−(δQ/δY)T (式11) とし、Ux、Vx、Uy、Vy、Qをそれぞれ線形補間
し、 δU/δX=Ux/Q2 (式12) δV/δX=Vx/Q2 (式13) δU/δY=Uy/Q2 (式14) δV/δY=Vy/Q2 (式15) として、(式6)のK値を算出するというものである。
以下、本発明の第1実施形態により(式6)のK値を算
出できることを説明する。
【0028】Sは(式4)で使用され、S=QUと定義
されているので、(式6)の一要素であるδU/δX
は、 δU/δX=δ(S/Q)/δX =(δS/δX)/Q−S(1/Q2 )(δQ/δX) ={(δS/δX)Q−(δQ/δX)S}/Q2 (式16) となる。
されているので、(式6)の一要素であるδU/δX
は、 δU/δX=δ(S/Q)/δX =(δS/δX)/Q−S(1/Q2 )(δQ/δX) ={(δS/δX)Q−(δQ/δX)S}/Q2 (式16) となる。
【0029】また、S、Qは、線間補間可能なパラメタ
であり、これらをXで偏微分した値(δS/δX)、
(δQ/δX)は定数であるから、(式16)の分子
は、 (定数1)×線形パラメタ1+(定数2)×線形パラメタ2 (式17) という形式となり、線形補間可能な線形パラメタであ
る。
であり、これらをXで偏微分した値(δS/δX)、
(δQ/δX)は定数であるから、(式16)の分子
は、 (定数1)×線形パラメタ1+(定数2)×線形パラメタ2 (式17) という形式となり、線形補間可能な線形パラメタであ
る。
【0030】そこで、(式16)の分子を Ux=(δS/δX)Q−(δQ/δX)S (式18) とすると、(式16)、(式17)より、δU/δX
は、線形補間パラメタUxとQをそれぞれ線形補間し、
補間されたUxに補間されたQの逆数値を2乗したもの
を乗じれば算出することができる。
は、線形補間パラメタUxとQをそれぞれ線形補間し、
補間されたUxに補間されたQの逆数値を2乗したもの
を乗じれば算出することができる。
【0031】同様に、 Vx=(δT/δX)Q−(δQ/δX)T (式19) Uy=(δS/δY)Q−(δQ/δY)S (式20) Vy=(δT/δY)Q−(δQ/δY)T (式21) とすると、(式6)のδV/δX、δU/δY、δV/
δYは、それぞれ、線形補間パラメタVx、Uy、Vy
をそれぞれ線形補間し、補間された線形補間パラメタV
x、Uy、Vyに、(式16)で計算された1/Q2 を
乗じれば算出することができる。
δYは、それぞれ、線形補間パラメタVx、Uy、Vy
をそれぞれ線形補間し、補間された線形補間パラメタV
x、Uy、Vyに、(式16)で計算された1/Q2 を
乗じれば算出することができる。
【0032】したがって、本発明の第1実施形態によれ
ば、(式6)のK値を算出することができるが、Qの補
間および逆数値の計算は、(式4)で明らかなように、
通常の歪補正付きテクスチャマッピングにおいて必要と
されている演算であるから、少ない演算量で(式6)の
K値を算出することができる。
ば、(式6)のK値を算出することができるが、Qの補
間および逆数値の計算は、(式4)で明らかなように、
通常の歪補正付きテクスチャマッピングにおいて必要と
されている演算であるから、少ない演算量で(式6)の
K値を算出することができる。
【0033】図2は本発明の第2実施形態を概略的に示
すフローチャートであり、本発明の第1実施形態は、δ
U/δX、δV/δX、δU/δY、δV/δYを入力
値とし、 a=|δU/δX| (式22) b=|δV/δX| (式23) c=|δU/δY| (式24) d=|δV/δY| (式25) とし、a≧bの場合には、 Kx=a+0.414213b (式26) とし、a<bの場合には、 Kx=b+0.414213a (式27) とし、c≧dの場合には、 Ky=c+0.414213d (式28) とし、c<bの場合には、 Ky=d+0.414213dc (式29) とし、K=max(Kx,Ky)を演算して(式6)の
K値を得るとするものである。なお、0.414213
は(√2−1)の表現の一例である。以下、本発明の第
2実施形態により(式6)のK値を算出できることを説
明する。
すフローチャートであり、本発明の第1実施形態は、δ
U/δX、δV/δX、δU/δY、δV/δYを入力
値とし、 a=|δU/δX| (式22) b=|δV/δX| (式23) c=|δU/δY| (式24) d=|δV/δY| (式25) とし、a≧bの場合には、 Kx=a+0.414213b (式26) とし、a<bの場合には、 Kx=b+0.414213a (式27) とし、c≧dの場合には、 Ky=c+0.414213d (式28) とし、c<bの場合には、 Ky=d+0.414213dc (式29) とし、K=max(Kx,Ky)を演算して(式6)の
K値を得るとするものである。なお、0.414213
は(√2−1)の表現の一例である。以下、本発明の第
2実施形態により(式6)のK値を算出できることを説
明する。
【0034】まず、 Kx={(δU/δX)2 +(δV/δX)2 }1/2 (式30) と定義する。そして、|δU/δX|≧|δV/δX|
と仮定すると、Kxの最小値は、|δV/δX|=0の
場合で、 min(Kx)=|δU/δX| (式31) となる。他方、Kxの最大値は、|δV/δX|=|δ
U/δX|の場合で、 max(Kx)=√2|δU/δX| (式32) となる。
と仮定すると、Kxの最小値は、|δV/δX|=0の
場合で、 min(Kx)=|δU/δX| (式31) となる。他方、Kxの最大値は、|δV/δX|=|δ
U/δX|の場合で、 max(Kx)=√2|δU/δX| (式32) となる。
【0035】そこで、最小、最大の境界条件において、
(式30)と値が一致するような以下の近似式を導入す
ることができる。 Kx=|δU/δX|+(√2−1)|δV/δX| (式33) ここで、(式30)と(式33)の相対誤差は、最大で
も7%以下である。
(式30)と値が一致するような以下の近似式を導入す
ることができる。 Kx=|δU/δX|+(√2−1)|δV/δX| (式33) ここで、(式30)と(式33)の相対誤差は、最大で
も7%以下である。
【0036】これに対して、|δU/δX|<|δV/
δX|と仮定すると、Kxの最小値は、|δU/δX|
=0の場合で、 min(Kx)=|δV/δX| (式34) となる。他方、Kxの最大値は、|δV/δX|=|δ
U/δX|の場合で、 max(Kx)=√2|δV/δX| (式35) となる。
δX|と仮定すると、Kxの最小値は、|δU/δX|
=0の場合で、 min(Kx)=|δV/δX| (式34) となる。他方、Kxの最大値は、|δV/δX|=|δ
U/δX|の場合で、 max(Kx)=√2|δV/δX| (式35) となる。
【0037】そこで、最小、最大の境界条件において、
(式30)と値が一致するような以下の近似式を導入す
ることができる。 Kx=|δV/δX|+(√2−1)|δU/δX| (式36) ここで、(式30)と(式36)の相対誤差は、最大で
も7%以下である。
(式30)と値が一致するような以下の近似式を導入す
ることができる。 Kx=|δV/δX|+(√2−1)|δU/δX| (式36) ここで、(式30)と(式36)の相対誤差は、最大で
も7%以下である。
【0038】同様にして、 Ky={(δU/δY)2 +(δV/δY)2 }1/2 (式37) と定義することで、|δU/δY|≧|δV/δY|の
場合は、最小、最大の境界条件において、(式37)と
値が一致するような以下の近似式 Ky=|δU/δY|+(√2−1)|δV/δY| (式38) を導入することができ、|δU/δX|<|δV/δX
|の場合には、最小、最大の境界条件において、(式3
7)と値が一致するような以下の近似式 Ky=|δV/δY|+(√2−1)|δU/δY| (式39) を導入することができる。
場合は、最小、最大の境界条件において、(式37)と
値が一致するような以下の近似式 Ky=|δU/δY|+(√2−1)|δV/δY| (式38) を導入することができ、|δU/δX|<|δV/δX
|の場合には、最小、最大の境界条件において、(式3
7)と値が一致するような以下の近似式 Ky=|δV/δY|+(√2−1)|δU/δY| (式39) を導入することができる。
【0039】したがって、 K=max(Kx,Ky) (式40) を演算することにより、(式6)のK値を算出すること
ができる。
ができる。
【0040】このように、本発明の第2実施形態によれ
ば、(式6)のK値を算出することができるが、(式
6)を相対誤差および演算量の少ない(式40)に置き
換えているので、少ない演算量で(式6)のK値を算出
することができる。
ば、(式6)のK値を算出することができるが、(式
6)を相対誤差および演算量の少ない(式40)に置き
換えているので、少ない演算量で(式6)のK値を算出
することができる。
【0041】なお、本発明の第2実施形態においては、
入力値とするδU/δX、δV/δX、δU/δY、δ
V/δYとして、必ずしも、本発明の第1実施形態で算
出したδU/δX、δV/δX、δU/δY、δV/δ
Yの値を使用する必要はないが、これらを使用する場合
には、更に少ない演算量で(式6)のK値を算出するこ
とができる。
入力値とするδU/δX、δV/δX、δU/δY、δ
V/δYとして、必ずしも、本発明の第1実施形態で算
出したδU/δX、δV/δX、δU/δY、δV/δ
Yの値を使用する必要はないが、これらを使用する場合
には、更に少ない演算量で(式6)のK値を算出するこ
とができる。
【0042】図3は本発明の第3実施形態を概略的に示
すフローチャートであり、本発明の第3実施形態は、線
形補間パラメタAx、Ayを導入し、 Kx=(1/Q2 )Ax (式41) Ky=(1/Q2 )Ay (式42) と近似し、Ax、Ay、Qをそれぞれ線形補間し、 K=1/Q2 max(Ax、Ay) (式43) を演算して(式6)のK値を得るとするものである。以
下、本発明の第3実施形態により(式6)のK値を算出
できることを説明する。
すフローチャートであり、本発明の第3実施形態は、線
形補間パラメタAx、Ayを導入し、 Kx=(1/Q2 )Ax (式41) Ky=(1/Q2 )Ay (式42) と近似し、Ax、Ay、Qをそれぞれ線形補間し、 K=1/Q2 max(Ax、Ay) (式43) を演算して(式6)のK値を得るとするものである。以
下、本発明の第3実施形態により(式6)のK値を算出
できることを説明する。
【0043】(式30)に第1実施形態で説明した線形
補間パラメタUx、Vx、Qを代入すると、 Kx={(δU/δX)2 +(δV/δX)2 }1/2 ={(Ux/Q2 )2 +(Vx/Q2 )2 }1/2 =(1/Q2 )(Ux2 +Vx2 )1/2 (式44) となる。
補間パラメタUx、Vx、Qを代入すると、 Kx={(δU/δX)2 +(δV/δX)2 }1/2 ={(Ux/Q2 )2 +(Vx/Q2 )2 }1/2 =(1/Q2 )(Ux2 +Vx2 )1/2 (式44) となる。
【0044】(Ux2 +Vx2 )1/2 は、階数的に線形
補間パラメタの2乗の1/2乗の次元であるから、(式
44)のKxは、線形補間パラメタAxを導入し、 Kx=(1/Q2 )Ax (式45) と近似することができる。(式44)のKyについて
も、線形補間パラメタAyを導入し、 Ky=(1/Q2 )Ay (式46) と近似することができる。
補間パラメタの2乗の1/2乗の次元であるから、(式
44)のKxは、線形補間パラメタAxを導入し、 Kx=(1/Q2 )Ax (式45) と近似することができる。(式44)のKyについて
も、線形補間パラメタAyを導入し、 Ky=(1/Q2 )Ay (式46) と近似することができる。
【0045】(式45)、(式46)は、 Ax=Q2 Kx (式47) Ay=Q2 Ky (式48) と変形することができる。
【0046】したがって、Ax、Ay、Qをそれぞれ線
形補間し、 K=(1/Q2) max(Ax、Ay) (式49) を演算することにより、(式6)のK値を算出ことがで
きる。なお、図形の各頂点でのAx、Ayは、たとえ
ば、(式30)を用いてKxを正確に計算した後、(式
47)を適用すれば算出することができる。
形補間し、 K=(1/Q2) max(Ax、Ay) (式49) を演算することにより、(式6)のK値を算出ことがで
きる。なお、図形の各頂点でのAx、Ayは、たとえ
ば、(式30)を用いてKxを正確に計算した後、(式
47)を適用すれば算出することができる。
【0047】このように、本発明の第3実施形態によれ
ば、(式6)のK値を算出することができるが、(式
6)を相対誤差および演算量の少ない(式49)に置き
換えているので、少ない演算量で(式6)のK値を算出
することができる。
ば、(式6)のK値を算出することができるが、(式
6)を相対誤差および演算量の少ない(式49)に置き
換えているので、少ない演算量で(式6)のK値を算出
することができる。
【0048】図4は本発明の第4実施形態を概略的に示
すフローチャートであり、本発明の第4実施形態は、線
形補間パラメタLを導入し、 L=Q2 K (式50) と近似し、L、Qをそれぞれ線形補間し、 K=L/Q2 (式51) を演算して(式6)のK値を得るとするものである。以
下、本発明の第4実施形態により(式6)のK値を算出
できることを説明する。
すフローチャートであり、本発明の第4実施形態は、線
形補間パラメタLを導入し、 L=Q2 K (式50) と近似し、L、Qをそれぞれ線形補間し、 K=L/Q2 (式51) を演算して(式6)のK値を得るとするものである。以
下、本発明の第4実施形態により(式6)のK値を算出
できることを説明する。
【0049】(式6)に第1実施形態で説明した線形補
間パラメタUx、Vx、Uy、Vyおよび第2実施形態
で説明したKx、Kyを代入すると、 K=max(Kx、Ky) =(1/Q2 )max{(Ux2+Vx2 、Uy2+Vy2 )}1/2 (式52) となる。
間パラメタUx、Vx、Uy、Vyおよび第2実施形態
で説明したKx、Kyを代入すると、 K=max(Kx、Ky) =(1/Q2 )max{(Ux2+Vx2 、Uy2+Vy2 )}1/2 (式52) となる。
【0050】max{(Ux2+Vx2 )、(Uy2+V
y2 )}1/2 は、階数的には線形補間パラメタの2乗の
1/2乗の次元であるから、(式6)は、線形補間パラ
メタLを導入し、 L=Q2 K (式53) と近似することができる。
y2 )}1/2 は、階数的には線形補間パラメタの2乗の
1/2乗の次元であるから、(式6)は、線形補間パラ
メタLを導入し、 L=Q2 K (式53) と近似することができる。
【0051】したがって、L、Qをそれぞれ線形補間
し、 K=L/Q2 (式54) を演算することにより、(式6)のK値を得ることがで
きる。
し、 K=L/Q2 (式54) を演算することにより、(式6)のK値を得ることがで
きる。
【0052】このように、本発明の第4実施形態によれ
ば、(式6)のK値を算出することができるが、(式
6)を相対誤差および演算量の少ない(式54)に置き
換えているので、少ない演算量で(式6)のK値を算出
することができる。
ば、(式6)のK値を算出することができるが、(式
6)を相対誤差および演算量の少ない(式54)に置き
換えているので、少ない演算量で(式6)のK値を算出
することができる。
【0053】
【発明の効果】以上のように、本発明によれば、通常の
歪補正付きテクスチャマッピングにおいて必要とされて
いる演算を利用するか、あるいは、(式6)を相対誤差
および演算量の少ない近似式に置き換えることにより
(式6)のK値を算出するとしているので、少ない演算
量で(式6)のK値を算出することができる。したがっ
て、ミップマップの選択を正確に行い、良好なテクスチ
ャマッピングを行うことができる。
歪補正付きテクスチャマッピングにおいて必要とされて
いる演算を利用するか、あるいは、(式6)を相対誤差
および演算量の少ない近似式に置き換えることにより
(式6)のK値を算出するとしているので、少ない演算
量で(式6)のK値を算出することができる。したがっ
て、ミップマップの選択を正確に行い、良好なテクスチ
ャマッピングを行うことができる。
【図1】本発明の第1実施形態を概略的に示すフローチ
ャートである。
ャートである。
【図2】本発明の第2実施形態を概略的に示すフローチ
ャートである。
ャートである。
【図3】本発明の第3実施形態を概略的に示すフローチ
ャートである。
ャートである。
【図4】本発明の第4実施形態を概略的に示すフローチ
ャートである。
ャートである。
【図5】一般的なグラフィックス装置の概略的構成図で
ある。
ある。
【図6】テクスチャ座標の与え方を説明するための図で
ある。
ある。
【図7】透視変換に伴う歪の発生を説明するための図で
ある。
ある。
【図8】テクスチャ画像の画素と描画画素の関係を説明
するための図である。
するための図である。
(図5) 100 表示装置 110 フレームバッファ 120 テクスチャメモリ 130 CPU 140 描画プロセッサ 141 描画部 142 表示部 (図7) 150 描画される四角形 151、152 三角形 153 四角形の中心のピクセル 160 テクスチャ画像 (図8) 170 格子模様 180、190 描画画像の画素
Claims (5)
- 【請求項1】テクスチャ画像の画素サイズと描画画像の
画素サイズとの比率Kを、 K=max[{(δU/δX)2 +(δV/δX)2 }
1/2 ,{(δU/δY)2 +(δV/δY)2 }1/2 ] により算出する工程(但し、U、Vはテクスチャ座標、
X、Yは表示座標)を有するテクスチャマッピング法に
おいて、 Ux=(δS/δX)Q−(δQ/δX)S Vx=(δT/δX)Q−(δQ/δX)T Uy=(δS/δY)Q−(δQ/δY)S Vy=(δT/δY)Q−(δQ/δY)T とし(但し、Qは透視変換に伴う歪を補正するための線
形補間パラメタ、S=QU、T=QV)、Ux、Vx、
Uy、Vy、Qをそれぞれ線形補間し、 δU/δX=Ux/Q2 δV/δX=Vx/Q2 δU/δY=Uy/Q2 δV/δY=Vy/Q2 として、前記Kを算出することを特徴とするテクスチャ
マッピング法。 - 【請求項2】テクスチャ画像の画素サイズと描画画像の
画素サイズとの比率Kを、 K=max[{(δU/δX)2 +(δV/δX)2 }
1/2 ,{(δU/δY)2 +(δV/δY)2 }1/2 ] により算出する工程(但し、U、Vはテクスチャ座標、
X、Yは表示座標)を有するテクスチャマッピング法に
おいて、 δU/δX、δV/δX、δU/δY、δV/δYを入
力値とし、各値の絶対値の比較判定結果をもとに、定数
との積加算による近似により前記Kを算出することを特
徴とするテクスチャマッピング法。 - 【請求項3】前記入力値とするδU/δX、δV/δ
X、δU/δY、δV/δYは、 Ux=(δS/δX)Q−(δQ/δX)S Vx=(δT/δX)Q−(δQ/δX)T Uy=(δS/δY)Q−(δQ/δY)S Vy=(δT/δY)Q−(δQ/δY)T とし(但し、Qは透視変換に伴う歪を補正するための線
形補間パラメタ、S=QU、T=QV)、Ux、Vx、
Uy、Vyをそれぞれ線形補間し、補間されたUx、V
x、Uy、Vyを補間されたQの2乗値で除算すること
により算出することを特徴とするテクスチャマッピング
法。 - 【請求項4】テクスチャ画像の画素サイズと描画画像の
画素サイズとの比率Kを、 K=max[{(δU/δX)2 +(δV/δX)2 }
1/2 、{(δU/δY)2 +(δV/δY)2 }1/2 ] により算出する工程(但し、U、Vはテクスチャ座標、
X、Yは表示座標)を有するテクスチャマッピング法に
おいて、 Kx={(δU/δX)2 +(δV/δX)2 }1/2 Ky={(δU/δY)2 +(δV/δY)2 }1/2 と定義し、線形補間パラメタAx、Ayを導入し、 Kx=(1/Q2 )Ax Ky=(1/Q2 )Ay と近似し(但し、Qは透視変換に伴う歪を補正するため
の線形補間パラメタ)、Ax、Ay、Qをそれぞれ線形
補間し、 K=1/Q2 max(Ax、Ay) により前記Kを算出することを特徴とするテクスチャマ
ッピング法。 - 【請求項5】テクスチャ画像の画素サイズと描画画像の
画素サイズとの比率Kを、 K=max[{(δU/δX)2 +(δV/δX)2 }
1/2 、{(δU/δY)2 +(δV/δY)2 }1/2 ] によって算出する工程(但し、U、Vはテクスチャ座
標、X、Yは表示座標)を有するテクスチャマッピング
法において、 線形補間パラメタLを導入し、 L=Q2 K と近似し(但し、Qは透視変換に伴う歪を補正するため
の線形補間パラメタ)、L、Qをそれぞれ線形補間し、 K=L/Q2 により前記Kを算出することを特徴とするテクスチャマ
ッピング法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000005824A JP2001195602A (ja) | 2000-01-07 | 2000-01-07 | テクスチャマッピング法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000005824A JP2001195602A (ja) | 2000-01-07 | 2000-01-07 | テクスチャマッピング法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2001195602A true JP2001195602A (ja) | 2001-07-19 |
Family
ID=18534448
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2000005824A Withdrawn JP2001195602A (ja) | 2000-01-07 | 2000-01-07 | テクスチャマッピング法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2001195602A (ja) |
-
2000
- 2000-01-07 JP JP2000005824A patent/JP2001195602A/ja not_active Withdrawn
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6654020B2 (en) | Method of rendering motion blur image and apparatus therefor | |
JP3190762B2 (ja) | デジタルビデオ特殊効果装置 | |
US4974177A (en) | Mapping circuit of a CRT display device | |
US7884825B2 (en) | Drawing method, image generating device, and electronic information apparatus | |
JP4462132B2 (ja) | 画像特殊効果装置,グラフィックスプロセッサ,プログラム | |
JPH0765197A (ja) | 画像処理方法と装置 | |
US6469700B1 (en) | Per pixel MIP mapping and trilinear filtering using scanline gradients for selecting appropriate texture maps | |
CN106709863B (zh) | 一种基于gpu的高效2d矢量图形渲染方法 | |
US20020150287A1 (en) | Image processor and image processing method, and recorded medium | |
JP3466661B2 (ja) | 画像処理装置及びその方法 | |
US5412402A (en) | Electronic graphic systems | |
US5515484A (en) | Method and apparatus for rendering volumetric images | |
JPH11161819A (ja) | 画像処理装置、画像処理方法、及び画像処理プログラムを記録した記録媒体 | |
JP2007249968A (ja) | ポイント補間によるレンダリング方法及び装置 | |
US6522337B1 (en) | Image processing apparatus, image processing method, and recording medium | |
US7656411B2 (en) | Matched texture filter design for rendering multi-rate data samples | |
US6850244B2 (en) | Apparatus and method for gradient mapping in a graphics processing system | |
JP2003504697A (ja) | 副標本化テクスチャ端縁部のアンチエイリアシング | |
EP0676724A2 (en) | Texture mapping method and image processing apparatus | |
JP2001195602A (ja) | テクスチャマッピング法 | |
JP2023538828A (ja) | 距離場グラフィックスレンダリングのためのアンチエイリアシング | |
KR20050046775A (ko) | 풋프린트의 분석 및 수정 방법 | |
JPH11306366A (ja) | グラフィック演算装置およびその方法 | |
JP2747822B2 (ja) | 図形表示装置 | |
JP2000148126A (ja) | 画像表示装置及び方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A300 | Withdrawal of application because of no request for examination |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20070403 |