JP6474585B2 - レイトレーシング処理装置及びその方法 - Google Patents

レイトレーシング処理装置及びその方法 Download PDF

Info

Publication number
JP6474585B2
JP6474585B2 JP2014223150A JP2014223150A JP6474585B2 JP 6474585 B2 JP6474585 B2 JP 6474585B2 JP 2014223150 A JP2014223150 A JP 2014223150A JP 2014223150 A JP2014223150 A JP 2014223150A JP 6474585 B2 JP6474585 B2 JP 6474585B2
Authority
JP
Japan
Prior art keywords
ray
key
input
data
node
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.)
Active
Application number
JP2014223150A
Other languages
English (en)
Other versions
JP2015090712A (ja
Inventor
源 宗 李
源 宗 李
容 三 辛
容 三 辛
在 敦 李
在 敦 李
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.)
Samsung Electronics Co Ltd
Original Assignee
Samsung Electronics Co Ltd
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 Samsung Electronics Co Ltd filed Critical Samsung Electronics Co Ltd
Publication of JP2015090712A publication Critical patent/JP2015090712A/ja
Application granted granted Critical
Publication of JP6474585B2 publication Critical patent/JP6474585B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/06Ray-tracing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2200/00Indexing scheme for image data processing or generation, in general
    • G06T2200/04Indexing scheme for image data processing or generation, in general involving 3D image data

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Graphics (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Image Generation (AREA)

Description

本発明は、レイトレーシング(ray tracing)処理装置及びその処理方法に関する。さらに具体的には、類似した光線に対して、以前の探索結果を活用することができるレイトレーシング処理装置及びその処理方法に関する。
一般的に、3Dレンダリング(3-dimensional rendering)は、三次元客体データを、与えられたカメラ視点(viewpoint)で見える映像に合成(synthesis)する映像処理をいう。レンダリング方法は、三次元客体を画面に投映(projection)しながら映像を生成するラスター化(rasterization)法や、カメラ視点から映像の各ピクセルに向かった光線に沿って入射する光の経路を追跡して映像を生成するレイトレーシングなどがある。
このうち、レイトレーシングは、光の物理的性質(反射、屈折、透過など)を、レンダリング結果に反映するので、高品質映像を生成することができるという長所があるが、相対的に演算量が膨大であり、高速レンダリングに困難が伴う。レイトレーシング性能において演算量が多く要求される要素は、レンダリング対象になるシーンオブジェクト(scene object)を空間的に分割した加速構造またはアクセラレーション構造(AS:acceleration structure)の生成及び探索(TRV:traversal)、及び光線とプリミティブ(primitive)との交差検査(IST:intersection test)である。
本発明が解決しようとする課題は、類似した光線に対して、以前の探索結果を活用することにより、加速構造探索(TRV)に該当する演算量を低減させることができるレイトレーシング処理装置及びその処理方法を提供することである。
一実施形態によるレイトレーシング処理方法は、光線を入力される段階、前記入力された光線と類似した以前の光線に係る加速構造探索データが、保存されているか否かを判断する段階、前記判断結果によって、保存されている加速構造探索データを読み取る段階、及び前記読み取られたデータに基づいて、レンダリングを行う段階を含む。
一実施形態による前記処理方法は、前記入力された光線の特徴情報に基づいて、前記入力された光線と類似した以前の光線を決定する段階をさらに含み、前記光線の特徴情報は、前記光線の始点(origin)情報及び方向(direction)情報を含むことを特徴とする。
一実施形態による前記処理方法は、前記入力された光線の特徴情報を抽出し、抽出された特徴情報によって、入力された光線のキー(key)を決定する段階をさらに含み、前記入力された光線のキーを決定する段階は、複数の光線の特徴情報に基づいて設定された複数のグループ情報、及び前記複数のグループそれぞれに対応するキー情報が保存されたデータベースを検索し、前記入力された光線が属するグループを抽出し、前記抽出されたグループに対応するキーを、前記入力された光線のキーに決定することを特徴とする。
一実施形態による前記グループ情報は、前記グループに含まれる光線の始点情報及び方向情報であり、前記入力された光線のキーを決定する段階は、前記入力された光線の始点情報及び方向情報を、前記複数のグループ情報と比較し、前記入力された光線が属するグループを抽出し、抽出されたグループに対応するキーを、前記入力された光線のキーに決定することを特徴とする。
一実施形態による前記判断する段階は、前記入力された光線のキーと、TRVキャッシュに保存されている複数のタグデータとを比較して判断することを特徴とする。
一実施形態による前記読み取る段階は、前記入力された光線のキーと一致するタグデータが存在する場合、前記一致するタグデータに対応する加速構造探索データを読み取ることを特徴とする。
一実施形態による前記加速構造探索データは、前記類似した以前の光線が交差するノードクラスタに係るデータ、リーフノードに係るデータ、及びプリミティブに係るデータのうち少なくとも一つを含むことを特徴とする。
一実施形態による前記加速構造探索データが、前記ノードクラスタに係るデータである場合、前記レンダリングを行う段階は、前記ノードクラスタに含まれるノードを探索し、前記入力された光線が交差するリーフノードを検出することを特徴とする。
一実施形態による前記加速構造探索データが、前記リーフノードに係るデータである場合、前記レンダリングを行う段階は、前記入力された光線が、前記リーフノードに交差するか否かを検査することを特徴とする。
一実施形態による前記処理方法は、前記加速構造探索データが、前記プリミティブに係るデータである場合、前記プリミティブに係るデータをISTユニットに伝送する段階をさらに含むことを特徴とする。
一実施形態による前記加速構造探索データが、前記プリミティブに係るデータである場合、前記レンダリングを行う段階は、前記入力された光線が、前記プリミティブに交差するか否かを検査することを特徴とする。
一実施形態による前記処理方法は、前記判断結果、前記加速構造探索データが保存されていない場合、前記入力された光線の加速構造探索を行い、探索結果を保存する段階をさらに含むことを特徴とする。
一実施形態による前記保存する段階は、前記入力された光線のキーを、TRVキャッシュのタグデータとして保存し、前記探索結果、前記入力された光線が交差するノードクラスタ、リーフノード及びプリミティブのうち少なくとも一つに係るデータを、前記タグデータに対応させて保存することを特徴とする。
一実施形態によるレイトレーシング処理装置は、入力された光線と類似した以前の光線に係る加速構造探索データが、保存されているか否かを判断し、前記判断結果によって、前記保存されている加速構造探索データを読み取るTRVキャッシュ、及び前記読み取られたデータに基づいて、前記入力された光線の加速構造探索を行うTRV演算部を含む。
一実施形態による前記装置は、前記入力された光線の特徴情報に基づいて、前記入力された光線と類似した以前の光線を決定するキー決定部をさらに含み、前記光線の特徴情報は、前記光線の始点(origin)情報及び方向(direction)情報を含むことを特徴とする。
一実施形態による前記入力された光線の特徴情報を抽出し、抽出された特徴情報によって、入力された光線のキーを決定するキー決定部をさらに含み、前記キー決定部は、複数の光線の特徴情報に基づいて設定された複数のグループ情報、及び前記複数のグループそれぞれに対応するキー情報が保存されたデータベース(DB)を含み、前記データベース(DB)を検索し、前記入力された光線が属するグループを抽出し、抽出されたグループに対応するキーを、前記入力された光線のキーに決定することを特徴とする。
一実施形態による前記グループ情報は、前記グループに含まれる光線の始点情報及び方向情報であり、前記キー決定部は、前記入力された光線の始点情報及び方向情報を、前記複数のグループ情報と比較し、前記入力された光線が属するグループを抽出し、抽出されたグループに対応するキーを、前記入力された光線のキーに決定することを特徴とする。
一実施形態による前記TRVキャッシュは、光線のキーを示すタグデータ、及び前記タグデータに対応する加速構造探索データを保存し、前記入力された光線のキーと複数のタグデータとを比較し、前記TRVキャッシュに前記入力された光線と類似した以前の光線に係る加速構造探索データが、保存されているか否かを判断することを特徴とする。
一実施形態による前記TRVキャッシュは、前記入力された光線のキーと一致するタグデータが存在する場合、前記一致するタグデータに対応する加速構造探索データを読み取ることを特徴とする。
一実施形態による前記加速構造探索データが、前記ノードクラスタに係るデータである場合、前記TRV演算部は、前記ノードクラスタに含まれるノードを探索し、前記入力された光線が交差するリーフノードを検出することを特徴とする。
一実施形態による前記加速構造探索データが、前記リーフノードに係るデータである場合、前記TRV演算部は、前記入力された光線が、前記リーフノードに交差するか否かを検査することを特徴とする。
一実施形態による処理装置は、前記加速構造探索データが、前記プリミティブに係るデータである場合、前記入力された光線が、前記プリミティブに交差するか否かを検査する前記IST演算部をさらに含むことを特徴とする。
一実施形態による前記TRV演算部は、前記判断結果、前記加速構造探索データが保存されていない場合、前記入力された光線の加速構造探索を行い、探索結果を、前記TRVキャッシュに伝送することを特徴とする。
一実施形態による前記TRVキャッシュは、前記入力された光線のキーを、前記TRVキャッシュのタグデータとして保存し、前記伝送された探索結果を、前記タグデータに対応する加速構造探索データとして保存することを特徴とする。
一実施形態による前記探索結果は、前記入力された光線が交差するノードクラスタまたはリーフノードに係るデータを含むことを特徴とする。
本発明によれば、フレーム間の類似性により、以前フレームに係る光線探索結果を現在フレームに活用することにより、現在フレームのレイトレーシング処理に必要な演算量を低減させることができる。
入力された光線の探索遂行時、以前に探索された類似光線が交差したノードを優先的に探索し、加速構造の探索をさらに迅速に行うことができる。
また、入力された光線の交差検査遂行時、以前に探索された類似光線が交差したプリミティブに対して優先的に交差検査を行い、レイトレーシングの処理をさらに迅速に行うことができる。
これにより、レイトレーシング処理装置の処理能力及び処理速度が向上する。
一般的なレイトレーシング方法について説明するための図面である。 一実施形態によるレイトレーシング処理システムを示す図面である。 一実施形態による加速構造について説明するための図面である。 一実施形態によるレイトレーシング処理方法について説明するための図面である。 連続したフレームに係るレンダリング映像を示す図面である。 一実施形態によるTRVユニットのブロック図である。 一実施形態による光線のキーを決定する方法について説明するための参照図である。 一実施形態によるレイトレーシング処理方法を示すフローチャートである。 図8によるレイトレーシング処理方法について説明するための参照図である。 一実施形態によるレイトレーシング処理方法を示すフローチャートである。
以下、図面を参照しながら、実施形態について詳細に説明する。
図1はレイトレーシング(ray tracing)法について説明するための図面である。図1に図示されているように、三次元モデリングは、光源80、第1物体31、第2物体32、第3物体33を含む。図1で、第1物体31、第2物体32及び第3物体33は、二次元物体のように表現されているが、それは、説明の便宜のためのものであり、第1物体31、第2物体32及び第3物体33は、三次元物体である。図1では、第1物体31の反射率及び屈折率が0より大きく、第2物体32及び第3物体33の反射率及び屈折率が0である場合が図示されている。言い換えれば、第1物体31は、光を反射させて屈折させ、第2物体32及び第3物体33は、光を反射させもせず、屈折させもしない場合を示している。
図1のような三次元モデリングで、レンダリング装置(例えば、レイトレーシング処理装置)は、三次元映像を生成するために、視点(viewpoint)10を決定し、決定された視点10によって、画面15を決定することができる。視点10及び画面15が決定されれば、レイトレーシング処理装置は、視点10から、画面15の各ピクセルに対して光線を生成することができる。例えば、図1に図示されているように、画面15の解像度が4*3である場合、12個のピクセルに対して、それぞれ光線を生成することができる。以下では、1つのピクセル(例えば、ピクセルA)に係る光線についてのみ説明する。
図1を参照すれば、視点10からピクセルAに対して、一次光線(primary ray)40が生成される。一次光線40は、三次元空間を通過し、第1物体31に達する。ここで、第1物体31は、プリミティブ(primitive)と呼ばれる決定された単位領域の集合でもって構成され、例えば、プリミティブは、三角形、四角形のような多角形でもある。以下、プリミティブが三角形であるものを例として挙げて説明する。
なお、一次光線40と第1物体31との交差点(hit point)では、シャドー光線(shadow ray)50、反射光線(reflection ray)60及び屈折光線(refraction ray)70を生成することができる。このとき、シャドー光線50、反射光線60及び屈折光線70を二次光線という。シャドー光線50は、交差点から光源80の方向に生成される。反射光線60は、一次光線40の入射角に対応する方向に生成され、第1物体31の反射率による加重値を適用される。屈折光線70は、一次光線40の入射角及び第1物体31の屈折率に対応する方向に生成され、第1物体31の屈折率による加重値を適用される。
該レイトレーシング処理装置は、シャドー光線50を介して、交差点が光源80に露出しているか否かを判断する。例えば、図1に図示されているように、シャドー光線50が第2物体32と出合えば、当該シャドー光線50が生成された交差点に影が生成される。また、該レイトレーシング処理装置は、屈折光線70及び反射光線60が他の物体に達するか否かを判断する。例えば、図1に図示されているように、屈折光線70の進行方向には、いかなる物体も存在せず、反射光線60は、第3物体33に達する。それにより、該レイトレーシング処理装置は、第3物体33の交差点の座標及び色相情報を確認し、また第3物体33の交差点から、シャドー光線90を生成する。このとき、該レイトレーシング処理装置は、シャドー光線90が、光源80に露出されているか否かを判断する。一方、第3物体33の反射率及び屈折率は0であるので、第3物体33に係る反射光線及び屈折光線は、生成されない。
前述のように、該レイトレーシング処理装置は、ピクセルAに係る一次光線40、及び一次光線40から派生される全ての光線を分析し、分析結果によって、ピクセルAの色相値を決定する。ピクセルAの色相値の決定は、一次光線40の交差点の色相、反射光線60の交差点の色相、シャドー光線50が光源80に達するか否かに影響される。該レイトレーシング処理装置は、前記のような過程を、画面15の全てのピクセルに対して遂行し、画面15を構成することができる。
図2は、一実施形態によるレイトレーシング処理システムを示す図面である。
図2を参照すれば、レイトレーシング処理システムは、レイトレーシング処理装置100、外部メモリ250及び加速構造生成装置200を含む。また、レイトレーシング処理装置100は、光線生成ユニット110、TRVユニット(Traversal unit)120、ISTユニット(intersection unit)130及びシェーディングユニット(shading unit)140を含む。
光線生成ユニット110は、一次光線、及び一次光線によって派生される光線を生成することができる。光線生成ユニット110は、図1で説明したように、視点10から一次光線を生成し、一次光線とオブジェクトとの交差点で、二次光線を生成することができる。このとき、二次光線は、一次光線がオブジェクトと交差した地点で生成された反射光線、屈折光線またはシャドー光線でもある。また、光線生成ユニット110は、二次光線とオブジェクトとの交差点で三次光線を生成することができる。光線生成ユニット110は、光線がオブジェクトと交差しなくなるまで、光線を続けて生成するか、あるいは決定された回数内で光線を生成することができる。
TRVユニット120は、光線生成ユニット110から生成された光線に係る情報を受信することができる。生成された光線は、一次光線、及び一次光線によって派生された光線(二次光線、三次光線など)をいずれも含む。例えば、一次光線の場合、TRVユニット120は、生成された光線の始点(origin)及び方向(direction)に係る情報を受信することができる。また、二次光線の場合、TRVユニット120は、二次光線の出発点及び方向に係る情報を受信することができる。二次光線の出発点は、一次光線がオブジェクトと交差した地点を示す。また、始点または出発点は、座標で表現され、方向は、ベクトルで表現される。
TRVユニット120は、外部メモリ250から、加速構造(AS:acceleration structure)に係る情報を読み取る。このとき、加速構造(AS)は、加速構造生成装置(acceleration structure generator)200によって生成され、生成された加速構造は、外部メモリ250に保存される。加速構造生成装置200は、三次元空間上のオブジェクトの位置情報を含む加速構造を生成することができる。加速構造生成装置200は、三次元空間を階層的ツリー状に分割する。加速構造生成装置200は、さまざまな形態の加速構造を生成することができる。例えば、加速構造生成装置200は、KDツリー(K−dimensional tree)、BVH(bounding volume hierarchy)を適用し、三次元空間上オブジェクトの関係を示す加速構造を生成することができる。それについては、図3を参照しつつ詳細に説明する。
図3は、一実施形態による加速構造について説明するための図面である。
以下、説明の便宜のために、加速構造のノードに記載された数字でもって、各ノードを指称する。例えば、数字1が記載され、円形に図示されたノード351は、第1ノード351であり、数字2が記載され、四角形で図示されたノード352は、第2ノード352であり、数字5が記載され、点線になった四角形で図示されたノード355は、第5ノード355と指称する。加速構造は、トップノード(top node)、内部ノード(inner node)リーフノード(leaf node)及びプリミティブ(primitive)を含む。
図3で、第1ノード351は、トップノードを示す。トップノードは、上位ノードを有さず、下位ノードのみ有する最上位ノードである。例えば、第1ノード351の下位ノードは、第2ノード352及び第3ノード353であり、第1ノード351の上位ノードは存在しない。また、第2ノード352は、内部ノードもある。内部ノードは、上位ノード及び下位ノードをいずれも有するノードである。例えば、第2ノード352の上位ノードは、第1ノード351であり、第2ノード352の下位ノードは、第4ノード354及び第5ノード355である。また、第8ノード358は、リーフノードである。リーフノードは、下位ノードを有さず、上位ノードだけ有する最下位ノードである。例えば、第8ノード358の上位ノードは、第7ノード357であり、第8ノード358の下位ノードは存在しない。一方、リーフノードは、リーフノードに存在するプリミティブを含む。例えば、図3に図示されているように、リーフノードである第6ノード356は、1個のプリミティブを、リーフノードである第8ノード358は、3個のプリミティブを、リーフノードである第9ノード359は、2個のプリミティブを含む。
再び図2を参照すれば、TRVユニット120は、読み取った加速構造に係る情報を探索し、光線が交差するリーフノードを検出することができる。
ISTユニット130は、TRVユニット120から、光線が交差するリーフノードを受信することができる。ISTユニット130は、受信したリーフノードに含まれるプリミティブに係る情報(幾何データ)を、外部メモリ250から読み取ることができる。ISTユニット130は、読み取ったプリミティブに係る情報を利用して、光線とプリミティブとの交差検査を行うことができる。例えば、ISTユニット130は、TRVユニット120から受信したリーフノードに含まれた複数のプリミティブのうちいずれのプリミティブに光線が交差しているかということを検査することができる。それにより、光線が交差するプリミティブを検出し、検出されたプリミティブと光線とが交差した地点(hit point)を計算することができる。計算された交差点は、座標形態でシェーディングユニット140に出力される。
シェーディングユニット140は、交差点に係る情報及び交差点の物質特性に基づいて、ピクセルの色相値を決定することができる。また、シェーディングユニット140は、交差点物質の基本色相及び光源による効果などを考慮し、ピクセルの色相値を決定することができる。例えば、図1のピクセルAの場合、シェーディングユニット140は、一次光線40、及び二次光線である屈折光線70、反射光線60、シャドー光線50による効果をいずれも考慮し、ピクセルAの色相値を決定することができる。
一方、レイトレーシング処理装置100は、外部メモリ250から、レイトレーシングに必要なデータを受信することができる。外部メモリ250は、加速構造または幾何データ(geometry data)を保存することができる。加速構造は、加速構造生成装置200によって生成され、外部メモリ250に保存される。また、幾何データは、プリミティブに係る情報を示す。プリミティブは、三角形、四角形などの多角形でもあり、幾何データは、オブジェクトに含まれるプリミティブの頂点及び位置に係る情報を示すことができる。例えば、プリミティブが三角形である場合、幾何データは、三角形の三点に係る頂点座標、法線ベクトルまたはテクスチャ座標を含む。
図4は、図2に図示されたレイトレーシング処理装置100のレイトレーシング処理方法について説明するための図面である。従って、図2で説明した内容は、図4のレイトレーシング処理方法にも同様に適用される。図4を参照すれば、レイトレーシング処理装置100は、光線を生成する(S410)。このとき、光線は、視点から生成された一次光線、及び一次光線によって派生された光線を含む。レイトレーシング処理装置100は、外部メモリ250から加速構造を読み取り、生成された光線に基づいて、加速構造を探索する(S420)。それにより、レイトレーシング処理装置100は、光線が交差するリーフノードを検出することができる。レイトレーシング処理装置100は、光線が交差するリーフノードを検出するまで、加速構造を続けて探索することができる。
例えば、レイトレーシング処理装置100は、光線・ノード交差検査を行い、リーフノードを検出することができる。レイトレーシング処理装置100は、いずれか1つの経路に沿って加速構造を探索し、探索された経路上のリーフノードに光線が交差していないのであるならば、他の経路に加速構造を探索することができる。例えば、図3を参照すれば、レイトレーシング処理装置100は、第1ノード351の下位ノードである第2ノード352または第3ノード353から探索を始めることができる。もし第2ノード352から探索を始める場合、レイトレーシング処理装置100は、第3ノード353に係る情報を、別途のメモリに保存しておくことができる。
レイトレーシング処理装置100は、光線が第2ノード352に交差するか否かを判断し、第2ノード352と光線とが交差する場合、第2ノード352の下位ノードである第4ノード354及び第5ノード355のうちいずれか一つに対して探索を行うことができる。第4ノード354と光線とが交差するか否かを探索する場合、レイトレーシング処理装置100は、残りのノードである第5ノード355に係る情報を、前記別途のメモリに保存しておくことができる。第4ノード354と光線とが交差する場合、レイトレーシング処理装置100は、第4ノード354の下位ノードである第6ノード356及び第7ノード357のうちいずれか一つに対して探索を行うことができる。第6ノード356と光線とが交差するか否かを探索する場合、レイトレーシング処理装置100は、残りのノードである第7ノード357に係る情報を、前記別途のメモリに保存しておくことができる。第6ノード356と光線とが交差する場合、レイトレーシング処理装置100は、第6ノード356をリーフノードとして、検出することができる。
このように、レイトレーシング処理装置100は、いずれか1つの経路に沿って探索を行い、リーフノードを検出することができ、他の経路のノードに係る情報は、別途のメモリに保存しておき、1つの経路探索を終えた場合、最も最近保存しておいたノードからさらに探索を行うことができる。例えば、第6ノード356をリーフノードとして検出した後、最も最近保存しておいた第7ノード357から、さらに探索を行うことができる。それにより、レイトレーシング処理装置100は、1つの経路探索を終え、再びトップノードから経路探索を行わず、経路探索が終わった経路と最も隣接した経路を探索することにより、演算量を低減させることができる。
一方、レイトレーシング処理装置100は、検出されたリーフノードを、ISTユニットに伝送することができる。レイトレーシング処理装置100は、検出されたリーフノードに含まれたプリミティブが光線と交差するか否かを検査することができる。このとき、レイトレーシング処理装置100は、外部メモリ250から、プリミティブに係る情報(幾何データ252)を読み取ることができ、読み取ったプリミティブに係る情報を利用して、光線とプリミティブとの交差検査を行うことができる(S430)。
レイトレーシング処理装置100は、TRVユニット120から受信したリーフノードに含まれたプリミティブのうち、いずれのプリミティブに光線が交差しているかを検査することができる。例えば、検出されたリーフノードに、3個のプリミティブ(第1プリミティブないし第3プリミティブ)が含まれる場合、レイトレーシング処理装置は、第1プリミティブと光線との交差検査、第2プリミティブと光線との交差検査及び第3プリミティブと光線との交差検査を行い、光線が交差するプリミティブを検出することができる。それにより、レイトレーシング処理装置100は、光線が交差するプリミティブを検出し、検出されたプリミティブと光線とが交差した地点を計算することができる。
レイトレーシング処理装置100は、交差検査に基づいて、ピクセルのシェーディングを行うことができる(S440)。言い換えれば、交差点に係る情報、及び交差点の物質の特性に基づいて、ピクセルの色相値を決定することができる。
レイトレーシング処理装置100は、S440段階を終了すれば、S410段階に進む(iteration)。レイトレーシング処理装置100は、1つのピクセルに係るシェーディング後、他のピクセルのシェーディングを行うために、再び、S410段階ないしS440段階を遂行して、画面を構成する全てのピクセルについて、S410段階ないしS440段階を反復的に遂行する。
図5は、連続したフレームに係るレンダリング映像を示している。図5を参照すれば、図5(a)は、N番目フレーム(第1フレーム)510に該当するレンダリング映像を示し、図5(b)は、(N+1)番目フレーム(第2フレーム)520に該当するレンダリング映像を示している。
一般的に、グラフィック処理は、自然なアニメーション効果を出すために、隣接したフレーム間の差を小さくし、それを迅速に連続再生するために、連続したフレームに係るレンダリング映像は、相当な類似性を有する。例えば、図5に図示された、第1フレーム510及び第2フレーム520を比較すれば、第2フレーム520において、陰影領域を除いた残りの領域に位置するピクセルは、第1フレーム510及び第2フレーム520において同一である。全体的に、第1フレーム510及び第2フレーム520は、非常に類似しているといえる。
従って、レイトレーシング処理装置100は、第1フレーム510に係るレンダリング結果を利用して、第2フレーム520に係るレンダリングを行うことができる。例えば、第1フレーム510における第1光線と、第2フレーム520における第2光線との始点及び方向が類似しているのであれば、レイトレーシング処理装置100は、第1光線に係る探索結果を、第2光線の探索遂行時に活用することができる。さらに具体的に説明すれば、レイトレーシング処理装置100のTRVユニット120は、第2光線に係る探索を行うとき、第1光線が交差したノードクラスタ、リーフノードに対して、優先的に探索することができる。また、レイトレーシング処理装置100のISTユニット130は、第2光線に係る交差検査の遂行時、第1光線に交差したプリミティブに対して、優先的に交差検査を行うことができる。
図6は、一実施形態によるTRVユニットのブロック図である。図6を参照すれば、TRVユニット120は、キー(key)決定部610、TRV演算部630及びTRVキャッシュ620を含む。
キー決定部610は、入力された光線の特徴を抽出し、抽出された特徴によって、入力された光線のキーを決定することができる。このとき、光線の特徴は、光線の始点情報及び方向情報を含み、キー決定部610は、データベース(DB)を検索し、光線の始点情報及び方向情報に対応するキーを検索することができる。光線のキーを決定する方法については、図7を参照しながら、以下で詳細に説明する。
図7を参照すれば、光線は、ベクトルで表現することができる。例えば、第1光線は、第1始点701及び第1方向を有する第1光線ベクトル710で表現され、第2光線は、第2始点702及び第2方向を有する第2光線ベクトル720で表現される。それにより、光線の始点は、座標で示すことができ、光線の方向は、基準線と光線ベクトルとがなす角度で示すことができる。このとき、キー決定部610は、始点または方向が一定範囲内にある光線を、同一グループとして決定し、同一グループに含まれる光線については、同一キーを付与することができる。光線をグループに分類するために、光線が存在する領域760を一定サイズに分割し、所定個数のセルを形成することができる。例えば、図7に図示されているように、光線が存在する領域は32個のセルを含む。
また、基準線と光線ベクトルとがなす角度範囲(0°ないし360°)を一定角度ずつ分割し、所定個数の区間を設定することができる。例えば、360°を45°ずつ分割するならば、第1区間は、0°ないし45°、第2区間は、45°ないし90°、第3区間は、90°ないし135°に設定することができ、それにより、8個の区間を設定することができる。それにより、光線の始点が同一のセルに含まれ、光線方向(基準線と光線ベクトルとがなす角度)が同一区間に含まれる場合、同一グループと決定することができる。
例えば、図7に図示されているように、第1光線ベクトルの始点701と、第2光線ベクトルの始点702とが同一セル750に含まれ、第1光線ベクトルの方向(基準線と第1光線ベクトルとがなす角度a1)と、第2光線ベクトルの方向(基準線と第2光線ベクトルとがなす角度a2)とが第1区間(0°ないし45°)に含まれる場合、第1光線と第2光線は、同一グループであると決定することができる。従って、第1光線と第2光線とのキーは、同一値を有することができる。
なお、図7に図示されているように、視点に係る区間を32個(32個のセル)に設定し、方向に係る区間を8個(第1区間ないし第8区間)に設定した場合、キー決定部610は、256(=32*8)個の区間データと、それに対応するキーとをデータベース(DB)に保存することができる。データベースは、ハッシュテーブルの構造を有することができる。それにより、キー決定部610は、入力された光線が、いずれの区間に属するかということを判断し、当該区間に対応するキーを、入力された光線のキーとして決定することができる。
TRVキャッシュ620は、タグ部及びデータ部を含み、タグ部は、光線のキーを示すタグデータを保存し、データ部は、前記タグデータに対応する光線の加速構造探索データを保存することができる。このとき、光線のタグデータは、以前の光線キーを示すデータでもある。例えば、以前に、互いに類似していない第1光線及び第2光線について探索を行った場合、第1光線のキーを示す第1タグデータ、及び第2光線のキーを示す第2タグデータがタグ部に保存される。
また、第1光線の探索結果を示す第1加速構造探索データ、及び第2光線の探索結果を示す第2加速構造探索データがデータ部に保存される。また、光線の加速構造探索データは、以前の光線の探索結果、以前の光線と交差するノードクラスタに係るデータ、リーフノードに係るデータ、プリミティブに係るデータのうち少なくとも一つを含む。このとき、ノードクラスタは、加速構造であり、以前の光線に交差するリーフノード、リーフノードのすぐ上の上位ノード、前記上位ノードに係る下位ノードを含むいくつかの下位ノードからなるクラスタでもある。例えば、以前の光線がリーフノードである、図3の第8ノード358に交差した場合、ノードクラスタ310は、第7ノード357、第8ノード358及び第9ノード359を含む。また、以前の光線がリーフノードである、図3の第6ノード356に交差した場合、ノードクラスタ320は、第4ノード354、第6ノード356及び第7ノード357を含む。
一方、TRVキャッシュ620は、入力された光線のキーと複数のタグデータとを比較し、TRVキャッシュ620に入力された光線のキーと同一キーを有する以前の光線の加速構造探索データが、保存されているか否かを判断することができる。このとき、入力された光線のキー及び複数のタグデータのうちいずれか一つが一致する場合、キャッシュヒットとして判断し、入力された光線のキーと一致するタグデータが存在しない場合、キャッシュミスとして判断する。
TRV演算部620は、キャッシュヒットである場合、TRVキャッシュ620から読み取られた加速構造探索データに基づいて、入力された光線の加速構造探索を行うことができる。このとき、加速構造探索データがノードクラスタである場合、入力された光線がノードクラスタに含まれるノードに交差するか否かを探索することができ、ノードクラスタに含まれるノードのうち、最上位ノードから探索を行うことができる。また、加速構造探索データがリーフノードである場合、入力された光線がリーフノードに交差するか否かを探索することができる。
なお、キャッシュミスである場合、入力された光線が、加速構造内のいずれのリーフノードに関連するかということを探索することができる。キャッシュミスである場合、図4で説明したように、加速構造に含まれるノードに対して、光線・ノード交差検査を行い、リーフノードを検出することができる。
図8は、一実施形態によるレイトレーシング処理方法を示すフローチャートである。図8を参照すれば、レイトレーシング処理装置100は、光線を生成して入力する(S810)。レイトレーシング処理装置100は、入力された光線の特徴を抽出し、抽出された特徴によって、入力された光線のキーを決定することができる(S820)。このとき、抽出された光線の特徴は、光線の始点情報及び方向情報を含み、抽出された光線の始点情報及び方向情報により、入力された光線のキーを決定することができる。
レイトレーシング処理装置100は、入力された光線の始点情報及び方向情報を、データベースに保存されている複数のグループ情報と比較し、入力された光線が属するグループを抽出し、抽出されたグループに対応するキーを、入力された光線のキーとして決定することができる。レイトレーシング処理装置100は、入力された光線のキーと同一キーを有する以前の光線に係る加速構造探索データが、TRVキャッシュ620に保存されているか否かを判断する(S830)。
例えば、図9に図示されているように、レイトレーシング処理装置100は、入力さた光線のキーと、TRVキャッシュ620のタグデータTD1,TD2,TD3とをそれぞれを比較し、一致するかを判断することができる。そのとき、レイトレーシング処理装置100は、入力された光線のキーと一致するタグデータが存在する場合、キャッシュヒットとして判断し、入力された光線のキーと一致するタグデータが存在しない場合、キャッシュミスとして判断する。
判断結果、キャッシュヒットである場合(入力された光線のキーと同一キーを有する以前の光線に係る加速構造探索データが、TRVキャッシュ620に保存されている場合)、レイトレーシング処理装置100は、当該加速構造探索データを読み取る(S840)。例えば、レイトレーシング処理装置100は、図9に図示されているように、入力された光線のキーと、第2タグデータTD2とが一致する場合、第2タグデータTD2に対応する第2キャッシュデータ(加速構造探索データ)CD2を、TRV演算部630に出力する。
レイトレーシング処理装置100は、読み取られた加速構造探索データに基づいて、入力された光線に係る加速構造探索を行う(S850)。例えば、レイトレーシング処理装置100は、読み取られた加速構造探索データが、ノードクラスタである場合、入力された光線がノードクラスタに含まれるノードに交差するか否かを探索することができ、ノードクラスタに含まれるノードのうち、最上位ノードから探索を行うことができる。また、レイトレーシング処理装置100は、読み取られたデータがリーフノードである場合、入力された光線が、リーフノードに交差するか否かを探索することができる。
なお、判断結果、入力された光線のキーと同一キーを有する以前の光線に係る加速構造探索データが、TRVキャッシュ620に保存されていない場合(キャッシュミスである場合)、レイトレーシング処理装置100は、入力された光線に係る加速構造探索を行う(S850)。このとき、レイトレーシング処理装置100は、図4で説明したように、加速構造に含まれるノードについて、光線・ノード交差検査を行い、リーフノードを検出することができる。
一方、レイトレーシング処理装置100は、入力された光線のキーをTRVキャッシュ620のタグ部621に保存し、それに対応するデータ部622の領域に、前記加速構造探索結果データを保存することができる。例えば、レイトレーシング処理装置100は、入力された光線に係る加速構造探索を行い、入力された光線が交差するノードクラスタ及びリーフノードのうち少なくとも一つを検出し、前記検出されたノードクラスタまたはリーフノードに係るデータを保存することができる。
図10は、実施形態によるレイトレーシング処理方法を示すフローチャートである。図10のS910段階、S920段階及びS930段階は、それぞれ図8のS810段階、S820段階及びS830段階と同一であるので、それらについては、同一説明を省略し、図8の説明で代替する。
S930段階での判断結果、キャッシュヒットである場合(入力された光線のキーと同一キーを有する以前の光線に係る加速構造探索データが、TRVキャッシュ620に保存されている場合)、レイトレーシング処理装置100は、当該加速構造探索データを読み取る(S940)。
一方、読み取られた加速構造探索データが、以前の光線が交差するプリミティブに係るデータである場合、レイトレーシング処理装置100は、入力された光線が、前記プリミティブと交差するか否かを検査し、交差する場合、入力された光線と前記プリミティブとの交差点を計算することができる(S950)。なお、S930段階での判断結果、入力された光線のキーと同一キーを有する以前の光線に係る加速構造探索データが、TRVキャッシュ620に保存されていない場合(キャッシュミスである場合)、レイトレーシング処理装置100は、入力された光線に係る加速構造探索を行う(S960)。このとき、レイトレーシング処理装置100は、図4で説明したように、加速構造に含まれるノードについて、光線・ノード交差検査を行い、リーフノードを検出することができる。
レイトレーシング処理装置100は、入力された光線のキーを、TRVキャッシュ620のタグ部621に保存し、それに対応するデータ部622の領域に、前記加速構造探索結果データを保存することができる。例えば、レイトレーシング処理装置100は、入力された光線に係る加速構造探索を行い、入力された光線が交差するノードクラスタ及びリーフノードのうち少なくとも一つを検出し、前記検出されたノードクラスタまたはリーフノードに係るデータを保存することができる。
以上において図示して説明したように、実施形態によるレイトレーシング処理装置は、以前の光線の探索結果をTRVキャッシュに保存し、以前の光線と類似した光線が入力される場合、TRVキャッシュに保存された以前の光線の探索結果を利用することができる。それにより、フレーム間の類似性を利用して、以前のフレームに係る光線探索結果を現在フレームに活用することにより、現在フレームのレイトレーシング処理に必要な演算量を低減させることができる。
一方、キャッシュメモリシステム及びその動作方法は、コンピュータで読み取り可能な記録媒体に、コンピュータで読み取り可能なコードでもって具現することが可能である。コンピュータで読み取り可能な記録媒体は、コンピュータシステムによって読み取り可能なデータが保存される全種の記録装置を含む。コンピュータで読み取り可能な記録媒体の例としては、ROM(read-only memory)、RAM(random-access memory)、CD(compact disc)−ROM、磁気テープ、フロッピー(登録商標)ディスク、光データ保存装置などがあり、またインターネットを介した伝送のようなキャリアウェーブの形態で具現されるものも含む。また、コンピュータで読み取り可能な記録媒体は、ネットワークに連結されたコンピュータシステムに分散され、分散方式でプロセッサで読み取り可能なコードが保存されて実行される。
以上、本発明の実施形態について図示して説明したが、本発明は、前述の特定実施形態に限定されるものではなく、特許請求の範囲で請求する本発明の要旨を外れることなく、発明が属する技術分野で当業者によって、多様な変形実施が可能であるということは言うまでもなく、こうした変形実施は、本発明の技術的思想や展望から個別的に理解されられるものではないのである。
本発明のレイトレーシング処理装置及びその方法は、例えば、映像生成関連の技術分野に効果的に適用可能である。
10 視点
15 画面
31 第1物体
32 第2物体
33 第3物体
40 一次光線
60 反射光線
70 屈折光線
80 光源
90 シャドー光線
100 レイトレーシング処理装置
110 光線生成ユニット
120 TRVユニット
130 ISTユニット
140 シェーディングユニット
200 加速構造生成装置
250 外部メモリ
251 加速構造
252 幾何データ
351 第1ノード
352 第2ノード
353 第3ノード
354 第4ノード
355 第5ノード
356 第6ノード
357 第7ノード
358 第8ノード
359 第9ノード
510 第1フレーム
520 第2無フレーム
610 キー決定部
620 TRVキャッシュ
621 タグ部
622 データ部
630 TRV演算部
701 第1始点
702 第2始点
710 第1光線ベクトル
720 第2光線ベクトル
750 セル
760 領域

Claims (19)

  1. レイトレーシング処理方法であって、
    入力された光線と類似した以前の光線に係る加速構造探索データが、保存されているか否かを判断する段階と、
    前記判断結果により、保存されている加速構造探索データを読み取り、読み取られたデータに基づいて、レンダリングを行う段階と、
    を含み、
    前記類似した以前の光線は、光線のキーが前記入力された光線と同じグループに属する光線であり、
    前記光線のキーは、前記光線の始点情報及び方向情報を含む前記光線の特徴情報により決定される、
    方法。
  2. 前記方法は、さらに、
    前記入力された光線の特徴情報に基づいて、前記入力された光線と類似した以前の光線を決定する段階と、を含む、
    請求項1に記載の方法。
  3. 前記方法は、さらに、
    前記入力された光線の特徴情報を抽出し、抽出された特徴情報により、入力された光線のキーを決定する段階と、を含み、
    前記入力された光線のキーを決定する段階は、
    複数の光線の特徴情報に基づいて設定された複数のグループ情報及び前記複数のグループそれぞれに対応するキー情報が保存されたデータベースを検索し、前記入力された光線が属するグループを抽出し、前記抽出されたグループに対応するキーを前記入力された光線のキーに決定する、
    請求項1または2に記載の方法。
  4. 前記グループ情報は、前記グループに含まれる光線の始点情報及び方向情報であり、
    前記入力された光線のキーを決定する段階は、
    前記入力された光線の始点情報及び方向情報を前記複数のグループ情報と比較し、前記入力された光線が属するグループを抽出し、抽出されたグループに対応するキーを前記入力された光線のキーに決定する、
    請求項3に記載の方法。
  5. 前記判断する段階は、
    前記入力された光線のキーとTRV(traversal)キャッシュに保存されている複数のタグデータとを比較して判断し、
    前記読み取る段階は、
    前記入力された光線のキーと一致するタグデータが存在する場合、前記一致するタグデータに対応する加速構造探索データを読み取る、
    請求項3に記載の方法。
  6. 前記加速構造探索データは、前記類似した以前の光線が交差するノードクラスタに係るデータ、リーフノードに係るデータ、及び、プリミティブに係るデータのうち少なくとも一つを含む、
    請求項1乃至5のいずれか一項に記載の方法。
  7. 前記加速構造探索データが、前記ノードクラスタに係るデータである場合、
    前記レンダリングを行う段階は、
    前記ノードクラスタに含まれるノードを探索し、前記入力された光線が交差するリーフノードを検出する、
    請求項6に記載の方法。
  8. 前記加速構造探索データが、前記リーフノードに係るデータである場合、
    前記レンダリングを行う段階は、
    前記入力された光線が、前記リーフノードに交差するか否かを検査する、
    請求項6に記載の方法。
  9. 前記方法は、さらに、
    前記加速構造探索データが、前記プリミティブに係るデータである場合、
    前記プリミティブに係るデータを、IST(intersection test)ユニットに伝送する段階とを含む、
    請求項6に記載の方法。
  10. 前記加速構造探索データが、前記プリミティブに係るデータである場合、
    前記レンダリングを行う段階は、
    前記入力された光線が、前記プリミティブに交差するか否かを検査する、
    請求項6または9に記載の方法。
  11. レイトレーシング処理装置であって、
    入力された光線と類似した以前の光線に係る加速構造探索データが、保存されているか否かを判断するTRV(traversal)キャッシュと、
    前記保存されている加速構造探索データを読み取り、前記読み取られたデータに基づいて、前記入力された光線の加速構造探索を行うTRV演算部と、
    を含み、
    前記類似した以前の光線は、光線のキーが前記入力された光線と同じグループに属する光線であり、
    前記光線のキーは、前記光線の始点情報及び方向情報を含む前記光線の特徴情報により決定される、
    装置。
  12. 前記装置は、さらに、
    前記入力された光線の特徴情報に基づいて、前記入力された光線と類似した以前の光線を決定するキー決定部とを含む、
    請求項11に記載の装置。
  13. 前記装置は、さらに、
    前記入力された光線の特徴情報を抽出し、抽出された特徴情報により、入力された光線のキーを決定するキー決定部とを含み、
    前記キー決定部は、
    複数の光線の特徴情報に基づいて設定された複数のグループ情報及び前記複数のグループそれぞれに対応するキー情報が保存されたデータベース(DB)を含み、
    前記データベース(DB)を検索し、前記入力された光線が属するグループを抽出し、抽出されたグループに対応するキーを前記入力された光線のキーに決定する、 請求項11または12に記載の装置。
  14. 前記グループ情報は、前記グループに含まれる光線の始点情報及び方向情報であり、
    前記キー決定部は、
    前記入力された光線の始点情報及び方向情報を前記複数のグループ情報と比較し、前記入力された光線が属するグループを抽出し、抽出されたグループに対応するキーを前記入力された光線のキーに決定する、
    請求項13に記載の装置。
  15. 前記TRVキャッシュは、
    光線のキーを示すタグデータ及び前記タグデータに対応する加速構造探索データを保存し、
    前記入力された光線のキーと複数のタグデータとを比較し、前記TRVキャッシュに前記入力された光線と類似した以前の光線に係る加速構造探索データが、保存されているか否かを判断し、
    前記TRV演算部は、
    前記入力された光線のキーと一致するタグデータが存在する場合、前記一致するタグデータに対応する加速構造探索データを読み取る、
    請求項11乃至14のいずれか一項に記載の装置。
  16. 前記加速構造探索データは、前記類似した以前の光線が交差するノードクラスタに係るデータ、リーフノードに係るデータ、及び、プリミティブに係るデータのうち少なくとも一つを含む、
    請求項11乃至15のいずれか一項に記載の装置。
  17. 前記加速構造探索データが、前記ノードクラスタに係るデータである場合、
    前記TRV演算部は、
    前記ノードクラスタに含まれるノードを探索し、前記入力された光線が交差するリーフノードを検出する、
    請求項16に記載の装置。
  18. 前記加速構造探索データが、前記リーフノードに係るデータである場合、
    前記TRV演算部は、
    前記入力された光線が、前記リーフノードに交差するか否かを検査する、
    請求項16に記載の装置。
  19. 前記装置は、
    前記加速構造探索データが、前記プリミティブに係るデータである場合、
    前記入力された光線が、前記プリミティブに交差するか否かを検査するIST(intersection test)演算部をさらに含む、
    請求項16に記載の装置。
JP2014223150A 2013-11-04 2014-10-31 レイトレーシング処理装置及びその方法 Active JP6474585B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR10-2013-0132995 2013-11-04
KR1020130132995A KR102193684B1 (ko) 2013-11-04 2013-11-04 레이 트레이싱 처리 장치 및 방법

Publications (2)

Publication Number Publication Date
JP2015090712A JP2015090712A (ja) 2015-05-11
JP6474585B2 true JP6474585B2 (ja) 2019-02-27

Family

ID=51786802

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014223150A Active JP6474585B2 (ja) 2013-11-04 2014-10-31 レイトレーシング処理装置及びその方法

Country Status (5)

Country Link
US (1) US9996966B2 (ja)
EP (1) EP2869273B1 (ja)
JP (1) JP6474585B2 (ja)
KR (1) KR102193684B1 (ja)
CN (1) CN104616340B (ja)

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9842424B2 (en) * 2014-02-10 2017-12-12 Pixar Volume rendering using adaptive buckets
US9852537B2 (en) 2015-05-01 2017-12-26 Otoy Inc. Rendering via ray-depth field intersection
CN105160698B (zh) * 2015-08-21 2018-12-18 天津大学 一种三角化射线跟踪路径搜索方法
US10579812B2 (en) * 2016-02-19 2020-03-03 Adobe Inc. 3D digital content interaction and control
KR20180069461A (ko) * 2016-12-15 2018-06-25 삼성전자주식회사 가속 구조를 생성하는 방법 및 장치
US11875904B2 (en) * 2017-04-27 2024-01-16 Koninklijke Philips N.V. Identification of epidemiology transmission hot spots in a medical facility
CN107464207B (zh) * 2017-07-17 2020-06-02 南京华磊易晶微电子有限公司 基于可重构数据流系统芯片阵列的3d图学渲染加速系统
US10614613B2 (en) 2017-07-28 2020-04-07 Nvidia Corporation Reducing noise during rendering by performing parallel path space filtering utilizing hashing
US10438397B2 (en) * 2017-09-15 2019-10-08 Imagination Technologies Limited Reduced acceleration structures for ray tracing systems
US10825231B2 (en) * 2018-12-10 2020-11-03 Arm Limited Methods of and apparatus for rendering frames for display using ray tracing
CN112721145B (zh) * 2019-10-14 2021-12-03 中国科学院沈阳自动化研究所 一种基于纹理贴图的全彩色3d打印机控制方法
US11263800B2 (en) * 2019-12-27 2022-03-01 Intel Corporation Apparatus and method for quantized convergent direction-based ray sorting
US11276224B2 (en) 2020-04-17 2022-03-15 Samsung Electronics Co., Ltd. Method for ray intersection sorting
US11302056B2 (en) 2020-06-10 2022-04-12 Nvidia Corporation Techniques for traversing data employed in ray tracing
US11295509B2 (en) * 2020-06-29 2022-04-05 Imagination Technologies Limited Intersection testing in a ray tracing system using multiple ray bundle intersection tests
US11869117B2 (en) 2021-03-18 2024-01-09 Samsung Electronics Co., Ltd. Systems and methods of adaptive, variable-rate, hybrid ray tracing
CN115640138B (zh) * 2022-11-25 2023-03-21 摩尔线程智能科技(北京)有限责任公司 用于光线追踪调度的方法和装置

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7952583B2 (en) * 2000-06-19 2011-05-31 Mental Images Gmbh Quasi-monte carlo light transport simulation by efficient ray tracing
US8643659B1 (en) * 2003-12-31 2014-02-04 3Dlabs Inc., Ltd. Shader with global and instruction caches
CN101297325B (zh) * 2005-12-29 2013-04-24 英特尔公司 用于射线跟踪的方法和装置
US20080024489A1 (en) 2006-07-28 2008-01-31 Robert Allen Shearer Cache Utilization Optimized Ray Traversal Algorithm with Minimized Memory Bandwidth Requirements
KR100894136B1 (ko) 2006-08-31 2009-04-20 세종대학교산학협력단 광선 추적을 위한 비 스택 방식의 케이디 트리 탐색알고리즘을 적용한 영상검출 장치 및 방법
US8018457B2 (en) * 2006-09-19 2011-09-13 Caustic Graphics, Inc. Ray tracing system architectures and methods
US7830379B2 (en) * 2006-09-19 2010-11-09 Caustic Graphics, Inc. Architectures for parallelized intersection testing and shading for ray-tracing rendering
JP5485257B2 (ja) * 2008-03-21 2014-05-07 コースティック グラフィックス インコーポレイテッド レイトレース・レンダリングのための並列化された交差テストおよびシェーディングのアーキテクチャ
JP2010062948A (ja) * 2008-09-04 2010-03-18 Fujitsu Ltd シミュレートプログラム、シミュレート装置およびシミュレート方法
US8350846B2 (en) 2009-01-28 2013-01-08 International Business Machines Corporation Updating ray traced acceleration data structures between frames based on changing perspective
US8248412B2 (en) * 2009-03-19 2012-08-21 International Business Machines Corporation Physical rendering with textured bounding volume primitive mapping
US8248401B2 (en) * 2009-03-19 2012-08-21 International Business Machines Corporation Accelerated data structure optimization based upon view orientation
US8797322B2 (en) * 2009-06-24 2014-08-05 Imagination Technologies, Limited Systems and methods of defining rays for ray tracing rendering
US8619078B2 (en) * 2010-05-21 2013-12-31 International Business Machines Corporation Parallelized ray tracing
US8692825B2 (en) * 2010-06-24 2014-04-08 International Business Machines Corporation Parallelized streaming accelerated data structure generation
KR101705581B1 (ko) * 2010-09-30 2017-02-22 삼성전자주식회사 데이터 처리 장치 및 방법
US9113130B2 (en) * 2012-02-06 2015-08-18 Legend3D, Inc. Multi-stage production pipeline system
US9183667B2 (en) 2011-07-15 2015-11-10 Kirill Garanzha Out-of-core ray tracing with memory-efficient page generation
US8930636B2 (en) * 2012-07-20 2015-01-06 Nvidia Corporation Relaxed coherency between different caches
US10083541B2 (en) * 2014-03-13 2018-09-25 Imagination Technologies Limited Object illumination in hybrid rasterization and ray traced 3-D rendering

Also Published As

Publication number Publication date
CN104616340B (zh) 2019-07-26
JP2015090712A (ja) 2015-05-11
EP2869273A3 (en) 2016-01-27
KR20150051477A (ko) 2015-05-13
KR102193684B1 (ko) 2020-12-21
EP2869273A2 (en) 2015-05-06
EP2869273B1 (en) 2022-11-02
US9996966B2 (en) 2018-06-12
US20150123971A1 (en) 2015-05-07
CN104616340A (zh) 2015-05-13

Similar Documents

Publication Publication Date Title
JP6474585B2 (ja) レイトレーシング処理装置及びその方法
KR102161749B1 (ko) 화상의 렌더링을 위하여 광선 추적을 수행하는 방법 및 장치.
JP6476090B2 (ja) 加速構造の生成及び探索を行う方法並びに装置
KR102493461B1 (ko) 렌더링 시스템 및 방법
US9576389B2 (en) Method and apparatus for generating acceleration structure in ray tracing system
KR102224845B1 (ko) 하이브리드 렌더링 방법 및 장치
KR102197067B1 (ko) 멀티 프레임들의 동일한 영역을 연속으로 렌더링하는 방법 및 장치
KR102242566B1 (ko) 레이 트레이싱 처리 장치 및 방법
JP6460914B2 (ja) レイトレーシング・システムでの加速構造探索装置及び加速構造探索方法
JP5035195B2 (ja) 画像生成装置及びプログラム
KR20150039493A (ko) 레이 트레이싱 처리 장치 및 방법
KR101705072B1 (ko) 영상 처리 장치 및 방법
US20150091894A1 (en) Method and apparatus for tracing ray using result of previous rendering
US20150348307A1 (en) Apparatus and method of traversing acceleration structure in ray tracing
KR20160125172A (ko) 레이 트레이싱 장치 및 방법
KR102193683B1 (ko) 레이 트레이싱 시스템에서의 가속 구조 탐색 장치 및 그 탐색 방법
KR102537529B1 (ko) 레이 트레이싱 장치 및 방법
US20150186288A1 (en) Apparatus and method of operating cache memory
KR20170025993A (ko) 가속 구조를 생성 및 탐색하는 방법
KR102365112B1 (ko) 레이 트레이싱 장치 및 방법

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170922

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20180820

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180925

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20181225

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: 20190115

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190130

R150 Certificate of patent or registration of utility model

Ref document number: 6474585

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250