KR102164541B1 - 레이 트레이싱 시스템에서의 가속 구조 생성 장치 및 그 생성 방법 - Google Patents

레이 트레이싱 시스템에서의 가속 구조 생성 장치 및 그 생성 방법 Download PDF

Info

Publication number
KR102164541B1
KR102164541B1 KR1020130126111A KR20130126111A KR102164541B1 KR 102164541 B1 KR102164541 B1 KR 102164541B1 KR 1020130126111 A KR1020130126111 A KR 1020130126111A KR 20130126111 A KR20130126111 A KR 20130126111A KR 102164541 B1 KR102164541 B1 KR 102164541B1
Authority
KR
South Korea
Prior art keywords
ray
sub
primitive
search cost
acceleration structure
Prior art date
Application number
KR1020130126111A
Other languages
English (en)
Other versions
KR20150046643A (ko
Inventor
이재돈
김진우
신용삼
이민우
이원종
한탁돈
Original Assignee
삼성전자 주식회사
연세대학교 산학협력단
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 삼성전자 주식회사, 연세대학교 산학협력단 filed Critical 삼성전자 주식회사
Priority to KR1020130126111A priority Critical patent/KR102164541B1/ko
Priority to US14/520,538 priority patent/US9576389B2/en
Publication of KR20150046643A publication Critical patent/KR20150046643A/ko
Application granted granted Critical
Publication of KR102164541B1 publication Critical patent/KR102164541B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/06Ray-tracing

Abstract

본 발명은 레이 트레이싱 시스템에서의 가속 구조 생성 장치 및 생성 방법에 관한 것이다. 본 발명의 일 실시예에 따른 가속 구조 생성 방법은 3차원 객체를 포함하는 공간을 복수의 서브 공간으로 분할하는 단계, 상기 복수의 서브 공간에 포함되는 프리미티브의 차폐정보에 기초하여, 상기 복수의 서브 공간에 대한 탐색 비용을 계산하는 단계 및 상기 탐색 비용을 최소로 하는 분할 방법을 검출하고, 상기 분할 방법에 의해 분할된 복수의 서브 공간 각각을 노드로 설정하여, 가속 구조를 생성하는 단계를 포함한다.

Description

레이 트레이싱 시스템에서의 가속 구조 생성 장치 및 그 생성 방법{Apparatus and method for generating acceleration structure in a ray tracing system}
레이 트레이싱 시스템에서의 가속 구조 생성 장치 및 그 생성 방법에 관한 것으로, 더욱 구체적으로는 가속 구조 탐색 비용을 최소로 하는 가속 구조 생성 장치 및 그 생성 방법에 관한 것이다.
일반적으로 3D 렌더링(3-Dimensional Rendering)은 3차원 객체 데이터를 주어진 카메라 시점(view point)에서 보이는 영상으로 합성(synthesis)해주는 영상 처리를 말한다.
렌더링 방법은 3차원 객체를 화면에 투영(projection)하면서 영상을 생성하는 래스터화(rasterization) 방법과 카메라 시점에서 영상의 각 픽셀을 향한 광선을 따라 입사하는 빛의 경로를 추적하여 영상을 생성하는 레이 트레이싱(ray tracing)등이 있다.
이 중 레이 트레이싱은 빛의 물리적 성질(반사, 굴절, 투과 등)을 렌더링 결과에 반영하므로 고품질 영상을 생성할 수 있다는 장점이 있으나, 상대적으로 연산량이 방대하여 고속으로 렌더링 하는데 어려움이 있다.
레이 트레이싱 성능에 있어서 연산량이 많이 요구되는 요소는 렌더링 대상이 되는 신 오브젝트(scene object)들을 공간적으로 분할한 가속 구조(Acceleration Structure, 이하에서는 ‘AS’라고 한다.)의 생성 및 탐색(Traversal, 이하에서는 ‘TRV’라고 한다)과, 광선과 프리미티브 사이의 교차 검사(Intersection Test, 이하에서는 ‘IST’라고 한다)이다.
가속 구조 탐색 수행 시, 연산량을 최소화하여, 가속 구조 탐색을 효율적으로 수행할 수 있는 레이 트레이싱 시스템에서의 가속 구조 생성 장치 및 그 생성 방법을 제공하는 데 있다.
본 발명의 일 실시예에 따른 레이 트레이싱 시스템에서의 가속 구조 생성 방법은, 3차원 객체를 포함하는 공간을 복수의 서브 공간으로 분할하는 단계, 상기 복수의 서브 공간에 포함되는 프리미티브의 차폐정보에 기초하여, 상기 복수의 서브 공간에 대한 탐색 비용을 계산하는 단계 및 상기 탐색 비용을 최소로 하는 분할 방법을 검출하고, 상기 분할 방법에 의해 분할된 복수의 서브 공간 각각을 노드로 설정하여, 가속 구조를 생성하는 단계를 포함한다.
본 발명의 일 실시예에 따른 상기 프리미티브의 차폐정보는 상기 프리미티브가 주변 프리미티브에 의해 차폐된 정도를 나타내는 것을 특징으로 한다.
본 발명의 일 실시예에 따른 프리미티브의 차폐정보는 상기 프리미티브에서 생성된 엠비언트 어클루전(AO: Ambient Occlusion) 광선에 기초하여, 획득한 것을 특징으로 한다.
본 발명의 일 실시예에 따른 상기 프리미티브의 차폐정보는 상기 AO 광선이 주변 프리미티브들과 교차하는 정도를 나타내는 것을 특징으로 한다.
본 발명의 일 실시예에 따른 상기 탐색 비용을 계산하는 단계는, 상기 AO 광선이 일정 범위 내에서 주변 프리미티브들과 교차하는 경우, 상기 프리미티브의 차폐정보 값을 0 내지 1 사이의 값으로 결정하고, 상기 AO 광선이 상기 일정 범위 내에서 주변 프리미티브들과 교차하지 않는 경우, 상기 차폐 정보 값을 1로 결정하는 단계를 포함하는 것을 특징으로 한다.
본 발명의 일 실시예에 따른 상기 탐색 비용을 계산하는 단계는,
광선-노드 교차 검사 비용, 상기 광선이 상기 각각의 서브 공간을 지나갈 확률, 상기 각각의 서브 공간에 포함되는 프리미티브들의 차폐정보의 합, 광선-프리미티브 교차 검사 비용 중 적어도 하나에 기초하여 계산하는 것을 특징으로 한다.
본 발명의 일 실시예에 따른 상기 탐색 비용을 계산하는 단계는, SAH(Surface Area Heuristic)에 기초하여, 상기 탐색 비용을 계산하는 것을 특징으로 한다.
본 발명의 일 실시예에 따른 상기 탐색 비용을 계산하는 단계는, 다음과 같은 식을 이용하여 상기 탐색 비용을 계산하고,
T = 2*T1 + A(S1)/A(S)*AO(S1)*T2 + A(S2)/A(S)*AO(S2)*T2
T1은 광선-노드 교차 검사 비용이고, A(S1)은 제1 서브공간에 포함되는 프리미티브들의 표면적을 나타내고, A(S2)는 제2 서브공간에 포함되는 프리미티브들의 표면적을 나타내며, A(S)는 상기 공간에 포함되는 프리미티브들의 표면적, T2는 광선-프리미티브 교차 검사 비용이고, AO(S1)은 제1 서브공간에 포함되는 프리미티브들의 차폐정보의 합을 나타내고, AO(S2)는 제2 서브공간에 포함되는 프리미티브들의 차폐정보의 합을 나타내는 것을 특징으로 한다.
본 발명의 일 실시예에 따른 상기 탐색 비용을 계산하는 단계는, 상기 프리미티브 하나에 대한 AO광선이 복수개인 경우, 상기 복수의 AO 광선 각각에 대하여 계산된 차폐 정보 값을 평균하는 단계를 더 포함하고, 상기 평균한 값을 상기 프리미티브 하나의 차폐 정보 값으로 하는 것을 특징으로 한다.
본 발명의 일 실시예에 따른 레이 트레이싱 시스템에서의 가속 구조 생성 장치는 3차원 객체를 포함하는 공간을 복수의 서브 공간으로 분할하는 분할부, 상기 복수의 서브 공간에 포함되는 프리미티브의 차폐정보에 기초하여, 상기 복수의 서브 공간에 대한 탐색 비용을 계산하는 탐색 비용 연산부 및 상기 탐색 비용을 최소로 하는 분할 방법을 검출하고, 상기 분할 방법에 의해 분할된 복수의 서브 공간 각각을 노드로 설정하여, 가속 구조를 생성하는 제어부를 포함한다.
본 발명의 일 실시예에 따른 상기 탐색 비용 연산부는, 상기 AO 광선이 일정 범위 내에서 주변 프리미티브들과 교차하는 경우, 상기 프리미티브의 차폐정보 값을 0 내지 1 사이의 값으로 결정하고, 상기 AO 광선이 상기 일정 범위 내에서 주변 프리미티브들과 교차하지 않는 경우, 상기 차폐 정보 값을 1로 결정하는 것을 특징으로 한다.
본 발명의 일 실시예에 따른 상기 탐색 비용 연산부는, 광선-노드 교차 검사 비용, 상기 광선이 상기 각각의 서브 공간을 지나갈 확률, 상기 각각의 서브 공간에 포함되는 프리미티브들의 차폐정보의 합, 광선-프리미티브 교차 검사 비용 중 적어도 하나에 기초하여 계산하는 것을 특징으로 한다.
본 발명의 일 실시예에 따른 상기 탐색 비용 연산부는, SAH(Surface Area Heuristic)에 기초하여, 상기 탐색 비용을 계산하는 것을 특징으로 한다.
본 발명의 일 실시예에 따른 상기 탐색 비용 연산부는, 다음과 같은 식을 이용하여 상기 탐색 비용을 계산하며,
T = 2*T1 + A(S1)/A(S)*AO(S1)*T2 + A(S2)/A(S)*AO(S2)*T2
T1은 광선-노드 교차 검사 비용이고, A(S1)은 제1 서브공간에 포함되는 프리미티브들의 표면적을 나타내고, A(S2)는 제2 서브공간에 포함되는 프리미티브들의 표면적을 나타내며, A(S)는 상기 공간에 포함되는 프리미티브들의 표면적, T2는 광선-프리미티브 교차 검사 비용이고, AO(S1)은 제1 서브공간에 포함되는 프리미티브들의 차폐정보의 합을 나타내고, AO(S2)는 제2 서브공간에 포함되는 프리미티브들의 차폐정보의 합을 나타내는 것을 특징으로 한다.
본 발명의 일 실시예에 따른 상기 탐색 비용 연산부는, 상기 프리미티브 하나에 대한 AO광선이 복수개인 경우, 상기 복수의 AO 광선 각각에 대하여 계산된 차폐 정보 값을 평균하여, 상기 평균한 값을 상기 프리미티브 하나의 차폐 정보 값으로 하는 것을 특징으로 한다.
가속 구조 탐색을 효율적으로 수행할 수 있어, 가속 구조 탐색에 필요한 연산량을 최소화할 수 있다.
탐색과정에서 발생하는 가속 구조의 노드 페치(fetch)를 감소시킴에 따라, 메모리 사용량을 감소시킬 수 있다.
이에 따라, 레이 트레이싱 처리 장치의 처리 능력 및 처리속도가 향상될 수 있다.
도 1은 일반적인 레이 트레이싱 방법을 설명하기 위한 도면이다.
도 2는 레이 트레이싱 시스템을 나타내는 도면이다.
도 3은 레이 트레이싱 시스템에서의 가속 구조를 설명하기 위한 도면이다.
도 4는 본 발명의 실시예에 따른 레이 트레이싱 시스템에서의 가속 구조 생성 장치를 나타내는 블록도이다.
도 5는 본 발명의 실시예에 따른 레이 트레이싱 시스템에서의 가속 구조 생성 방법을 나타내는 흐름도이다.
도 6은 본 발명의 실시예에 따른 레이 트레이싱 시스템에서의 가속 구조 생성 방법을 설명하기 위해 참조되는 도이다.
도 7은 본 발명의 실시예에 따른 AO 광선을 나타내는 도면이다.
도 8은 본 발명의 실시예에 따른 가속 구조의 일부를 나타내는 도이다.
이하에서는 도면을 참조하여 본 발명의 실시 예들을 상세히 설명한다.
도 1은 레이 트레이싱 방법을 설명하기 위한 도면이다.
도 1에 도시된 바와 같이, 3차원 모델링은 광원(80), 제1 물체(31), 제2 물체(32), 제3 물체(33)를 포함할 수 있다. 도 1에서, 제1 물체(31), 제2 물체(32) 및 제3 물체(33)는 2차원 물체와 같이 표현되었지만, 이는 설명의 편의를 위한 것이며, 제1 물체(31), 제2 물체(32) 및 제3 물체(33)는 3차원 물체이다.
이때, 제1 물체(31)는 반사율 및 굴절율이 0보다 크고, 제2 물체(32) 및 제3 물체(33)는 반사율 및 굴절율이 0이라고 가정할 수 있다. 즉, 제1 물체(31)는 빛을 반사 및 굴절시키며, 제2 물체(32) 및 제3 물체(33)는 빛을 반사시키지도 굴절시키지도 않는다고 가정할 수 있다.
도 1과 같은 3차원 모델링에서, 렌더링 장치(예를 들어, 레이 트레이싱 장치)는 3차원 영상을 생성하기 위해 시점(10)을 결정하고, 결정된 시점(10)에 따라 화면(15)을 결정할 수 있다.
시점(10)과 화면(15)이 결정되면, 레이 트레이싱 장치(100)는 시점(10)으로부터 화면(15)의 각 픽셀들에 대하여 광선을 생성할 수 있다.
예를 들어, 도 1에 도시된 바와 같이, 화면(15)의 해상도가 4*3인 경우, 12개의 픽셀에 대하여 각각 광선을 생성할 수 있다.
이하에서는, 하나의 픽셀(픽셀 A)에 대한 광선만을 설명하기로 한다.
도 1을 참조하면, 시점(10)으로부터 픽셀 A에 대하여 1차 광선(primary ray, 40)이 생성된다. 1차 광선(40)은 3차원 공간을 통과하여, 제1 물체(31)에 도달한다. 여기서, 제1 물체(31)는 일정한 단위 영역(이하, 프리미티브(primitive)라 한다.)들의 집합으로 구성될 수 있으며, 예를 들어, 프리미티브(primitive)는 삼각형, 사각형 등의 다각형일 수 있다. 이하에서는, 프리미티브가 삼각형인 것을 예로 들어 설명하기로 한다.
한편, 1차 광선(40)과 제1 물체(31)의 교차점(hit point)에서는 쉐도우 광선(shadow ray, 50), 반사 광선(reflection ray, 60) 및 굴절 광선(refraction ray, 70)을 생성할 수 있다. 이때, 쉐도우 광선(50), 반사 광선(60) 및 굴절 광선(70)을 2차 광선이라고 한다.
쉐도우 광선(50)은 교차점으로부터 광원(80)의 방향으로 생성된다. 반사 광선(60)은 1차 광선(40)의 입사각에 대응되는 방향으로 생성되고, 제1 물체(31)의 반사율에 따른 가중치를 적용받는다. 굴절 광선(70)은 1차 광선(40)의 입사각 및 제1 물체(31)의 굴절율에 대응되는 방향으로 생성되고, 제1 물체(31)의 굴절율에 따른 가중치를 적용받는다.
레이 트레이싱 장치(100)는 쉐도우 광선(50)을 통해 교차점이 광원(80)에 노출되어 있는지를 판단한다. 예를 들어, 도 1에 도시된 바와 같이, 쉐도우 광선(50)이 제2 물체(32)와 만나면, 해당 쉐도우 광선(50)이 생성된 교차점에 그림자가 생성될 수 있다.
또한, 레이 트레이싱 장치(100)는 굴절 광선(70) 및 반사 광선(60)이 다른 물체에 도달하는지를 판단한다. 예를 들어, 도 1에 도시된 바와 같이, 굴절 광선(70)의 진행방향에는 어떠한 물체도 존재하지 않으며, 반사 광선(60)은 제3 물체(33)에 도달한다. 이에 따라, 레이 트레이싱 장치(100)는 제3 물체(33)의 교차점의 좌표 및 색상 정보를 확인하고, 다시 제3 물체(33)의 교차점으로부터 쉐도우 광선(90)을 생성한다. 이때, 레이 트레이싱 장치(100)는 쉐도우 광선(90)이 광원(80)에 노출되어 있는지 판단한다.
한편, 제3 물체(33)의 반사율 및 굴절율은 0이므로, 제3 물체(33)에 대한 반사 광선 및 굴절 광선은 생성되지 않는다.
상술한 바와 같이, 레이 트레이싱 장치(100)는 픽셀 A에 대한 1차 광선(40) 및 1차 광선(40)으로부터 파생되는 모든 광선들을 분석하고, 분석 결과에 따라 픽셀 A의 색상 값을 결정한다. 픽셀 A의 색상 값의 결정은 1차 광선(40)의 교차점의 색상, 반사 광선(60)의 교차점의 색상, 쉐도우 광선(50)이 광원(80)에 도달하는지 여부에 영향을 받는다.
레이 트레이싱 장치(100)는, 상기와 같은 과정을 화면(15)의 모든 픽셀들에 대하여 수행하여, 화면(15)을 구성할 수 있다.
도 2는 레이 트레이싱 시스템을 나타내는 도면이다.
도 2를 참조하면, 레이 트레이싱 시스템은 레이 트레이싱 장치(100), 외부 메모리(250) 및 가속 구조 생성 장치(200)를 포함할 수 있다.
또한, 레이 트레이싱 장치(100)는 광선 생성 유닛(110), TRV 유닛(Traversal unit, 120), IST 유닛(Intersection unit, 130) 및 쉐이딩 유닛(shading unit, 140)을 포함할 수 있다.
광선 생성 유닛(110)은 1차 광선 및 1차 광선에 의해 파생되는 광선들을 생성할 수 있다. 광선 생성 유닛(110)은 도 1에서 설명한 바와 같이, 시점(10)으로부터 1차 광선을 생성하고, 1차 광선과 오브젝트의 교차점에서 2차 광선을 생성할 수 있다. 이때, 2차 광선은 1차 광선이 오브젝트와 교차된 지점에서 생성된 반사, 굴절 또는 쉐도우 광선일 수 있다.
또한, 광선 생성 유닛(110)은 2차 광선과 오브젝트의 교차점에서 3차 광선을 생성할 수 있다. 광선 생성 유닛(110)은 광선이 오브젝트와 교차하지 않을 때까지 광선을 계속해서 생성하거나, 정해진 횟수 내에서 광선을 생성할 수 있다.
TRV 유닛(120)은 광선 생성 유닛(110)으로부터 생성된 광선에 대한 정보를 수신할 수 있다. 생성된 광선은 1차 광선 및 1차 광선에 의해 파생된 광선(2차 광선, 3차 광선 등)을 모두 포함한다.
예를 들어, 1차 광선의 경우, TRV 유닛(120)은 생성된 광선의 시점 및 방향에 대한 정보를 수신할 수 있다. 또한, 2차 광선의 경우, TRV 유닛(120)은 2차 광선의 출발점 및 방향에 대한 정보를 수신할 수 있다. 2차 광선의 출발점은 1차 광선이 오브젝트와 교차된 지점을 나타낸다. 또한, 시점 또는 출발점은 좌표로 표현될 수 있으며, 방향은 벡터로 표현될 수 있다.
TRV 유닛(120)은 외부 메모리(250)로부터 가속 구조에 대한 정보를 읽어올 수 있다.
이때, 가속 구조(AS)는 가속 구조 생성 장치(Acceleration Structure Generator, 200)에 의해 생성되며, 생성된 가속 구조(AS)는 외부 메모리(250)에 저장된다.
가속 구조 생성 장치(200)는 3차원 공간상의 오브젝트들의 위치 정보를 포함하는 가속 구조를 생성할 수 있다. 가속 구조 생성 장치(200)는 3차원 공간을 계층적 트리 형태로 분할한다. 가속 구조 생성 장치(200)는 여러 가지 형태의 가속 구조를 생성할 수 있다. 예를 들어, 가속 구조 생성 장치(200)는 KD-tree(K-dimensional tree), BVH(Bounding Volume Hirearchy), SBVH, OSAH, AOBVH를 적용하여, 3차원 공간상의 오브젝트들의 관계를 나타내는 가속 구조를 생성할 수 있다. 이에 대해서는 도 3을 참조하여, 자세히 설명하기로 한다.
도 3은 레이 트레이싱 시스템에서의 가속 구조를 설명하기 위한 도면이다.
이하에서, 설명의 편의를 위하여, 가속 구조(AS)의 노드에 기재된 숫자로, 각 노드를 지칭하기로 한다. 예를 들어, 숫자 1이 기재되고 원형으로 도시된 노드(351)는 제1 노드(351)로, 숫자 2가 기재되고 사각형으로 도시된 노드(352)는 제2 노드(352)로, 숫자 5가 기재되고, 점선으로 된 사각형으로 도시된 노드(355)는 제5 노드(355)로 지칭할 수 있다.
가속 구조(AS)는 루트 노드(root node), 내부 노드(inner node) 리프 노드(leaf node) 및 프리미티브(primitive)를 포함할 수 있다.
도 3에서, 제1 노드(351)는 루트 노드를 나타낸다. 루트 노드는 부모 노드(parent node)는 가지지 않고, 자식 노드(child node)만 가지는 최상위 노드이다. 예를 들어, 제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)은 읽어온 가속 구조(AS)에 대한 정보를 탐색하여, 광선이 교차하는 리프 노드를 검출할 수 있다.
IST 유닛(130)은 TRV 유닛(120)으로부터 광선이 교차하는 리프 노드를 수신할 수 있다.
IST 유닛(130)은 수신한 리프 노드에 포함된 프리미티브들에 대한 정보(기하 데이터)를 외부 메모리(250)로부터 읽어올 수 있다.
IST 유닛(130)은 읽어온 프리미티브들에 대한 정보를 이용하여, 광선과 프리미티브들 간의 교차 검사를 수행할 수 있다.
예를 들어, IST 유닛(130)은 TRV 유닛(120)으로부터 수신한 리프 노드에 포함된 복수의 프리미티브 중에서 어느 프리미티브에 광선이 교차되었는지를 검사할 수 있다.
이에 따라, 광선이 교차되는 프리미티브들을 검출하고, 검출된 프리미티브와 광선이 교차된 지점(hit point)을 계산할 수 있다.
계산된 교차점(hit point)은 좌표 형태로 쉐이딩 유닛(140)으로 출력될 수 있다.
쉐이딩 유닛(140)은 교차점에 대한 정보 및 교차점의 물질의 특성에 기초하여 픽셀의 색상 값을 결정할 수 있다. 또한, 쉐이딩 유닛(140)은 교차점의 물질의 기본 색상 및 광원에 의한 효과 등을 고려하여, 픽셀의 색상 값을 결정할 수 있다.
예를 들어, 도 1의 픽셀 A의 경우, 쉐이딩 유닛(140)은 1차 광선(40) 및 2차 광선인 굴절 광선(70), 반사 광선(60), 쉐도우 광선(50)에 의한 효과를 모두 고려하여, 픽셀 A의 색상 값을 결정할 수 있다.
한편, 레이 트레이싱 장치(100)는 외부 메모리(250)로부터 레이 트레이싱에 필요한 데이터를 수신할 수 있다. 외부 메모리(250)는 가속 구조(AS) 또는 기하 데이터(geometry data)를 저장할 수 있다.
가속 구조(AS)는 가속 구조 생성 장치(200)에 의해 생성되고, 외부 메모리(250)에 저장된다.
또한, 기하 데이터는 프리미티브들에 대한 정보를 나타낸다. 프리미티브는 삼각형, 사각형 등의 다각형일 수 있으며, 기하 데이터는 오브젝트에 포함되는 프리미티브들의 정점 및 위치에 대한 정보를 나타낼 수 있다. 예를 들어, 프리미티브가 삼각형인 경우, 기하 데이터는 삼각형들의 세 점에 대한 정점 좌표, 법선 벡터 또는 텍스처 좌표를 포함할 수 있다.
한편, 도 2 및 도 3에서 설명한 바와 같이, 레이 트레이싱 장치(100)는 가속 구조(AS)를 탐색하여, 광선에 교차하는 리프 노드를 검출할 수 있다.
이때, 레이 트레이싱 장치(100)는 어느 하나의 경로를 따라 가속 구조를 탐색하고, 탐색이 완료되면, 다른 경로로 가속 구조를 탐색할 수 있다.
한편, 본 발명의 실시예에 따른 가속 구조 생성 장치(200)는 레이 트레이싱 시스템에서 가속 구조 탐색 시, 필요한 연산량을 최소로 하는 가속 구조를 생성할 수 있다. 즉, 가속 구조 탐색 장치(200)는 탐색 비용을 최소로 하는 최적의 공간분할 위치를 찾아, 이에 대응하는 가속 구조를 생성할 수 있다.
이에 대해서는, 이하에서 도 4 내지 도 8을 참조하여, 자세히 설명하기로 한다.
도 4는 본 발명의 일 실시예에 따른 레이 트레이싱 시스템에서의 가속 구조 생성 장치를 나타내는 블록도이다.
가속 구조 생성 장치(200)는 도 2에서 설명한 바와 같이, 레이 트레이싱의 전처리(pre-processing)로서 가속 구조를 생성하고, 생성된 가속 구조를 외부 메모리(250)에 저장할 수 있다.
도 4를 참조하면, 가속 구조 생성 장치(200)는 분할부(210), 탐색 비용 연산부(220) 및 제어부(230)를 포함할 수 있다.
분할부(210)는 3차원 객체를 포함하는 공간을 복수의 서브 공간으로 분할할 수 있다. 이때, 분할부(210)는 공간에 대한 분할 면을 선택하여, 선택된 분할 면을 기준으로 공간을 복수의 서브 공간으로 분할할 수 있다.
분할부(210)는 복수의 분할 면으로 공간을 분할할 수 있으며, 하나의 분할 면으로 공간을 분할하는 경우, 2개의 서브 공간을 형성할 수 있다. 또한, 복수의 분할 면으로 공간을 분할하는 경우, 3개 이상의 서브 공간을 형성할 수 있다.
탐색 비용 연산부(220)는 분할 면에 의해 형성된 복수의 서브 공간에 포함되는 프리미티브의 차폐 정보에 기초하여, 탐색 비용을 연산할 수 있다. 이때, 프리미티브의 차폐 정보는 프리미티브가 주변 프리미티브에 의해 차폐된 정도를 나타내는 데이터일 수 있으며, 프리미티브에서 생성된 엠비언트 어클루전(AO) 광선이 주변 프리미티브에 교차되는 정도에 의해 값이 결정될 수 있다.
또한, 탐색 비용 연산부(220)는 공간을 분할하는 복수의 분할 방법에 대해 각각 탐색 비용을 연산할 수 있다.
제어부(230)는 탐색 비용을 최소로 하는 분할 방법을 검출할 수 있다. 또한, 제어부(230)는 검출된 분할 방법에 대응하는 가속 구조를 생성할 수 있다. 예를 들어, 제어부(230)는 탐색 비용을 최소로 하는 분할 방법에 의해 분할된 복수의 서브 공간 각각을 노드로 설정하여, 가속 구조를 생성할 수 있다.
도 5는 본 발명의 실시예에 따른 레이 트레이싱 시스템에서의 가속 구조 생성 방법을 나타내는 흐름도이다.
가속 구조 생성 장치(200)는 3차원 객체를 포함하는 공간을 복수의 서브 공간으로 분할할 수 있다(S510).
예를 들어, 가속 구조 생성 장치(200)는 공간에 대한 분할 면을 선택하여, 분할 면을 기준으로 분할된 각각의 서브 공간을 형성할 수 있다. 공간에 대한 분할 면은 복수일 수 있으며, 분할 면이 하나인 경우, 2개의 서브 공간이 형성될 수 있으며, 분할 면이 복수인 경우, 3개 이상의 서브 공간이 형성될 수 있다.
또한, 분할 면은 다양하게 결정될 수 있다. 예를 들어, 도 6을 참조하면, 도 6의 (a)는 제1 분할 면(610)을 기준으로 공간이 분할된 예를 나타내며, 도 6의 (b)는 제2 분할 면(620)을 기준으로 공간이 분할된 예를 나타낸다.
도 6의 (a)와 같이, 제1 분할 면(610)을 기준으로 공간(S)을 분할하면, 제1 서브 공간(S1) 및 제2 서브 공간(S2)이 형성될 수 있다. 이때, 각각의 서브 공간은 가속 구조의 노드(node)에 대응될 수 있다.
또한, 제1 서브 공간(S1) 및 제2 서브 공간(S2)은 각각 3개의 프리미티브를 포함할 수 있다.
한편, 도 6의 (b)와 같이, 제2 분할 면(620)을 기준으로 공간(S)을 분할하면, 제3 서브 공간(S3) 및 제4 서브 공간(S4)이 형성될 수 있다. 이에 따라, 제3 서브 공간(S3)은 4개의 프리미티브를 제4 서브 공간(S4)은 2개의 프리미티브를 포함할 수 있다.
다시 도 5를 참조하면, 가속 구조 생성 장치(200)는 분할 면에 의해 형성된 복수의 서브 공간에 포함되는 프리미티브의 차폐정보에 기초하여, 탐색 비용을 계산할 수 있다(S520).
이때, 프리미티브의 차폐정보는 프리미티브가 주변 프리미티브에 의해 차폐된 정도를 나타내는 데이터일수 있다.
예를 들어, 프리미티브의 차폐정보는 도 7에 도시된 바와 같이, 프리미티브(710)에서 엠비언트 어클루전(AO: Ambient Occlusion) 광선(720)을 생성하여, AO 광선(720)이 주변 프리미티브에 교차하는 정도에 의해 결정될 수 있다.
이때, AO 광선(720)은 프리미티브(710)에서 임의의 방향으로 생성된 광선일 수 있으며, 복수로 생성될 수 있다.
예를 들어, 차폐 정보 값은 AO 광선(720)이 기 설정된 범위 내에서 다른 프리미티브와 교차하는 경우, 0 내지 1 사이의 값을 가지고, AO 광선(720)이 상기 일정 범위 내에서 다른 프리미티브들과 교차하지 않는 경우, 1을 가질 수 있다.
이에 따라, 차폐 정보 값은 다른 프리미티브들에 의해 차폐되는 정도가 클수록 작은 값을 가지고, 다른 프리미티브들에 의해 차폐되는 정도가 작을수록 큰 값을 가질 수 있으며, 차폐 정보의 최대값은 1일 수 있다.
또한, 도 7에 도시된 바와 같이, 프리미티브(710) 하나에 대하여 복수의 AO 광선(720)이 생성되는 경우, 프리미티브 하나의 차폐 정보 값은 각각의 AO 광선(710)에 대해 계산된 차폐정보 값을 평균한 값으로 할 수 있다.
또한, 프리미티브의 차폐 정보 값은 시점에 독립적인 프리미티브의 가시성을 나타낼 수 있다.
한편, 가속 구조 생성 장치(200)는 임의의 분할 면에 의해 형성된 복수의 서브 공간에 대한 탐색 비용을 SAH(Surface Area Heuristic) 방식을 이용하여 계산할 수 있다.
이하에서는, 설명의 편의를 위해 도 6의 (a)에 도시된 바와 같이, 제1 분할 면(610)에 의해 형성된 제1 서브 공간(S1) 및 제2 서브 공간(S2)에 대한 탐색 비용을 예로 들어 설명하기로 한다.
우선, 하나의 노드를 탐색하는 비용을 T1이라고 하면, 제1 서브 공간(S1)에 대응하는 제1 노드 및 제2 서브 공간(S2)에 대응하는 제2 노드를 탐색하는 비용은 2*T1로 계산될 수 있다.
또한, 임의의 광선이 제1 서브 공간(S1)을 지나갈 확률 및 제2 서브 공간(S2)을 지나갈 확률은 다음과 같이 나타낼 수 있다.
Figure 112013095504001-pat00001
수학식 1에서, A(S)는 공간(S)의 표면적, A(S1)은 제1 서브 공간(S1)의 표면적, A(S2)는 제2 서브 공간(S2)의 표면적을 나타낸다.
이에 따라, 프리미티브들의 독립적인 시점에 대한 가시성을 고려하여, 제1 노드에 포함되는 프리미티브들에 대한 교차 검사 비용(Tpri(S1)) 및 제2 노드에 포함되는 프리미티브들에 대한 교차 검사 비용(Tpri(S2))은 다음과 같이 나타낼 수 있다.
Figure 112013095504001-pat00002
수학식 2에서, T2는 하나의 프리미티브에 대한 교차 검사 비용을 나타내고, AO(S1)은 제1 서브 공간(S1)에 포함된 프리미티브들의 차폐 정보의 합을 나타내며, AO(S2)는 제2 서브 공간(S2)에 포함된 프리미티브들의 차폐 정보의 합을 나타낸다.
이때, 제1 서브 공간(S1) 및 제2 서브 공간(S2)에 포함되는 프리미티브들의 차폐 정보의 합 AO(S1) 및 AO(S2)는 AO 광선을 이용하여, 획득할 수 있다.
예를 들어, 제1 서브 공간(S1)에 포함되는 프리미티브(710)에서 도 7에 도시된 바와 같이, AO 광선(720)을 생성하여, 생성된 AO 광선(720)이 주변 프리미티브들과 교차하는 교차 T값(주변 프리미티브와의 교차 범위)을 이용하여, 차폐 정보 값(AO_Cost)을 계산할 수 있다.
Figure 112013095504001-pat00003
여기서, 교차 T값이 차폐 기준 값(AO cut off)값 이상인 경우, 차폐 정보 값(AO_Cost)은 1을 가지고, 교차 T값이 차폐 기준 값 미만인 경우, 교차 T값을 0과 1사이의 값으로 정규화한 값을 차폐 정보 값(AO_Cost)으로 할 수 있다.
따라서, AO 광선(720)이 일정 범위(차폐 기준 값)내에서 다른 프리미티브와 교차하지 않는 경우, 차폐 정보 값은 1을 가지고, AO 광선이 일정 범위(차폐 기준 값)내에서 다른 프리미티브와 교차하는 경우, 0에서 1사이의 값을 가진다.
또한, AO 광선이 복수로 생성되는 경우, 예를 들어, 도 7에 도시된 바와 같이, AO 광선(720)이 제1 AO 광선, 제2 AO 광선, 제3 AO 광선 및 제4 AO 광선을 포함하는 경우, 각각의 AO광선에 대한, 차폐 정보 값(제1 내지 제4 차폐 정보 값)을 구하여, 이를 평균한 값을 탐색 비용 연산에 이용할 수 있다.
따라서, 제1 분할 면(610)에 의해 형성된 복수의 서브 공간에 대한 탐색 비용은 다음과 같이 나타낼 수 있다.
Figure 112013095504001-pat00004
가속 구조 생성 장치(200)는 수학식 4를 이용하여, 탐색 비용을 연산할 수 있다.
예를 들어, 도 6의 (a)에 도시된 바와 같이, 공간을 제1 분할 면(610)을 기준으로 분할한 경우, 제1 서브 공간(S1)에 포함되는 프리미티브들의 차폐 정보의 합 AO(S1) 및 제2 서브 공간(S2)에 포함되는 프리미티브들의 차폐 정보의 합 AO(S2)을 이용하여, 제1 분할 방법(제1 분할 면에 의한 분할 방법)에 대한 제1 탐색 비용을 획득할 수 있다.
가속 구조 생성 장치(200)는 제1 분할 방법에 대한 탐색 비용 연산을 마친 후, 다른 분할 방법이 존재하는지 여부를 판단할 수 있다(S530).
다른 분할 방법이 존재하는 경우, 가속 구조 생성 장치(200)는 다른 분할 방법에 의해 분할된 복수의 서브 공간에 대한 탐색 비용을 계산할 수 있다.
예를 들어, 도 6의 (b)에 도시된 바와 같이, 제2 분할 면(620)에 의해 형성된 제3 서브 공간(S3) 및 제4 서브 공간(S4)에 대한 탐색 비용을 계산할 수 있다. 이때, 앞에서 설명한 제1 탐색 비용 계산과 동일한 방식으로, 제2 분할 방법(제2 분할 면에 의한 분할 방법)에 대한 제2 탐색 비용을 획득할 수 있다.
반면에, 다른 분할 방법이 존재하지 않는 경우, 이제까지 계산한 탐색 비용들을 비교하여, 탐색 비용을 최소로 하는 분할 방법을 검출하고, 검출된 분할 방법에 대응하는 가속 구조를 생성할 수 있다(S540).
예를 들어, 계산된 탐색 비용 중 제2 탐색 비용이 최소인 경우, 도 8에 도시된 바와 같이, 제2 분할 방법에 대응하는 가속 구조를 생성할 수 있다. 이때, 가속 구조 생성 장치(200)는 제2 분할 면(620)에 의해 분할된 제3 서브 공간(S3) 및 제4 서브 공간(S4)을 각각 노드로 설정하여, 가속 구조를 생성할 수 있다.
예를 들어, 도 8과 같이, 전체 공간(S)에 대응하는 노드(810)를 루트 노드(root node)로 설정하고, 제3 서브 공간(S3)에 대응하는 노드(820) 및 제4 서브 공간(S4)에 대응하는 노드(830)를 전체 공간(S)에 대응하는 노드의 자식 노드로 설정할 수 있다.
또한, 가속 구조 생성 장치(200)는 제3 서브 공간을 다시 복수의 서브 공간으로 나누고, 탐색 비용을 연산하여, 탐색 비용을 최소로 하는 분할 방법을 검출할 수 있다.
이때, 가속 구조 생성 장치(200)는 도 8에 도시된 바와 같이, 검출된 분할 방법에 의해 분할된 서브 공간들(제5 서브 공간, 제6 서브 공간)에 대응하는 노드들(840, 850)을 제3 서브 공간에 대응하는 노드(820)의 자식 노드로 설정할 수 있다.
이에 따라, 가속 구조 생성 장치(200)는 계속해서 최소의 탐색 비용을 가지는 서브 공간을 검출하여, 가속 구조를 생성할 수 있다.
아래의 표 1은 가속 구조의 생성 방법 및 시점에 따른 TRV 유닛과 IST 유닛에서의 연산량을 나타내는 것이다. 또한, 비교예 1의 연산량에 대비하여, 비교예 2, 비교예 3 및 실시예 1 각각의 연산량 감소율을 나타낸다.
비교예 1 비교예 2 비교예 3 실시예 1
시점1
IST+TRV연산량(감소율)
52.9
(0.0%)
34.4
(34.9%)
33.9
(35.9%)
31.41
(40.6%)
시점2
IST+TRV연산량(감소율)
44.9
(0.0%)
36.4
(18.9%)
36.1
(19.5%)
30.80
(31.4%)
표 1을 참조하면, 비교예 1은 BVH(Bounding Volume Hirearchy) 방식을 이용하여, 가속 구조를 생성한 예이다. BVH 방식은 프리미티브를 포함하는 바운딩 박스를 기반으로 공간을 분할하는 방식이다.
비교예 2는 SBVH(Spatial splits in BVH) 방식을 이용하여, 가속 구조를 생성한 예이다. SBVH 방식은, 바운딩 박스의 중첩을 최소화하기 위해, 프리미티브를 분할하여, 양쪽 바운딩 박스에 포함되도록 분할하는 방식이다.
비교예 3은 OSAH(Occlusion Surface Area Heuristic) 방식을 이용하여, 가속 구조를 생성한 예이다. OSAH 방식은 특정 시점에서의 가시성 정보를 추가적으로 적용하여, 가시성이 있는 프리미티브를 루트 노드(root node)에 가깝게 위치시키도록 하는 분할 방식이다.
실시예 1은 본 발명의 실시예에 따라 공간을 분할하여, 가속 구조를 생성한 예이다.
표 1을 참조하면, 실시예 1은 비교예 1에 대비하여, 시점 1에서는 40.6%의 연산량 감소율을 나타내고, 시점 2에서는 30.80%의 연산량 감소율을 나타낸다.
또한, 표 1을 참조하면, 시점 1 및 시점 2에서, 비교예 2 및 비교예 3의 연산량 감소율보다 실시예 1의 연산량 감소율이 큰 것을 알 수 있다.
따라서, 본 발명의 실시예에 따른 가속 구조 생성 방법에 의해 생성된 가속 구조는 TRV 유닛 및 IST 유닛에서의 연산량을 감소시킬 수 있으며, 레이 트레이싱 효율을 증가시킬 수 있다.
상기와 같이, 본 발명의 일 실시예에 의한 레이 트레이싱 시스템에서의 가속 구조 탐색 방법은 컴퓨터로 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. 컴퓨터가 읽을 수 있는 기록매체의 예로는 ROM, RAM. CD-ROM, 자기 테이프, 플로피디스크, 광 데이터 저장장치 등이 있으며, 또한 인터넷을 통한 전송 등과 같은 캐리어 웨이브의 형태로 구현되는 것도 포함한다. 또한, 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 프로세서가 읽을 수 있는 코드가 저장되고 실행될 수 있다.
또한, 이상에서는 본 발명의 실시예에 대하여 도시하고 설명하였지만, 본 발명은 상술한 특정의 실시예에 한정되지 아니하며, 청구범위에서 청구하는 본 발명의 요지를 벗어남이 없이 당해 발명이 속하는 기술분야에서 통상의 지식을 가진자에 의해 다양한 변형실시가 가능한 것은 물론이고, 이러한 변형실시들은 본 발명의 기술적 사상이나 전망으로부터 개별적으로 이해되어져서는 안될 것이다.

Claims (19)

  1. 3차원 객체를 포함하는 공간을 복수의 서브 공간들로 분할하는 단계;
    상기 복수의 서브 공간들 각각에 포함된 복수의 프리미티브들의 차폐 정보의 합에 기초하여, 상기 복수의 서브 공간에 대한 탐색 비용을 계산하는 단계; 및
    상기 탐색 비용을 최소로 하는 분할 방법을 검출하고, 상기 분할 방법에 의해 분할된 복수의 서브 공간 각각을 노드로 설정하여, 가속 구조를 생성하는 단계를 포함하고,
    상기 차폐 정보는 프리미티브에서 생성된 엠비언트 어클루젼(ambient, occlusion, AO) 광선이 주변 프리미티브와 교차하는 정도에 의해 결정되는 레이 트레이싱 시스템에서의 가속 구조 생성 방법.
  2. 제1항에 있어서,
    상기 차폐정보는 상기 프리미티브가 상기 주변 프리미티브에 의해 차폐된 정도를 나타내는 것을 특징으로 하는 레이 트레이싱 시스템에서의 가속 구조 생성 방법.
  3. 삭제
  4. 삭제
  5. 제1항에 있어서,
    상기 탐색 비용을 계산하는 단계는,
    상기 AO 광선이 일정 범위 내에서 상기 주변 프리미티브와 교차하는 경우, 상기 차폐정보의 값을 0 내지 1 사이의 값으로 결정하고, 상기 AO 광선이 상기 일정 범위 내에서 상기 주변 프리미티브들과 교차하지 않는 경우, 상기 차폐 정보의 값을 1로 결정하는 단계를 포함하는 레이 트레이싱 시스템에서의 가속 구조 생성 방법.
  6. 제1항에 있어서,
    상기 탐색 비용을 계산하는 단계는,
    광선-노드 교차 검사 비용, 상기 AO 광선이 상기 복수의 서브 공간들 각각을 지나갈 확률, 상기 복수의 서브 공간들 각각에 포함되는 프리미티브들의 차폐정보의 합, 광선-프리미티브 교차 검사 비용 중 적어도 하나에 기초하여 상기 탐색 비용을 계산하는 것을 특징으로 하는 레이 트레이싱 시스템에서의 가속 구조 생성 방법.
  7. 제1항에 있어서,
    상기 탐색 비용을 계산하는 단계는,
    SAH(Surface Area Heuristic)에 기초하여, 상기 탐색 비용을 계산하는 것을 특징으로 하는 레이 트레이싱 시스템에서의 가속 구조 생성 방법.
  8. 제7항에 있어서,
    상기 탐색 비용을 계산하는 단계는,
    다음과 같은 식을 이용하여 상기 탐색 비용을 계산하고,
    T = 2*T1 + A(S1)/A(S)*AO(S1)*T2 + A(S2)/A(S)*AO(S2)*T2
    T1은 광선-노드 교차 검사 비용이고, A(S1)은 제1 서브공간에 포함되는 프리미티브들의 표면적을 나타내고, A(S2)는 제2 서브공간에 포함되는 프리미티브들의 표면적을 나타내며, A(S)는 상기 공간에 포함되는 프리미티브들의 표면적, T2는 광선-프리미티브 교차 검사 비용이고, AO(S1)은 제1 서브공간에 포함되는 프리미티브들의 차폐정보의 합을 나타내고, AO(S2)는 제2 서브공간에 포함되는 프리미티브들의 차폐정보의 합을 나타내는 것을 특징으로 하는 레이 트레이싱 시스템에서의 가속 구조 생성 방법.
  9. 제1항에 있어서,
    상기 탐색 비용을 계산하는 단계는,
    상기 프리미티브 하나에 대한 AO광선이 복수개인 경우, 복수의 상기 AO 광선 각각에 대하여 계산된 차폐 정보 값을 평균하는 단계를 더 포함하고,
    상기 평균한 값을 상기 프리미티브 하나의 차폐 정보 값으로 하는 것을 특징으로 하는 레이 트레이싱 시스템에서의 가속 구조 생성 방법.
  10. 3차원 객체를 포함하는 공간을 복수의 서브 공간으로 분할하는 분할부;
    상기 복수의 서브 공간들 각각에 포함된 복수의 프리미티브들의 차폐 정보의 합에 기초하여, 상기 복수의 서브 공간에 대한 탐색 비용을 계산하는 탐색 비용 연산부; 및
    상기 탐색 비용을 최소로 하는 분할 방법을 검출하고, 상기 분할 방법에 의해 분할된 복수의 서브 공간 각각을 노드로 설정하여, 가속 구조를 생성하는 제어부를 포함하고,
    상기 차폐 정보는 프리미티브에서 생성된 엠비언트 어클루젼(ambient, occlusion, AO) 광선이 주변 프리미티브와 교차하는 정도를 나타내는 레이 트레이싱 시스템에서의 가속 구조 생성 장치.
  11. 삭제
  12. 삭제
  13. 삭제
  14. 삭제
  15. 삭제
  16. 삭제
  17. 삭제
  18. 삭제
  19. 삭제
