KR102467031B1 - 가속 구조를 생성 및 탐색하는 방법 - Google Patents
가속 구조를 생성 및 탐색하는 방법 Download PDFInfo
- Publication number
- KR102467031B1 KR102467031B1 KR1020150123203A KR20150123203A KR102467031B1 KR 102467031 B1 KR102467031 B1 KR 102467031B1 KR 1020150123203 A KR1020150123203 A KR 1020150123203A KR 20150123203 A KR20150123203 A KR 20150123203A KR 102467031 B1 KR102467031 B1 KR 102467031B1
- Authority
- KR
- South Korea
- Prior art keywords
- node
- ray
- primitive
- bounding boxes
- ray tracing
- Prior art date
Links
- 230000001133 acceleration Effects 0.000 title claims abstract description 67
- 238000000034 method Methods 0.000 title claims abstract description 52
- 238000009877 rendering Methods 0.000 claims description 13
- 238000010586 diagram Methods 0.000 description 28
- 238000002910 structure generation Methods 0.000 description 2
- 241000283973 Oryctolagus cuniculus Species 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/06—Ray-tracing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2210/00—Indexing scheme for image generation or computer graphics
- G06T2210/12—Bounding box
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computer Graphics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Image Generation (AREA)
- Geometry (AREA)
Abstract
Description
도 2는 레이 트레이싱 코어를 설명하기 위한 도면이다.
도 3은 레이 트레이싱 코어가 광선 추적을 수행하는 동작을 설명하기 위한 도면이다.
도 4는 광선 추적을 가속하기 위한 방법을 설명하기 위한 도면이다.
도 5는 도 4의 광선 추적을 가속하기 위한 방법을 설명하기 위한 도면이다.
도 6은 일 실시 예에 따른 가속 구조를 생성하는 방법을 설명하기 위한 순서도이다.
도 7은 프리미티브들을 바운딩 박스로 분할하는 것을 설명하기 위한 도면이다.
도 8은 바운딩 박스에서 오버랩이 발생하는 예시를 도시한 도면이다.
도 9는 오버랩 위치 정보를 나타내는 방법의 예시를 도시한 도면이다.
도 10은 일 실시 예에 따른 가속 구조를 설명하기 위한 도면이다.
도 11은 일 실시 예에 따른 가속 구조 탐색 방법을 설명하기 위한 순서도이다.
도 12는 탐색 과정을 설명하기 위한 도면이다.
도 13은 일 실시 예에 따른 가속 구조를 탐색하는 방법을 설명하기 위한 도면이다.
도 14는 탐색 과정을 설명하기 위한 도면이다.
도 15는 일 실시 예에 따른 가속 구조를 탐색하는 방법을 설명하기 위한 도면이다.
도 16은 일 실시 예에 따른 가속 구조 생성 장치 및 레이 트레이싱 코어를 설명하기 위한 구성도이다.
110: 광선 생성 유닛
120: TRV 유닛
130: IST 유닛
140: 쉐이딩 유닛
200: 가속 구조 생성 장치
210: 가속 구조 생성부
220: 오버랩 표시부
Claims (19)
- 삭제
- 삭제
- 삭제
- 가속 구조(acceleration structure)를 탐색하는 방법에 있어서,
리프 노드에 도달할 때까지 하나 이상의 노드를 포함하는 상기 가속 구조를 탐색하는 단계;
광선 데이터와 교차하는 프리미티브(primitive)의 히트 포인트(hit point)를 포함하는 노드를 탐색하는 단계; 및
상기 노드를 탐색한 결과를 이용하여 이미지를 렌더링하는 단계를 포함하고,
상기 하나 이상의 노드는 각각, 3차원 공간을 구분하는 복수의 바운딩 박스(bounding box)들 중 하나에 대응되고, 상기 복수의 바운딩 박스들의 위치 정보를 저장하고,
상기 3차원 공간은 복수의 그리드(grid)들로 분할되고,
상기 위치 정보는, 상기 복수의 그리드들 상에서, 상기 복수의 바운딩 박스들이 서로 오버랩(overlap) 되는 그리드의 위치를 나타내는 것을 특징으로 하는, 방법. - 제 4 항에 있어서, 상기 노드를 탐색하는 단계는,
상기 히트 포인트를 포함하는 노드가 없는 경우, 탐색을 종료하는 단계를 포함하는, 방법. - 제 4 항에 있어서, 상기 노드를 탐색하는 단계는,
상기 노드에 상기 광선 데이터와 교차하는 상기 프리미티브가 존재하는 경우, 상기 히트 포인트를 업데이트하는 단계를 포함하는, 방법. - 삭제
- 삭제
- 제 4 항에 있어서, 상기 프리미티브의 위치는, 상기 프리미티브가 포함된 그리드의 위치를 나타내는 것을 특징으로 하는, 방법.
- 삭제
- 삭제
- 삭제
- 가속 구조를 탐색하는 장치에 있어서,
리프 노드에 도달할 때까지 하나 이상의 노드를 포함하는 상기 가속 구조를 탐색하고,
광선 데이터와 교차하는 프리미티브의 히트 포인트를 포함하는 노드를 탐색하고, 상기 노드를 탐색한 결과를 이용하여 이미지를 렌더링하도록 구성된 프로세서; 및
상기 가속 구조가 저장된 메모리를 포함하고,
상기 하나 이상의 노드는 각각, 3차원 공간을 구분하는 복수의 바운딩 박스들 중 하나에 대응되고, 상기 복수의 바운딩 박스들의 위치 정보를 저장하고,
상기 3차원 공간은 복수의 그리드들로 분할되고,
상기 위치 정보는, 상기 복수의 그리드들 상에서, 상기 복수의 바운딩 박스들이 서로 오버랩 되는 그리드의 위치를 나타내는 것을 특징으로 하는, 장치. - 제 13 항에 있어서, 상기 프로세서는,
상기 히트 포인트를 포함하는 노드가 없는 경우, 탐색을 종료하는 것을 특징으로 하는, 장치. - 제 13 항에 있어서, 상기 프로세서는,
상기 노드에 상기 광선 데이터와 교차하는 상기 프리미티브가 존재하는 경우, 상기 히트 포인트를 업데이트하는 것을 특징으로 하는, 장치. - 삭제
- 삭제
- 제 13 항에 있어서, 상기 프리미티브의 위치는, 상기 프리미티브가 포함된 그리드의 위치를 나타내는 것을 특징으로 하는, 장치.
- 하나 이상의 노드를 포함하는 가속 구조를 탐색하는 방법에 있어서,
리프 노드에 도달가속 구조를 탐색하는 방법에 있어서,
리프 노드에 도달할 때까지 하나 이상의 노드를 포함하는 상기 가속 구조를 탐색하는 단계;
광선 데이터와 교차하는 프리미티브의 히트 포인트를 포함하는 노드를 탐색하는 단계; 및
상기 노드를 탐색한 결과를 이용하여 이미지를 렌더링하는 단계를 포함하고,
상기 하나 이상의 노드는 각각, 3차원 공간을 구분하는 복수의 바운딩 박스들 중 하나에 대응되고, 상기 복수의 바운딩 박스들의 위치 정보를 저장하고,
상기 3차원 공간은 복수의 그리드들로 분할되고,
상기 위치 정보는, 상기 복수의 그리드들 상에서, 상기 복수의 바운딩 박스들이 서로 오버랩 되는 그리드의 위치를 나타내는 것을 특징으로 하는 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020150123203A KR102467031B1 (ko) | 2015-08-31 | 2015-08-31 | 가속 구조를 생성 및 탐색하는 방법 |
US15/197,339 US10019832B2 (en) | 2015-08-31 | 2016-06-29 | Method of generating and traversing acceleration structure |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020150123203A KR102467031B1 (ko) | 2015-08-31 | 2015-08-31 | 가속 구조를 생성 및 탐색하는 방법 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20170025993A KR20170025993A (ko) | 2017-03-08 |
KR102467031B1 true KR102467031B1 (ko) | 2022-11-14 |
Family
ID=58095602
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020150123203A KR102467031B1 (ko) | 2015-08-31 | 2015-08-31 | 가속 구조를 생성 및 탐색하는 방법 |
Country Status (2)
Country | Link |
---|---|
US (1) | US10019832B2 (ko) |
KR (1) | KR102467031B1 (ko) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102604737B1 (ko) * | 2016-01-11 | 2023-11-22 | 삼성전자주식회사 | 가속 구조를 생성하는 방법 및 장치 |
US10553010B2 (en) * | 2017-04-01 | 2020-02-04 | Intel IP Corporation | Temporal data structures in a ray tracing architecture |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090167763A1 (en) * | 2000-06-19 | 2009-07-02 | Carsten Waechter | Quasi-monte carlo light transport simulation by efficient ray tracing |
Family Cites Families (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7499053B2 (en) * | 2000-06-19 | 2009-03-03 | Mental Images Gmbh | Real-time precision ray tracing |
DE102004007835A1 (de) * | 2004-02-17 | 2005-09-15 | Universität des Saarlandes | Vorrichtung zur Darstellung von dynamischen komplexen Szenen |
US20080024489A1 (en) * | 2006-07-28 | 2008-01-31 | Robert Allen Shearer | Cache Utilization Optimized Ray Traversal Algorithm with Minimized Memory Bandwidth Requirements |
US7969434B2 (en) * | 2006-09-19 | 2011-06-28 | Caustic Graphics, Inc. | Method, apparatus, and computer readable medium for accelerating intersection testing in ray-tracing rendering |
JP4440246B2 (ja) | 2006-10-10 | 2010-03-24 | 株式会社リコー | 空間インデックス方法 |
US8289324B1 (en) * | 2007-12-17 | 2012-10-16 | Nvidia Corporation | System, method, and computer program product for spatial hierarchy traversal |
US8102391B2 (en) | 2008-04-11 | 2012-01-24 | International Business Machines Corporation | Hybrid rendering of image data utilizing streaming geometry frontend interconnected to physical rendering backend through dynamic accelerated data structure generator |
US8253730B1 (en) * | 2008-08-29 | 2012-08-28 | Adobe Systems Incorporated | System and method for construction of data structures for ray tracing using bounding hierarchies |
US8749552B2 (en) * | 2008-10-17 | 2014-06-10 | Imagination Technologies Limited | Synthetic acceleration shapes for use in ray tracing |
US8243073B2 (en) * | 2009-01-28 | 2012-08-14 | International Business Machines Corporation | Tree insertion depth adjustment based on view frustum and distance culling |
US8471845B1 (en) * | 2009-07-31 | 2013-06-25 | Nvidia Corporation | System and method for constructing a bounding volume hierarchical structure |
KR101623502B1 (ko) | 2009-11-06 | 2016-05-23 | 삼성전자주식회사 | 계층적 공간 분할 구조의 부분 업데이트 장치 및 방법 |
US8564589B1 (en) * | 2010-05-17 | 2013-10-22 | Nvidia Corporation | System and method for accelerated ray-box intersection testing |
KR101705072B1 (ko) * | 2010-09-28 | 2017-02-09 | 삼성전자주식회사 | 영상 처리 장치 및 방법 |
KR20130092055A (ko) | 2012-02-10 | 2013-08-20 | 삼성전자주식회사 | 영상 처리 장치 및 방법 |
US9697640B2 (en) * | 2014-04-21 | 2017-07-04 | Qualcomm Incorporated | Start node determination for tree traversal in ray tracing applications |
KR20150136348A (ko) * | 2014-05-27 | 2015-12-07 | 삼성전자주식회사 | 레이 트레이싱 시스템에서의 가속 구조 탐색 장치 및 그 탐색 방법 |
US9552664B2 (en) * | 2014-09-04 | 2017-01-24 | Nvidia Corporation | Relative encoding for a block-based bounding volume hierarchy |
KR102244619B1 (ko) * | 2014-09-30 | 2021-04-26 | 삼성전자 주식회사 | 가속 구조를 생성 및 탐색하는 방법 |
-
2015
- 2015-08-31 KR KR1020150123203A patent/KR102467031B1/ko active IP Right Grant
-
2016
- 2016-06-29 US US15/197,339 patent/US10019832B2/en active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090167763A1 (en) * | 2000-06-19 | 2009-07-02 | Carsten Waechter | Quasi-monte carlo light transport simulation by efficient ray tracing |
Also Published As
Publication number | Publication date |
---|---|
US20170061673A1 (en) | 2017-03-02 |
US10019832B2 (en) | 2018-07-10 |
KR20170025993A (ko) | 2017-03-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102244619B1 (ko) | 가속 구조를 생성 및 탐색하는 방법 | |
KR102604737B1 (ko) | 가속 구조를 생성하는 방법 및 장치 | |
KR102197067B1 (ko) | 멀티 프레임들의 동일한 영역을 연속으로 렌더링하는 방법 및 장치 | |
KR102712155B1 (ko) | 가속 구조를 생성하는 방법 및 장치 | |
KR102161749B1 (ko) | 화상의 렌더링을 위하여 광선 추적을 수행하는 방법 및 장치. | |
KR102193684B1 (ko) | 레이 트레이싱 처리 장치 및 방법 | |
KR102242566B1 (ko) | 레이 트레이싱 처리 장치 및 방법 | |
KR20150039494A (ko) | 광선 추적 가속 방법 및 장치 | |
KR20120019720A (ko) | 영상 처리 장치 및 방법 | |
KR20150039496A (ko) | 이전 렌더링의 결과를 이용하여 광선을 추적하는 방법 및 장치 | |
KR102252374B1 (ko) | 광선 추적 유닛 및 광선 데이터를 처리하는 방법 | |
US10460506B2 (en) | Method and apparatus for generating acceleration structure | |
KR102467031B1 (ko) | 가속 구조를 생성 및 탐색하는 방법 | |
KR102193683B1 (ko) | 레이 트레이싱 시스템에서의 가속 구조 탐색 장치 및 그 탐색 방법 | |
JPWO2011104746A1 (ja) | 画像表示装置 | |
KR102537530B1 (ko) | 가속 구조를 생성하는 방법 및 장치 | |
KR20150034062A (ko) | 동일한 그룹의 데이터를 라우팅하는 방법 및 장치, 렌더링 유닛을 재구성하는 방법 및 장치 | |
KR20130124125A (ko) | 공간 가속 구조 탐색 장치 및 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PA0109 | Patent application |
Patent event code: PA01091R01D Comment text: Patent Application Patent event date: 20150831 |
|
PG1501 | Laying open of application | ||
PA0201 | Request for examination |
Patent event code: PA02012R01D Patent event date: 20200826 Comment text: Request for Examination of Application Patent event code: PA02011R01I Patent event date: 20150831 Comment text: Patent Application |
|
E902 | Notification of reason for refusal | ||
PE0902 | Notice of grounds for rejection |
Comment text: Notification of reason for refusal Patent event date: 20220214 Patent event code: PE09021S01D |
|
E701 | Decision to grant or registration of patent right | ||
PE0701 | Decision of registration |
Patent event code: PE07011S01D Comment text: Decision to Grant Registration Patent event date: 20220810 |
|
GRNT | Written decision to grant | ||
PR0701 | Registration of establishment |
Comment text: Registration of Establishment Patent event date: 20221109 Patent event code: PR07011E01D |
|
PR1002 | Payment of registration fee |
Payment date: 20221110 End annual number: 3 Start annual number: 1 |
|
PG1601 | Publication of registration |