JP2005122735A - ナチュラルライティング環境における物体のリアルタイムのリライティングに対する堅牢なサンプリングのためのシステムおよび方法 - Google Patents

ナチュラルライティング環境における物体のリアルタイムのリライティングに対する堅牢なサンプリングのためのシステムおよび方法 Download PDF

Info

Publication number
JP2005122735A
JP2005122735A JP2004296843A JP2004296843A JP2005122735A JP 2005122735 A JP2005122735 A JP 2005122735A JP 2004296843 A JP2004296843 A JP 2004296843A JP 2004296843 A JP2004296843 A JP 2004296843A JP 2005122735 A JP2005122735 A JP 2005122735A
Authority
JP
Japan
Prior art keywords
edge
new
midpoint
vertex
triangle
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
Application number
JP2004296843A
Other languages
English (en)
Other versions
JP4705357B2 (ja
Inventor
John Michael Snyder
マイケル スナイダー ジョン
Peter-Pike Johannes Sloan
ヨハネス スローン ピーター−パイク
Yi-Ren Ng
ング イ−レン
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsoft Corp
Original Assignee
Microsoft Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Microsoft Corp filed Critical Microsoft Corp
Publication of JP2005122735A publication Critical patent/JP2005122735A/ja
Application granted granted Critical
Publication of JP4705357B2 publication Critical patent/JP4705357B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • G06T17/10Constructive solid geometry [CSG] using solid primitives, e.g. cylinders, cubes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/50Lighting effects
    • G06T15/55Radiosity
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/50Lighting effects

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computer Graphics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Geometry (AREA)
  • Software Systems (AREA)
  • Image Generation (AREA)
  • Non-Portable Lighting Devices Or Systems Thereof (AREA)

Abstract

【課題】 計算済み放射輝度伝達(PRT)の方法論に対し堅牢なサンプリングアプローチを提供するためのシステムおよび方法を提供すること。
【解決手段】 本発明は、表面のメッシュおよびメッシュの再分割した面にわたってPRT信号を計算し、伝達信号の空間的変動が表面上の何処においても十分に処理されるように表面の頂点の数を増やすアルゴリズムを用いる、強化されたPRTシステムを対象にする。このシステムの方法は、全表面にわたって放射輝度伝達シェーディングが十分な精度の色を実現することを保証する。ある実施形態において、伝達は、表面の頂点においてのみ計算される。さらに、この方法は、エイリアシングの最小化中、所望の適切な解像度に対し伝達信号を測定する空間的な、および密度のサンプリング技術を備える。計算されると、信号は、可能な限り簡潔に表現され、ストレージおよびランタイム計算要件を最小限にする。
【選択図】 図1

Description

本発明は、一般にコンピュータグラフィクスの分野に関し、より詳細には、ナチュラルライティング環境(natural lighting environment)に存在するコンピュータ処理の3次元グラフィクスオブジェクトのリアルタイムのリライティング(re-lighting)に関する。
ナチュラルライティング環境に存在するコンピュータ処理の3次元グラフィクスオブジェクトに関して、面源(area source)、ソフトシャドー(soft shadow)及び相互反射から適切に表現されるライティング(lighting)は、写実的な画像の合成において重要な効果である。あいにく、複数の点光源にわたって足し合わせるモンテカルロ・レイトレーシング、ラジオシティー、およびマルチパスレンダリングを含む大規模なライティング環境を統合するための本技術分野における一般的な方法は、どれもリアルタイムレンダリングに対して実用的でない。リアルタイムの写実的で大域的な照明は、3つの困難に直面する。(a)現実の素材の双方向反射分布関数(Bidirectional Reflectance Distribution Functions(BRDFs))の空間的に変化する合成物を作る必要がある(すなわち、BRDFの複雑性)。(b)この照明は、各点におけるライティング方向の半球にわたる積分を要求する(光の積分(light integration))。(c)影のような、光源から受光体(receiver)への光路に沿う介在物のため、バウンシング(bouncing)/オクルージョン(occlusion)効果を明らかにしなくてはならない(光の伝達の複雑性)。当業者によって知られ、および理解されているように、本技術分野における既存の開発は、方向または点の和として入射光を表現することによる拡張されたBRDF複雑性(例えば、光沢および異方性反射)および光の積分問題の解決に概ね集中している。光の積分は、僅かな点における解析的な、または集計されたBRDFのサンプリングを減らすが、大きな光源のため扱いにくくなる。他の既存の方法は、放射輝度(radiance)をサンプリングし、および様々な大きさの粒子を有する放射輝度をプレコンボルブ(preconvolve)し、光の積分問題を処理するが、それらの方法は、畳み込み(convolution)が、入射光が透過し、散乱しないことを引き起こすため、影のような光の伝達の複雑性を無視する。よって、数少ない追加の方法は、より複雑な光の伝達、特に影をシミュレートするために存在するが、光の積分は未解決であり、これらの技術は非常に大きな光源に対しては実用的でない。
既存の方法におけるこれらの問題の多くを解決するために最近現れてきた1つの改良された方法は、計算済み放射輝度伝達(Precomputed Radiance Transfer(PRT))である。PRTは、ソフトシャドー、相互反射、コースティクス(caustic)を捉える低周波数の光の環境における拡散する、および光沢のある物体のリアルタイムレンダリングのための方法である。前工程として、全伝達シミュレータ(global transport simulator)は、任意の伝達、影のような全効果を含む伝達された放射輝度の中の低周波数の入射光、および物体自体からの相互反射を表現する物体表面にわたる関数を生成する。ランタイムにおいて、これらの伝達関数は、実際の入射光に適用される。動的で、局所的なライティングは、フレームごとに物体に近い光をサンプリングすることによって処理され、および物体は、ライティングに対して固定回転もされる(および、その逆も同様)。ライティングおよび伝達関数は、エイリアシング(aliasing)を避ける、低位の球面調和関数を用いて表現され、例えば、拡散する受光体に対する9から25の要素ベクトルの内積に不可欠なシェーディング(shading)を減らすことにより、グラフィクスハードウェアにおいて効率的に評価される。光沢のある物体は、ベクトルよりも行列を用いて処理される。その方法も、間隙を介した隣の点に対し、計算済みの物体を通して動的なライティング環境からの光の伝達のための関数を実装する。これらは、固定して動く物体からのソフトシャドーおよびコースティクスを可能にし、リアルタイムのグローバルなライティング効果を提供するために任意で、動的な受光体に影を掛けられる。
PRTは、特に低周波数のライティング環境において効率的に環境を表現するこの低次元球面調和(spherical harmonic(SH))基底を用いることにより、リアルタイムに光の積分および光の伝達の複雑性をより良く捉えている。PRT法の基本的なアプローチは、どのように物体がそれ自体またはそれに隣接する空間へこの光を散乱させるかを表現することである。一般に、PRT法の技術は、初めに無限遠環境地図によって光らせる凸状の、散乱する物体を有すると仮定する。その環境に対する物体の影付き「応答」は、この場合単純に余弦関数で重み付けされた積分を実行する、入力および出力放射輝度をマッピングする伝達関数と見なされることが可能である。より複雑な積分は、凹状の物体が物体自身にどのように影を作り、被積分関数が各方向に沿って鮮明度を表現する追加の伝達要素をどこに掛けるかを捉える。PRTのアプローチは、シャドーイングのような複雑な伝達関数により要求される高度な伝達シミュレーションを与えられた物体に対して予め計算することである。得られた伝達関数は、物体表面にわたるベクトルまたは行列の稠密集合として表される。その間、入射光は、グラフィクスハードウェアが多数の点における入射光を動的にサンプリングすることが可能であり、スカイライトモデルまたは円のような単純な形態などの分析モデルも用いることが可能であるように予め計算される必要はない。線形基底(この場合、SH)において入射光と伝達関数との両方を表現することによって、前記方法は、光の伝達の線形性を活用し、係数ベクトル間の単純な内積(散乱する受光体)、または小さな伝達行列を介したライティング係数ベクトルの単純な線形変換(光沢のある受光体)に対する光の積分を減らす。低周波数ライティング環境は、再び9から25まで変動する係数である少数の係数を要求し、グラフィクスハードウェアが単一経路における結果を計算することを可能にする。従って、PRT法のランタイム計算は、モンテカルロ・レイトレーシングの技術およびマルチパス光積分(multi-pass light integration)の方法とは違い、光源がどんなに多くてもまたはどんなに大きくても一定であり、さらにこの方法は、必要なSH係数の数を制限する大規模で、滑らかなライティングから恩恵を受ける。
PRT法は、伝達関数において相互反射およびコースティクスのような複雑な伝達効果を表現する。これらが前工程としてシミュレートされるので、伝達関数の基底係数のみに影響し、ランタイム計算には影響しない。このアプローチは、表面と体積の両方に基づいてジオメトリを処理する。さらに、自己伝達(self-transfer)と呼ばれる、固定した物体から物体自身への伝達であるその技術は、動く受光体におけるソフトシャドー付け、光沢のある反射、およびコースティクスを許可する、固定した物体から物体の隣の空間への近接伝達(neighborhood-transfer)、に対して一般化されることが可能である。
前工程として、全照明シミュレータ(global illumination simulator)は、どのように影を掛けおよび物体自身に光を散乱させるかを捉えるモデル上で実行される。その結果は、そのモデル上でベクトル(拡散する場合)または行列(光沢のある場合)の稠密集合として記録される。ランタイムにおいて、入射光は、まずSH基底と予測される。次に、そのモデルの伝達ベクトルまたは行列のフィールド(field)は、ライトニングの係数ベクトルに適用される。物体が拡散する場合、物体上の各点における伝達ベクトルには、ライトニング係数が点在し、正確に自己散乱シェーディング(self-scattered shading)を実現する。物体に光沢がある場合、伝達行列は、ライトニング係数に適用され、各点における自己散乱された入射光を表す球面調和関数の係数を実現する。この関数は、物体のBRDFで畳み込まれ、次いでビュー依存反射方向(view-dependent reflection direction)において評価され、最終シェーディングを実現する。
PRTのアプローチの、この簡潔な説明を補うため、PRTについての詳細な情報を非特許文献1において知ることができる。
Peter-Pike Sloan, Jan Kautz, and John Snyder, "Precomputed Radiance Transfer for Real-Time Rendering in Dynamic, Low-Frequency Lighting Environments", SIGGRAPH, July 2002.
しかし、PRT法の利点があるにもかかわらず、凸状の影の付いていない範囲は、鋭い影を投げかける遮断物近くの領域よりも小さな空間的変動を表示する。従って少ないサンプルを要求する。また、従来のPRTは、空間的サンプリング密度の利点を明らかにしていない。同様に、遮断物によって生じるシャープなビジビリティホライゾン(sharp visibility horizon)、またはコースティクス集束効果(caustic focusing effect)などの真の伝達が、非常に高い周波数の光を有するが、一般に信号の低周波数の構成要素においてより大きな利点が存在する。本技術分野において必要なものは、空間および密度特性の両方をより詳細に明かにする強化されたPRT法である。
本発明は、計算済み放射輝度伝達(Precomputed Radiance Transfer)の方法論に対し堅牢なサンプリングアプローチを提供するためのシステムおよび方法を提供することにより、以前の本技術分野の欠点および欠陥を克服する。一実施形態において、本発明は、最小化エイリアシング(minimizing aliasing)を行う間、適切な解像度で伝達信号を測定する3次元(3D)の表面上のサンプリング技術を備える。計算されると、信号は、可能な限り簡潔に表現され、ストレージおよびランタイム計算要件を最小限にする。
本発明の様々な実施形態は、PRTシステムを対象とする。PRTシステムは、アルゴリズムを利用して、表面のメッシュ上のPRT信号を計算し、メッシュの要素を細分して、伝達信号の空間的変動が表面上の何処においても十分に処理されるように表面の頂点の数を増加させるコンピュータシステムである。この方法は、放射輝度伝達シェーディング(radiance transfer shading)が全表面にわたって十分な精度の色を実現することを確実にする。ある実施形態において、これは、テッセレーション(tessellation)が荒すぎる範囲内の表面ラインティングの細部の許容可能な若干のエイリアシングおよびぼかし(blurring)をもたらすが、伝達は、表面の頂点においてのみ計算される。
本発明のある実施形態は、トライアングルのテッセレーションを備える計算済み放射輝度伝達(PRT)メッシュを強化するためのシステムおよび方法を対象とする。前記トライアングルは、(a)各頂点および各エッジの各中点におけるPRTベクトルをサンプリングし、各前記エッジに対応する各前記中点に対するPRTベクトル、および各頂点に対するPRTベクトルに基づく各エッジの各中点におけるエラーを計算すること、(b)(例えば、中点におけるPRTとエッジ上のPRTに対するあるモデルとの間の違いが終端におけるPRTに基づいて計算されるとき、中点におけるPRTと2つの終端(線形補間に対する中点)間のPRTの平均との間のそのような差が1つのエラー値を有する位置で)予め定められた許容誤差値より大きい中点におけるエラーを有するエッジごとに、(i)作成されたエッジの前記中点における新しい頂点を有する2つの新しいエッジを分割し、(ii)前記新しい頂点と、前記エッジが前記2つの新しいトライアングルに共通する(各「共通のエッジ」)ような、前記エッジ上にない頂点との間への新しいエッジを作成して、そのエッジに対するトライアングルを2つの新しいトライアングルへ分割することにより、頂点およびエッジを有する。代替の実施形態において、分割されたエッジおよび共通のエッジを含む各新しいエッジに対し、そのような新しい作られたエッジ(以降、各「エッジ」)ごとに以下のステップを再帰的に実行するための追加のステップも開示される。(1)各エッジの中点ごとにPRTベクトルをサンプリングし、各前記エッジに対応する各前記中点に対するPRTベクトル、および各頂点に対するPRTベクトルに基づく各エッジの中点ごとのエラーを計算し、(2)予め定められた許容誤差値よりも大きい中点におけるエラーを有する各エッジに対し、前述のように2つの新しいトライアングルへのそのエッジに対するトライアングルを分割する。これらのステップは、新しいエッジが前の再帰的な反復において作成されなくなるか、または予め定められた反復の回数を実行されるまで再帰的に実行される。
ある追加の実施形態に関し、1つの代替のアプローチは、予め定められた許容誤差値よりも大きい中点における1つのエラーを有する少なくとも1つのエッジ(「印を付けたたエッジ」)を備える各トライアングルに対して用いられ、前記トライアングルを4つの新しいトライアングルに以下のように分割する。前記トライアングルの各エッジを前記このようなエッジ(各「分割されたエッジ」)に対し中点における1つの新しい頂点を有する2つの新しいエッジに分割し、および新しい頂点の各対の間に新しいエッジ(各「共通のエッジ」)を作成する。
これらおよび他の実施形態は、本明細書においてより詳細に説明される。
添付の図面と共に読むとき、前述の概要は、好ましい実施形態の後述の詳細な説明と同様、良く理解される。本発明を説明するために、本発明の例示的な説明を図において示すが、本発明は、開示される特定の方法および手段に限定されない。
本主題は、法的用件に合う特定性を持って説明される。しかし、その説明は、この特許の請求の範囲を限定することを意図しない。むしろ、発明者は、特許請求の対象が他の現在のまたは未来の技術と共に、異なるステップまたは本明細書において説明されるものと同様なステップの組み合わせを含む、他の手段においても実施できることを意図している。さらに、「ステップ」という用語が、用いられた方法の異なる要素を暗示するために本明細書において使用されるが、その用語は、個別のステップの順序が明示的に説明されるときでない限りおよびそのようなときを除いて、本明細書で説明される様々なステップの中または間にいかなる優先順位も暗示すると解されるべきでない。
(コンピュータ環境)
本発明の多数の実施形態は、コンピュータ上で実行することができる。図1および後述の議論は、本発明が実装される適当なコンピューティング環境の簡潔で一般的な説明を提供することを意図される。必須ではないが、本発明は、クライアントワークステーションまたはサーバなどのコンピュータによって実行されているプログラムモジュールなどのコンピュータ実行可能な命令の一般的状況において説明される。一般に、特定のタスクを実行する、または特定の抽象データ型を実施するプログラムモジュールは、ルーチン、プログラム、オブジェクト、コンポーネント、データ構造などを含む。さらに、当業者は、本発明をハンドヘルド装置、マルチプロセッサシステム、マイクロプロセッサベースのまたはプログラム可能な家電製品、ネットワークPC、ミニコンピュータ、メインフレームコンピュータなどを含む他のコンピュータシステム構成と共に実施することができることを理解されたい。本発明は、タスクが通信ネットワークを介しリンクされるリモート処理装置によって実行される分散型コンピューティング環境においても実施されることができる。分散型コンピューティング環境において、プログラムモジュールは、ローカルおよびリモートメモリ記憶装置の両方に配置されることができる。
図1に示すように、例示的な汎用コンピューティングシステムは、処理装置21、システムメモリ22、およびシステムメモリを含む様々なシステムコンポーネントを処理装置21に結合するシステムバス23を含む、従来のパーソナルコンピュータ20などを含む。システムバス23は、メモリバスまたはメモリコントロール、周辺バス、および様々なバスアーキテクチャの中の任意のものを用いるローカルバスを含む何種類かのバス構造の中の任意のものであり得る。システムメモリは、読出し専用メモリ(ROM)24およびランダムアクセスメモリ(RAM)25を含む。起動中などにパーソナルコンピュータ20内の要素間に情報を伝達するための基本ルーチンを含む基本入力/出力システム(BIOS)26は、ROM24内に格納される。パーソナルコンピュータ20は、図示していないハードディスクから読み出し、および書き込むためのハードディスクドライブ27、リムーバブル磁気ディスク29から読み出し、および書き込むための磁気ディスクドライブ28、およびCD−ROMまたは他の光媒体などのリムーバブル光ディスク31から読み出し、および書き込むための光ディスクドライブ30をさらに含むことができる。ハードディスクドライブ27、磁気ディスクドライブ28、および光ディスクドライブ30は、ハードディスクドライブインターフェース32、磁気ディスクドライブインターフェース33、および光ドライブインターフェース34によってそれぞれシステムバス23に接続される。ドライブおよびそれらの関連するコンピュータ読取り可能な媒体は、パーソナルコンピュータ20に対しコンピュータ読取り可能な命令、データ構造、プログラムモジュールおよび他のデータの不揮発性ストレージを提供する。本明細書で説明される例示的な環境が、ハードディスク、リムーバブル磁気ディスク29およびリムーバブル光ディスク31を用いるが、磁気カセット、フラッシュメモリカード、デジタルビデオディスク、ベルヌーイカートリッジ、ランダムアクセスメモリ(RAMs)、読出し専用メモリ(ROMs)などのような、コンピュータによってアクセス可能なデータを格納することが可能な他の種類のコンピュータ読取り可能な媒体も例示的な操作環境において用いることができることは当業者により理解されるであろう。
多数のプログラムモジュールは、オペレーティングシステム35、1つまたは複数のアプリケーションプログラム、他のプログラムモジュール37およびプログラムデータ38を含む、ハードディスク、磁気ディスク29、光ディスク31、ROM24またはRAM25上に格納されることができる。ユーザは、キーボード40およびポインティングデバイス42などの入力装置を介し、パーソナルコンピュータ20にコマンドおよび情報を入力することができる。他の入力装置(図示せず)には、マイクロフォン、ジョイステック、ゲームパッド、衛星パラボラアンテナ、スキャナなどを含むことができる。これらおよび他の入力装置は、多くの場合システムバスに接続されるシリアルポートインターフェース46を介して処理装置21に接続されるが、パラレルポート、ゲームポートまたはユニバーサルシリアルバス(USB)などの他のインターフェースによっても接続されることができる。モニタ47または他の種類の表示装置も、ビデオアダプタ48などのインターフェースを介してシステムバス23に接続される。モニタ47に加えて、パーソナルコンピュータは、一般にスピーカおよびプリンタなどの他の周辺出力装置(図示せず)を含む。図1の例示的なシステムも、ホストアダプタ55、SCSI(Small Computer System Interface)バス56、およびSCSIバス56に接続された外付けの記憶装置62を含む。
パーソナルコンピュータ20は、1つまたは複数のリモートコンピュータへの論理接続を用いるネットワーク化された環境において操作することができる。メモリ記憶装置50のみが図1には示されているが、リモートコンピュータ49は、別のコンピュータ、サーバ、ルータ、ネットワークPC、ピア装置または他の共通のネットワークノードであり得、および一般にパーソナルコンピュータ20に関連する上述の要素の多くまたはすべてを含む。図1において説明された論理接続は、ローカルエリアネットワーク(LAN)51およびワイドエリアネットワーク(WAN)52を含む。そのようなネットワーキング環境は、オフィス、企業規模のコンピュータネットワーク、イントラネットおよびインターネットにおいて一般的である。
LANネットワーキング環境において用いられるとき、パーソナルコンピュータ20は、ネットワークインタフェースまたはアダプタ53を介してLAN51に接続される。WANネットワーキング環境において用いられるとき、パーソナルコンピュータ20は、一般にインターネットなどのワイドエリアネットワーク52上に構築される接続のためにモデム54または他の手段を含む。内蔵または外付けが可能なモデム54は、シリアルポートインターフェース46を介してシステムバス23に接続される。ネットワーク環境において、説明されたパーソナルコンピュータ20に関連するプログラムモジュールまたはその一部を、リモートメモリ記憶装置に格納することができる。示されたネットワーク接続が、使用することができるコンピュータ間の通信リンクを構築するための例示的なおよび他の手段であることは理解されたい。
本発明の多数の実施形態がコンピュータ化されたシステムに対して特によく適しているが、この明細書は、このような実施形態に本発明を限定することを意図したものはない。一方、本明細書で用いられる「コンピュータシステム」という用語は、装置が電子的、機械的、論理的または仮想的であるか否かに関わらず、情報を格納し、および処理することのできる、および/または装置自体の動作または実行を制御するための格納された情報を用いることのできる任意のおよびすべての装置を含むことを意図している。
(グラフィクス処理サブシステム)
図2は、典型的なコンピュータグラフィクスサブシステム200を示したブロック図である。サブシステム200は、次にオンチップL1キャッシュ(図示せず)を有し、さらに直接L2キャッシュ212に接続されたコアプロセッサ214を備えたCPU 21'を備える。CPU 21'のL1キャッシュ(図示せず)は、通常マイクロプロセッサチップ自体に形成される。例えば、Intel MMX(登録商標)マイクロプロセッサは、32KBL1キャッシュを搭載している。一方、L2キャッシュ212は、通常別のチップ(または場合により拡張カード)上にあるが、それでもRAMより素早くアクセスすることが可能であり、通常L1キャッシュよりも大きい。例えば、1メガバイトは、L2キャッシュに対する共通のサイズである。当業者によってよく理解されているように、キャッシュメモリ内のデータおよび命令にアクセスするCPU 21'は、ランダムアクセスメモリ(RAM25、図1参照)におけるデータおよび命令にアクセスするよりもさらにより効率的であり、ひいてはCPUは、キャッシュのないGPUに対し大きな性能向上を達成することが可能である。
CPU21'は、AGP230に接続される。AGPは、CPU21'、システムメモリRAM25'、およびグラフィクスカード240間の2地点間接続を提供し、これら3つのコンポーネントを、図1に示したハードディスクドライブ32、磁気ディスクドライブ34、ネットワーク53、および/または周辺装置などの他の入力/出力(I/O)装置232にPCIバス23'などの従来のシステムバスを介して更に接続する。AGPの存在も、コンピュータシステムがデータトラフィックのシステムからビデオへ(system-to-video)のフローを有利にすることを意味する。つまり、CPU21'およびシステムメモリRAM25'からグラフィクスカード240へその反対よりも多くのトラフィックが流れる。なぜなら、AGPは、一般にグラフィクスカード240から戻ってくる量に比べてグラフィクスカード240に流すデータがちょうど4倍に達するよう設計されているからである。
グラフィクスカード240は、表示装置47'に直接接続されたフレームバッファ246をさらに備えている。当業者によりよく知られ、理解されているように、フレームバッファは、一般に表示装置47'が現在の表示内容をリフレッシュ(または「アップデート」)するためフレームバッファから一斉に読み出している間、プロセッサ(場合によっては、GPU242またはCPU21')が新しい(または修正された)画像をフレームバッファに書くことを可能にするデュアルポートメモリ(dual-ported memory)である。グラフィックカード240は、GPU242およびVRAM244をさらに備える。
GPU242は、基本的に、グラフィクス操作に対し特に最適化されているコンピュータシステムにおける第2の処理装置である。グラフィックカードに応じて、GPU242は、グラフィクスコプロセッサまたはグラフィクスアクセラレータのどちらかであり得る。グラフィックカードが、グラフィックコプロセッサであるとき、ビデオドライバ224は、グラフィクスに関するタスクを実行のために直接グラフィクスコプロセッサに送り、グラフィックコプロセッサは、単独でフレームバッファ246に対して(CPU21'の直接の関与なしに)グラフィクスをレンダリングする。他方、グラフィクスカードがグラフィクスアクセラレータであるとき、ビデオドライバ224は、グラフィクスに関するタスクをCPU21'に送り、次にCPU21'は、グラフィクスアクセラレータに特定のグラフィクス集約型のタスクを実行するよう指示する。例えば、CPU21'は、グラフィクスアクセラレータに輪郭を示す頂点を有するポリゴンを描くよう指示することができ、次にグラフィクスアクセラレータは、ビデオメモリ(VRAMSM248)にポリゴンのピクセルを書くタスクを実行し、ここから、表示装置47'上に表示するためにアップデートされた画像をフレームバッファ246へコピーする。
GPU242に付随するのは、GPUが(RAMの使用に代わって)即時にメモリを呼び出すために近くに置かれた自らのシャドーメモリ(VRAMSM)を保持することを可能にするVRAM244であり、GPUの方法などのような追加の処理動作のために必要な追加のメモリ(例えば、VWM)も提供することができる。VRAM244は、VRAMSM248およびVWM249をさらに含む。VRAMSM248は、GPU242が(GPUの方法におけるCIsを含む)グラフィクス画像を構成し、および修正するVRAM内の場所であり、およびそれは、GPU242がレンダリングされたグラフィック画像を、表示装置47'をアップデートするためにグラフィクスカード240のフレームバッファ246にコピーする場所である。GPUの方法において、VWMは、特にGOsを格納し、および/またはPOs(またはこの一部)を格納する/再格納するGPU242により用いられることができるグラフィクスデータを一時的に格納するGPU242によって用いられるVRAMの追加の領域である。(この機能性をグラフィクスカード240にオフロードすることにより、CPU21'およびVSM222は、これらのタスクから開放される。)
システムメモリRAM25'は、オペレーティングシステム35'、ビデオドライバ224、ビデオメモリサーフェース(VMSs)223、およびビデオシャドーメモリ(VSM)222を備えることができる。VSMは、CPU21'が(CPUの方法におけるCIsを含む)グラフィック画像を構成し、および修正し、CPU21'がレンダリングされたグラフィック画像を、AGP230を介してグラフィクスカード240のフレームバッファ246にコピーするRAM25'内の場所である。CPUの方法において、VMSsは、特にGOsを格納し、および/またはPOs(またはこの一部)を格納する/再格納するCPU21'により用いられることができるグラフィクスデータを一時的に格納するCPU21'によって用いられるRAMの追加の領域である。
(空間的分離適応サンプリングアルゴリズム(Spatially-Discrete Adaptive Sampling Algorithm))
本発明の様々な実施形態は、PRTシステム、つまり、メッシュの面を分割し、伝達信号の空間的変動が表面のどの場所でも十分に処理されるように表面の頂点の数を増やす、表面メッシュ上のPRT信号を計算するためのアルゴリズムを利用するコンピュータシステムを対象とする。この方法は、輝度伝達シェーディングが全表面にわたって十分に正確な色を実現することを可能にする。ある実施形態において、伝達は、テッセレーションが粗過ぎる領域における表面ライティングの細部の一定量の許容可能なエイリアシングおよびぼかしを生じさせるが、表面の頂点においてのみ計算される。
図3は、本発明のいくつかの実施形態に対する入力および出力を示したブロック図である。図において、PRTシステム302は、粗くテッセレートされた(標準の)三角メッシュ312、(後述の)許容誤差314に対応する値、および再分割レベル316の最大数に対応する値を含む入力を受信する。これらの入力を用いて、PRTシステムは、(i)幾何学的に入力メッシュと同様であるが、面がより細かく再分割されている新しい、強化されたメッシュ(「EM」)322、および(ii)(「TSVs」と共に)強化されたメッシュ328の各頂点における伝達信号ベクトルを実現する。
図4は、本発明の様々な特徴を備えた方法の一実施形態を示すフローチャートである。要約すると、入力を出力に変換するため、PRTシステムは、例えば、(現在、DirectX9.1D3DXSHPRTシミュレーション関数がDirectX APIにおいて公開されていないことに留意されるべきだが)現在のDirectX9.1D3DXSHPRTシミュレーション関数のバックエンドにおいて見られるようなソフトウェアレイトレーサ(software ray-tracer)を用いるメッシュの頂点におけるPRTベクトルをサンプリングするアルゴリズムを用いた。このようなレイトレーサは、例えば、サンプルの確立分布が余弦関数的に重み付けされ、拡散余弦減衰(diffuse cosine falloff)を重要度サンプリング(importance-sample)し、静的分布(static distribution)が各頂点のローカルフレームに使い回される、各点について半球に関し分布された光線の方向のHammersleyポイントまたはHaltonシーケンスを用いる。
図に示されるように、および本発明のいくつかの実施形態に対し、PRTシステムによって用いられるアルゴリズムは、複数のステップを備える。ステップ402において、システムは、最初にサンプリングし、およびテッセレーションの各エッジの各頂点および中点における(つまり、メッシュにおける元のトライアングルごとに)PRTベクトルをキャッシュに入れる。ステップ404において、次にシステムは、各エッジにおけるエラーを計算する。そのエラーは、サンプリングされたエッジとエッジの各終端におけるベクトルの線形補間から生じるベクトルとの間の単純な平方誤差であり得る。ステップ406において、次に各エッジに対し、システムは、エラーが提供された閾値よりも大きいかを判定し、もしそうであるなら、一斉に各そのようなエッジに印を付け、再分割する。ステップ408において、およびテッセレーションにおける(3つのエッジと3つの頂点とを備える)トライアングルごとに、システムは、エッジの1つ、2つ、または3つが印を付けられた場合、前記トライアングルを2つ、3つ、または4つのトライアングルに分割し、各新しい頂点におけるPRTベクトルが再分割前のエッジの中点において計算された値を与える。ステップ410において、任意のトライアングルがステップ408において新しいトライアングルに分割された場合、および再分割の最大数にまだ達していない場合、次にステップ412(およびサブシーケンス反復)において、システムは、テップ408の直近の操作において作成された新しいトライアングルの各エッジの各頂点および中点におけるPRTベクトルをサンプリングし、キャッシュに入れる。次にステップ404に戻り、それらのエッジのさらなる処理を続ける。このサイクルは、ステップ410においてステップ408の直近の反復においてトライアングルが再分割されなかったか、または再分割の最大数に達するまで続く。その時定で、ステップ414において、再分割処理は終了され、およびシステムは、入力メッシュを出力メッシュに置き換える。その後、頂点およびトライアングルの現在のリストを提供し、PRT信号が各頂点におけるキャッシュに入れられたPRTベクトルである。
図5A、5Bおよび5Cは、図4のステップ408において説明したような、本発明の一実施形態に従うすべての2つ、3つまたは4つの新しいトライアングルそれぞれへのトライアングルの分割を示したブロック図である。図5Aにおいて、新しいエッジ532が、印が付けられたエッジ512の中点542から前記印を付けられたエッジ512の反対側の頂点552に伸びるとき、単一の印を付けられたエッジ512を有するトライアングル502は、2つの新しいトライアングル522および524に分割される。
図5Bにおいて、2つの印を付けられたエッジ512および514を有する同じトライアングル502は、基本的に図5Aに示されたような同様のアプローチを用いるが、それは2つの部分においてである。第1の部分では、図5Aにおいて示されたようなエッジ512に対して再分割が行われ、第2の部分では、エッジ514に対し再分割が行われ、エッジ512に対して行われた第1の部分における再分割から生じた第2のエッジ514に対する再分割が新しいトライアングル522内で行われる。より具体的には、2つの印の付けられたエッジ512および514を有するトライアングル502に対し、(a)新しいエッジ532が、印を付けられたエッジ512の中点542から前記印を付けられたエッジ512の反対側の頂点552に伸びるとき、トライアングル502は、2つの新しいトライアングル522および524にまず分割され、(b)新しいエッジ534が印を付けられたエッジ514の中点544から(前記頂点554もエッジ512の中点に生じる)前記印を付けられたエッジ514の反対側の頂点554に伸びるとき、新しいトライアングル522は、2つの新しいトライアングル526および527にさらに分割される。
図5Cおいて、3つの印を付けられたエッジ512,514および516を有する同じトライアングル502も、基本的には図5Aおよび5Bに示されているような同様のアプローチを用いるが、それは3つの部分においてである。第1の部分では、図5Aに示されるようなエッジ512に対し再分割が行われ、第2の部分では、図5Bに示されるようなエッジ514に対し再分割が行われ、第3の部分では、エッジ516に対する再分割が、エッジ512に対して行われた第1の部分における再分割から生じた新しいトライアングル524内で行われる。より具体的には、3つの印を付けられたエッジ512、514および516を有するトライアングル502に対し、(a)新しいエッジ532が、印が付けられたエッジ512の中点542から、前記印が付けられたエッジ512の反対側の頂点552に伸ばされるとき、トライアングル502は、まず2つの新しいトライアングル522および524に分割され、(b)新しいエッジ534が、印が付けられたエッジ514の中点544から、(前記頂点554もエッジ512の中点に生じる)前記印が付けられたエッジ514の反対側の頂点554に伸ばされるとき、新しいトライアングル522は、2つの新しいトライアングル526および527にさらに分割され、(c)新しいエッジ536が、印が付けられたエッジ514の中点546から、(前記頂点556もエッジ512の中点およびトライアングル522におけるエッジ514の反対側の頂点に生じる)前記印が付けられたエッジ514の反対側の頂点556にさらに伸ばされるとき、新しいトライアングル524は、2つの新しいトライアングル528および529にさらに分割される。
図4を再び参照すると、ステップ408に関し、作成された新しいトライアングルの和(例えば、図5C のトライアングル526、527、528および529)が元のトライアングル(502)と正確に同じ空間にまでおよぶことに留意することは重要である。加えて、アルゴリズムが、正常変動が新しい、強化されたメッシュにおいてより良く処理されるように終端から新しい頂点に標準のベクトルを補間することも仮定される。
図4に示された方法に対するある代替の実施形態において、および特にステップ408に関し、エッジの1、2または3箇所に印が付いた場合、トライアングルを2つ、3つまたは4つのトライアングルに分割する代わりに、 PRTシステムは、単一の印を付けられたエッジを有する任意のトライアングルを、元のトライアングルの各エッジの中点に基づいた4つのトライアングルに再分割することができる。このアプローチは、アルゴリズムが、元のトライアングルの同じエッジを繰り返し分割する図4のステップ408に示した方法をもたらす「鋭角トライアングル」を避ける。図6は、例えば、点602と604との間の遷移が表示された画像に鋭い画像の輪郭を定めるとき、図4の方法の4回の反復から生じる鋭角トライアングルの結果を示すブロック図である。一方、図7A、7Bおよび7Cは、代替の4−トライアングル再分割方法の3回の反復から生じるトライアングルを示すブロック図である。各生じたトライアングルが、より小さいが、大きなトライアングルの相似形であることに留意されたい。図7Aにおいて、元のトライアングル702は、4つのトライアングル712、714、716および718に分割される。図7Bにおいて、生じたトライアングル716(ラベル表示されていない)は、再び4つのトライアングル722、724、726および728に分割される。図7Cにおいて、生じたトライアングル726(ラベル表示されていない)は、再び4つのトライアングル732、734、736および738に分割される。
さらに、それらの実施形態のいくつかに対し、および特に図7A、7B、および7Cに示した4−トライアングル再分割方法に関し、T−頂点を避けるために、一般に「コンフォーマルエッジ」として知られる、追加のエッジは、T−頂点を取り除くために必要に応じて再分割の過程の一部として必ずしも含まれない。図7Bにおいて、これは、図7Dに示すように2つのトライアングル714'および714''に分割されるトライアングル714を生じさせる。図7Cにおいて、これは、図7Eに示すように2つのトライアングル724'および724''に分割されるトライアングル724を生じさせる。どちらの場合においても、それらの等角分割は、近接するトライアングルにおいて起きる4対1再分割によって生じる。図5A、5Bおよび5Cに示したように2つ、3つまたは4つに分割されたトライアングルに対し、この同じ過程も必要であり、ある実施形態に対しても自動的に生じる。
しかし、用いられるアプローチに関係なく、本発明のそれら様々な実施形態は、一連のエッジのマーキングおよび再分割の後、メッシュは、いかなるT−クラックも有さないという意味において常にいい形に整形され、従ってこのアプローチは、整理されたパスを要求する、またはより複雑な分割規則を要求するより洗練された方法より簡潔であるという点において、固有の優位性を有する再分割の方法を用いる。
本発明の様々な実施形態によって用いられる1つのエラー測定基準は、エッジにわたって積分されたPRT信号の平方誤差である。これは、エッジの長さに関連し、従ってエラーは、再分割の水準が高い場所で減少する。本発明のある代替の実施形態によって用いられる代替のエラー測定基準は、積分を廃止し、各エッジのまさに中点における絶対的なエラーの違いを簡潔に測定する。その各エッジは、テストされ、表面上の最大エラーの個別のサンプリングを通して、L基準評価のように大まかに解釈されることができる。
全体的に、この強化されたPRTアプローチは、簡潔であり、および基礎を成すアルゴリズムは、再分割のすべてのステップにおいて有効なメッシュを提供する。さらに、エッジのいたる所でのエラー推定において計算されたおよびキャッシュに入れられたデータが存在するため、伝達信号の最終値をエクスポートするのは些細なことである。
(結論)
本明細書において説明される様々なシステム、方法および技術は、ハードウェアまたはソフトウェアを伴い、またはその両方の適切な組み合わせを伴い実施することができる。従って、本発明の方法および装置、またはそれらの特定の態様ならびに一部は、フロッピー(登録商標)ディスク、CD-ROM、ハードドライブ、または任意の他のマシン‐読取り可能な記憶媒体などの有形の媒体において実施されるプログラムコード(例えば、命令)の形を取る。プログラムコードがコンピュータのようなマシンにロードされ、および実行されるとき、マシンは、本発明を実施するための装置になる。プログラム可能なコンピュータ上でのプログラムコードを実行する場合、コンピュータは、一般にプロセッサ、プロセッサによって読取り可能な記憶媒体(揮発性および不揮発性メモリおよび/またはストレージ要素)、少なくとも1つの入力装置、および少なくとも1つの出力装置を含む。1つまたは複数のプログラムは、コンピュータシステムとやりとりする高水準の手続き型プログラミング言語またはオブジェクト指向プログラミング言語において好ましくは実装される。しかし、必要ならば、プログラムを、アッセンブリー言語または機械語において実装することが可能である。いかなる場合においても、言語は、コンパイル済みまたはインタープリタ型言語であってもよく、ハードウェア実装と組み合わされることもできる。
本発明の方法および装置も、電気配線またはケーブリング、光ファイバー、ならびに伝送の任意の他の形態など、いくつかの伝送媒体を伝達されるプログラムコードの形態において具現化することができる。プログラムコードが、EPROM、ゲートアレイ、プログラム可能な論理装置(PLD)、クライアントコンピュータ、ビデオレコーダなどのマシンによって受信され、ロードされ、実行されるとき、そのマシンは、本発明を実施する装置になる。汎用プロセッサ上に実装されるとき、プログラムコードは、プロセッサと組み合わせ、本発明のインデックス付け機能性を実行する働きをする独自の装置を提供する。
本発明が様々な図の好ましい実施形態と結びつけて説明されているが、他の同様な実施形態を使用して、または記載された実施形態に対する修正および追加を行って、本発明から逸脱することなく本発明と同様の機能を実行することができることは理解されることである。例えば、本発明の例示的な実施形態が、パーソナルコンピュータの機能性をエミュレートするデジタル装置という状況で説明されるが、当業者は、本発明が、本願に記載のようなデジタル装置に限定されず、有線であろうと無線であろうと、ゲーム用コンソール、ハンドヘルドコンピュータ、ポータブルコンピュータなどの既存のまたは現れつつある、コンピューティング装置または環境のいくつにでも適用でき、通信ネットワークを介し接続され、ネットワーク上でやりとりするそのようなコンピューティング装置のいくつにでも適用されることができることを理解されたい。さらに、ハンドヘルド装置のオペレーティングシステムおよび他のアプリケーション固有のハードウェア/ソフトウェアインタフェースシステムを含む、様々なコンピュータプラットフォームが本明細書において特に無線ネットワーク装置の数が増え続けるとして検討されたことは強調されるべきである。従って、半発明は、いかなる単一の実施形態にも限定されるべきではなく、むしろ添付の請求項に従う幅および範囲において解釈される。
本発明を組み込むことのできるコンピュータシステムを表したブロック図である。 典型的なコンピュータグラフィクスサブシステムを示したブロック図である。 本発明のいくつかの実施形態に対する入力および出力を示したブロック図である。 本発明の様々な態様を備えた方法の一実施形態を示したフローチャートである。 図4において説明したような本発明の一実施形態に従う2つの新しいトライアングルの分割を示したブロック図である。 図4において説明したような本発明の一実施形態に従う3つの新しいトライアングルの分割を示したブロック図である。 図4において説明したような本発明の一実施形態に従う4つの新しいトライアングルの分割を示したブロック図である。 例えば、特定の点の間の遷移が、描かれているグラフィックにおいてくっきりした画像の輪郭を定義するときに生じる図4の方法の4回の反復から生じた鋭角トライアングルの結果を示したブロック図である。 代替の4−トライアングルの再分割の方法の3回の反復から生じたトライアングルを示したブロック図である。 代替の4−トライアングルの再分割の方法の3回の反復から生じたトライアングルを示したブロック図である。 代替の4−トライアングルの再分割の方法の3回の反復から生じたトライアングルを示したブロック図である。 代替の4−トライアングルの再分割の方法の3回の反復から生じたトライアングルを示したブロック図である。 代替の4−トライアングルの再分割の方法の3回の反復から生じたトライアングルを示したブロック図である。
符号の説明
31 リムーバブル光ディスク
200 コンピュータグラフィクスサブシステム
23' PCIバス

Claims (32)

  1. トライアングルのテッセレーションを含む計算済み放射輝度伝達(PRT)メッシュを強化するための方法であって、前記トライアングルは、頂点およびエッジを含み、前記方法は、前記メッシュにおいて、すべてのトライアングルではないが、少なくとも1つのトライアングルを、少なくとも2つまたはそれよりも多くのトライアングルにそれぞれ分割するステップを備えたことを特徴とする方法。
  2. 少なくとも1つのトライアングルの前記分割は、少なくとも1つのエッジを分割するステップと、少なくとも1つの新しい頂点および前記トライアングルに対し、前記頂点から伸びる少なくとも1つの新しいエッジを作成するステップとを含むことを特徴とする請求項1に記載の方法。
  3. 各エッジの各頂点および各中点におけるPRTベクトルをサンプリングし、ならびに各前記エッジに対応する各前記中点に対する前記PRTベクトルおよび各頂点に対する前記PRTベクトルに基づき、各エッジの各中点におけるエラーを計算するステップと、
    予め定められた許容誤差値よりも大きい中点におけるエラーを有する各エッジ(「印を付けられたエッジ」)に対し、そのエッジに対する前記トライアングルを
    前記印を付けられたエッジを、前記エッジに対する中点に新しい頂点を含む2つの新しいエッジ(「分割されたエッジ」)に分割し、および
    前記新しい頂点と前記エッジ上にない頂点との間に新しいエッジを作成し、前記エッジが前記2つの新しいトライアングルに共通する(「共通のエッジ」)ようにして、少なくとも2つの新しいトライアングルに分割するステップとをさらに備えることを特徴とする請求項2に記載の方法。
  4. 分割されたエッジおよび共通のエッジを含む各新しいエッジに対し、このような作成された新しいエッジ(以後、各「エッジ」)ごとに
    各エッジの中点ごとにPRTベクトルをサンプリングし、ならびに前記各エッジに対応する各前記中点に対する前記PRTベクトルおよび各頂点に対する前記PRTベクトルに基づいた各エッジの各中点におけるエラーを計算するステップと、
    前記予め定められた許容誤差値よりも大きい中点におけるエラーを有する各エッジ(「印を付けられたエッジ」)に対して、そのエッジに対する前記トライアングルを
    前記印を付けられたエッジを、前記エッジに対する前記中点における新しい頂点を有する2つの新しいエッジに分割し、および
    前記新しい頂点と前記エッジ上にない頂点との間に新しいエッジを作成し、前記エッジが前記2つの新しいトライアングルに共通する(各「共通のエッジ」)ようにして、少なくとも2つの新しいトライアングルに分割するステップとを再帰的に実行するステップをさらに備え、
    前記ステップは、(a)再帰的な反復の前に新しいエッジが作成されなくなるか、または(b)予め定められた反復の回数が実行されるまで再帰的に実行されることを特徴とする請求項3に記載の方法。
  5. 前記予め定められた許容誤差値よりも大きい中点におけるエラーを有する1つのエッジから成るトライアングルは、少なくとも2つの新しいトライアングルに分割されることを特徴とする請求項4に記載の方法。
  6. 前記予め定められた許容誤差値よりも大きい中点におけるエラーを有する2つのエッジから成るトライアングルは、3つの新しいトライアングルに分割されることを特徴とする請求項4に記載の方法。
  7. 前記予め定められた許容誤差値よりも大きい中点におけるエラーを有する3つのエッジから成るトライアングルは、4つの新しいトライアングルに分割されることを特徴とする請求項4に記載の方法。
  8. 各エッジの各頂点および各中点におけるPRTベクトルをサンプリングし、ならびに各前記エッジに対応する各前記中点に対する前記PRTベクトルおよび各頂点に対する前記PRTベクトルに基づく各エッジの各中点におけるエラーを計算するステップと、
    予め定められた許容誤差値よりも大きい中点におけるエラーを有する少なくとも1つのエラーを含む各トライアングルに対し、前記トライアングルを、
    前記トライアングルの各エッジを前記そのようなエッジに対する前記中点に新しい頂点を有する2つの新しいエッジ(「分割されたエッジ」)に分割し、および
    新しい頂点の各対の間に新しいエッジ(各「共通のエッジ」)を作成して4つの新しいトライアングルに分割するステップとをさらに備えることを特徴とする請求項2に記載の方法。
  9. 分割されたエッジおよび共通のエッジを含む各新しいエッジに対し、このような作成された新しいエッジ(以後、各「エッジ」)ごとに
    各エッジにおけるPRTベクトルをサンプリングし、ならびに各前記エッジに対応する各前記中点に対する前記PRTベクトルおよび各頂点に対する前記PRTベクトルに基づく各エッジの各中点におけるエラーを計算するステップと、
    予め定められた許容誤差値よりも大きい中点におけるエラーを有する少なくとも1つのエッジを含む各トライアングルに対し、前記トライアングルを
    各エッジを前記このようなエッジに対し前記中点における新しい頂点を有する2つの新しいエッジに分割し、および
    新しい頂点の各対の間に新しいエッジを作成して、4つの新しいトライアングルに分割するステップとを再帰的に実行するステップとをさらに備え、
    前記ステップ群は、(a)再帰的な反復の前に新しいエッジが作成されなくなるか、または(b)予め定められた反復の回数が実行されるまで再帰的に実行されることを特徴とする請求項8に記載の方法。
  10. トライアングルのテッセレーションを含む計算済み放射輝度伝達(PRT)メッシュを強化するためのシステムであって、前記トライアングルは、頂点およびエッジを含み、前記システムは、前記メッシュにおいて、すべてのトライアングルではないが、少なくとも1つのトライアングルを、少なくとも2つまたはそれよりも多くのトライアングルにそれぞれ分割するためのサブシステムを備えることを特徴とするシステム。
  11. 前記メッシュにおいて少なくとも1つのトライアングルを分割するための前記サブシステムは、少なくとも1つのエッジを分割し、ならびに少なくとも1つの新しい頂点および前記頂点から伸びる少なくとも1つの新しいエッジを作成するためのサブシステムを含むことを特徴とする請求項10に記載のシステム。
  12. 各エッジの各頂点および各中点におけるPRTベクトルをサンプリングするためのサブシステムと、
    前記各エッジに対応する各前記中点に対する前記PRTベクトルおよび各頂点に対する前記PRTベクトルに基づく各エッジの各中点におけるエラーを計算するためのサブシステムと、
    印を付けられたエッジ、すなわち、予め定められた許容誤差値よりも大きい中点におけるエラーを有するエッジを、前記エッジに対する中点における新しい頂点を有する2つの新しいエッジ(各「分割されたエッジ」)に分割するためのサブシステムと、
    前記新しい頂点と前記エッジ上にない頂点との間に新しいエッジを作成し、それにより前記エッジが前記2つの新しいトライアングルに共通する(各「共通のエッジ」)ためのサブシステムとをさらに備えたことを特徴とする請求項11に記載のシステム。
  13. 分割されたエッジおよび共通のエッジを含む各新しいエッジに対し、このような新しいエッジ(以後、各「エッジ」)ごとに
    各エッジの中点ごとにPRTベクトルをサンプリングし、ならびに前記各エッジに対応する各前記中点に対する前記PRTベクトルおよび各頂点に対する前記PRTベクトルに基づいた各エッジの各中点におけるエラーを計算するステップと、
    前記予め定められた許容誤差値よりも大きい中点におけるエラーを有する各エッジ(「印を付けられたエッジ」)に対して、そのエッジに対する前記トライアングルを
    前記印を付けられたエッジを、前記エッジに対する前記中点における新しい頂点を有する2つの新しいエッジ(各「分割されたエッジ」)に分割し、および
    前記新しい頂点と前記エッジ上にない頂点との間に新しいエッジを作成し、前記エッジが前記2つの新しいトライアングルに共通する(各「共通のエッジ」)ようにして、少なくとも2つの新しいトライアングルに分割するステップとを再帰的に実行するサブシステムをさらに備え、
    前記ステップは、(a)再帰的な反復の前に新しいエッジが作成されなくなるか、または(b)予め定められた反復の回数が実行されるまで再帰的に実行されることを特徴とする請求項12に記載のシステム。
  14. 前記予め定められた許容誤差値よりも大きい中点におけるエラーを有する1つのエッジから成るトライアングルは、少なくとも2つの新しいトライアングルに分割されることを特徴とする請求項13に記載のシステム。
  15. 前記予め定められた許容誤差値よりも大きい中点におけるエラーを有する2つのエッジから成るトライアングルは、3つの新しいトライアングルに分割されることを特徴とする請求項13に記載のシステム。
  16. 前記予め定められた許容誤差値よりも大きい中点におけるエラーを有する3つのエッジから成るトライアングルは、4つの新しいトライアングルに分割されることを特徴とする請求項13に記載のシステム。
  17. 各エッジの各頂点および各中点におけるPRTベクトルをサンプリングするためのサブシステムと、
    前記各エッジに対応する各前記中点に対する前記PRTベクトルおよび各頂点に対する前記PRTベクトルに基づく各エッジの各中点におけるエラーを計算するためのサブシステムと、
    予め定められた許容誤差値よりも大きい中点におけるエラーを有する少なくとも1つのエッジを有する各トライアングルを、
    各エッジを前記エッジに対する前記中点における新しい頂点を有する2つの新しいエッジ(各「分割されたエッジ」)に分割し、および
    新しい頂点の各対の間に新しいエッジ(各「共通のエッジ」)を作成して4つの新しいトライアングルに分割するためのサブシステムとをさらに備えることを特徴とする請求項11に記載のシステム。
  18. 分割されたエッジおよび共通のエッジを含む各新しいエッジに対し、このような作成された新しいエッジ(以後、各「エッジ」)を、
    各エッジにおけるPRTベクトルをサンプリングし、ならびに各前記エッジに対応する各前記中点に対する前記PRTベクトルおよび各頂点に対する前記PRTベクトルに基づく各エッジの各中点におけるエラーを計算するステップと、
    予め定められた許容誤差値よりも大きい中点におけるエラーを有する少なくとも1つのエッジを含む各トライアングルに対し、前記トライアングルを
    各エッジを前記エッジに対する前記中点における新しい頂点を有する2つの新しいエッジに分割し、および
    新しい頂点の各対の間に新しいエッジを作成して4つの新しいトライアングルに分割するステップとを再帰的に実行する新しいサブシステムをさらに備え、
    前記ステップは、(a)再帰的な反復の前に新しいエッジが作成されなくなるか、または(b)予め定められた反復の回数が実行されるまで再帰的に実行されることを特徴とする請求項17に記載のシステム。
  19. トライアングルのテッセレーションを含む計算済み放射輝度伝達(PRT)メッシュを強化するためのコンピュータ読取り可能な命令を有するコンピュータ読取り可能な媒体であって、前記トライアングルは、頂点およびエッジを含み、前記コンピュータ読取り可能な命令は、前記メッシュにおいて、すべてのトライアングルではないが、少なくとも1つのトライアングルを、少なくとも2つまたはそれよりも多くのトライアングルにそれぞれ分割するための命令を含むことを特徴とするシステム。
  20. メッシュにおいて少なくとも1つのトライアングルを分割するための前記命令は、少なくとも1つのエッジを分割し、少なくとも1つの新しい頂点および前記頂点から伸びる少なくとも1つの新しいエッジを作成するための命令を含むことを特徴とする請求項19に記載のコンピュータ読取り可能な命令。
  21. 各エッジの各頂点および各中点におけるPRTベクトルをサンプリングし、各前記エッジに対応する各前記中点に対する前記PRTベクトルおよび各頂点に対する前記PRTベクトルに基づく各エッジの各中点におけるエラーを計算するための命令と、
    予め定められた許容誤差値よりも大きな中点におけるエラーを有する各エッジ(「印を付けられたエッジ」)に対し、前記トライアングルを
    前記印を付けられたエッジを、前記エッジに対する前記中点における新しい頂点を有する2つの新しいエッジ(各「分割されたエッジ」)に分割し、および
    前記新しい頂点と前記エッジ上にない頂点との間に新しいエッジを作成し、前記エッジが前記2つの新しいトライアングルに共通する(各「共通のエッジ」)ようにして、少なくとも2つの新しいトライアングルに分割するための命令とをさらに備えたことを特徴とする請求項20に記載のコンピュータ読取り可能な命令。
  22. 分割されたエッジおよび共通のエッジを含む新しいエッジ(以後、各「エッジ」)ごとに
    各エッジの中点ごとにPRTベクトルをサンプリングし、ならびに前記各エッジに対応する各前記中点に対する前記PRTベクトルおよび各頂点に対する前記PRTベクトルに基づいた各エッジの各中点におけるエラーを計算するステップと、
    前記予め定められた許容誤差値よりも大きい中点におけるエラーを有する各エッジ(「印を付けられたエッジ」)に対して、そのエッジに対する前記トライアングルを
    前記印を付けられたエッジを、前記エッジに対する前記中点における新しい頂点を有する2つの新しいエッジ(各「分割されたエッジ」)に分割し、および
    前記新しい頂点と前記エッジ上にない頂点との間に新しいエッジを作成し、前記エッジが前記2つの新しいトライアングルに共通する(各「共通のエッジ」)ように、少なくとも2つの新しいトライアングルに分割するステップとを再帰的に実行するための命令とをさらに備え、
    前記ステップは、(a)再帰的な反復の前に新しいエッジが作成されなくなるか、または(b)予め定められた反復の回数が実行されるまで再帰的に実行されることを特徴とする請求項21に記載のコンピュータ読取り可能な命令。
  23. トライアングルが、予め定められた許容誤差値よりも大きい中点におけるエラーを有する1つのエッジからなるとき、前記トライアングルを少なくとも2つの新しいトライアングルに分割するための命令をさらに備えたことを特徴とする請求項22に記載のコンピュータ読取り可能な命令。
  24. トライアングルが、予め定められた許容誤差値よりも大きい中点におけるエラーを有する2つのエッジからなるとき、前記トライアングルを3つの新しいトライアングルに分割するための命令をさらに備えたことを特徴とする請求項22に記載のコンピュータ読取り可能な命令。
  25. トライアングルが、予め定められた許容誤差値よりも大きい中点におけるエラーを有する3つのエッジからなるとき、前記トライアングルを4つの新しいトライアングルに分割するための命令をさらに備えたことを特徴とする請求項22に記載のコンピュータ読取り可能な命令。
  26. 各エッジの各頂点および各中点におけるPRTベクトルをサンプリングし、ならびに各前記エッジに対応する各前記中点に対する前記PRTベクトルおよび各頂点に対する前記PRTベクトルに基づく各エッジの各中点におけるエラーを計算するための命令と、
    予め定められた許容誤差値よりも大きい中点におけるエラーを有する少なくとも1つのエラーを含む各トライアングルに対し、前記トライアングルを、
    前記トライアングルの各エッジを前記そのようなエッジに対する前記中点に新しい頂点を有する2つの新しいエッジ(「分割されたエッジ」)に分割し、および
    新しい頂点の各対の間に新しいエッジ(各「共通のエッジ」)を作成するように
    4つの新しいトライアングルに分割するための命令とをさらに備えることを特徴とする請求項20に記載のコンピュータ読取り可能な命令。
  27. 分割されたエッジおよび共通のエッジを含む新しいエッジ(以後、各「エッジ」)ごとに
    各エッジにおけるPRTベクトルをサンプリングし、ならびに各前記エッジに対応する各前記中点に対する前記PRTベクトルおよび各頂点に対する前記PRTベクトルに基づく各エッジの各中点におけるエラーを計算する命令と、
    予め定められた許容誤差値よりも大きい中点におけるエラーを有する少なくとも1つのエッジを含む各トライアングルに対し、前記トライアングルを
    各エッジを前記そのようなエッジに対する前記中点における新しい頂点を有する2つの新しいエッジに分割するステップと
    新しい頂点の各対の間に新しいエッジを作成するように4つの新しいトライアングルに分割するステップとを再帰的に実行するための命令とをさらに備え、
    前記ステップは、(a)再帰的な反復の前に新しいエッジが作成されなくなるか、または(b)予め定められた反復の回数が実行されるまで再帰的に実行されることを特徴とする請求項26に記載のコンピュータ読取り可能な命令。
  28. トライアングルのテッセレーションを含む計算済み放射輝度伝達(PRT)メッシュを強化するための手段を有するハードウェア制御装置であって、前記トライアングルは、頂点およびエッジを含み、前記ハードウェア制御装置は、前記メッシュにおいて、すべてのトライアングルではないが、少なくとも1つのエッジを分割し、ならびに少なくとも1つの新しい頂点および前記頂点から伸びる少なくとも1つの新しいエッジを作成することにより、少なくとも1つのトライアングルを、少なくとも2つまたはそれよりも多くのトライアングルにそれぞれ分割するための手段を含むことを特徴とするハードウェア制御装置。
  29. 各エッジの各頂点および各中点におけるPRTベクトルをサンプリングし、ならびに各前記エッジに対応する各前記中点に対する前記PRTベクトルおよび各頂点に対する前記PRTベクトルに基づく各エッジの各中点におけるエラーを計算する手段と、
    予め定められた許容誤差値よりも大きい中点におけるエラーを有する各エッジ(「印を付けられたエッジ」)に対し、前記トライアングルを
    印を付けられたエッジを前記エッジに対する前記中点における新しい頂点を有する2つの新しいエッジ(各「分割されたエッジ」)に分割し、および
    前記新しい頂点と前記エッジ上にない頂点との間に新しいエッジを作成し、前記エッジが前記2つの新しいトライアングル(各「共通のエッジ」)に共通するようにして、少なくとも2つの新しいトライアングルに分割する手段とをさらに備えたことを特徴とする請求項28に記載のハードウェア制御装置。
  30. 分割されたエッジおよび共通のエッジを含む新しいエッジ(以後、各「エッジ」)ごとに
    各エッジの中点ごとにPRTベクトルをサンプリングし、ならびに前記各エッジに対応する各前記中点に対する前記PRTベクトルおよび各頂点に対する前記PRTベクトルに基づいた各エッジの各中点におけるエラーを計算する手段と、
    前記予め定められた許容誤差値よりも大きい中点におけるエラーを有する各エッジ(「印を付けられたエッジ」)に対して、そのエッジに対する前記トライアングルを
    前記印を付けられたエッジを、前記エッジに対する前記中点における新しい頂点を有する2つの新しいエッジ(各「分割されたエッジ」)に分割するステップと、
    前記新しい頂点と前記エッジ上にない頂点との間に新しいエッジを作成し、前記エッジが前記2つの新しいトライアングルに共通する(各「共通のエッジ」)ように、少なくとも2つの新しいトライアングルに分割するステップとを再帰的に実行する手段とをさらに備え、
    前記ステップ群は、(a)再帰的な反復の前に新しいエッジが作成されなくなるか、または(b)予め定められた反復の回数が実行されるまで再帰的に実行されることを特徴とする請求項29に記載のハードウェア制御装置。
  31. 各エッジの各頂点および各中点におけるPRTベクトルをサンプリングし、および各前記エッジに対応する各前記中点に対する前記PRTベクトルおよび各頂点に対する前記PRTベクトルに基づく各エッジの各中点におけるエラーを計算する手段と、
    予め定められた許容誤差値より大きい中点におけるエラーを有する少なくとも1つのエッジ(「印を付けられたエッジ」)を含む各トライアングルに対し、前記トライアングルを
    前記トライアングルの各エッジを、前記このようなエッジに対する前記中点における新しい頂点を有する2つの新しいエッジ(各「分割されたエッジ」)に分割し、および
    新しい頂点の各対の間に新しいエッジを作成して4つの新しいトライアングルに分割する手段とをさらに備えたことを特徴とする請求項28に記載のハードウェア制御装置。
  32. 分割されたエッジおよび共通のエッジを含む作成された新しいエッジ(以後、各「エッジ」)ごとに、
    各エッジにおけるPRTベクトルをサンプリングし、および各前記エッジに対応する各前記中点に対する前記PRTベクトルおよび各頂点に対する前記PRTベクトルに基づく各エッジの各中点におけるエラーを計算する手段と、
    予め定められた許容誤差値よりも大きい中点におけるエラーを有する少なくとも1つのエッジを含む各エッジに対し、前記トライアングルを、
    各エッジを前記このようなエッジに対する前記中点における新しい頂点を有する2つの新しいエッジに分割し、および
    新しい頂点の各対の間に新しいエッジを作成して4つの新しいトライアングルに分割する手段をさらに備え、
    前記ステップは、(a)再帰的な反復の前に新しいエッジが作成されなくなるか、または(b)予め定められた反復の回数が実行されるまで再帰的に実行されることを特徴とする請求項31に記載のハードウェア制御装置。
JP2004296843A 2003-10-10 2004-10-08 ナチュラルライティング環境における物体のリアルタイムのリライティングに対する堅牢なサンプリングのためのシステムおよび方法 Expired - Fee Related JP4705357B2 (ja)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US51030103P 2003-10-10 2003-10-10
US60/510,301 2003-10-10
US10/815,141 US7382369B2 (en) 2003-10-10 2004-03-31 Systems and methods for robust sampling for real-time relighting of objects in natural lighting environments
US10/815,141 2004-03-31

Publications (2)

Publication Number Publication Date
JP2005122735A true JP2005122735A (ja) 2005-05-12
JP4705357B2 JP4705357B2 (ja) 2011-06-22

Family

ID=34316855

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004296843A Expired - Fee Related JP4705357B2 (ja) 2003-10-10 2004-10-08 ナチュラルライティング環境における物体のリアルタイムのリライティングに対する堅牢なサンプリングのためのシステムおよび方法

Country Status (6)

Country Link
US (1) US7382369B2 (ja)
EP (1) EP1522966B1 (ja)
JP (1) JP4705357B2 (ja)
KR (1) KR101075376B1 (ja)
CN (1) CN100386780C (ja)
AT (1) ATE514147T1 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013511785A (ja) * 2009-11-24 2013-04-04 トムソン ライセンシング 光散乱を推定するための方法
KR20140099045A (ko) * 2013-02-01 2014-08-11 삼성전자주식회사 영상 처리 장치 및 방법

Families Citing this family (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8133115B2 (en) 2003-10-22 2012-03-13 Sony Computer Entertainment America Llc System and method for recording and displaying a graphical path in a video game
US7218324B2 (en) * 2004-06-18 2007-05-15 Mitsubishi Electric Research Laboratories, Inc. Scene reflectance functions under natural illumination
US7750914B2 (en) * 2004-08-26 2010-07-06 Intel Corporation Subdividing geometry images in graphics hardware
US20060071933A1 (en) * 2004-10-06 2006-04-06 Sony Computer Entertainment Inc. Application binary interface for multi-pass shaders
US7636126B2 (en) 2005-06-22 2009-12-22 Sony Computer Entertainment Inc. Delay matching in audio/video systems
KR100653946B1 (ko) * 2005-08-03 2007-02-28 엠텍비젼 주식회사 3차원 그래픽 조명 처리 장치 및 그 방법
JP2007066012A (ja) * 2005-08-31 2007-03-15 Toshiba Corp 映像描画装置、方法およびプログラム
KR100684293B1 (ko) * 2005-09-28 2007-02-16 연세대학교 산학협력단 적응형 곡면 테셀레이션의 스트립화 방법
US7880746B2 (en) 2006-05-04 2011-02-01 Sony Computer Entertainment Inc. Bandwidth management through lighting control of a user environment via a display device
US7965859B2 (en) 2006-05-04 2011-06-21 Sony Computer Entertainment Inc. Lighting control of a user environment via a display device
US7295716B1 (en) * 2006-06-30 2007-11-13 Fujifilm Corporation Method and apparatus for diffusion based image relighting
US7747045B2 (en) * 2006-06-30 2010-06-29 Fujifilm Corporation Method and apparatus for diffusion based illumination normalization
US20080007747A1 (en) * 2006-06-30 2008-01-10 Fuji Photo Film Co., Ltd. Method and apparatus for model based anisotropic diffusion
US8164593B2 (en) * 2006-07-13 2012-04-24 University Of Central Florida Research Foundation, Inc. Systems and methods for graphical rendering
US7940267B2 (en) * 2006-07-13 2011-05-10 University Of Central Florida Research Foundation, Inc. Systems and methods for graphical rendering
US7898546B1 (en) * 2006-11-03 2011-03-01 Nvidia Corporation Logical design of graphics system with reduced shadowed state memory requirements
US7768515B1 (en) 2006-11-03 2010-08-03 Nvidia Corporation Apparatus, system, and method for reducing shadowed state memory requirements for identifying driver command exceptions in a graphics system
US10786736B2 (en) 2010-05-11 2020-09-29 Sony Interactive Entertainment LLC Placement of user information in a game space
CN101917637B (zh) * 2010-06-24 2012-10-10 清华大学 基于自由视角光照传输矩阵的重光照方法及系统
KR101845225B1 (ko) 2011-06-30 2018-04-04 삼성전자주식회사 영상 처리 장치 및 방법
US9342817B2 (en) 2011-07-07 2016-05-17 Sony Interactive Entertainment LLC Auto-creating groups for sharing photos
EP2826237A4 (en) 2012-03-13 2015-08-19 Dolby Lab Licensing Corp LIGHTING SYSTEM AND METHOD FOR IMAGE AND OBJECT ENLARGEMENT
US9769365B1 (en) 2013-02-15 2017-09-19 Red.Com, Inc. Dense field imaging
US10062210B2 (en) 2013-04-24 2018-08-28 Qualcomm Incorporated Apparatus and method for radiance transfer sampling for augmented reality
KR102197504B1 (ko) * 2013-12-18 2020-12-31 마이크로소프트 테크놀로지 라이센싱, 엘엘씨 사전 계산된 조명으로 증강 현실 환경을 구성하는 기법
KR101555426B1 (ko) * 2014-02-07 2015-09-25 고려대학교 산학협력단 지형 렌더링 방법 및 장치
US10726619B2 (en) * 2015-10-29 2020-07-28 Sony Interactive Entertainment Inc. Foveated geometry tessellation
EP3788595A4 (en) 2018-05-02 2022-01-05 Quidient, LLC CODEC FOR PROCESSING SCENES WITH ALMOST UNLIMITED DETAILS
WO2021037647A1 (en) * 2019-08-27 2021-03-04 Signify Holding B.V. A lighting device for illuminating an aquarium

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1998025233A1 (fr) * 1996-12-05 1998-06-11 Setoguchi Laboratory Ltd. Procede d'affichage d'une forme tridimensionnelle

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5142617A (en) * 1988-10-27 1992-08-25 Tektronix, Inc. Method of shading a graphics image
US6251072B1 (en) * 1999-02-19 2001-06-26 Life Imaging Systems, Inc. Semi-automated segmentation method for 3-dimensional ultrasound
GB9926131D0 (en) * 1999-11-05 2000-01-12 Superscape Limited Image enhancement

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1998025233A1 (fr) * 1996-12-05 1998-06-11 Setoguchi Laboratory Ltd. Procede d'affichage d'une forme tridimensionnelle

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013511785A (ja) * 2009-11-24 2013-04-04 トムソン ライセンシング 光散乱を推定するための方法
KR20140099045A (ko) * 2013-02-01 2014-08-11 삼성전자주식회사 영상 처리 장치 및 방법
KR101871222B1 (ko) 2013-02-01 2018-06-27 삼성전자주식회사 영상 처리 장치 및 방법

Also Published As

Publication number Publication date
US7382369B2 (en) 2008-06-03
US20050078116A1 (en) 2005-04-14
KR101075376B1 (ko) 2011-10-24
CN100386780C (zh) 2008-05-07
EP1522966A2 (en) 2005-04-13
EP1522966B1 (en) 2011-06-22
KR20050035069A (ko) 2005-04-15
EP1522966A3 (en) 2006-06-07
CN1619597A (zh) 2005-05-25
JP4705357B2 (ja) 2011-06-22
ATE514147T1 (de) 2011-07-15

Similar Documents

Publication Publication Date Title
JP4705357B2 (ja) ナチュラルライティング環境における物体のリアルタイムのリライティングに対する堅牢なサンプリングのためのシステムおよび方法
Assarsson et al. A geometry-based soft shadow volume algorithm using graphics hardware
McGuire et al. Hardware-accelerated global illumination by image space photon mapping
Kontkanen et al. Ambient occlusion fields
Scherzer et al. A survey of real‐time hard shadow mapping methods
US8207968B1 (en) Method and apparatus for irradiance caching in computing indirect lighting in 3-D computer graphics
US20050041024A1 (en) Method and apparatus for real-time global illumination incorporating stream processor based hybrid ray tracing
US10325401B2 (en) Importance sampling for determining a light map
US7106336B1 (en) Method and system for deferred evaluation of transforms in graphics processors
Jendersie et al. Precomputed illuminance composition for real-time global illumination
Loviscach Complex water effects at interactive frame rates
KR100951121B1 (ko) 간접 조명 효과를 위한 렌더링 방법
US7385604B1 (en) Fragment scattering
Ewins et al. Implementing an anisotropic texture filter
Jendersie et al. Real-time global illumination using precomputed illuminance composition with chrominance compression
US8416242B1 (en) Method and system for interpolating level-of-detail in graphics processors
Laine et al. Hierarchical penumbra casting
De Lucas Reducing redundancy of real time computer graphics in mobile systems
Roughton Interactive Generation of Path-Traced Lightmaps
Fauerby et al. Real-time soft shadows in a game engine
Nicholson et al. Gpu based algorithms for terrain texturing
Mahsman Projective grid mapping for planetary terrain
Elvek Extending ogre with light propagation volumes
Tao et al. Application of Bump-effects in a Postprocessing step
Jansson Ambient Occlusion for Dynamic Objects and Procedural Environments

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20071009

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20090901

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20091008

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100720

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100930

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20101104

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20101206

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20110210

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110311

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees