KR100544803B1 - 영상 프리미티브의 고속 처리 - Google Patents

영상 프리미티브의 고속 처리 Download PDF

Info

Publication number
KR100544803B1
KR100544803B1 KR1019997001309A KR19997001309A KR100544803B1 KR 100544803 B1 KR100544803 B1 KR 100544803B1 KR 1019997001309 A KR1019997001309 A KR 1019997001309A KR 19997001309 A KR19997001309 A KR 19997001309A KR 100544803 B1 KR100544803 B1 KR 100544803B1
Authority
KR
South Korea
Prior art keywords
image
primitives
primitive
pixel
pixels
Prior art date
Application number
KR1019997001309A
Other languages
English (en)
Other versions
KR20000068191A (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 코닌클리케 필립스 일렉트로닉스 엔.브이.
Publication of KR20000068191A publication Critical patent/KR20000068191A/ko
Application granted granted Critical
Publication of KR100544803B1 publication Critical patent/KR100544803B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • G06T17/20Finite element generation, e.g. wire-frame surface description, tesselation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/40Filling a planar surface by adding surface attributes, e.g. colour or texture

Landscapes

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

Abstract

조합된 다각형 영상 프리미티브(primitive)들로부터 영상들을 생성하기 위한 방법 및 장치가 설명되어 있다. 랜더링을 위한 프리커서로서, 프리미티브들의 순서 리스트가 조합되고 퇴화의 경우들이 식별되고(46, 48) 버려진다(44). 퇴화의 경우들을 제거한 후, 나머지 프리미티브들은 특별한 경우들을 식별하기 위하여 일련의 테스트들(52, 56, 60, 62)을 겪으며, 그것에 의해 랜더링 동작을 간략하게 하기 위해 스팬의 우측 화소와 프리미티브의 하부 스팬을 생략하는 랜더링 기술을 고려할 수 있다.
화소, 프리미티브, 디스플레이, 영상 처리 장치, 스팬

Description

영상 프리미티브의 고속 처리{Fast processing of image primitives}
본 발명은 영상 처리 방법 및 영상 처리 장치에 관한 것이다. 특히, 본 발명은 영상 프리미티브(primitive)들로 알려진 다수의 불연속 다각형 표면들로 구성된 영상들을 제공하는 것에 관한 것이다.
실시간 고객 그래픽들에서 사물(object)들을 조작을 용이하게 하기 위해서 다각형들의 망(mesh)들, 특히 삼각형들로 모델링하는 것은 통상의 기술이다. 이것은 특히 3차원 사물 모델링의 경우이며, 여기서는 3차원 영상 데이터로부터 2차원 영상을 얻기 위해서, 3차원 공간에서 사물 표면을 구성하는 다각형들은 2차원 공간으로 투사되고, 이어서 임의의 필요한 계산, 즉 룩-업 테이블들에 대한 참조에 이어서, 적절한 화소값들(색, 텍스쳐 등을 포함하는)이 투사된 2차원 다각형 내의 화소 위치들상에 매핑된다. 3차원에서 2차원 공간으로의 다각형들의 전환(translation)에 따른 계산은 디스플레이 화소값들의 세트를 생성하기 위하여 처리기 파이프라인에 의해 적절하게 처리된다.
다각형 처리기들의 일련의 결합 체인을 포함하는 3D 그래픽 디스플레이 시스템에서 이용하기 위한 이러한 처리기 파이프라인의 예는 미국 특허 제 4,855,703호(Deering/Schlumberger)에 개시되어 있다. 3차원에서 2차원으로의 다각형들의 전환 다음에는, 다각형들이 이들이 나타나는 제 1 디스플레이 화소선을 참조하여 주사 순서로 분류된다. 주사선의 처리 전에, 새롭게 각각 도입된 다각형은 이들이 또한 기억된 체인 내의 처리기들 중 하나에 각각 로드되어, 일련의 주사선들에 대한 이들의 기여(contribution)가 또한 유도될 수 있다. 특정 다각형(즉, 삼각형의 다각형의 하부 정점 아래의 제 1 클리어 라인)에 의해 커버되지 않은 주사선이 도달할 때, 그 다각형은 새로운 다각형 데이터에 대한 방식을 만들기 위하여 체인 내의 처리기로부터 언로드된다. 주사선의 처리 후, 상기 주사선에 대한 화소 데이터는 디스플레이(예컨대, 음극선관[CRT] 장치)에 직접 전송되거나, 또는 차후의 액세싱을 위해 프레임 버퍼 내에 기억될 수 있다.
주사선 처리가 개시되기 전에, 다른 작용들 중에서도 에지 경사들의 계산을 필요로 하는 2차원 다각형들을 준비하는 예비처리가 있고, 이 예비 처리는 시스템의 전체 성능을 제한하기 위해 충분히 계산 자원들을 종종 소비할 수 있다. 어느 정도 상기 단계를 단순화하기 위한 기술은 상기 참조된 미국 특허 제 4,855,703호의 시스템에 적용되는 기술인 미국 특허 제 4,930,091호(Schroeder & Deering/Schlumberger)에 기술되어 있다. 상기 기술에서는, 삼각형 분류가 도입되어, 삼각형들의 다수의 파라미터들이 정점들의 공급된 좌표들로부터 계산된다. 이 후, 이 파라미터들은 파라미터들의 변형 결합들에 의해 커버되는 모든 가능한 삼각형의 형태들을 갖는 삼각형 분류를 포함하는 룩-업 테이블을 어드레스하기 위해 이용되며, 삼각형 분류는 룩-업 테이블로부터 일단 판독되면, 삼각형이 파이프라인 내에서 어떻게 처리되는 가를 결정한다. 3개의 정점들 모두가 한 선상에 놓인(삼각형 자체가 선에 있고), 또는 이들은 삼각형이 화소를 포함하지 않도록 서로 밀착되는(그러므로 디스플레이된 이미지에서 보이지 않는) 퇴화된 삼각형들의 경우, 더 이상의 처리가 이루어지지 않는다.
이러한 퇴화의 경우들을 식별하는 것이 영상의 몇몇 불필요한 처리를 피하지만, 다른 절약이 바람직함이 인식되며, 따라서, 본 발명의 목적은 그래픽 랜더링 처리의 효율을 향상시키는데 있다.
본 발명에 따르면, 다수의 다각형 영상 프리미티브(primitive)들로 구성된 2차원 화소 영상을 랜더링하는 영상 처리 방법이 제공되는데, 상기 방법은,
(a) 완성된 2차원 화소 영상 내에 그들의 위치들과 연관하여 영상 프리미티브들을 분류하고 상기 프리미티브들의 순서 리스트를 생성하는 단계와,
(b) 한 화소의 최대 수평 또는 최대 수직 수치를 갖는 영상 프리미티브들을 퇴화하는 것으로 지정하여, 랜더링하기 전에 상기 리스트로부터 상기 퇴화 프리미티브들을 제거하는 단계와,
(c) 2 화소들의 최대 수평 또는 최대 수직 수치를 갖는 영상 프리미티브들을 특별한 것으로 지정하여, 상기 특별 프리미티브들을 그들의 정점들의 배열에 따라 분류하고, 상기 리스트 내에서 상기 특별 프리미티브들을 식별하는 단계 및,
(d) 2차원 화소 영상을 랜더링하고, 단계 (c)에서 식별된 상기 특별 프리미티브들이 그들의 특정 분류에 따라 처리되며, 상기 리스트의 각각의 다른 프리미티브에 대하여, 상기 프리미티브에 의해 교차된 각각의 주사선에 대하여, 영상 프리미티브에 의해 교차된 최상위 및 최하위 화소 선들 중 소정의 선의 모든 화소들과 함께 영상 프리미티브에 의해 교차된 각각의 상기 주사선의 그 일부의 최종 화소에 대한 프리미티브 기여를 무시하는 단계를 포함한다.
본 발명은 임의의 경우들에서 초기 퇴화 프리미티브들 이외에 완전한 계산이 필요없다는 관찰을 이용한다. 상기 경우들을 식별하고, 단계 (c)에서의 프리미티브 분류에 따라 간략화된 계산을 이용함으로써, (다각형이 2D 화면상으로 투영되는 시간까지는 각 다각형이 작아지도록)사물들이 상당한 거리에서 보여지는 경우에 발생할 것 같고, 그리고 원활하게 만곡된 표면을 시뮬레이트하기 위해 다수의 작은 다각형들로 구성된 사물들의 디스플레이를 위한, 장면 내의 많은 작은 다각형들이 있는 경우에 상당한 처리 시간을 절약할 수 있음이 인식되었다.
무시될 프리미티브 화소마다의 기여들 중, 프리미티브에 의해 커버된 각 주사선의 우측 화소 및 최하위 화소선이 선택된다: 이로서 프리미티브 경계부들에서의 랜더링 문제들을 회피하는데 도움이 된다. 특별 프리미티브들은 그들의 배열에 의존하는 다수의 카테고리들에 속한다. 특별 프리미티브의 각 유형은 본 명세서에 첨부된 청구항들에서 인용된 공통 랜더링 기술을 가지며, 본 발명의 다음의 실시예들의 설명으로부터 명백해진다.
영상 프리미티브들을 분류하는 초기 단계에서는 정점들의 정확한 x, y 위치 이상을 고려할 수 있다. 예를 들면, 각 영상 프리미티브가 연관된 깊이 값을 갖는 경우, 분류 단계는 각 깊이 값들에 따라 영상 프리미티브들을 분류하는 단계를 더 포함한다. 또한, 각 영상 프리미티브가 연관된 투명치를 갖는 경우, 분류 단계는 전체적으로 하나 또는 그 이상의 불투명 프리미티브들에 의해 커버된 상기 프리미티브들을 리스트로부터 삭제시키는 단계를 더 포함한다. 이러한 방식으로, 퇴화 또는 차단된(occluded) 프리미티브들을 랜더링하는데 시간을 낭비하지 않아도 된다.
또한, 본 발명에 따르면, 제 1 및 제 2 메모리들과 결합된 데이터 처리기를 포함한 영상 처리 장치가 제공되며, 상기 제 1 메모리는 처리를 위해 영상 프리미티브 데이터를 유지하고, 상기 제 2 메모리는 데이터 처리기를 위해 동작 프로그램을 유지하며, 동작 프로그램에 따라 동작할 때 상기 데이터 처리기는,
상기 제 1 메모리 내의 데이터에 기초하여 그리고 완성된 2차원 화소 영상 내의 그들의 위치들에 관하여 영상 프리미티브들을 분류하고, 상기 프리미티브들의 순서 리스트를 생성하는 수단과,
한 화소의 최대 수평 또는 최대 수직 수치를 갖는 영상 프리미티브들을 퇴화하는(degenerate) 것으로 지정하고, 랜더링하기 전에 상기 리스트로부터 상기 퇴화 프리미티브들을 제거하도록 배열되는 수단과,
2 화소들의 최대 수평 또는 최대 수직 수치를 갖는 영상 프리미티브들을 특별한 것으로 지정하고, 그들의 정점들의 배열에 따라 상기 특별 프리미티브들을 분류하고, 상기 리스트 내에서 상기 특별 프리미티브들을 식별하도록 배열되는 수단과,
제 1 메모리 내의 데이터로부터 2차원 화소 영상을 랜더링하기 위해 배열되는 영상 랜더링 수단으로서, 특별한 것으로 식별된 상기 프리미티브들은 그들의 특정 분류에 따라 처리되며, 상기 리스트의 각각의 다른 프리미티브에 대하여, 상기 프리미티브에 의해 교차된 각각의 주사선에 대하여, 상기 영상 프리미티브에 의해 교차된 최상위 및 최하위 화소선들 중 소정의 선의 모든 화소들과 함께 상기 영상 프리미티브에 의해 교차된 각각의 상기 주사선의 그 부분의 최종 화소에 대한 프리미티브 기여를 무시하도록 구성되는, 영상 랜더링 수단을 제공한다.
본 발명은 하기에 기술된 원칙들이 3개보다 많은 정점들을 갖는 다각형의 프리미티브들에 유사하게 적용할 수 있음이 인식된다 하더라도 삼각형의 프리미티브 시스템에 관하여, 단지 예로서 기술되어질 것이다. 본 발명은 첨부한 도면들을 참조하여 기술된다.
도 1은 본 발명을 구현하는데 적합한 영상 처리 시스템의 개략적인 블록도.
도 2는 삼각형의 영상 프리미티브 내의 화소들에 대한 종래의 주사선 배열을 나타내는 도면.
도 3 내지 도 8은 상이한 특별한 경우의 프리미티브들에서 기여(contributing) 및 비기여(non-contributing) 화소들을 나타내는 도면.
도 9는 본 발명을 분류하는 영상 프리미티브의 처리 및 본 발명을 구현하는 분류를 도시하는 흐름도.
영상 처리 장치로서 구성된 데이터 처리 시스템이 도 1에 도시된다. 시스템은 가상의 3차원 세계에서 모델화된 사물들의 2차원 뷰(view)를 디스플레이하기 위해 생성된 3차원 영상 데이터를 처리하도록 배열된 처리 유닛 CPU(10)를 갖는다. CPU(10)는 데이터 및 어드레스 버스(12)를 통해 랜덤 액세스 및 판독 전용 메모리들 RAM(14) 및 ROM(16)과 결합되며, 또한 적절한 인터페이스(18)를 통해 다른(오프라인) 데이터 기억부 OLS(20)와 결합된다. OLS(20)는 자기 디스크, 광 디스크, 자기-광학 디스크 또는 다른 적합한 기억 매체와 같은 영구적인 기억 장치로부터 CPU(10)의 동작을 제어하는 명령들과 3차원 데이터의 소스를 제공한다. OLS의 형성시 주요한 제약은 인터페이스(18) 및 버스(12)를 통해 데이터를 요구된 속도로 CPU(10)에 공급할 수 있다는 점이다.
또한 접속된 비디오 모니터 VDU(24)상에 비디오 영상들을 발생시키도록 배열된 프레임 버퍼 및 디스플레이 구동단(22)이 버스(12)에 접속되어 있다. 영상 발생 처리를 위한 사용자 제어 및 기여를 가능하게 하기 위해, 사용자 입력 장치 인터페이스(26)는 그 인터페이스에 접속된 키보드(28) 및 마우스(30)와 같은 입력 장치들과 함께 버스(12)에 접속된다.
3차원 데이터는 3차원 좌표 공간 내의 다면체 정점들의 위치에 대한 규정들로서 저장된다. 프레임 단위로 VDU(24)상에서 발생되는 3차원 데이터의 2차원 뷰(view)는 직선들로 접속된 바와 같이 정점들을 고려하여 발생되며, 그것에 의해 평면 다각형들의 네트(net)가 규정된다. 뷰는 고려하에 특정 뷰에서 보이지 않는 다각형들을 제거하기 위해, 아마도 역 페이스 컬링(back face culling) 등을 수행한 후, 차례로 각 다각형을 고려함으로써 랜더링된다. 그 후에, 다각형들의 리스트가 규정될 수 있으며, 이는 다각형들이 올바른 순서로 랜더링되도록 보장한다.
예시 목적을 위하여, 다각형 랜더링(rendering)을 위한 통상적인 기술이 처음 삼각형 프리미티브를 도시하는 도 2를 참조하여 고찰된다. 삼각형을 랜더링하기 위한 통상의 기술은 상부에서 시작하여 삼각형이 완성될 때가지 "스팬(span)"을 그리는데, 여기서 스팬은 화면 화소들의 한 행(row)에 의해 커버되는 삼각형의 일부이다. 각 스팬에 속하는 화소들은 도 2에서 그들의 스팬 수로 도시된다.
처리는 VT, VM, VB 로 도시된 상부, 중앙, 하부 정점들이 존재하도록 수직(y) 방향에서 3개의 정점들로 분류함으로서 시작된다. 이것이 이루어지면, 삼각형은 4개의 카타고리들 중 하나로 분류될 수 있다. 상부 및 중앙 정점들이 동일한 y값을 갖는다면, 상부가 평평하게 되며, 중앙 및 하부 정점들이 동일한 y값을 갖는다면, 하부가 평평하게 된다. 3개의 정점들 모두가 동일한 y값을 갖는다면 삼각형은 퇴화되어(degenerate) 이하에 설명되는 바와 같이 도시되지 않는다. 나머지 2가지 경우들은 소수의 화소들만을 커버하는 작은 삼각형에서는 필요하지 않지만 적당히 큰 삼각형에서는 가장 일반적이며, 3개의 정점들 모두가 다른 y값들을 갖는 상황을 커버한다. 좌측 스플릿의 경우(도 2에 도시된 바와 같이), 삼각형의 좌측이 2개의 에지들의 접합에서 상기 2개의 에지들이 정점 VM으로 스플릿된다. 우측 스플릿의 경우는 우측 에지가 스플릿될 때 발생한다. 상기 4가지 경우들(퇴화된 경우는 배제된다) 각각에 대해서, 프리미티브의 에지 경사들 전부가 계산된다. 상부가 평평하게 되며 하부가 평평하게 된 삼각형들에 대해서, 계산될 2개의 경사들이 존재하며, 좌측/우측 스플릿의 경우들에 대해 3개의 경사들이 존재한다.
화소들이 2개의 삼각형들이 결합하는 에지의 어느 한 쪽 측상의 부분을 포함하는 경우 화소들이 2번 랜더링되지 않아야 한다는 것을 유념하는 것이 중요하다. 이 2번의 랜더링을 회피하는 것은 부분적으로는 도안 시간을 절약하는 것이지만, 특히 유발될 수 있는 에러들을 제거하기 위한 것이다. 특히, 화소들이 반투명이면, 디스플레이 화소 색/텍스쳐가 가장 정면의 프리미티브 뒤의 하나 또는 그 이상의 프리미티브들로부터 기여들을 포함하게 되어, 화소가 2번 고려되면, 정면 및 겹쳐진 프리미티브들의 상대적인 기여들은 잘못 계산될 것이다. 이 때문에, 예를 들면 화소가 원래의 것보다 흐리게 나타날 수 있다.
이러한 겹침을 피하기 위해, 2개의 프리미티브들의 경계상의 화소들이 상기 2개의 프리미티브들 중 한 프리미티브에 대해서만 고려되도록 각 스팬의 우측 화소를 도시되지 않은 채로 남겨두고 하부 스팬을 도시되지 않은 채로 남겨두는 것이 알려져 있다. 이는 이 절차상의 단계 때문에 상술한 퇴화의 경우는 하부 스팬이어서 고려에서 배제되는 한 스팬만을 포함하므로, 어떤 도시 동작들을 필요로 하지 않기 때문이다.
본 출원인은 무시될 감소된 그 화소들을 갖는 간략화된 처리가 가능한 그 프리미티브들을 특별한 경우들로서 식별함으로써, 어떤 화소 프리미티브 기여들을 고려하지 않는 그 단계의 결과로서 추가의 처리가 절약될 수 있음을 인식하였다. 상기 특별한 경우들 및 간략화된 처리 각각은 도 3 내지 도 8의 화소 레이아웃 도면에 도시되며, 여기서 0은 프리미티브에 의해 커버된 화소를 나타내지만 도시되지는 않으며(상기 설명된 이유 때문에), 1 은 도시되어야만 하는 화소를 나타내고, 첨자들 'max', 'mid', 'min'은 각각 삼각형 정점들에서의 화면 좌표에 적용될 때 최대, 중간, 최소값들을 나타낸다.
첫 번째 특별한 경우는 수평 상부(2개의 정점들이 ymax에 있다) 및 2개의 화소들의 수직 범위(ymax-ymin)를 갖는 프리미티브들이다. 상부 폭(이 경우에서는 xmax-xmin)이 2 화소들인 경우, 이에 따른 랜더링은 도 3에 도시된 바와 같이 정점 위치에서 단일 화소만을 필요로 한다. 상부 폭이 2화소들보다 크면, 화소들의 단순 수평선이 도 4에 도시된 바와 같이 필요하게 된다. 모든 경우들에서 우측 화소 기여들이 떨어지면, 높이 2개의 화소들, 폭 N 화소들의 상부가 평평한 삼각형들에 대한 절차는 좌측 정점으로부터 (N-1) 화소들의 수평선을 도시하는 것이다.
다음의 경우는 2개의 화소들의 높이 및 임의의 폭의 하부가 평평하게 된 프리미티브(2개의 정점들이 ymin에 있다)인 경우이다. 이전의 경우와 역으로, 화소들의 수평선은 프리미티브의 하부선이고, 따라서 도시되지 않고, 단일 상부 화소가 스팬의 우측으로서 고려되지 않아 도 5에 표시된 바와 같이 동일하게 도시되지 않는다. 그 결과 상기 경우를 위한 도시는 없다.
다음의 경우는 폭 2개의 화소들 및 임의의 높이의 상부가 평평하게 된(도 6) 또는 하부가 평평하게 된(도 7) 프리미티브들인 경우이며, 여기서 폭은 프리미티브에 의해 커버되는 영역이고, 수평 범위 (xmax-xmin)가 아님에 유념해라. 여기서, 벡터(즉, 화소들의 단일선)가 도시되며, 도시되는 벡터의 길이와 함께 계산될 필요가 있는 하나의 경사만을 갖는다. 이 경우 예를 들면 텍스쳐값들의 수평 경사 계산이 필요없다.
마지막 경우는 2개의 화소들의 폭(다시 수평 범위가 아님) 및 임의의 높이를 갖는 것이지만, 도 8에 도시된 바와 같이 상부가 평평하게 되거나 하부가 평평하게 되지 않는다. 이 경우에, 3개의 에지들 모두에 대한 경사들은 계산될 필요가 있지만, 그 결과로 생긴 화소 패턴이 어떠한 수평 경사 계산들도 요구되는 것이 없는 간단한 선이라는 사실로부터 다시 절약될 수 있다.
프리미티브들을 분류하기 위해 생성된 선택 처리는 도 9의 흐름도에 도시된다. 단계 40으로부터 시작하여, 단계 42에서의 선택적 제 1 테스트는 예를 들면 숨겨진 표면 제거를 위해 프리미티브가 차단되는지 여부이다. 이해할 수 있는 바와 같이, 차단의 질문은 겹쳐진 프리미티브들의 전체 또는 부분의 반투명도에 따라 간단한 yes/no 테스트이상 일 수 있으며, 이것이 도 9의 처리 후에 발생하더라도 잘 알려진 z-버퍼링 알고리즘에서와 같이 영상에 부가적 프리미티브들이 부가됨에 따라 반복적 루프 테스트를 포함할 수 있다. 단계 42에서의 테스트가 포함되며 차단될 프리미티브를 나타내면, 프리미티브는 버려지며(단계 44에서), 그렇지 않으면 단계 46으로 통과된다.
단계 46에서, 수직 높이(ymax-ymin)가 체크되어, 하나의 화소와 동일하다면(즉, ymax=ymin), 그 프리미티브는 퇴화되고 버려진다. 마찬가지로, 단계 48에서는 정점들(xmax-xmin)의 최좌측에서 최우측까지의 수평 범위를 체크하여 다시 하나의 화소와 동일하면, 프리미티브는 퇴화되고 버려된다.
단계 50에서, 체크는 수직 범위가 2개의 화소들(하나의 화소보다 작거나 동일한 높이의 나머지 프리미티브들이 퇴화로서 이미 버려진 것을 기억하고)과 동일한지에 대해 행해진다. 만약 동일하다면, 단계 52는 하부가 평평하게 되었는지(도 5에와 같이) 여부를 체크하고 그렇다면 버려진다. 단계 52의 체크가 부정이라면, 다른 체크는 프리미티브가 상부가 평평하게 되는지(도 3 및 도 4와 같이)에 대해 단계 54에서 행해지며, 그렇다면 프리미티브는 상부 좌측 정점으로부터 그리고 길이 (VT-VM-1) 화소들로 수평선만이 도시될 필요가 있는 식별자로서 단계 56에서 랜더링 리스트상에 입력된다. 체크 54가 또한 부정이면, 프리미티브는 수평 에지를 갖지 않으며 수평 경사 계산이 필요없는 식별자로서 단계 58에서 랜더링 리스트상에 입력된다.
단계 50이 부정이면, 즉 수직 범위가 2 화소들보다 크면, 수평 범위는 단계 60에서 체크되며, 또한, 2 화소들보다 크면, 프리미티브는 특별한 경우들 중 하나를 형성하지 않는다. 따라서, 화소는 특수 처리를 나타내는 임의의 식별자 없이 단계 62에서 랜더링 리스트상에 입력된다.
수평 범위가 2개의 화소들 보다 작거나 또는 동일하면, 다음의 2개의 단계들 64, 66에서는 각각 상부가 평평하게 되었는가(도 6에 도시된 바와 같이) 또는 하부가 평평하게 되었는가(도 7) 여부를 체크한다. 2개의 테스트 중 하나가 참임을 유지하면, 프리미티브는 이전에 설명된 바와 같이 단일 경사 및 길이가 계산될 필요가 있는 식별자로서 단계 68에서 랜더링 리스트상에 입력된다. 프리미티브가 상부가 평평하게 되지 않거나 하부가 평평하게 되지 않은 경우, 수평 에지를 갖지 않지만 특별한 경우로서 식별되는 다른 프리미티브들로서 단계 58에서 랜더링 리스트상에 입력된다.
삭제

Claims (9)

  1. 다수의 다각형 영상 프리미티브(primitive)들로 구성된 2차원 화소 영상을 랜더링하는 영상 처리 방법에 있어서, 상기 방법은,
    (a) 완성된 2차원 화소 영상 내에 그들의 위치들과 연관하여 영상 프리미티브들을 분류하고 상기 프리미티브들의 순서 리스트(ordered list)를 생성하는 단계와,
    (b) 한 화소의 최대 수평 또는 최대 수직 수치를 갖는 영상 프리미티브들을 퇴화하는 것으로 지정하여, 랜더링하기 전에 상기 리스트로부터 상기 퇴화 프리미티브들을 제거하는 단계와,
    (c) 2 화소들의 최대 수평 또는 최대 수직 수치를 갖는 영상 프리미티브들을 특별한 것으로 지정하여, 상기 특별 프리미티브들을 그들의 정점들의 배열에 따라 분류하고, 상기 리스트 내에서 상기 특별 프리미티브들을 식별하는 단계 및,
    (d) 2차원 화소 영상을 랜더링하고, 단계 (c)에서 식별된 상기 특별 프리미티브들이 그들의 특정 분류에 따라 처리되며, 상기 리스트의 각각의 다른 프리미티브에 대하여, 상기 프리미티브에 의해 교차된 각각의 주사선에 대하여, 영상 프리미티브에 의해 교차된 최상위 및 최하위 화소 선들 중 소정의 선의 모든 화소들과 함께 영상 프리미티브에 의해 교차된 각각의 상기 주사선의 그 일부의 최종 화소에 대한 프리미티브 기여를 무시하는 단계를 포함하는 영상 처리 방법.
  2. 제 1 항에 있어서, 프리미티브에 의해 커버된 각각의 주사선 부분의 우측 화소 및 최하위 화소선이 상기 단계 (d)에서 무시된 그들의 각 프리미티브 기여들을 갖는 영상 처리 방법.
  3. 제 1 항 또는 제 2 항에 있어서, 2 화소들의 수직 범위 및 폭 N 화소들의 수평 상부 에지를 갖는 상기 단계 (c)에서 분류된 상기 특별 프리미티브들은 폭 N-1 화소들의 단일 화소선으로서 랜더링되는 영상 처리 방법.
  4. 제 1 항 또는 제 2 항에 있어서, 2 화소들의 수직 범위 및 수평 하부 에지를 갖는 상기 단계 (c)에서 분류된 상기 특별 프리미티브들은 랜더링되지 않는 영상 처리 방법.
  5. 제 1 항 또는 제 2 항에 있어서, 2 화소들의 최대 수평 범위 및 2 화소들보다 큰 수직 범위를 갖는 상기 단계 (c)에서 분류된 상기 특별 프리미티브들은 폭 1 화소의 경사 선으로서 랜더링되는 영상 처리 방법.
  6. 제 1 항 또는 제 2 항에 있어서, 각 영상 프리미티브는 연관된 깊이 값을 가지며, 상기 단계 (a)는 그들의 각 깊이 값들에 따라 영상 프리미티브들을 분류하는 단계를 더 포함하는 영상 처리 방법.
  7. 제 6 항에 있어서, 각 영상 프리미티브는 연관된 투명치를 가지며, 상기 단계 (a)는 하나 또는 그 이상의 불투명 프리미티브에 의해 전체적으로 커버된 상기 프리미티브들을 상기 리스트로부터 삭제시키는 단계를 더 포함하는 방법.
  8. 제 1 및 제 2 메모리들과 결합된 데이터 처리기를 포함하는 영상 처리 장치로서, 상기 제 1 메모리는 처리를 위해 영상 프리미티브 데이터를 유지하고, 상기 제 2 메모리는 데이터 처리기를 위해 동작 프로그램을 유지하며, 동작 프로그램에 따라 동작할 때 상기 데이터 처리기는,
    상기 제 1 메모리 내의 데이터에 기초하여 그리고 완성된 2차원 화소 영상 내의 그들의 위치들에 관하여 영상 프리미티브들을 분류하고, 상기 프리미티브들의 순서 리스트를 생성하는 수단과,
    한 화소의 최대 수평 또는 최대 수직 수치를 갖는 영상 프리미티브들을 퇴화하는(degenerate) 것으로 지정하고, 랜더링하기 전에 상기 리스트로부터 상기 퇴화 프리미티브들을 제거하도록 배열되는 수단과,
    2 화소들의 최대 수평 또는 최대 수직 수치를 갖는 영상 프리미티브들을 특별한 것으로 지정하고, 그들의 정점들의 배열에 따라 상기 특별 프리미티브들을 분류하고, 상기 리스트 내의 상기 특별 프리미티브들을 식별하도록 배열되는 수단과,
    제 1 메모리 내의 데이터로부터 2차원 화소 영상을 랜더링하기 위해 배열되는 영상 랜더링 수단으로서, 특별한 것으로 식별된 상기 프리미티브들은 그들의 특정 분류에 따라 처리되며, 상기 리스트의 각각의 다른 프리미티브에 대하여, 상기 프리미티브에 의해 교차된 각각의 주사선에 대하여, 상기 영상 프리미티브에 의해 교차된 최상위 및 최하위 화소선들 중 소정의 선의 모든 화소들과 함께 상기 영상 프리미티브에 의해 교차된 각각의 상기 주사선의 그 부분의 최종 화소에 대한 프리미티브 기여를 무시하도록 구성되는, 영상 랜더링 수단을 제공하는, 영상 처리 장치.
  9. 제 8 항에 있어서, 상기 영상 처리기로부터 랜더링된 영상을 규정하는 데이터를 수신하도록 결합되며, 상기 규정된 영상을 디스플레이하도록 배열된 디스플레이 장치를 더 포함하는 영상 처리 장치.
KR1019997001309A 1997-06-18 1998-04-02 영상 프리미티브의 고속 처리 KR100544803B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
GBGB9712684.1A GB9712684D0 (en) 1997-06-18 1997-06-18 Fast processing of image primitives
GB9712684.1 1997-06-18

Publications (2)

Publication Number Publication Date
KR20000068191A KR20000068191A (ko) 2000-11-25
KR100544803B1 true KR100544803B1 (ko) 2006-01-24

Family

ID=10814401

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019997001309A KR100544803B1 (ko) 1997-06-18 1998-04-02 영상 프리미티브의 고속 처리

Country Status (7)

Country Link
US (1) US6222556B1 (ko)
EP (1) EP0919044B1 (ko)
JP (1) JP2000516747A (ko)
KR (1) KR100544803B1 (ko)
DE (1) DE69816237T2 (ko)
GB (1) GB9712684D0 (ko)
WO (1) WO1998058352A1 (ko)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB9915012D0 (en) 1999-06-29 1999-08-25 Koninkl Philips Electronics Nv Z-buffering graphics system
US7619624B2 (en) 2001-06-25 2009-11-17 Micron Technology, Inc. Methods and apparatus for rendering or preparing digital objects or portions thereof for subsequent processing
US6937236B2 (en) * 2001-06-25 2005-08-30 Micron Technology, Inc. Methods and apparatus for culling sorted, back facing graphics data
US7307630B2 (en) * 2005-08-26 2007-12-11 Barco Nv Volume rendering apparatus and method
KR102059578B1 (ko) * 2012-11-29 2019-12-27 삼성전자주식회사 3차원 그래픽스 렌더링 시스템에서 프리미티브 처리 장치 및 방법
US10580209B2 (en) 2018-03-06 2020-03-03 Qualcomm Incorporated Removal of degenerated sub-primitives in tessellation

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0707289A1 (en) * 1994-10-14 1996-04-17 Picker International, Inc. Imaging system and method

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4885703A (en) 1987-11-04 1989-12-05 Schlumberger Systems, Inc. 3-D graphics display system using triangle processor pipeline
US4930091A (en) * 1987-11-04 1990-05-29 Schlumberger Systems, Inc. Triangle classification setup method and apparatus for 3-D graphics display system
US5590248A (en) * 1992-01-02 1996-12-31 General Electric Company Method for reducing the complexity of a polygonal mesh
US5428718A (en) 1993-01-22 1995-06-27 Taligent, Inc. Tessellation system
GB2278524B (en) * 1993-05-28 1997-12-10 Nihon Unisys Ltd Method and apparatus for rendering visual images employing area calculation and blending of fractional pixel lists for anti-aliasing and transparency
GB9324638D0 (en) 1993-12-01 1994-01-19 Philips Electronics Uk Ltd Image processing
US5805868A (en) * 1995-03-24 1998-09-08 3Dlabs Inc. Ltd. Graphics subsystem with fast clear capability

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0707289A1 (en) * 1994-10-14 1996-04-17 Picker International, Inc. Imaging system and method

Also Published As

Publication number Publication date
GB9712684D0 (en) 1997-08-20
DE69816237T2 (de) 2004-04-22
KR20000068191A (ko) 2000-11-25
DE69816237D1 (de) 2003-08-14
EP0919044B1 (en) 2003-07-09
WO1998058352A1 (en) 1998-12-23
EP0919044A1 (en) 1999-06-02
US6222556B1 (en) 2001-04-24
JP2000516747A (ja) 2000-12-12

Similar Documents

Publication Publication Date Title
US8115767B2 (en) Computer graphics shadow volumes using hierarchical occlusion culling
CN111508052B (zh) 三维网格体的渲染方法和装置
US6650327B1 (en) Display system having floating point rasterization and floating point framebuffering
EP1064619B1 (en) Stochastic level of detail in computer animation
US6359623B1 (en) Method and apparatus for performing scan conversion in a computer graphics display system
JP3761085B2 (ja) 画像処理装置及びその構成部品、レンダリング処理方法
US20010012018A1 (en) Occlusion culling for complex transparent scenes in computer generated graphics
US7948487B2 (en) Occlusion culling method and rendering processing apparatus
US10665010B2 (en) Graphics processing systems
JPH0273479A (ja) 図形処理装置
US7812837B2 (en) Reduced Z-buffer generating method, hidden surface removal method and occlusion culling method
US7133052B1 (en) Morph map based simulated real-time rendering
US7834879B2 (en) Drawing apparatus for displaying image data about a plurality of objects including semitransparent object and opaque object on computer display screen
KR100544803B1 (ko) 영상 프리미티브의 고속 처리
JP4047421B2 (ja) ユーザ定義によるルームおよびウィンドウを用いた効率的レンダリング方法および装置
Yu Efficient visibility processing for projective texture mapping
JP3052839B2 (ja) 画像処理装置及びその処理方法
KR102638813B1 (ko) 헤어 래스터화를 위한 시스템들 및 방법들
JP3711273B2 (ja) オクルージョンカリングを行う3次元グラフィックス描画装置
JPH02132572A (ja) 画像表示装置
JPH06168340A (ja) 3dグラフィック表示装置
KR0153664B1 (ko) 3차원 도형 생성기
JPH05282428A (ja) 3次元コンピュータグラフィクス用図形データ作成方法
Yu E cient Visibility Processing for Projective Texture-mapping
JPH02253485A (ja) コンピュータ・グラフィクスの描画データ形成方法

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
FPAY Annual fee payment

Payment date: 20121227

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20131227

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20141230

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20151230

Year of fee payment: 11

FPAY Annual fee payment

Payment date: 20161229

Year of fee payment: 12

FPAY Annual fee payment

Payment date: 20171228

Year of fee payment: 13

EXPY Expiration of term