KR1020130126111A 2013-10-22 2013-10-22 레이 트레이싱 시스템에서의 가속 구조 생성 장치 및 그 생성 방법 KR102164541B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020130126111A KR102164541B1 (ko) 2013-10-22 2013-10-22 레이 트레이싱 시스템에서의 가속 구조 생성 장치 및 그 생성 방법
US14/520,538 US9576389B2 (en) 2013-10-22 2014-10-22 Method and apparatus for generating acceleration structure in ray tracing system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020130126111A KR102164541B1 (ko) 2013-10-22 2013-10-22 레이 트레이싱 시스템에서의 가속 구조 생성 장치 및 그 생성 방법

Publications (2)

Publication Number Publication Date
KR20150046643A KR20150046643A (ko) 2015-04-30
KR102164541B1 true KR102164541B1 (ko) 2020-10-12

Family

ID=52825769

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020130126111A KR102164541B1 (ko) 2013-10-22 2013-10-22 레이 트레이싱 시스템에서의 가속 구조 생성 장치 및 그 생성 방법

Country Status (2)

Country Link
US (1) US9576389B2 (ko)
KR (1) KR102164541B1 (ko)

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10049489B2 (en) 2015-03-03 2018-08-14 Imagination Technologies Limited Systems and methods for soft shadowing in 3-D rendering
US9852537B2 (en) * 2015-05-01 2017-12-26 Otoy Inc. Rendering via ray-depth field intersection
US10614614B2 (en) 2015-09-29 2020-04-07 Adshir Ltd. Path tracing system employing distributed accelerating structures
US10297068B2 (en) 2017-06-06 2019-05-21 Adshir Ltd. Method for ray tracing augmented objects
KR102537530B1 (ko) 2015-10-26 2023-05-26 삼성전자 주식회사 가속 구조를 생성하는 방법 및 장치
US10565776B2 (en) 2015-12-12 2020-02-18 Adshir Ltd. Method for fast generation of path traced reflections on a semi-reflective surface
US10614612B2 (en) 2018-06-09 2020-04-07 Adshir Ltd. Fast path traced reflections for augmented reality
US10410401B1 (en) 2017-07-26 2019-09-10 Adshir Ltd. Spawning secondary rays in ray tracing from non primary rays
KR20180050124A (ko) * 2016-11-04 2018-05-14 삼성전자주식회사 가속 구조를 생성하는 방법 및 장치
US10438397B2 (en) 2017-09-15 2019-10-08 Imagination Technologies Limited Reduced acceleration structures for ray tracing systems
US10699468B2 (en) 2018-06-09 2020-06-30 Adshir Ltd. Method for non-planar specular reflections in hybrid ray tracing
US10853994B1 (en) * 2019-05-23 2020-12-01 Nvidia Corporation Rendering scenes using a combination of raytracing and rasterization
US11017581B1 (en) 2020-01-04 2021-05-25 Adshir Ltd. Method for constructing and traversing accelerating structures
CN111476877B (zh) * 2020-04-16 2024-01-26 网易(杭州)网络有限公司 一种阴影渲染的方法及装置、电子设备、存储介质
US11676328B1 (en) * 2022-10-24 2023-06-13 Illuscio, Inc. Systems and methods for prioritized rendering and streaming based on risk maps that predict change in a three-dimensional environment

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8188997B2 (en) 2000-06-19 2012-05-29 Mental Images Gmbh Accelerated ray tracing using shallow bounding volume hierarchies
US9483864B2 (en) 2008-12-05 2016-11-01 International Business Machines Corporation System and method for photorealistic imaging using ambient occlusion
KR101705581B1 (ko) * 2010-09-30 2017-02-22 삼성전자주식회사 데이터 처리 장치 및 방법
FR2966623A1 (fr) 2010-10-21 2012-04-27 Thomson Licensing Procede d’estimation de l’occultation dans un environnement virtuel

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Méndez-Feliu, et al. "From obscurances to ambient occlusion: A survey." The Visual Computer 25.2 (2008.02.15)*
Vinkler, Marek, et al. "Visibility driven BVH build up algorithm for ray tracing." Computers & Graphics vol. 36. (2012.02.13.)*

