KR101031392B1 - 멀티 레벨 광선 추적을 위한 방법 및 장치 - Google Patents
멀티 레벨 광선 추적을 위한 방법 및 장치 Download PDFInfo
- Publication number
- KR101031392B1 KR101031392B1 KR1020097013399A KR20097013399A KR101031392B1 KR 101031392 B1 KR101031392 B1 KR 101031392B1 KR 1020097013399 A KR1020097013399 A KR 1020097013399A KR 20097013399 A KR20097013399 A KR 20097013399A KR 101031392 B1 KR101031392 B1 KR 101031392B1
- Authority
- KR
- South Korea
- Prior art keywords
- sub
- structure database
- rays
- alignment structure
- spatial alignment
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 46
- 238000011156 evaluation Methods 0.000 claims abstract description 14
- 230000008569 process Effects 0.000 description 14
- 238000012545 processing Methods 0.000 description 8
- 238000004364 calculation method Methods 0.000 description 4
- 239000013598 vector Substances 0.000 description 3
- 238000010586 diagram Methods 0.000 description 2
- 230000001133 acceleration Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000003915 cell function Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 230000001427 coherent effect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000012854 evaluation process Methods 0.000 description 1
- 230000007717 exclusion Effects 0.000 description 1
- 230000001678 irradiating effect Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000007781 pre-processing Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T3/00—Geometric image transformations in the plane of the image
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/10—Geometric effects
- G06T15/40—Hidden part removal
-
- 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
- G06T3/00—Geometric image transformations in the plane of the image
- G06T3/40—Scaling of whole images or parts thereof, e.g. expanding or contracting
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Graphics (AREA)
- Geometry (AREA)
- Image Generation (AREA)
Abstract
본 발명은 열 관리에 관한 방법, 장치, 및 시스템에 관한 것이다. 방법은 광선들의 그룹을 포함하는 빔을 생성하는 단계; 공간 정렬 구조 데이터베이스의 일부분을 추가적인 고려로부터 제외하기 위하여 상기 빔이 더 이상 전체로서 평가될 수 없을 때까지 상기 빔을 상기 공간 정렬 구조 데이터베이스에 대하여 평가하는 단계; 상기 빔이 더 이상 전체로서 평가될 수 없는 위치를 기록하는 단계; 및 상기 기록된 위치에서 시작하여, 상기 평가에 의해 제외되지 않은 상기 공간 정렬 구조 데이터베이스에 대하여 쿼리를 실행함으로써 상기 광선들의 각각에 대하여 상기 공간 정렬 구조 데이터베이스를 순회하는 단계를 포함한다.
광선 추적, 공간 정렬 구조 데이터베이스, 깊이 우선 순회, 절두체 컬링 알고리즘, 인터벌 순회 알고리즘
Description
광선 추적은 다수의 애플리케이션 및 컨텍스트에서 점점 대중적이 되고 있는 그래픽 랜더링 기술이다. 예를 들어, 광선 추적은 그래픽 씬(scene)을 위한 글로벌 조명 솔루션을 계산하는데 사용될 수 있다. 일반적으로, 광선 추적은 컴퓨터 그래픽에 사용되어, 하나 이상의 광선을 광선의 위치 백터에 의해 기술되는 밴티지 포인트(vantage point)로부터 광선의 방향 벡터에 의해 기술되는 가시선을 따라 향하게 함으로써 가시성을 결정할 수 있다. 그 가시선을 따라 가장 가까운 가시면을 결정하기 위해서는 광선이 가상 씬 내에서 모든 구조(geometry)에 대한 교점에 대해 효과적으로 테스트되어야 하고 가장 가까운 교점을 보유해야 한다.
그러나, 씬의 구조들과 각각의 광선의 교점들을 결정하는 것은 계산적으로 복잡하고 자원 집약적일 수 있어서, 실시간 광선 추적 솔루션을 제한할 수 있다.
도 1은 본 발명에 따른 씬 및 AS 트리의 예시적인 도면.
도 2는 본 발명의 일부 실시예에 따른 예시적인 AS 트리를 도시하는 도면
도 3은 본 발명의 일부 실시예에 따라 셀을 통과하여 투사되는 광선을 예시적으로 도시하는 도면.
일반적으로, 광선 추적은 씬의 객체들의 분포를 나타내는 AS(acceleration structure)를 통하여 광선의 궤적을 추적하는 것을 수반한다. AS는 씬의 객체들의 공간 정렬 데이터베이스(spatially ordered database) 표현일 수 있다. 본 명세서의 실시예는, 각각의 광선에 독립적으로 기초한 순회(traversal)와는 대조적으로, AS를 순회하는 빔에 의존하는 AS의 광선 추적 순회를 제공한다. 빔은 광선들의 집합 또는 그룹을 나타낸다. 일부 실시예에서, 광선의 그룹화는 빔을 구성하는 광선들의 공유된 특성의 공통성에 기초한다. 일부 실시예에서, 빔에 포함된 광선들의 집합 또는 그룹이 더 클수록, 본 발명의 프로세스 및 시스템에 의해 얻어질 수 있는 광선당 작업의 상각(amortization)은 더 커진다.
도 1은 본 발명의 일부 실시예에 따른 예시적인 씬과 그 씬에 대응하는 AS를 도시하는 도면이다. 도 1은 씬(105) 및 그 씬으로 향하는 빔(110)을 포함한다. 빔(110)은 서로 다른 픽셀 그룹들(115)(예를 들어, 16개)을 포함한다. AS(120)는 씬(105)의 구조의 표현이다. 씬(105)의 객체들과 빔(110)의 교점들을 결정하기 위한 노력에서, AS(120)는 AS(120)를 위에서 아래로 순회함으로써 씬(105)의 객체들과 빔(110)의 광선들의 교점들을 결정하도록 쿼리된다(query). 본 발명의 실시예에 따라, 빔은 AS의 순회를 위한 엔트리 포인트를 결정하기 위해 AS에 대해 평가된다.
일부 실시예에서, 빔은 서브-빔들 또는 개별적인 광선들로 서브-분할(sub-divide)될 수 있고, 일부 다른 실시예에서는 빔의 평가가 AS(120)의 계층을 따라 내려감에 따라서 필요에 의해 이루어질 수 있다.
본 발명의 일부 실시예에 따라, 빔(110)은 상당히 일관성있는 광선들의 집합을 포함하고 AS는 그 빔을 사용하여 순회된다. 빔(110)이 AS(120)를 따라 내려감에 따라서, AS의 부분(들)은 추가적인 고려에서 제외된다. 이 제외는 최종 결과에 영향을 주지 않는 AS의 부분을 고려로부터 제외한다. 즉, 빔에 영향을 주지 않는 씬의 부분(즉, 빔을 구성하는 광선들과 어떠한 접점도 포함하지 않는다고 보장되는 부분)은 추가적인 고려에서 제외되고 조사하도록 남은 AS의 부분은 점점 더 작아진다.
AS는 전체 빔이 전체로서 진행될 수 없는 지점(125)에 도달할 때까지 계속해서 빔에 관하여 평가된다. 이 위치 또는 지점은 여기서 엔트리 포인트라고 불린다. 엔트리 포인트(125)는 추가적인 처리를 위해 기록되거나 표시된다. 엔트리 포인트(125)는 AS(120)가 빔(110) 내부의 모든 각각의 광선에 대해 진입될 수 있는 점을 나타낼 수 있다. 모든 각각의 광선은 이어서 AS를 순회하는데 사용되는데, 이는 빔이 전체로서 AS를 통하여 진행될 수 없기 때문이다. 각각의 광선은 공통 엔트리 포인트(125)에서 시작하여 AS(120)를 통하여 추적될 수 있다.
일부 경우에, 개별적인 광선들에 대한 AS의 순회를 위한 시작점을 나타내는 엔트리 포인트(들)는 AS 구조의 꼭대기에 있지 않고, AS의 더 아래에 있다. 또한, AS에 대한 빔의 평가는 순회 결과에 영향을 주지 않는 AS의 부분을 제외하는 것을 포함한다. 따라서, 제외된 AS의 부분은 빔에 대해 순회될 필요가 없다. 이러한 방법으로, 빔을 구성하는 광선들에 관하여 쿼리되는 AS의 부분은 바람직하게는 전체 AS(120)보다 작다. 마찬가지로, 본 발명의 빔과 순회 방법론을 사용하여 AS(120)의 순회를 처리하기 위해 사용되는 계산상 부하는 개별적인 광선들을 사용하여 전체 AS(120)를 순회하는데 사용되는 계산상 부하보다 훨씬 작을 수 있다.
일부 실시예에서, 빔을 구성하는 광선들은 각각 그 빔을 형성하도록 같이 그룹지어지는 광선들 사이의 일관성에 대응하는 몇몇 공통적인 특성을 가질 수 있다. 일부 실시예에서, 빔에 포함된 광선들의 그룹은 각각 다음과 같은 성질을 갖는다.
(i) 임의의 일정한 축-정렬 평면에 대해, 가능한 모든 광선/평면 교점들을 포함하는 그 평면 내부의 직사각형이 계산될 수 있다. 이 직사각형은 딱 맞을 필요는 없다.
(ii) 모든 광선은 동일한 방향이다(예를 들어, 광선 방향의 x, y, 및 z 투영은 동일한 부호를 갖는다). 식 1
본 발명의 실시예에 따라, 빔에 대한 공통 엔트리 포인트를 결정하는 예시적인 프로세스가 이제 논의될 것이다. 일부 태양에서 프로세스는, 순회 프로세스의 최종 결과에 더 이상 영향을 주지 않을 노드들을 마주쳤을 때 순회 프로세스로부터 벗어나도록 허용하는 AS 트리의 가시 노드들(visible nodes)의 깊이 우선 순회이다.
초기 단계에서, AS(예를 들어, 120)는, 예를 들어 위의 식 (1)에 따르는 빔을 사용하는 절두체 컬링 알고리즘(frustum culling algorithm)을 사용함으로써 깊이 우선의 순서로 순회된다. 빔이 AS의 바이너리 노드들에서 평가됨에 따라, 빔과 교차하지 않는다고 보장되는 AS의 모든 서브 노드들은 추가적인 고려와 처리로부터 제외된다.
프로세스의 이 동작에서 임의의 절두체 컬링 알고리즘이 사용될 수 있다는 것을 알아두어야 한다.
또한, AS의 모든 분기 노드(bifurcation nodes)는 잠재적인 교점이 있는 제1 리프 노드(leaf node)가 발견될 때까지 스택 메모리 구조에 저장된다. 분기 노드는 양쪽의 서브-셀들이 순회되는 노드들이다. 일부 실시예에서, 스택 메모리 구조는 후입선출 메커니즘(last-in-first-out mechanism)이다. 잠재적인 교점이 결정되는 제1 리프 노드는 후보 엔트리 포인트 노드인 것으로 표시되거나, 플래그되거나, 저장되거나, 또는 다른 방법으로 지시된다.
빔에 대한 AS의 깊이-우선 평가는 분기 스택의 가장 꼭대기의 노드에서 시작되어 계속된다. 만약 잠재적인 교점이 있는 또 다른 리프 노드와 마주친다면, 분기 스택으로부터 선택된 이 리프 노드는 새로운 후보 엔트리 포인트가 될 것이다.
AS 트리에 관한 빔의 평가 프로세스는 종료되고 현재의 후보 엔트리 포인트 노드는 (i) 분기 스택이 비어있고, (ii) 빔의 모든 잠재적인 광선이 현재의 리프 노드 내에서 종료되는 경우에 엔트리 포인트로 반환된다. 빔의 모든 잠재적인 광선이 현재의 리프 노드 내에서 종료되는 경우, 두 가지 경우가 가능하다: (a) 리프 노드가 일부 객체를 갖고, 식 (1)의 조건을 만족하는 모든 광선이 셀 내부의 객체들 중의 적어도 하나와 교차함, 또는 (b) 리프가 비어있으나 일부 "수밀성(wartertight)" 객체 내부에 위치되고, 식 (1)을 만족하는 모든 광선 또는 빔은 이 리프의 바운딩 박스(bounding box)를 교차함.
순회 엔트리 포인트를 결정하기 위한 빔에 관한 AS 트리의 평가 동안, 빔 그룹의 광선들은 처리의 이 단계에 정의될 필요가 없으므로 특정 광선과 객체 교점을 찾는 것은 목적이 아니다. 찾고자 하는 것은 교점에 대한 잠재성이다. 구체적으로, 만약 식 (1)의 조건을 만족하는 임의의 광선과의 교점이 제외될 수 없다면, 그 교점은 잠재적인 교점으로 고려될 수 있다.
도 2를 참조하여, AS(200)에 대한 엔트리 포인트의 예시적인 결정이 설명될 것이다. 노드(1)에서 시작하여 식 (1)의 제약조건에 따르는 빔이 평가된다. 식 (1)의 조건에 기초하여, 왼쪽의 서브-셀(21) 만이 순회되어야 한다. 노드(21)의 서브-셀들(31 및 32)이 모두 고려되어야 한다. 따라서, 노드(21)는 위에서 논의된 바와 같이 분기 노드이다. 분기 노드(21)는 분기 스택에 저장되고 처리는 노드(31)로 진행되는데, 여기서 노드(41)로의 분할은 무시된다. 따라서, 평가는 노드(41)로 계속되는데, 노드(41)도 분기 노드이고 분기 스택에 저장된다. 노드(51)에서, 노드(62)로의 분할은 무시된다.
리프 노드(61)에서, 리프(61)와의 교점이 존재할 잠재성이 있다는 결정이 이루어진다. 리프(61)는 잠재적인 교점이 있는 제1 리프 노드이다. 따라서, 리프(61)는 후보 엔트리 포인트로 표시되고 분기 스택은 중지된다.
AS의 깊이-우선 평가는 분기 스택의 가장 꼭대기의 노드에서 계속된다. 분기 스택은 후입선출 구조를 갖기 때문에 노드(41)가 다음으로 고려된다. 노드(41)가 분기 스택으로부터 선택되고 깊이-우선 순회는 노드들(52 및 63)로 계속된다. 리프 노드(63)는 교점에 대한 가능성을 가지므로, 노드(41)는 후보 엔트리 포인트로 표시되고 노드(64)에서 시작하는 서브-트리의 처리는 포기된다.
분기 스택의 다음 노드인 노드(21)가 이어서 제거되고 평가된다. 노드(21)에서 평가는 서브-노드들(43 및 44)을 갖는 노드(32)로 진행된다. 노드(43)는 비어있기 때문에 무시되고 노드(44)가 선택된다. 노드(44)는 두 개의 리프(리프(53) 및 리프(54))를 가진다. 리프(53)는 무시되고 리프(54)가 잠재적인 교점을 가진다고 판단된다. 따라서, 노드(21)는 후보 엔트리 포인트로 표시된다.
분기 스택이 비었으므로 노드(21)가 엔트리 포인트로서 반환된다. 식 (1)에 따르는 빔의 모든 광선이 이제 노드(21)에서 AS 트리(200)의 순회를 시작한다.
도 2는 엔트리 포인트(EP) 조사 경로 상의 노드들 및 교점(XP) 조사 경로 상에 포함된 노드들의 지시를 포함한다. 두 순회 프로세스들 사이에는 차이점들이 존재하는데, 이는, 예를 들어 하나는 빔을 위한 공통 EP에 대한 조사이고 다른 하나는 광선/삼각형 XP를 찾는 빔의 각각의 광선을 위한 이 엔트리 포인트로부터의 트리를 통한 순회이기 때문이다. 예를 들어, 노드(21)에서, XP 순회 프로세스는 추가적인 처리로부터 노드(32)를 제외할 수 있는데, 이는 빔의 모든 광선이 이제 알려졌고 그들은 노드(21)로부터 셀(31)과만 교차하기 때문이다. 그러나, EP 순회 프로세스는 노드(32)와 (잠재적으로) 교차할 수 있는 절두체 속성을 이용하고, 따라서 엔트리 포인트를 조사하는 빔을 대신하여 노드들(31 및 32)의 순회가 요구된다.
노드(52)는 빔의 엔트리 포인트의 선택에 영향을 주지 않을 것이므로, EP 순회 프로세스는 노드(64)의 부모 노드(52)에 도달할 때 노드(64)를 무시한다. 그러나, 노드들(64, 71, 72, 81, 및 82)에서 일부 교점이 발견될 수 있기 때문에 XP 순회 프로세스는 노드들(64, 71, 72, 81, 및 82)의 순회를 계속해야 한다.
이러한 방법으로, 엔트리 포인트를 결정하기 위한 EP 순회 프로세스가 기여하지 않는 가지들을 무시하도록 도시되었다. 빔의 모든 광선들을 대신하여 AS의 부분을 추가적인 고려로부터 제외하는 것은 그렇지 않았다면 광선마다 수행되어야 했던 전체 계산을 효과적으로 감소시킬 수 있다.
일부 실시예에서, 원래의 빔(110)은 나아가 서브-분할될 수 있고, 다수의 서브-빔 엔트리 포인트 또는 모든 서브-빔에 대한 최저 공통 엔트리 포인트를 결정하기 위하여 계속적인 순회가 AS에 대하여 서브-분할된 빔을 사용함으로써 이루어질 수 있다.
예를 들어, 4x4 단면의 광선을 나타내는 빔에 이와 같이 함으로써, 순회 비용의 상각은 광선당 1/16으로 감소될 수 있다. 추가적으로, 출원인은 빔을 위한 엔트리 포인트가 삼각형이 저장되거나 참조되는 리프 노드에 있거나 그에 매우 가까이 있다고 파악하였다. 또한, 빔을 사용하여 AS를 순회함으로써, 전체 플랫폼 요구사항은 주로 계산적으로 집중적인데, 이는 광선 순회 프로세스들이 순차적인 메모리 참조 집중형이었던 것에 반대된다.
일부 실시예에서, 본 발명의 멀티-레벨 광선 추적 방법은 하드웨어 및/또는 소프트웨어 실시예로 구현되고 지원될 수 있다. 일부 실시예에서, 광선을 AS의 위에서 아래로 순회하는 것을 이용하는 종래의 광선 추적 기술에 비해서 장치에 의한 전력 소비의 감소뿐 아니라 전체적인 성능의 증가가 얻어질 수 있다.
광선 추적은 일부 공간 정렬 구조적 데이터베이스에 반하여 실행되는 고도 병렬 구조적 쿼리(massively parallel geometrical queries)에 기초한다. 인터벌 순회 알고리즘(interval traversal algorithm)은 다른 종류의 애플리케이션을 다루도록 확장될 수 있는데, 여기서 특화된 데이터베이스에 대해 일정한 그룹 속성을 발견하고 추적할 수 있다. 당업자는 본 개시의 실시예가 부동 소수점 구현에 한정되지 않는다고 이해할 것이다. 오히려, 본 발명의 실시예는 다양한 데이터 종류를 사용하여 구현될 수 있는데, 이는 정수, 고정 소수점 등을 포함하지만 이에 한정되지 않는다.
일부 실시예에서, 일정한 광선들을 (예를 들어, 빔에) 같이 그룹화하는 것이 바람직할 수 있다. 본 발명의 인터벌 순회 알고리즘의 일부 실시예에서, 각각의 그룹은 거리 인터벌 [t0, t1]에 의해 표현될 수 있다. 초기에, t0은 광선 원점으로부터 전체 모델의 바운딩 박스로의 엔트리 포인트까지의 모든 거리 중 최소값으로 설정된다.
도 3은 셀을 통하여 추적되는 공통 원점으로부터의 빔의 하나의 예를 도시한다. 빔(405)은 셀(410)을 통하여 추적되는 다수의 광선을 포함한다. 셀(410)은 평면 p0에 의해서 가장 가까운 셀 c0(415) 및 가장 먼 셀 c1(420)을 포함하는 두 개의 서브-셀로 분할된다. 도 3에 의하면, t0은 [oa], [ob], [oc], 및 [od]중 최소의 거리인 [oa]이다. 유사하게, t0은 모든 탈출점의 거리 중 최대값으로 설정된다. 따라서, t1은 [oD]이다. 인터벌 [t0, t1]에 더해, 여섯 개의 추가적인 값이 사용된다. 이 값들은 [r0[k], r1[k]]를 포함하는데, 여기서 각각 k=0, 1, 2(즉, x, y, z 방향 벡터)이다. 예를 들어, 패킷 또는 빔의 광선들이 방향 ray[i][k](i=0, 1...n)을 갖는다면(n은 광선들의 총 개수), r0[k] 및 r1[k]는 다음과 같이 계산될 수 있다:
if (ray[0][k] > 0) {
r0[k] = min(1/ray[i][k]), i=0...n
r1[k] = max(1/ray[i][k]), i=0...n
} else {
r0[k] = max(1/ray[i][k]), i=0...n
r1[k] = min(1/ray[i][k]), i=0...n
}
부동 소수점 인터벌 순회 알고리즘(floating point interval traversal algorithm: FITA)은 각각의 k에 대해 모든 ray[i][k] 값들이 동일한 부호(즉, 양의 부호 또는 음의 부호)를 가질 것을 요구한다. 양의 방향에 대해, r0[k]는 그룹의 모든 광선의 방향의 k번째 구성요소를 인버팅하고 그들 사이에서 최소값(r1[k]에 대한 최대값)을 결정함으로써 계산된다. 값들은 음의 방향에 대해 교환된다.
일부 실시예에서, 각각의 순회 단계에서, 인터벌 [t0, t1]은 순회 순서에 관한 결정을 내리는데 사용되고, 이어서 갱신된다(현재 박스로 좁혀진다). 모든 광선이 하나의 공통 원점 o[k]를 갖고 현재 셀은 축 k를 따라 평면 p에 의해 분할되었다고 가정하면, 이 결정은 다음의 두 부동 소수 값의 계산에 기초한다:
d0 = (p - o[k]) * r0[k];
d1 = (p - o[k]) * r1[k]; 식 2
d0, d1, t0, 및 t1의 값을 비교함으로써, 가장 가까운 셀만을 순회할지, 가장 먼 셀만을 순회할지, 아니면 양쪽의 서브-셀들 모두를 순회할지에 대한 결정이 이루어진다. 인터벌[t0, t1]은 이어서 그에 따라 값들 [d0, d1]을 이용하여 갱신된다.
모든 방향을 양 또는 음으로 유지하기 위한 위에서 기술된 접근법을 사용함으로써, 식 2에 정의된 값들 d0 및 d1은 광선들의 그룹(빔)에 대한 평면으로의 최소 및 최대 거리와 같다.
본 발명의 일부 실시예에서, 인터벌 순회 알고리즘의 정수 변환(integer variant of interval traversal algorithm; IITA)은, 오류가 신중한 쪽으로 이루어지는 한 순회 단계에서 잘못된 결정을 내리는 것이 허용가능하다는 관찰에 기초한다(예를 들어, 광선이 실제로는 서브-셀들 중의 하나만을 교차할 때 양쪽의 서브-셀 모두를 순회하도록 하는 결정). 일부 실시예에서, 중요한 속도 장점이 얻어질 수 있을 때, 더 많은 계산과 처리의 속도 사이에 트레이드 오프가 이루어질 수 있다.
출원인은 또한 d0, d1, t0, 및 t1의 값을 동시에 스케일링하는 것은 순회 알고리즘의 속도나 정확성을 변화시키지 않을 것이라고 파악해왔다.
정수 계산을 이용하지만, 바람직한 솔루션은 정확한 계산을 제공해야 하고 정수 오버플로우를 피해야 한다.
정확성을 유지하기 위해, 큰 정수의 사용이 이용되는데, 이는 예를 들어, 10000과 10001 사이의 상대적인 차이가 15와 16 사이의 차이보다 작기 때문이다. 그러나, 수치 오버플로우를 피하기 위해서는, 작은 수가 더 좋을 것이다. 이 두 가지 목적을 동시에 추구하고자, 두 스케일링 인수가 도입되는데, 여기서 INT_MAX는 표현될 수 있는 최대 정수이다(INT_MAX는 시스템 또는 장치 상세사항에 대응할 수 있다).
modelScale = 0.5 * sqrtf(INT_MAX) / max(모든 탑 바운딩 박스 좌표); 및
packetScale = sqrt(INT_MAX) / max(r0[0], r0[1], r0[2], r1[0], r1[1], r1[2]);
따라서, AS(kd-트리)의 모든 분할 값 p는 다음의 변환을 사용하여 정수 표현 pint로 변화될 수 있다:
pint = floor(p * modelScale);
변환은 AS 트리가 생성되는 동안 (또는 다른 처리 전 동작 동안) 이루어질 수 있다. 유사한 스케일링 변환이 카메라 위치 값들 o[k]에 다음과 같이 적용될 수 있다:
oint[k] = ceil(o[k] * modelScale);
정의에 의하면, floor(v)는 v보다 작은 최대의 정수를 반환하고, ceil(v)는 v보다 큰 최소의 정수를 반환한다. 이 정의로부터 다음과 같은 두 부등식이 이어진다:
(pint - oint[k]) < modelScale * (p - o[k])
(pint - oint[k]) + 2 < modelScale * (p - o[k]) 식 3
floor 및 cell 함수를 사용함으로써, 스케일링된 플로트 값을 보유하는 정수 인터벌이 생성된다. pint 및 oint[k] 계산은 카메라 위치가 변경될 때 또는 프레임마다 한 번씩 이루어질 수 있다.
[r0[k], r1[k]]의 값들은 packetScale 스케일링 인수를 사용하여 정수로 변환될 수 있다. 그러나, r0[k]의 양의 방향의 경우와 음의 방향의 경우 사이에 구별이 이루어진다:
if (r0[k] > 0) {
rint0[k] = floor(r0[k] * packetScale);
rint1[k] = ceil(r1[k] * packetScale);
} else {
rint0[k] = ceil(r0[k] * packetScale);
rint1[k] = floor(r1[k] * packetScale);
}
여기서 packetScale은 패킷의 광선들이 생성되는 동시에(즉, 주 순회 루프 바깥에서) 계산될 수 있다.
같은 값의 정수를 식 2로 삽입함으로써, 확실하고 정확한 인터벌이 보장되지 않을 수 있는데, 이는 소수를 정수로 변환하는 동안 일부 정보가 손실될 수 있기 때문이다. 그러나, 식 3을 사용함으로써, 식 2는 다음과 같이 다시 쓰일 수 있다(정수 인터벌 순회 알고리즘):
if (rint0[k] > 0) {
// 양쪽 인수 모두 양수
dint0 = (pint - oint[k]) * rint0[k];
dint1 = (pint - oint[k] + 2) * rint1[k];
} else {
// 양쪽 인수 모두 음수
dint0 = (pint - oint[k] + 2) * rint0[k];
dint1 = (pint - oint[k]) * rint1[k];
}
정의에 의하면, 모든 pint 값은 0.5 * sqrtf(INT_MAX) 보다 작고, 씬 내부의 카메라에 대해, oint 값들도 0.5 * sqrtf(INT_MAX) 내이다. 이것은 식 (pint - oint[k])가 sqrtf(INT_MAX) 보다 작다는 것을 보장한다. 모든 rint0[k] 및 rint1[k] 값들도 동일한 값 내이기 때문에, dint0 및 dint1은 INT_MAX를 초과하지 않을 것이다. 카메라가 모델 경계의 바깥으로 이동할 수 있는 씬들에 대해, modelScale이 그에 따라 변경될 수 있다.
정수 인터벌 순회 알고리즘을 분석함으로써, 부동 소수점 인터벌 packetScale * modelScale * [d0, d1]은 항상 정수 인터벌 [dint0, dint1] 내부에 있다. 이 사실은, FITA라면 모든 서브-셀들을 순회하도록 요구했을 경우, IITA를 사용함으로써 하나의 서브-셀만을 순회하게 되는 것이 예방되도록 보장한다. 그러나, FITA가 단지 하나만을 사용할 수 있는 반면 IITA는 모든 서브-셀들을 순회할 것을 요구할 경우가 있을 수 있다. 그러나, 이것은 비록 일부 추가적인 순회 단계가 실행될 수 있을지라도 그 자체로 어떠한 문제도 일으키지 않는다. 이러한 방법으로, 더욱 단순한 순회 처리에 의한 이득이 불필요한 순회 단계에 의해 유발되는 오버헤드를 능가한다면, 정수 동작만을 사용함으로써 성능 향상이 가능할 수 있다. 출원인은, 예를 들어 0.1%에서 4.0% 사이의 추가적인 오버헤드를 파악해왔다.
여기에 개시된 IITA 프로세스는 본 개시의 멀티-레벨 광선 추적 특징들과 조합하여 또는 그 특징들로부터 분리되어 사용될 수 있다.
앞의 개시는 특정한 예시적인 실시예들을 참조하여 설명되었다. 그러나, 첨부된 특허청구범위에서 설명되는 더 넓은 사상 및 범위를 벗어나지 않고 이러한 실시예들에 다양한 변경 및 수정이 이루어질 수 있다는 것이 명백할 것이다.
Claims (21)
- 멀티 레벨 광선 추적을 위한 방법으로서,광선들의 그룹을 포함하는 빔을 생성하는 단계;공간 정렬 구조 데이터베이스(spatially ordered geometrical database)의 일부분을 추가적인 고려로부터 제외하기(discard) 위하여 상기 빔이 더 이상 전체로서 평가될 수 없을 때까지 상기 빔을 상기 공간 정렬 구조 데이터베이스에 대하여 평가하는 단계;상기 빔이 더 이상 전체로서 평가될 수 없는 위치를 기록하는 단계; 및상기 기록된 위치에서 시작하여, 상기 평가에 의해 제외되지 않은 상기 공간 정렬 구조 데이터베이스에 대하여 쿼리를 실행함으로써 상기 광선들의 각각에 대하여 상기 공간 정렬 구조 데이터베이스를 순회하는(traverse) 단계를 포함하는, 멀티 레벨 광선 추적을 위한 방법.
- 제1항에 있어서,상기 광선들의 그룹은,임의의 주어진 축-정렬 평면(axis-aligned plane)에 대해, 모든 가능한 광선과 평면의 교점들을 포함하는 상기 평면 내부의 직사각형이 계산될 수 있는 속성; 및상기 광선들에 대한 모든 투영들이 동일한 방향 부호를 갖는 속성을 갖는 빔을 포함하는, 멀티 레벨 광선 추적을 위한 방법.
- 제1항에 있어서,상기 공간 정렬 구조 데이터베이스에 대하여 상기 빔을 평가하는 단계는 상기 빔이 상기 공간 정렬 구조 데이터베이스의 서브-노드와 교차하는지 여부를 결정하는 단계를 포함하고, 상기 서브-노드는 교점이 없는 경우에 상기 추가적인 고려로부터 제외되는, 멀티 레벨 광선 추적을 위한 방법.
- 제1항에 있어서,상기 빔을 서브-분할된 빔들로 서브-분할하고 상기 서브-분할된 빔들에 대한 상기 공간 정렬 구조 데이터베이스를 순회하는 단계; 및상기 공간 정렬 구조 데이터베이스의 일부분을 추가적인 고려로부터 제외하기 위하여 상기 서브-분할된 빔들이 더 이상 전체로서 평가될 수 없을 때까지 상기 서브-분할된 빔들을 상기 공간 정렬 구조 데이터베이스에 대하여 평가하는 단계를 더 포함하는, 멀티 레벨 광선 추적을 위한 방법.
- 제4항에 있어서,상기 서브-분할된 빔들 중의 적어도 하나는 광선들의 그룹을 포함하는, 멀티 레벨 광선 추적을 위한 방법.
- 제4항에 있어서,제외되지 않은 상기 공간 정렬 구조 데이터베이스에 대하여 쿼리를 실행함으로써 상기 서브-분할된 빔들의 상기 광선들의 각각에 대하여 상기 공간 정렬 구조 데이터베이스를 순회하는 단계를 더 포함하는, 멀티 레벨 광선 추적을 위한 방법.
- 제1항에 있어서,상기 평가는 정수 인터벌 연산(integer interval arithmetic)을 사용하여 수행되는, 멀티 레벨 광선 추적을 위한 방법.
- 실행될 때, 컴퓨터로 하여금 멀티 레벨 광선 추적을 위한 방법을 수행하게 하는, 명령어들을 포함하는 컴퓨터 판독 가능한 기록 매체로서,상기 방법은,광선들의 그룹을 포함하는 빔을 생성하는 단계;공간 정렬 구조 데이터베이스의 일부분을 추가적인 고려로부터 제외하기 위하여 상기 빔이 더 이상 전체로서 평가될 수 없을 때까지 상기 빔을 상기 공간 정렬 구조 데이터베이스에 대하여 평가하는 단계;상기 빔이 더 이상 전체로서 평가될 수 없는 위치를 기록하는 단계; 및상기 기록된 위치에서 시작하여, 상기 평가에 의해 제외되지 않은 상기 공간 정렬 구조 데이터베이스에 대하여 쿼리를 실행함으로써 상기 광선들의 각각에 대하여 상기 공간 정렬 구조 데이터베이스를 순회하는 단계를 포함하는 컴퓨터 판독 가능한 기록 매체.
- 제8항에 있어서,상기 광선들의 그룹은,임의의 주어진 축-정렬 평면에 대해, 모든 가능한 광선과 평면의 교점들을 포함하는 상기 평면 내부의 직사각형이 계산될 수 있는 속성; 및상기 광선들에 대한 모든 투영들이 동일한 방향 부호를 갖는 속성을 갖는 빔을 포함하는 컴퓨터 판독 가능한 기록 매체.
- 제8항에 있어서,상기 공간 정렬 구조 데이터베이스에 대하여 상기 빔을 평가하는 단계는 상기 빔이 상기 공간 정렬 구조 데이터베이스의 서브-노드와 교차하는지 여부를 결정하는 단계를 포함하고, 상기 서브-노드는 교점이 없는 경우에 상기 추가적인 고려로부터 제외되는 컴퓨터 판독 가능한 기록 매체.
- 제8항에 있어서,상기 방법은,상기 빔을 서브-분할된 빔들로 서브-분할하고 상기 서브-분할된 빔들에 대한 상기 공간 정렬 구조 데이터베이스를 순회하는 단계; 및상기 공간 정렬 구조 데이터베이스의 일부분을 추가적인 고려로부터 제외하기 위하여 상기 서브-분할된 빔들이 더 이상 전체로서 평가될 수 없을 때까지 상기 서브-분할된 빔들을 상기 공간 정렬 구조 데이터베이스에 대하여 평가하는 단계를 더 포함하는 컴퓨터 판독 가능한 기록 매체.
- 제11항에 있어서,상기 서브-분할된 빔들 중의 적어도 하나는 광선들의 그룹을 포함하는 컴퓨터 판독 가능한 기록 매체.
- 제11항에 있어서,상기 방법은,제외되지 않은 상기 공간 정렬 구조 데이터베이스에 대하여 쿼리를 실행함으로써 상기 서브-분할된 빔들의 상기 광선들의 각각에 대하여 상기 공간 정렬 구조 데이터베이스를 순회하는 단계를 더 포함하는 컴퓨터 판독 가능한 기록 매체.
- 제8항에 있어서,상기 평가는 정수 인터벌 연산을 사용하여 수행되는 컴퓨터 판독 가능한 기록 매체.
- 멀티 레벨 광선 추적을 위한 시스템으로서,데이터베이스를 포함하는 메모리; 및상기 메모리에 연결되는 제어기를 포함하고,상기 제어기는,광선들의 그룹을 포함하는 빔을 생성하고;공간 정렬 구조 데이터베이스의 일부분을 추가적인 고려로부터 제외하기 위하여 상기 빔이 더 이상 전체로서 평가될 수 없을 때까지 상기 빔을 상기 공간 정렬 구조 데이터베이스에 대하여 평가하며;상기 빔이 더 이상 전체로서 평가될 수 없는 위치를 기록하고;상기 기록된 위치에서 시작하여, 상기 평가에 의해 제외되지 않은 상기 공간 정렬 구조 데이터베이스에 대하여 쿼리를 실행함으로써 상기 광선들의 각각에 대하여 상기 공간 정렬 구조 데이터베이스를 순회하도록동작 가능한, 멀티 레벨 광선 추적을 위한 시스템.
- 제15항에 있어서,상기 광선들의 그룹은,임의의 주어진 축-정렬 평면에 대해, 모든 가능한 광선과 평면의 교점들을 포함하는 상기 평면 내부의 직사각형이 계산될 수 있는 속성; 및상기 광선들에 대한 모든 투영들이 동일한 방향 부호를 갖는 속성을 갖는 빔을 포함하는, 멀티 레벨 광선 추적을 위한 시스템.
- 제15항에 있어서,상기 공간 정렬 구조 데이터베이스에 대하여 상기 빔을 평가하는 것은 상기 빔이 상기 공간 정렬 구조 데이터베이스의 서브-노드와 교차하는지 여부를 결정하는 것을 포함하고, 상기 서브-노드는 교점이 없는 경우에 상기 추가적인 고려로부터 제외되는, 멀티 레벨 광선 추적을 위한 시스템.
- 제15항에 있어서,상기 제어기는,상기 빔을 서브-분할된 빔들로 서브-분할하고 상기 서브-분할된 빔들에 대한 상기 공간 정렬 구조 데이터베이스를 순회하고;상기 공간 정렬 구조 데이터베이스의 일부분을 추가적인 고려로부터 제외하기 위하여 상기 서브-분할된 빔들이 더 이상 전체로서 평가될 수 없을 때까지 상기 서브-분할된 빔들을 상기 공간 정렬 구조 데이터베이스에 대하여 평가하도록더 동작가능한, 멀티 레벨 광선 추적을 위한 시스템.
- 제18항에 있어서,상기 서브-분할된 빔들 중의 적어도 하나는 광선들의 그룹을 포함하는, 멀티 레벨 광선 추적을 위한 시스템.
- 제18항에 있어서,상기 제어기는,제외되지 않은 상기 공간 정렬 구조 데이터베이스에 대하여 쿼리를 실행함으로써 상기 서브-분할된 빔들의 상기 광선들의 각각에 대하여 상기 공간 정렬 구조 데이터베이스를 순회하도록 더 동작가능한, 멀티 레벨 광선 추적을 위한 시스템.
- 제15항에 있어서,상기 평가는 정수 인터벌 연산을 사용하여 수행되는, 멀티 레벨 광선 추적을 위한 시스템.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/648,116 US7755628B2 (en) | 2006-12-29 | 2006-12-29 | Method and apparatus for multi-level ray tracing |
US11/648,116 | 2006-12-29 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20090091796A KR20090091796A (ko) | 2009-08-28 |
KR101031392B1 true KR101031392B1 (ko) | 2011-04-25 |
Family
ID=39583229
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020097013399A KR101031392B1 (ko) | 2006-12-29 | 2007-12-14 | 멀티 레벨 광선 추적을 위한 방법 및 장치 |
Country Status (7)
Country | Link |
---|---|
US (1) | US7755628B2 (ko) |
EP (1) | EP2102810A4 (ko) |
KR (1) | KR101031392B1 (ko) |
CN (2) | CN101573729A (ko) |
BR (1) | BRPI0720987A2 (ko) |
TW (1) | TWI360060B (ko) |
WO (1) | WO2008082926A1 (ko) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9684991B2 (en) | 2013-05-08 | 2017-06-20 | Samsung Electronics Co., Ltd. | Image processing apparatus and method using photon mapping and ray tracing and increasing a rate of photon mapping |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101536197B1 (ko) * | 2008-02-27 | 2015-07-13 | 삼성전자주식회사 | 3차원 영상 프로세서 및 프로세싱 방법 |
US8984447B2 (en) | 2011-03-11 | 2015-03-17 | Oracle International Corporation | Comprehensibility of flowcharts |
US9390545B2 (en) | 2012-05-04 | 2016-07-12 | Samsung Electronics Co., Ltd. | Apparatus and method for traversing hierarchical acceleration structure |
KR102219289B1 (ko) * | 2014-05-27 | 2021-02-23 | 삼성전자 주식회사 | 레이 트레이싱 시스템에서의 가속 구조 탐색 장치 및 그 탐색 방법 |
KR102252375B1 (ko) * | 2014-09-18 | 2021-05-14 | 삼성전자주식회사 | 광선-노드 교차검사를 수행하는 방법 및 장치 |
US9984492B2 (en) * | 2015-04-02 | 2018-05-29 | Qualcomm Incorporated | Efficient hierarchy traversal in ray tracing applications |
CN108230378B (zh) * | 2018-01-29 | 2020-03-20 | 北京航空航天大学 | 一种基于光线追踪的计算全息遮挡处理算法 |
US20240087211A1 (en) * | 2022-09-09 | 2024-03-14 | Nvidia Corporation | Generation and Traversal of Partial Acceleration Structures for Ray Tracing |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH06187461A (ja) * | 1992-12-18 | 1994-07-08 | Matsushita Electric Ind Co Ltd | 画像生成装置 |
WO2002099754A1 (en) | 2001-06-07 | 2002-12-12 | Mental Images Gmbh | Image rendering using strictly deterministic methodologies using recursive rotations for generating sample points |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB9424273D0 (en) | 1994-12-01 | 1995-01-18 | Wrigley Adrian M T | Improvements in and relating to image constrcution |
JPH08255263A (ja) | 1995-03-16 | 1996-10-01 | Toyota Motor Corp | レイ追跡方法 |
US7548238B2 (en) * | 1997-07-02 | 2009-06-16 | Nvidia Corporation | Computer graphics shader systems and methods |
US7495664B2 (en) * | 2000-06-19 | 2009-02-24 | Mental Images Gmbh | Instant ray tracing |
US7952583B2 (en) * | 2000-06-19 | 2011-05-31 | Mental Images Gmbh | Quasi-monte carlo light transport simulation by efficient ray tracing |
US7499053B2 (en) * | 2000-06-19 | 2009-03-03 | Mental Images Gmbh | Real-time precision ray tracing |
US7098907B2 (en) * | 2003-01-30 | 2006-08-29 | Frantic Films Corporation | Method for converting explicitly represented geometric surfaces into accurate level sets |
WO2005081683A2 (en) * | 2004-02-12 | 2005-09-09 | Pixar | Method and apparatus for multiresolution geometry caching based on ray differentials |
US7348975B2 (en) * | 2004-12-28 | 2008-03-25 | Intel Corporation | Applications of interval arithmetic for reduction of number of computations in ray tracing problems |
-
2006
- 2006-12-29 US US11/648,116 patent/US7755628B2/en not_active Expired - Fee Related
-
2007
- 2007-12-12 TW TW096147365A patent/TWI360060B/zh not_active IP Right Cessation
- 2007-12-14 BR BRPI0720987-8A patent/BRPI0720987A2/pt not_active Application Discontinuation
- 2007-12-14 CN CNA2007800487769A patent/CN101573729A/zh active Pending
- 2007-12-14 WO PCT/US2007/087679 patent/WO2008082926A1/en active Application Filing
- 2007-12-14 EP EP07865721A patent/EP2102810A4/en not_active Withdrawn
- 2007-12-14 KR KR1020097013399A patent/KR101031392B1/ko not_active IP Right Cessation
- 2007-12-28 CN CNA2007103073659A patent/CN101256675A/zh active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH06187461A (ja) * | 1992-12-18 | 1994-07-08 | Matsushita Electric Ind Co Ltd | 画像生成装置 |
WO2002099754A1 (en) | 2001-06-07 | 2002-12-12 | Mental Images Gmbh | Image rendering using strictly deterministic methodologies using recursive rotations for generating sample points |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9684991B2 (en) | 2013-05-08 | 2017-06-20 | Samsung Electronics Co., Ltd. | Image processing apparatus and method using photon mapping and ray tracing and increasing a rate of photon mapping |
Also Published As
Publication number | Publication date |
---|---|
CN101256675A (zh) | 2008-09-03 |
KR20090091796A (ko) | 2009-08-28 |
TW200844780A (en) | 2008-11-16 |
BRPI0720987A2 (pt) | 2014-03-18 |
EP2102810A4 (en) | 2010-08-04 |
EP2102810A1 (en) | 2009-09-23 |
US20080158227A1 (en) | 2008-07-03 |
WO2008082926A1 (en) | 2008-07-10 |
US7755628B2 (en) | 2010-07-13 |
CN101573729A (zh) | 2009-11-04 |
TWI360060B (en) | 2012-03-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101031392B1 (ko) | 멀티 레벨 광선 추적을 위한 방법 및 장치 | |
US7348975B2 (en) | Applications of interval arithmetic for reduction of number of computations in ray tracing problems | |
MacDonald et al. | Heuristics for ray tracing using space subdivision | |
Kallmann et al. | Navigation meshes and real-time dynamic planning for virtual worlds | |
Tanase et al. | Polygon decomposition based on the straight line skeleton | |
KR101610194B1 (ko) | 영상처리를 위한 데이터 처리 장치 및 방법 | |
Kallmann | Navigation queries from triangular meshes | |
KR102252374B1 (ko) | 광선 추적 유닛 및 광선 데이터를 처리하는 방법 | |
KR101089638B1 (ko) | 교차 검사 가속을 위한 광선 추적 장치 및 방법 및 이를 이용한 렌더링 장치 및 방법 | |
Kyung et al. | Robust polyhedral Minkowski sums with GPU implementation | |
Gayle et al. | Interactive navigation of heterogeneous agents using adaptive roadmaps | |
CN101297325B (zh) | 用于射线跟踪的方法和装置 | |
KR100843292B1 (ko) | 룩업 테이블을 이용한 레이 트레이싱 장치 및 방법 | |
Wenzel et al. | Accelerating navigation in the VecGeom geometry modeller | |
Barbehenn et al. | Toward an exact incremental geometric robot motion planner | |
Shapiro et al. | Accumulator-based inexact matching using relational summaries | |
Sommer et al. | Geometry and rendering optimizations for the interactive visualization of crash-worthiness simultations | |
US20240202178A1 (en) | Simulated Annealing for Parallel Insertion-Based BVH Optimization | |
Krever et al. | Learning Heuristics for Topographic Path Planning in Agent-Based Simulations. | |
Veltkamp | Hierarchical approximation and localization | |
Naraharisetti | Parallelization of Dial-A-Ride Using Tabu Search | |
Gummesson et al. | Parallel Construction of Local Clearance Triangulations | |
Qian et al. | Partitioning positional and normal space for fast occlusion detection | |
Fuentes Paredes | Study and Development of Hierarchical Path Finding to Speed Up Crowd Simulation | |
CN116310119A (zh) | 一种基于包围体层次的自适应距离场构建方法 |
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 | ||
FPAY | Annual fee payment | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20170330 Year of fee payment: 7 |
|
FPAY | Annual fee payment |
Payment date: 20180328 Year of fee payment: 8 |
|
LAPS | Lapse due to unpaid annual fee |