JP4111577B2 - 照度マップ作成方法、照度マップ決定方法、及び照度マップ作成システム - Google Patents
照度マップ作成方法、照度マップ決定方法、及び照度マップ作成システム Download PDFInfo
- Publication number
- JP4111577B2 JP4111577B2 JP2120698A JP2120698A JP4111577B2 JP 4111577 B2 JP4111577 B2 JP 4111577B2 JP 2120698 A JP2120698 A JP 2120698A JP 2120698 A JP2120698 A JP 2120698A JP 4111577 B2 JP4111577 B2 JP 4111577B2
- Authority
- JP
- Japan
- Prior art keywords
- color
- scene
- value
- intersection
- polygon
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/50—Lighting effects
- G06T15/506—Illumination models
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/50—Lighting effects
Landscapes
- Engineering & Computer Science (AREA)
- Computer Graphics (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Image Generation (AREA)
Description
【発明の属する技術分野】
本発明は、画像をレンダリングするための方法およびシステムに関する。さらに特定すると、本発明は、画像のレンダリングで使用するための照度マップを決定するシステムおよび方法、ならびにこのような照度マップを利用するレンダリング・エンジンに関する。
【0002】
【従来の技術】
画像を作成するためのレンダリング(描画)・エンジンは周知である。このようなエンジンは、多くの場合、シーン定義と呼ばれる、生成される画像の定義を受け入れ、そこから記憶のための画像を作成し、及び/又は適切な出力手段に出力する。1つのこのようなレンダリング・エンジンは、本発明の譲受人により販売され、高品質でフォトリアリスティック(photo−realistic)な画像を作り出すことができる、SoftImage|3D製品に含まれる「メンタル・レイ(metal ray)」エンジンである。
【0003】
高品質画像用レンダリング・エンジンの問題の1つに、このような画像をレンダリングする際の計算上の複雑さがあり、その結果、1つ1つの画像のレンダリングに要する時間が多大となる。大部分の場合には、特殊レンダリング・ハードウェア及び/又は分散処理システム、レンダリング時間を短縮するために利用されるが、特にリアルタイムで画像をレンダリングすること、及び/又はより安価なシステムで画像をレンダリングすることが希望される場合、特に、そのレンダリング・ハードウェアが制限されているが、レンダリングのニーズが精密であるセガ・サターン(SEGA Saturn)・システム、ソニー・プレーステーション(Sony PlayStation)・システム、および任天堂64(Nintendo 64)システムなどのゲーム・システムにおいては、長いレンダリング時間は問題のままである。
【0004】
前記SoftImage|3Dの「メンタル・レイ」レンダラー(描画装置:renderer)のような既知のレンダリング・エンジンは、シーン定義を入力として取り、対応するレンダリング済み画像を出力として作成する。このようなシーン定義には、さまざまな3Dオブジェクトのジオメトリ定義とそのシーン内での位置、これらのオブジェクトの素材特性(即ち、サーフェスの粗さ、色、トランスペアレンシー(透明度)など)、シーン(場面)内のライトの数、位置、および色、通常はカメラ視点と呼ばれるシーンが見られる視点と位置などが含まれる。SoftImage|3Dおよびその他のシステムでは、シーンのレンダリングでのシェイディングについて考慮する必要がある要因は、「シェード・ツリー(shade tree)」と呼ばれる構造に配列される。シェード・ツリーに関する情報は、その内容が参考により本明細書中に取り入れられる、1992年、ACM出版社(ACM Press)刊のアラン・ワット(Alan Watt)およびマーク・ワット(Mark Watt)著「先進アニメーションとレンダリングの技法、理論および実践(Advanced Animationand Rendering Techniques,Theory andPractice)」、第14章を含むさまざまな出版物に記載されている。「メンタル・レイ」レンダラーでは、「メンタル・レイ・シェイダー(menta
l ray shaders)」と呼ばれるさまざまな事前に定義された手順関数またはユーザにより定義される手順関数が、シェード・ツリー内で設定され、含まれ、特殊レンダリング効果をレンダリング・プロセスに取り込むことができるようにする。「メンタル・レイ・シェイダー」は、希望に応じて、素材、テクスチャ、ライトなどを含むさまざまなシーン要素に付けることができる。
【0005】
SoftImage|3Dのようなシステムでは、3Dオブジェクトをモザイク処理し、定義された3Dオブジェクトのポリゴン(多角形)・メッシュ表現を取得し、そのメッシュ内のポリゴンをレンダリングして、3Dオブジェクトの妥当な近似を得ることによって多くの3Dオブジェクトをレンダリングする計算上の複雑さを削減することが知られている。例えば、球体は、球体を近似してモデリングする三角形のポリゴンのメッシュによって表現でき、メッシュとオブジェクトの間の対応の度合いは、通常、メッシュ中のポリゴンの数によって決定される。
【0006】
SoftImage|3Dでは、オブジェクトを表現するためにモザイク・メッシュで使用されるポリゴンは、効率および簡略さのために好まれる三角形のポリゴンから構成されるので、後述の説明は、おもにこのようなモザイク処理されたポリゴン・メッシュに関する。ただし、当業者にとっては明らかとなるように、本発明は、三角形のポリゴンのメッシュでの使用に限定されず、希望する場合にはさらに多くの面を持つポリゴンでも利用できる。オブジェクトのモザイク処理された表現への変換は周知であり、本明細書中ではさらに記述しない。
【0007】
ポリゴン・メッシュで表現されるオブジェクトのレンダリングは、スキャンライン(走査線法)またはレイ・トレーシング(光線追跡法)によって実行することができる。レイ・トレーシングでは、最終色は、最終色の一因となる反射、屈折、メンタル・レイ・シェイダーなどを求めるためにピクセルから光の光線を「発射(firing)」することによって、レンダリングされた画像の各ピクセルで決定される。計算上高価ではあるが、レイ・トレーシングは、非常に写実的な結果を生み出すことができる。
【0008】
スキャンライン・レンダリングでは、どのオブジェクトがカレント(現在の)・ピクセルの前または後ろにあるか(奥行きソーティング(深度分類))についての判断が各ピクセルで下され、それらのオブジェクトが「可視」であるかどうかが判断される。可視オブジェクトは表示され、不可視オブジェクトは省略される。スキャンライン・レンダリングは計算上それほど高価ではないが、大部分の場合特殊目的のグラフィック・ハードウェアによってサポートされ、通常、レイ・トレーシングより低い品質のレンダリングとなる。
【0009】
スキャンライン・レンダリングおよびレイ・トレーシング・レンダリングの両方において、シェード・ツリーの評価の一部は、頂点シェイディングを判断することである。頂点シェイディングでは、最終色は、スキャンラインまたはレイ・トレーシングによってレンダリング画像では可視となる各ポリゴンの頂点だけにおいて決定される。次に、決定された最終色は、ポリゴンのバランス全体で線形に補間する。頂点でのレンダリングされた最終色は、光源に相対する頂点法線、定義されたサーフェス特性などから決定される。一般的には、レンダリング・ハードウェアは、頂点の色から考えてポリゴンのバランスの線形補間を実行するための機能を具備する。
【0010】
ポリゴン・メッシュを使用するオブジェクトのモデリングによってレンダリングの複雑さは減少するが、どちらかの手段による頂点色情報の計算、特にレイ・トレーシングによる計算は依然として計算上高価である。
【0011】
レンダリングされた画像でのもう1つの共通した特徴とは、テクスチャ・マッピングされたサーフェス(表面)を使用することである。任意のサーフェスまたはオブジェクトのテクスチャ・マッピングは、二次元テクスチャ(ピクチャ)をオブジェクト及び/又はサーフェスに投影することから成り、他のオブジェクトの場合と同じように、テクスチャ・マッピングされたオブジェクトは、大部分の場合、レンダリングの目的のためにモザイク処理されたオブジェクトとして表現される。テクスチャ・ピクチャには、有名人の写真のような画像、木目模様仕上げ、大理石などを表現するためのパターンが入る場合があり、通常は、写実的な最終画像または希望の特殊効果を得るのに役立つ。ただし、テクスチャ・マッピングされたオブジェクトおよびサーフェスをレンダリングする場合、スキャンラインであるか、レイ・トレーシングであるか、別のレンダリング・プロセスであるかには関係なく、レンダリング・プロセスは、テクスチャ・ピクチャ内の任意のピクセルのレンダリングに影響を及ぼすモザイク・メッシュ内の各ポリゴンまたはポリゴンの一部を考慮に入れなければならず、これもまた計算上高価である。
【0012】
レンダリング・エンジンが希望の質の画像を、短縮されたレンダリング時間で作成できるようにするシステムおよび方法を備えることが望まれている。
【0013】
【発明が解決しようとする課題】
本発明は、従来の技術の少なくとも1つの不利な点を未然に防ぐか、軽減する画像をレンダリングする新規のシステムおよび方法を提供することを目的とする。
【0014】
【課題を解決するための手段】
本発明の第1の態様に従って、レンダリングされるシーン内の少なくとも1つのオブジェクトに対して、照度マップを作成する方法であって、そのオブジェクトはテクスチャ・マッピングされ、そのオブジェクトはポリゴンのメッシュとして表現され、
(i)前記オブジェクトにマッピングされるテクスチャ・ピクチャを選択し、前記テクスチャ・ピクチャおよびポリゴンの前記メッシュを1つの共通の座標系で表現するステップと、
(ii)前記テクスチャ・マップ内の各ピクセルと前記ポリゴン・メッシュ内の各ポリゴンの間の交差の位置、交差の領域、および交差の重み(重量)を求めるステップであって、重みが前記ピクセルの総領域に対する交差の前記領域の割合に対応するステップと、
(iii)交差の求められた領域ごとに、前記交差の求められた位置での照度情報と前記交差領域の積を求めるステップと、
(iv)各ピクセルごとにステップ(iii)で求められたそれぞれの積を総計し、照度値を求めるステップと、
(v)各前記ピクセルごとの前記照度値を記憶するステップと、
から成る方法が提供される。
【0015】
好ましい態様では、ステップ(iii)の照度情報は、シーンに対して定義されたシェード・ツリー内の構成要素を評価することによって決定される。別の好ましい態様では、ステップ(iii)の照度情報は、前記交差の求められた位置での前記シーンに対して定義されたライト(光)ごとに各ライトの値の総計を求めることにより求められる。
【0016】
本発明の第2の態様に従って、レンダリングされるシーン内の少なくとも1つのオブジェクトであって、ポリゴンのメッシュとして表現されるオブジェクトに対し照度マップを作成する方法であって、
(i)前記少なくとも1つのオブジェクトを選択するステップと、
(ii)前記オブジェクトについて、前記ポリゴンのメッシュ内の各ポリゴンの頂点および頂点法線を求めるステップと、
(iii)各ポリゴンの各頂点に関して照度値を求めるステップと、
(iv)各頂点ごとの前記照度値を記憶するステップと、
から成る方法が提供される。
【0017】
好ましい態様では、ステップ(iii)の照度情報は、前記交差の求められたシーンで、シーンに対して定義されたシェード・ツリー内の構成要素を評価することによって求められる。別の好ましい態様では、ステップ(iii)の照度情報は、前記交差の求められた位置で前記シーンに対して定義された各ライトの各ライトの値の総計を求めることによって決定される。
【0018】
本発明の第3の態様に従って、画像を得るためのシーン定義のレンダリングに使用される照度マップを求める方法であって、
(i)シーン定義からシーンに対して定義される各光源の数および位置を決定するステップと、
(ii)前記シーン定義から、前記シーン内の各オブジェクトの位置を決定し、前記オブジェクトをモザイク処理されたポリゴン・メッシュとして表現するステップと、
(iii)各前記オブジェクト上の注目の(対象となる)ポイントでの照度値を求めるステップと、
(iv)前記シーン定義に対する照度マップに照度値を記憶するステップと、から成る方法が提供される。
【0019】
本発明の第4の態様に従って、シーン記述から画像のレンダリングで使用するための照度マップを作成するためのシステムであって、
シーン定義から、シーンに対して定義される各光源の数および位置を決定するための手段と、
前記シーン定義から、前記シーン内の少なくとも1つのオブジェクトの位置を決定し、前記少なくとも1つのオブジェクトをモザイク処理されたポリゴン・メッシュとして表現するための手段と、
前記少なくとも1つのオブジェクト上の注目のポイントでの照度値を求めるための手段と、
前記シーン定義について照度マップに前記求められた寄与を記憶するための手段と、
を具備するシステムが提供される。
【0020】
【発明の実施の形態】
本発明は、シーン内での各光源の寄与を求めるか、またはシーンに対して定義されるシェード・ツリーのアクティブな構成要素のすべての完全な評価を実行するかのどちらかによって、照度マップの計算を行う。本明細書中で使用されるように、「シェード・ツリー」は、レンダリングされた画像を作成する上でレンダリング・エンジンによって考慮されなければならない構成要素が記憶される適切なデータ構造を含むことが意図される。さらに、このようなシェード・ツリーが、その内のいくつかだけが、ある特定の時点で「アクティブ」となる、さまざまな構成要素を具備することが企図される。例えば、シェード・ツリーが鏡面反射性色情報に関係するさまざまな構成要素を備えることがあるが、これらの構成要素は、ユーザがレンダリング・エンジンに鏡面反射性を無視するように指示するとイナクティブとなる。
【0021】
照度マップは、レンダリングされるシーン内の注目の(対象となる)ポイントでの照度情報を表すので、この照度マップは、レンダリングされた最終的な画像を得るために、レンダリング・エンジンによって利用される。このようなケースでは、レンダリング・エンジンは、照度マップが定義される任意のオブジェクトに対するシーンに対して定義される光源の影響をさらに考慮しないでシーンをレンダリングし、その結果、計算上はそれほど複雑ではないレンダリングとなるため、レンダリング時間が短縮される。
【0022】
照度マップは、カメラ視点から独立しているため、オブジェクトに決定される照度マップは、そのオブジェクトを任意の画像内でレンダリングするのに役立ち、その場合、光源、または照度マップを決定する際に使用される他のシェード・ツリーの構成要素は変化しない。したがって、あらかじめ定められた照度マップを利用することにより、その後に画像をレンダリングするためのレンダリング・エンジンの処理時間は短縮され、レンダリング・エンジンがシーン定義をさらに高速に処理したり、さらに複雑なシーンを指定時間内に処理することを可能にする。
【0023】
さらに、照度マップは、テクスチャ・マッピングで使用されるポリゴン及び/又はテクスチャ・ピクチャの素材とは無関係である。したがって、いったん照度マップが決定されると、オブジェクト及び/又はテクスチャ・ピクチャの素材が変更され、新しい照度マップを決定しなくても希望の通りにレンダリングされることができる。
【0024】
一般的には、照度マップの作成には、シーン内で注目のポイントを決定し、これらの注目のポイントでのシーン内の照度値を求めることが必要となる。非テクスチャ・マッピング・オブジェクトの場合、注目のポイントは、オブジェクトを表現するメッシュ内でのポリゴンの頂点に一致する。テクスチャ・マッピングされたサーフェスの場合には、注目のポイントを決定することはさらに複雑になり、本明細書中では最初に説明され、非テクスチャ・マッピング・ポリゴン・メッシュのより簡略なケースは後述される。
【0025】
テクスチャ・マッピングされたサーフェスについての本発明のこの実施の形態により、ユーザは、照度値を求めることが望まれる1つまたは複数のテクスチャ・マップを選択する。当業者には明らかとなるように、考慮に入れなければならないテクスチャ・ピクチャを選択するそれ以外の適切な方法も利用できるが、SoftImage|3Dでは、この選択は、シーン定義の概要図中で1つまたは複数のテクスチャ・ノードを選択することによって達成することができる。次に、テクスチャ・ピクチャをマッピングしなければならない1つまたは複数のオブジェクトは、まだそのように表現されていない場合には、適切なモザイク・アルゴリズムを使用して、ポリゴン・メッシュ表現に変換される。
【0026】
前記SoftImage|3Dシステムおよびそれ以外のシステムでは、テクスチャ・マッピングは、投影によってまたはuvマッピング(つまりuv空間内で)によって実行することができる。投影される場合、プレーナー(平面)、円筒形、または球形の投影が利用され、このような投影の技法についての説明は、その内容が参考により本明細書中に取り入れられる、前記のアラン・ワットおよびマーク・ワット著「先進アニメーションとレンダリングの技法、理論および実践」に記載される。uvマッピングが利用される場合、テクスチャ・ピクチャはuv座標空間内で表現されるか、uv座標空間に変換され、その場合、「u」はテクスチャ・ピクチャの水平軸を表し、0.0から1.0の範囲となり、「v」は垂直軸を表し、やはり0から1.0の範囲となる。uvテクスチャ・マッピングしなければならないポリゴン(複数の場合がある)の座標は、それらがすでにuv座標で表現されていない場合にはxyz空間からuv空間に変換され、その後でマッピングが実行される。
【0027】
図1は、3ピクセル掛ける3ピクセルの解像度のテクスチャ・ピクチャ40の概要表現である。当業者には明らかとなるように、このサイズのテクスチャ・ピクチャは、説明を明確にするために選択されたのであり、通常は、実際の使用状況では、はるかに大きな寸法のテクスチャ・ピクチャが利用される。
【0028】
図2は、このケースでは、4つのポリゴンから成るポリゴン・メッシュである、3Dオブジェクト60の概要表現である。再び、当業者にとっては明らかとなるように、オブジェクト60は、明確さを期して選択されたのであり、本発明では複雑さがさらに高い3Dオブジェクトが使用可能であり、使用されるだろう。例えば、三次元オブジェクトはポリゴン・メッシュ、ナーブス(nurbs:一般的なパラメター指定による有理Bスプライン:non−uniform rational B−spline)またはパッチ・サーフェスなどとなる場合がある。
【0029】
図3は、ポリゴン60をuv空間でモザイク処理された表現80に変換した結果を示し、この場合オブジェクトは8個の三角形のポリゴン84から112で表現され、各三角形の頂点の座標が、uv空間に表示されている。
【0030】
図4は、テクスチャ・ピクチャ40を3Dオブジェクト60のモザイク処理された表現80の上に投影した結果を示す。例として、ポリゴン108の頂点は、(0.0,0.5),(0.5,0.0)および(0.5,0.5)にある。この例ではテクスチャ・ピクチャ40は、完全にオブジェクト60上にマッピングされていたが、当業者にとっては、必ずしもこうである必要はなく、希望される場合には、テクスチャ・ピクチャ40の注目の矩形領域だけがオブジェクト60にマッピングされるように、テクスチャ・ピクチャ40をフロッピング(トリミング)することができることは明らかだろう。
【0031】
次に、オブジェクト60上のテクスチャの各ピクセルが占める領域は、uv空間で、du=1.0/幅およびdv=1.0/高さから求められ、この場合、幅はテクスチャ・ピクチャ40のフロッピングされた領域の(ピクセル単位での)水平解像度であり、高さとはテクスチャ・ピクチャ40のフロッピングされた領域の(ピクセル単位での)垂直解像度であり、したがってポリゴン・ピクセルによって占められる領域は(du*dv)である。
【0032】
次のステップは、オブジェクト上の注目の(対象となる)ポイントに関するデータを収集することで、注目のポイントは、オブジェクト上の任意のポリゴンと、本明細書中ではテクセル(texel)と呼ぶ、テクスチャ・ピクチャ40のフロッピングされた領域内の任意のピクセルの間の交差ごとに発生する。注目の各ポイントには、それに対応する重量(重み)があり、交差の領域のサイズに対応する重量(重み)は、テクセルの総領域に対応する。ポリゴンとテクセルの間の交差には、図5の(a)から図5の(h)に図示されるように、複数のカテゴリが考えられ、交差の領域はハッチングされたポリゴンによって表現される。
【0033】
図5(a)は、ポリゴン120とテクセル124の領域の間に交差領域のない平凡なケースを示し、ポリゴン120はテクセル124に関してゼロ重量となり、このテクセルについては何の情報も記憶されないだろう。図5の(b)は、100%の加重(重み付け)という結果になる、ポリゴン120とテクセル124の領域の間の完全交差の上記以外の平凡なケースを示す。
【0034】
図5の(c)、図5の(d)、および図5の(e)は、ポリゴン120の単一の頂点がテクセル124の領域内に入る例を示す。このようなケースでは、交差の領域を表すポリゴンは、これらの図のそれぞれに図示されるように3個、4個または5個の頂点を持つことができる。ポリゴン120に対する重量(重み)を求めるために、交差の領域が適切な手段により決定される。本発明のこの実施の形態においては、本明細書中に参考によって取り込まれるカリフォルニア州サンディエゴのアカデミック出版社(Academic Press)によって1991年に出版された、ジェームズ・アブロ(James Avro)著の「グラフィックス・ジェムII(Graphics Gems II)」の第1.1項の5−6ページに、ジョン・ロックン(Jon Rokne)によって記述され、そのポリゴンの領域を計算するためにはポリゴンの頂点の座標が既知であることだけを必要とするアルゴリズムを使用して、交差の領域が決定される。
【0035】
(図中ではハッチングされたポリゴンである)交差領域の頂点は、任意の適切な方法で決定することができ、本発明のこの実施の形態においては、これは、前記「グラフィックス・ジェムII」参考の第1.2項の7−9ページで、ムケッシュ・プラサド(Mukesh Prasad)によって記述されるアルゴリズムを使用して達成される。
【0036】
図5の(f)および図5の(g)は、ポリゴン120の2つの頂点がテクセル124内に入り、その結果、それぞれ図示されるように、4個または5個の頂点を持つ交差領域の形状が生じ、これらの交差ポリゴンの領域は、前記の方法と同じ方法で決定される例を示す。
【0037】
図5の(h)は、ポリゴン120の3個すべての頂点がテクセル124内に入り、その結果、ポリゴン120の形状(および領域)に一致する交差領域が生じる例を示す。
【0038】
図6の(a)および図6の(b)は、ポリゴン120の1つの縁(エッジ)を除きどの頂点もテクセル124と交差しない、それぞれ3個および4個の頂点を持つ交差領域の形状が生じる例を示す。図6の(c)および図6の(d)は、ポリゴン120の2つの縁を除きどの頂点もテクセル124と交差しない、それぞれ5個および6個の頂点を持つ交差領域の形状が生じる例を示す。
【0039】
最後に、図6の(e)は、ポリゴン120の3つの縁を除きどの頂点もテクセル124と交差しない、6個の頂点を持つ交差領域の形状が生じる例を示す。
【0040】
それから、テクスチャ・ピクチャ40のクロッピングされた領域内の各テクセルに、図7の140で図示されるデータ構造が作成され、テクスチャ・ピクチャ40全体またはその矩形サブ領域を構成する。データ構造140は、後述されるように、テクセルについて注目のポイントに関係する情報を含む、各テクセルに関連する情報を記憶する。
【0041】
各データ構造140は、正規化されたRGB色空間(つまり、0.0と1.0の間のR、0.0と1.0の間のB、および0.0と1.0の間のG)内のテクセルに対して求められる拡散色値144、正規化されたRGB色空間内のテクセルに対して求められる周囲色値148、テクセルに対して注目のポイントの数152、および注目のポイントのそれぞれの情報を記憶するデータ構造164のリンク・リスト160を指すポインタ156を記憶する。
【0042】
図示されるように、リンク・リスト160中の各ノード164は、xyz座標空間中の各ポリゴンとテクセルの間の交差の領域の決定された中心である位置168、xyz座標で空間の位置168で決定されたサーフェス法線172、重量(重み)176、および次のノードを指すポインタ180を含む。リンク・リスト160は、ポインタ180がヌル(空)である場合に終了する。各ノード164およびデータ構造140の関連する前記値を求める方法を下記に説明する。
【0043】
各ノード164内の重み176の値は、テクセルの総領域に相対するポリゴンとテクセルの交差の領域として求められる。例えば、図4では、ポリゴン96と右上隅のテクセルの交差領域の重みは、交差のポリゴンの頂点が{(0.5,0.0),(1.0,0.0),(1.0,1.0),(0.0,1.0)および(0.0,0.5)}であると仮定すると、0.875、つまり
=交差の領域/テクセルの領域
【0044】
【数1】
【0045】
となると決定される。
【0046】
明らかになるように、任意のテクセルについて各ノード164の重量176の総計は1を上回ることはできない。
【0047】
三角形のモザイク・ポリゴンの場合、位置168は、後述のように決定される。非三角形ポリゴンが、矩形ポリゴンやその類似物のようにモザイク・メッシュ・ポリゴンとして利用される場合、当業者が思い出すように、位置168および法線ベクトル172を決定するための適切な技法が利用できる。
【0048】
三角形ポリゴンの場合、交差の領域の中心は、最初に、交差の領域内の各頂点のu構成要素(成分)を総計し、その結果を頂点数で除算し、中心のu座標を決定し、v成分でも類似したプロセスを実行し、中心のv座標を得ることによって決定される。次に、前記で決定されたuv座標中心およびポリゴンの頂点のuv座標を使用して、ポリゴン内の交差の領域の中心について、重心座標が決定される。
【0049】
当業者により理解されるように、重心座標系とは、ポイントの所定の集合に関連するものであって、重心座標系についての説明は、A.K.ピーターズ社(AK Peters Ltd.)により出版されたウルフギャング・ボーヒム(Wolfgang Boehm)およびハルムット・プローチッヒ(Hartmut Prautzsch)著の「ジオメトリ設計のジオメトリ概念(Geometric Concepts for Geometric Design)」(ISBN1−56881−004−0)第10章、1994年シアトルのワシントン大学コンピュータ科学工学部、技術レポート89−09−16、トニー・デローズ(Tony Derose)の「座標なしジオメトリ・プログラミング(Coordinate−Free Geometric Programming)」、およびデービスにあるカリフォルニア大学により出版される、ワールドワイド・ウェブ(アドレス:http://muldoon.cs.ucdavis.edu/GraphicsNotes/Barycentric−Coordinates/Barycentric−Coordinates.html)上の「オンライン・コンピュータ・グラフィックス・ノート(On−Line Computer Graphics Notes)」に記載され、これらの出版物のそれぞれの内容は本明細書中に参考により取り込まれる。したがって、計算された重心は、xyz空間内の交差の領域の中心を決定するために、ポリゴンの頂点のuv空間座標およびxyz空間座標で使用される。これが、ノード164内に記憶される位置値168である。
【0050】
次に、中心の前記に決定された重心座標は、決定された中心での補間されたサーフェス法線を決定するために、ポリゴンの法線がxyz空間で使用される。これが、ノード164に記憶される法線ベクトル値172である。
【0051】
ノード164の値の計算が完了すると、それぞれ拡散色(Diffuse color)および周囲色(Ambient color)を表す値144および148が、データ構造140について求められる。拡散色144は、付録Aの等式1から求められ、この場合、配合(Blending:混合)値は、テクセル単位でテクセルに対して、あるいはテクスチャ・ピクチャに対してグローバルに、または両方の組み合わせによってテクセルに対して定義され、素材拡散色およびテクセル拡散色の拡散色(Diffuse Color)に対する相対的な寄与を定義する。素材拡散色とは、テクスチャが付けられているオブジェクトに対して定義される拡散色である。ピクセル色とは、テクスチャ・ピクチャ内のテクセルに対して定義される色である。また、テクスチャ拡散係数(ファクタ)は、0.0から1.0の範囲で適切な方法で設定される変数であり、拡散色(Diffuse color)の明暗度(強度)を希望通りに調整するために使用される。
【0052】
同様に、周囲色148は、付録Aの等式2から求められる。この場合、配合値は、前記の通りである。素材周囲色は、テクスチャが付けられているオブジェクトに対して定義される周囲色である。テクスチャ周囲係数(ファクタ)は、前記のテクスチャ拡散係数に類似し、周囲色の明暗度(強度)を希望通りに変化させることができるようにする。ピクセル色とはテクセルの色である。また、シーン周囲色は、シーンに対して定義できるグローバル周囲色である。本発明のこの実施の形態においては、それぞれの色は、正規化されたRGB色空間(R値、G値およびB値は、それぞれ0.0と1.0の間である)で表現される。SoftImage|3Dにおいては、オブジェクトはそれに対して明白に定義された素材がない場合、デフォルトの素材(周囲色および拡散色)が利用される。
【0053】
データ構造140およびそのそれぞれのノード164内の値がいったん求められると、注目のポイントがレンダリングされる。具体的には、ライトの数とその位置を決定するために、シーン定義が調べられる。本発明のこの実施の形態においては、ライトがシーンに対して定義されていない場合、デフォルトの光源が利用され、光源はシーン要素から無限距離に位置される。
【0054】
本発明のこの好ましい実施の形態において、データ構造140およびノード164 の作成、ならびにそのそれぞれの値の決定は、ポリゴン単位で行われる。具体的には、モザイク・メッシュ内のポリゴンに対して、テクセルの矩形外接ボックス(境界ボックス)が決定され、外接ボックスは、ある特定のポリゴンと交差できるそれらのテクセルの範囲を限定する。したがって、外接ボックス内のテクセルのそれぞれが代わりに考慮され、考慮されているテクセルがポリゴンと交差すると、まだそのテクセルに対して存在していない場合にはデータ構造140が作成され、ノード164が適切な値で作成され、テクセルについてリンク・リスト160に追加され、テクセルについて注目のポイントの数を表す値152が適切なデータ構造140で更新される。ポリゴンの外接ボックス内のテクセルのすべてが考慮されると、プロセスは次のポリゴンについて反復される。
【0055】
すべてのポリゴンが考慮されると、レンダリング・プロセスは、図8および図9に図示されるように進む。具体的には、データ構造140が作成されたテクスチャ・ピクチャ40のクロッピングされた部分内の各テクセルが考慮される。図示されるように、第1テクセルはステップ200で選択され、ステップ204では、テクセルの最終色および総重みは両方ともゼロに初期化される。ステップ208では、注目のすべてのポイントがテクセルに対して定義されたかどうかが判断される。テクセルに対して定義された注目のポイントがない場合、プロセスは図9のステップ248に進む。
【0056】
ステップ208では、テクセルについて1つまたは複数の注目のポイントが定義されたと判断され、プロセスはステップ220に進み、そこでは、テクセルについて第1の注目のポイントが選択され、その注目のポイントに求められた重み176がステップ224で総重み値に蓄積される。ステップ228では、第1のライトがシーンに対して定義されたライトから選択される。前記のように、シーンに対してどのライトも設定されていない場合、プロセスは無限距離にあるデフォルトのライトを利用する。
【0057】
ステップ232では、注目のポイントの法線ベクトル172およびこの決定されたライトの色と重み176の積を使用して、ライトの色が位置168で決定され、拡散色(Diffuse color)の値144がテクセルの最終色値に加算される。ステップ236では、考慮されるべきライトが残るかどうかについて判断が下され、残る場合には、残りのライトのそれぞれにステップ228および232が反復され、ライトの色と重みの積がテクセルの最終色値に蓄積(つまり総計)される。
【0058】
ステップ240では、注目のポイントが考慮中のテクセルについて考慮されるために残るかどうかについて判断が下される。注目のポイントが考慮されるために残る場合、プロセスは、注目の残りのポイントのそれぞれに、ステップ220から240を反復する。
【0059】
テクセルについて注目のすべてのポイントが処理されると、プロセスは、拡散色値144と、ある重みと総蓄積重みの差の積が最終色に加算されるステップ248に進んでから、プロセスは、総重みと周囲色値の積が最終色に加算されるステップ250に進む。
【0060】
ステップ216では、データ構造140のあるすべてのテクセルが考慮されたかどうか判断される。考慮されるべきテクセルが残っている場合、プロセスは各テクセルに対してステップ200から250を反復する。残っていない場合には、レンダリング・プロセスは、テクスチャ・ピクチャ40の各テクセルに記憶された色情報をプロセスによって求められた対応する最終色値で置き換えて、ステップ252で完了する。
【0061】
付録Aの等式3は、ステップ252でさらに詳細にテクセル色情報を置き換えるために使用される最終色の計算を示す。等式では、「nbp」とはテクセルの注目のポイントの数であり、「nbl」はシーンに対して定義されるライトの数であり、周囲色(Ambient color)とは周囲色値(Ambientcolor value)148であり、拡散色とは拡散色値(Diffuse color value)144であり、ライト1(light1 )は、位置168および法線172のライトの値である。前記のように、SoftImage|3Dでは、色は0.0から1.0の範囲のR値、G値およびB値として表現されるため、等式3の結果は、必要な場合、強制的に0.0から1.0の範囲内とされる。つまり、赤=1.031は赤1.0に切り捨てられ、青0.01は0.0に切り捨てられる等である。
【0062】
それから、最終画像のレンダリングは、本発明のこの実施の形態から生じるテクスチャ・ピクチャ40の修正バージョンを使用する前記メンタル・レイ・レンダリング・エンジン、および「メンタル・レイ」レンダリング・エンジンでの場合に、シーン内のライトの寄与がレンダリング・エンジンによってさらに考慮されないように、そのシェイディング・モデル(shading model)が起動解除される、つまり「一定」に設定されるように構成されるレンダリング・エンジンによるなどの任意の適切な方法で達成される。
【0063】
当業者にとって明らかとなるように、テクスチャ・ピクチャ40の照度値をあらかじめ定めることによって、レンダリング・エンジンの計算上の要件は削減される。やはり明らかになるように、修正されたテクスチャ・ピクチャ40はカメラ視点から独立しており、テクスチャ・ピクチャ40をさらに修正することを必要とせず、レンダリング・エンジンにシーンに対して定義されるライトの寄与を考慮することを必要とせずに、視点を変更できるようにする。
【0064】
光源の寄与だけが考慮される前記実施の形態においては、本発明は、オブジェクトの鏡面反射情報を作成しないことに注意する必要がある。多くのケースで、鏡面反射性および鏡面反射効果は必要とされていないため、これは過度に不利な点ではない。
【0065】
しかし、鏡面反射性が望まれる場合、それらを、当業者には明らかとなるように、鏡面反射性がない同じ画像のレンダリング時間に比較してレンダリング時間が増加することを犠牲にしても、画像をレンダリングする時点でレンダリング・エンジンによって決定され、本発明に従って作成される画像情報と結合できることが企図される。鏡面反射性が任意のシーン内の制限された数のオブジェクトだけに希望される場合には、これによるレンダリング時間の増加は重大な問題を提起しない可能性がある。
【0066】
さらに、シーンに対して定義されるシェード・ツリーのアクティブな構成要素のすべてを評価する後述の実施の形態は、希望される場合、鏡面反射性を生成する。
【0067】
前記プロセスは、本来、本明細書中で「照度マップ(illumination map)」と呼ばれる、シーンの光源のシーン内の注目の点に対する寄与を表す情報の計算、およびテクスチャ・ピクチャの新しい色値を求めるために、それらの注目のポイントでのオブジェクトの色を照度マップ値と結合することから成る。しかし、本発明は、テクスチャとは無関係にシーンの光源の寄与の事前レンダリングを可能にする照度マップ値の記憶も実現する。具体的には、前記プロセスを修正することにより、本発明は、後でテクスチャ・ピクチャ40と希望されるように結合できる照度マップを作成することができる。
【0068】
照度マップを作成するために、図8および図9のプロセスが、以下に示すように修正される。ステップ232で、ライトの色および重み176の積がテクセルの照度値に蓄積(総計)される。ステップ240では、テクセルについて考慮されるべき追加の注目のポイントが残っていないと判断されると、プロセスは前記のようにステップ248および250にではなく、ステップ216に進む。この実施の形態では、周囲の寄与および拡散の寄与を扱うステップ248およびステップ250は、必要とされず、省略される。ステップ216で、さらに考慮すべきテクセルがない場合、プロセスは結果の照度値を記憶し、照度マップを得ることによって、ステップ252で完了する。照度マップの照度値の計算は、さらに詳細に付録Aの等式4で説明され、その場合、「nbp」および「nbl」は前記と同じ量を表す。このプロセスでは、テクセルは、テクスチャ・ピクチャが各オブジェクトにマッピングされるときに発生する交差に関する情報を決定するために利用されるジオメトリ・プレースホルダー(geometric placeholder)にすぎないことに注意する必要がある。
【0069】
シーンをレンダリングする場合に照度マップを利用するために、照度マップの照度値はテクスチャ・ピクチャ・マップ40内のテクセルのテクセル色、およびオプションで周囲色と結合され、付録Aの等式5に示されるようにレンダリングされた色を取得する。
【0070】
いったんシーンに対して照度マップが決定されると、テクスチャは希望の通りに変更及び/又は置換を行うことができる。例えば、シーンは、木目模様仕上げのテクスチャがマッピングされた壁でレンダリングすることができる。それから、例えば、壁に大理石(marble)テクスチャがマップされたゲームの違うセットとして、シーンをレンダリングし直すことができる。それぞれのケースでは、同じ照度マップがレンダリング・プロセスで利用されるため、一度照度マップがシーンに対して決定されると、そのシーンをレンダリングするレンダリング時間は短縮される。本発明はこのような使用に制限されないが、照度マップの使用が、セガ・サターン、ソニー・プレーステーション、任天堂64またはその類似物のようなゲーム・システムで使用されるもののようなレンダリング・エンジンにとって特に有効となることが企図される。
【0071】
前記のように、テクスチャ・マッピングされたオブジェクトのレンダリングされた色を決定することに加えて、本発明は、非テクスチャ・マッピング・オブジェクトのレンダリングにも使用できる。具体的には、前記SoftImage|3D製品およびそれ以外の多くの製品において、オブジェクトは、オブジェクトを表現するために使用されるポリゴン・メッシュからレンダリングされる。このようなオブジェクトが、それらの上に投影されるテクスチャ・マップなしにレンダリングされる場合、レンダリング・エンジンはメッシュ内の可視ポリゴンごとに、ポリゴンの各頂点でのレンダリングされた色およびポリゴンの法線ベクトルを決定し、これらのレンダリングされた色はポリゴン・サーフェス全体で線形に補間される。ポリゴン・サーフェス全体での頂点色の線形補間は、入力として頂点色およびポリゴンの法線ベクトルを受け入れてから、ポリゴンの表示されたピクセルにレンダリングされた色を決定するレンダリング・ハードウェアが大部分の場合提供されるほど、一般的に利用される動作である。このようなレンダリング・ハードウェアは大幅にオブジェクトのレンダリングに要する時間を改善するが、レンダリング・エンジンは依然として可視ポリゴンごとに頂点色を決定しなければならず、これは多くのシステムでの多大な計算要件を表す。
【0072】
したがって、本発明の別の実施形態では、照度マップは、ポリゴンとして表現されるレンダリング・オブジェクトについて決定することができる。このプロセスは、ユーザが、照度マップが決定されなければならない1つまたは複数のオブジェクトを選択することから開始する。SoftImage|3Dでは、この選択は、シーン内のオブジェクトの階層の概要表示から、あるいは「全オブジェクト(All object)」モードを選択することによって実行できる。言うまでもなく、考慮するためにオブジェクトを選択するそれ以外の適切な方法を、希望通りに利用することができる。いったん考慮しなければならないオブジェクトが選択されると、プロセスは下記のように続行する。
【0073】
前記テクスチャ・マッピング実施の形態に類似するこの実施の形態では、注目のポイントは、各ポリゴンの頂点であり、照度マップにはこれらの頂点ごとの照度値が記憶される。この照度マップは、最終色を得るために頂点色と結合するか、後で使用するために頂点色とは無関係に記憶することができる。前記実施の形態の場合でのように、照度マップを決定し、使用することにより、レンダリング・エンジンによって実行されなければならない計算は削減されるため、レンダリング時間は短縮されるか、同時にさらに複雑なシーンをレンダリングできるようになる。
【0074】
ポリゴン・メッシュ・オブジェクトの頂点の最終色値の決定は、図10に説明される。具体的には、ステップ300で、第1の頂点が選択され、ステップ304で頂点の初期の拡散色および周囲色が決定され、総計される。初期拡散色とは、オブジェクトを構成する素材に対して定義される拡散色である。同様に、初期周囲色とは、素材の周囲色とシーン周囲色の積である。ステップ306では、最終色値が周囲色値に初期化される。次に、ステップ308で、シーン内のライトが選択され、ステップ312で、頂点での選択されたライトのライトの色が決定され、素材の拡散色値で乗算され、最終色に加算される。
【0075】
ステップ316では、考慮されるべきライトが残っているかどうか判断され、まだ考慮されていなかったシーンに対して定義されるライトがあるならば、プロセスはステップ308に反転する。すべてのライトが考慮されたら、プロセスはステップ320に進み、そこでは、処理のための頂点が残っているかどうかが判断される。1つまたは複数の頂点が処理のために残っている場合、プロセスはステップ300に反転する。いったんすべての頂点が処理されると、プロセスは、最終色値が適切に記憶されるステップ324で完了する。
【0076】
最終色値は、一時ファイル内に、ポリゴン・メッシュの定義内に、あるいはメッシュ・ポリゴンの頂点が割り当てられる新規素材の定義度として、あるいは当業者が思い出すあらゆるそれ以外の適切な方法で記憶することができる。
【0077】
明らかになるように、より簡略であるが、図10のプロセスは、テクスチャ・マッピングされたサーフェスに使用される図8および図9のプロセスに類似している。さらに、図8および図9のプロセスを使用する場合と同様に、本発明のこの実施の形態も、最終色値よりむしろ照度マップを作成するために容易に修正できる。具体的には、照度マップを作成するには、ステップ304での初期周囲色値がゼロに設定され、付録Aの等式6で計算される照度値は、付録Aの等式7を使用してポリゴン頂点の最終色値を作成するためにその後に使用できる照度マップとしてステップ324で記憶される。
【0078】
前記のように、本発明の別の実施の形態では、考慮されている注目のポイントに対する各光源の寄与だけを考慮することによって、照度情報を判断する代わりに、シーンのシェード・ツリー全体のアクティブな構成要素の評価が利用される。具体的には、「シェード・ツリー」のアクティブな構成要素は、任意の注目のポイントで、その注目のポイントに垂直なサーフェスに沿って光線を「発射」することによって評価される。当業者にとって明らかとなるように、前記実施の形態のように、結果として生じる照度値は、色及び/又はテクスチャを含めて最終色を表現することができるか、あるいは後でオブジェクトの色またはテクスチャと結合され、最終色を得ることができる。レイ・トレーシングおよびシェード・ツリーの評価は周知であり、本明細書中ではこれ以上説明しない。
【0079】
シェード・ツリーの完全な評価によって求められる照度値は、「メンタル・レイ」レンダリング・エンジンの場合には、素材、雰囲気、またはそれ以外の効果を定義するためにシーンに適用されるアクティブな「メンタル・レイ・シェイダー」の影響も含むだろう。シェード・ツリーのアクティブな構成要素の完全な評価による照度値の決定は、前記の評価に非常に類似しており、必要とされるデータ構造は図11に示され、プロセスは図12、図13に図示される。
【0080】
図7を参照して前記に記述された光源寄与だけの実施の形態の場合と同様に、図11は、テクスチャ・ピクチャ40のクロッピングされた領域内のテクセルごとに作成されるデータ構造400を示す。各データ構造400は、正規化されたRGB色空間内のテクセルについて求められる色値404、テクセルの注目のポイントの数408、およびこれらの注目のポイントのそれぞれの情報を記憶するデータ構造416のリンク・リスト414を指すポインタ412を記憶する。
【0081】
図示されるように、注目のポイントの各データ構造416には、各ポリゴンとXYZ座標空間のテクセルとの交差の領域の決定された中心である位置420とXYZ空間の位置420で決定され、沿って光線がレイ・トレーシング動作で「発射」される法線であるサーフェス(表面)法線424とを含む。また、データ構造416は、重み428およびリンク・リスト414の次のデータ構造416を指すポインタ432も含む。
【0082】
シェード・ツリーのアクティブな構成要素を評価することにより照度マップを作成するためのプロセスは、図12および図13に示される。この実施の形態では、そのためにデータ構造416が作成されたテクスチャ・ピクチャ40のクロッピングされた領域内のそれぞれのテクセルが考慮される。図示されるように、第1のテクセルはステップ500で選択され、ステップ504では、最終色値および重みの値がゼロに初期化される。ステップ508では、テクセルにそれについて定義された注目のポイントがあるかどうかが判断される。注目のポイントがない場合、処理は下記のようにステップ532に進む。
【0083】
考慮されているテクセルはそれについて定義された1つまたは複数の注目のポイントを有する場合、処理は注目の各ポイントを考慮することにより続行する。ステップ512では、第1の注目のポイントが選択され、注目のポイントと結びついた重みはステップ516で総重みに総計される。ステップ520では、注目のポイントでの色がシェード・ツリーのアクティブな構成要素のすべてを評価することによって決定され、決定された色と重みの積が最終色値に総計される。ステップ524では、考慮されるべき注目の追加ポイントが残されているかどうかが判断される。このような注目のポイントが残っている場合には、ステップ512から524が注目のポイントごとに反復される。注目のすべてのポイントが考慮されると、総重みが1.0を下回るかどうかについての判断がステップ532で下される。この条件が偽であると、プロセスはステップ542で、下記のように続行し、この条件が真であると、プロセスはステップ536で続行し、そこでは、テクセルについて注目のポイントの総数がゼロを上回るかどうか、およびANTIALIAS(エイリアス除去)フラグが偽かどうかの判断が下される。
【0084】
ANTIALIASフラグは、ユーザが、プロセスが最終値に元の拡散テクセル色の寄与を含まなければならないどうかを設定できるようにし、プロセス開始前に設定される。当業者にとっては、このようなANTIALIASフラグも、希望するならば、図8および図9を参照して、前記本発明の実施の形態で利用することができることは明らかだろう。このようなANTIALIAS機能の実現方法は、本質的には、直前に記述された方法と同一であり、当業者にとっては明らかだろう。
【0085】
ステップ536での両方の条件が真である場合は、プロセスは、最終色が総重みで除算される最終色値に設定されるステップ540に進む。ステップ536でのどちらかの条件が偽である場合は、プロセスはステップ548に進み、そこでは最終色は、その最終色に1.0と求められた総重みの間の差とテクセルの拡散色との積を加えたものに設定される。どちらのケースでも、プロセスはステップ542に進み、そこでは、考慮されるべき追加テクセルが残っているかどうかが判断される。1つまたは複数のテクセルがまだ考慮されなければならない場合、ステップ500から548が残っているテクセルごとに反復される。すべてのテクセルが考慮されると、プロセスはステップ544で完了する。
【0086】
前記のように、最終色値は、一時ファイル内に、ポリゴン・メッシュの定義内に、またはメッシュ・ポリゴンの頂点を割り当てることができる新規素材の定義として、あるいは当業者が思い出すような任意のそれ以外の適切な方法で記憶することができる。
【0087】
図14は、ポリゴン・メッシュとして表現されるオブジェクトのレイ・トレーシングによって頂点色の照度マップを決定するための図12、図13のプロセスに対する修正を示す。図示されるように、プロセスは、第1の頂点が考慮のために選択されるステップ600で開始する。最終的にレイ・トレーシングされた色はステップ608で決定され、プロセスは、すべての頂点が処理されるまでステップ600から612を反復した後、ステップ616で完了する。
【0088】
状況によっては、図8および図9のプロセスを図12、図13のプロセスと結合し、シーンのシェード・ツリーのアクティブな構成要素の評価がこの決定のために実行すべきかどうかを判断するために、照度値を決定する前にプロセスに試験を追加することが希望される場合がある。
【0089】
明らかとなるように、本発明は、シーンをレンダリングするためのレンダリング・エンジンによって実行されることが必要な計算を削減し、それによりレンダリング時間を短縮するために、照度マップを決定し、照度マップを使用するシステムおよび方法を提供する。照度マップは、テクスチャ・ピクチャまたはそれと使用するための素材色情報と結合されるか、あるいはテクスチャ・ピクチャまたは素材色情報とは無関係に記憶され、後で希望通りにそれと結合することができる。
【0090】
本発明の前記実施の形態は、本発明の例にすぎないことが意図されており、それに対する改変および修正は、本明細書に添付される請求項によってのみ限定される本発明の適用範囲から逸脱することなく当業者により達成することができる。
【0091】
付録A
(1)拡散=((1.0−配合)×素材拡散色)+(配合×テクスチャ拡散係数×ピクセル色)
(2)周囲=(((1.0−配合)×素材周囲色)+(配合×テクスチャ周囲係数×ピクセル色)×シーン周囲色)
【0092】
【数2】
【0093】
【数3】
【0094】
(5)最終色=照度値×ピクセル色[+周囲色]
【0095】
【数4】
【0096】
(7)最終色=周囲色+照度値×拡散色
【図面の簡単な説明】
【図1】uv空間内の3掛ける3(3×3)のピクセル・テクスチャ・ピクチャの概要表現である。
【図2】2掛ける2(2×2)の配置中の4つのポリゴンから成る表面オブジェクトの概要表現である。
【図3】uv座標空間中で図2のオブジェクトを表現するために利用されるモザイク処理されたポリゴン・メッシュの概要表現である。
【図4】図3のモザイク処理されたポリゴン・メッシュ上への図1のテクスチャ・ピクチャの投影の概要表現である。
【図5】(a)から(h)は、モザイク処理されたポリゴン・メッシュ内の三角形のポリゴンと四角形のテクスチャ・ピクセルの間で発生する交差のカテゴリの概要表現である。
【図6】(a)から(e)は、モザイク処理されたポリゴン・メッシュ内の三角形のポリゴンと四角形のテクスチャ・ピクセルの間で発生する交差のカテゴリの概要表現である。
【図7】本発明の実施の形態で利用されるデータ構造の概要表現である。
【図8】本発明の1つの実施の形態に従ったプロセスを表すフローチャートである。
【図9】本発明の1つの実施の形態に従ったプロセスを表すフローチャートである。
【図10】本発明の別の実施の形態に従ったプロセスを表すフローチャートである。
【図11】本発明の別の実施の形態で利用されるデータ構造の概要表現である。
【図12】本発明の別の実施の形態に従ったプロセスを表すフローチャートである。
【図13】本発明の別の実施の形態に従ったプロセスを表すフローチャートである。
【図14】本発明の別の実施の形態に従ったプロセスを表すフローチャートである。
Claims (8)
- レンダリングされるシーン内の少なくとも1つのオブジェクトに対し照度マップを作成する、コンピュータにより実行する方法であって、前記オブジェクトは、テクスチャ・マッピングされるべきものであり、前記オブジェクトはポリゴンのメッシュとして表現され、前記方法は、
(i)前記オブジェクトにマッピングされるテクスチャ・ピクチャを選択し、前記テクスチャ・ピクチャおよび前記ポリゴンのメッシュを1つの共通した座標系で表現するステップと、
(ii)前記テクスチャ・マップ内の各ピクセルと前記ポリゴン・メッシュ内の各ポリゴンのと間の交差の位置、領域および重みを求めるステップであって、前記重みが前記交差の領域の前記ピクセルの総領域に対する割合に対応する、ステップと、
(iii)求めた各交差の領域に対し、前記求めた交差の位置での照度情報と前記交差の領域の前記重みとの積を求めるステップと、
(iv)それぞれのピクセルごとにステップ(iii)で求めた各積を総計し、照度値を求めるステップと、
(v)各前記ピクセルの前記照度値を記憶するステップと、
を備え、各前記ステップはコンピュータにより実行される、照度マップ作成方法。 - 前記コンピュータは、ステップ(iii)の前記照度情報を、前記シーンについてシェード・ツリー内のすべてのアクティブな構成要素を評価することにより求める、請求項1に記載の方法。
- 前記コンピュータは、ステップ(iii)の前記照度情報を、前記求めた交差の位置での前記シーンに対して定義された各光源の寄与と、前記交差の前記領域の前記重みとの積の総計を求めることによって決定し、前記ステップ(iv)で前記照度値を前記積の総計のそれぞれを総計することによって得る、請求項1に記載の方法。
- 前記コンピュータは、ステップ(iii)において、前記積に、テクセルの拡散色とオブジェクトの拡散色の希望の配合を表す拡散色値を、総計の前にさらに乗算し、ステップ(iv)において、前記照度値に対し、前記求めた総重みと前記ピクセルの総領域の間の差と、前記拡散値との積、および前記テクセルの周囲色と前記オブジェクトの周囲色の希望の配合を表す周囲色値を加算し、ステップ(v)において、記憶された照度値を最終色として表す、請求項3に記載の方法。
- 前記コンピュータは、前記記憶された照度値を、前記テクスチャ・ピクチャ内の色値を置換することによって記憶する、請求項4に記載の方法。
- 前記選択されたテクスチャ・ピクチャが色情報を含まない、使用中のジオメトリ・プレースホルダーを含み、前記コンピュータは、前記記憶された照度値を、最終色値を求めるために色情報を含む別の選択されたテクスチャ・ピクチャと結合する、請求項3に記載の方法。
- 前記選択されたテクスチャ・ピクチャが色情報を含まない、使用中のジオメトリ・プレースホルダーを含み、前記コンピュータは、前記記憶された照度値を、最終色値を求めるために色情報を含む別の選択されたテクスチャ・ピクチャと結合する、請求項2に記載の方法。
- シーン定義をレンダリングしてイメージを得る際に使用する照度マップを求める、コンピュータにより実行する方法であって、
前記シーン定義から、前記シーンに対し定義された各々の光源の総数と位置とを求めるステップと、
前記シーン定義から、前記シーン内におけるオブジェクトのための位置を求め、前記オブジェクトをモザイク処理されたポリゴン・メッシュとして表すステップと、
前記テクスチャ・マップ内の各ピクセルと前記ポリゴン・メッシュ内の各ポリゴンとの間の交差の重みを求めるステップであって、前記重みは、前記ピクセルの総領域に対する交差の領域の割合に対応する、ステップと、
各前記交差位置において、前記重みと各前記交差位置における前記光源からの寄与とにしたがって照度値を求めるステップと、
前記シーンに関連した照度マップに前記照度値を記憶するステップと、
を備え、各前記ステップはコンピュータにより実行される、方法。
Applications Claiming Priority (6)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US79259697A | 1997-01-31 | 1997-01-31 | |
US792596 | 1997-01-31 | ||
US90519897A | 1997-08-01 | 1997-08-01 | |
US08/946,053 US6226005B1 (en) | 1997-01-31 | 1997-10-07 | Method and system for determining and/or using illumination maps in rendering images |
US946053 | 1997-10-07 | ||
US905198 | 2004-12-21 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH113436A JPH113436A (ja) | 1999-01-06 |
JP4111577B2 true JP4111577B2 (ja) | 2008-07-02 |
Family
ID=27419898
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2120698A Expired - Fee Related JP4111577B2 (ja) | 1997-01-31 | 1998-02-02 | 照度マップ作成方法、照度マップ決定方法、及び照度マップ作成システム |
Country Status (4)
Country | Link |
---|---|
EP (1) | EP0856815B1 (ja) |
JP (1) | JP4111577B2 (ja) |
CA (1) | CA2227502C (ja) |
DE (1) | DE69831822T2 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10242492B2 (en) | 2015-09-21 | 2019-03-26 | Samsung Electronics Co., Ltd. | 3D rendering and shadow information storing method and apparatus |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6226005B1 (en) | 1997-01-31 | 2001-05-01 | LAFERRIèRE ALAIN M | Method and system for determining and/or using illumination maps in rendering images |
US6377274B1 (en) * | 1999-07-15 | 2002-04-23 | Intel Corporation | S-buffer anti-aliasing method |
GB2371460B (en) | 2001-01-19 | 2004-12-22 | Pixelfusion Ltd | Computer graphics |
CN102636827B (zh) * | 2012-04-20 | 2014-08-06 | 杭州星华反光材料有限公司 | 抗破坏反光布的制作方法 |
US9905046B2 (en) * | 2014-04-03 | 2018-02-27 | Intel Corporation | Mapping multi-rate shading to monolithic programs |
CN113144611B (zh) * | 2021-03-16 | 2024-05-28 | 网易(杭州)网络有限公司 | 场景渲染方法及装置、计算机存储介质、电子设备 |
CN113628313A (zh) * | 2021-08-23 | 2021-11-09 | 广东三维家信息科技有限公司 | 装修效果图生成方法、装置、电子设备及存储介质 |
CN113658316B (zh) * | 2021-10-18 | 2022-03-08 | 北京市商汤科技开发有限公司 | 三维模型的渲染方法和装置、存储介质及计算机设备 |
EP4435726A1 (en) * | 2021-11-19 | 2024-09-25 | Sony Interactive Entertainment Inc. | Image processing device, object data generation device, image processing method, object data generation method, and object model data structure |
CN114022607B (zh) * | 2021-11-19 | 2023-05-26 | 腾讯科技(深圳)有限公司 | 一种数据处理方法、装置以及可读存储介质 |
CN115830208B (zh) * | 2023-01-09 | 2023-05-09 | 腾讯科技(深圳)有限公司 | 全局光照渲染方法、装置、计算机设备和存储介质 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5173948A (en) * | 1991-03-29 | 1992-12-22 | The Grass Valley Group, Inc. | Video image mapping system |
EP0751486B1 (en) * | 1995-06-30 | 2003-10-08 | Matsushita Electric Industrial Co., Ltd. | Method and apparatus for rendering and mapping images |
-
1998
- 1998-01-20 CA CA002227502A patent/CA2227502C/en not_active Expired - Fee Related
- 1998-01-27 EP EP19980300562 patent/EP0856815B1/en not_active Expired - Lifetime
- 1998-01-27 DE DE1998631822 patent/DE69831822T2/de not_active Expired - Fee Related
- 1998-02-02 JP JP2120698A patent/JP4111577B2/ja not_active Expired - Fee Related
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10242492B2 (en) | 2015-09-21 | 2019-03-26 | Samsung Electronics Co., Ltd. | 3D rendering and shadow information storing method and apparatus |
Also Published As
Publication number | Publication date |
---|---|
EP0856815A2 (en) | 1998-08-05 |
CA2227502A1 (en) | 1998-07-31 |
CA2227502C (en) | 2006-06-13 |
EP0856815A3 (en) | 1999-01-07 |
JPH113436A (ja) | 1999-01-06 |
DE69831822D1 (de) | 2005-11-17 |
EP0856815B1 (en) | 2005-10-12 |
DE69831822T2 (de) | 2006-07-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6226005B1 (en) | Method and system for determining and/or using illumination maps in rendering images | |
EP1064619B1 (en) | Stochastic level of detail in computer animation | |
JP4610105B2 (ja) | グラフィックオブジェクトをレンダリングする方法及び装置 | |
JP4679737B2 (ja) | グラフィックオブジェクトの表面点を投影する方法 | |
Haeberli et al. | Texture mapping as a fundamental drawing primitive | |
US7432936B2 (en) | Texture data anti-aliasing method and apparatus | |
JP3736862B2 (ja) | 対象物データベースで規定された3次元対象物スペースの2次元像を描画する方法 | |
Coleman et al. | Ryan: rendering your animation nonlinearly projected | |
JPH0757117A (ja) | テクスチャマップへの索引を生成する方法及びコンピュータ制御表示システム | |
JP4610104B2 (ja) | グラフィックオブジェクトを表現する方法 | |
JPH0778267A (ja) | 陰影を表示する方法及びコンピュータ制御表示システム | |
JP2001266172A (ja) | グラフィックオブジェクトの表面点の陰属性をフィルタリングする方法 | |
JPH05210745A (ja) | 3次元グラフィックス処理方法及びその装置 | |
JP3626144B2 (ja) | 立体オブジェクトデータからの漫画的表現の2次元画像の生成方法および生成プログラム | |
JP4111577B2 (ja) | 照度マップ作成方法、照度マップ決定方法、及び照度マップ作成システム | |
US7158133B2 (en) | System and method for shadow rendering | |
Neyret | Synthesizing verdant landscapes using volumetric textures | |
JP4047421B2 (ja) | ユーザ定義によるルームおよびウィンドウを用いた効率的レンダリング方法および装置 | |
Nishita et al. | A new radiosity approach using area sampling for parametric patches | |
Blythe et al. | Lighting and shading techniques for interactive applications | |
JP4319308B2 (ja) | ガス状物体表示回路 | |
Guthe et al. | Efficient nurbs rendering using view-dependent lod and normal maps | |
Vyatkin et al. | Combined method of visualization of functionally defined surfaces and three-dimensional textures | |
Jones | Iterated function systems for object generation and rendering | |
Öhrn | Different mapping techniques for realistic surfaces |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20041215 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20070723 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20071022 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20071025 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20080123 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20080311 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20080408 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110418 Year of fee payment: 3 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313113 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110418 Year of fee payment: 3 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
LAPS | Cancellation because of no payment of annual fees |