Also Published As

Publication number Publication date
US20150109292A1 (en) 2015-04-23
KR20150046643A (ko) 2015-04-30
US9576389B2 (en) 2017-02-21

Similar Documents

Publication Publication Date Title
KR102164541B1 (ko) 레이 트레이싱 시스템에서의 가속 구조 생성 장치 및 그 생성 방법
KR102193684B1 (ko) 레이 트레이싱 처리 장치 및 방법
US8441477B2 (en) Apparatus and method of enhancing ray tracing speed
KR102493461B1 (ko) 렌더링 시스템 및 방법
US9508191B2 (en) Optimal point density using camera proximity for point-based global illumination
US9406164B2 (en) Apparatus and method of multi-view rendering
KR102604737B1 (ko) 가속 구조를 생성하는 방법 및 장치
KR102224845B1 (ko) 하이브리드 렌더링 방법 및 장치
US20150091904A1 (en) Ray tracing processing apparatus and method
KR102242566B1 (ko) 레이 트레이싱 처리 장치 및 방법
KR20160126329A (ko) 적응적 샘플링을 수행하여 영상을 처리하는 방법 및 장치.
KR20160125172A (ko) 레이 트레이싱 장치 및 방법
KR102219289B1 (ko) 레이 트레이싱 시스템에서의 가속 구조 탐색 장치 및 그 탐색 방법
KR102193683B1 (ko) 레이 트레이싱 시스템에서의 가속 구조 탐색 장치 및 그 탐색 방법
KR20130092055A (ko) 영상 처리 장치 및 방법
KR102537529B1 (ko) 레이 트레이싱 장치 및 방법
US10115224B2 (en) Method and apparatus generating acceleration structure
KR20110051315A (ko) 영상 처리 장치 및 방법
EP2827302B1 (en) Image processing apparatus and method
US20150186288A1 (en) Apparatus and method of operating cache memory
KR20220085203A (ko) 동적 장면에 대한 집중도 기반의 레이 트레이싱 방법 및 장치
KR102365112B1 (ko) 레이 트레이싱 장치 및 방법
KR20220085204A (ko) 포비티드 렌더링에 관한 집중도 기반의 레이 트레이싱 방법 및 장치
KR101630181B1 (ko) 영상 처리 장치 및 방법
Suzuki et al. A Fast Ray-Tracing Using Bounding Spheres and Frustum Rays for Dynamic Scene Rendering

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant