KR100429092B1 - 그래픽영상처리방법및장치 - Google Patents

그래픽영상처리방법및장치 Download PDF

Info

Publication number
KR100429092B1
KR100429092B1 KR1019970703164A KR19970703164A KR100429092B1 KR 100429092 B1 KR100429092 B1 KR 100429092B1 KR 1019970703164 A KR1019970703164 A KR 1019970703164A KR 19970703164 A KR19970703164 A KR 19970703164A KR 100429092 B1 KR100429092 B1 KR 100429092B1
Authority
KR
South Korea
Prior art keywords
polygon
rendering
window
dimensional
texture map
Prior art date
Application number
KR1019970703164A
Other languages
English (en)
Other versions
KR970707513A (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 KR970707513A publication Critical patent/KR970707513A/ko
Application granted granted Critical
Publication of KR100429092B1 publication Critical patent/KR100429092B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/20Drawing from basic elements, e.g. lines or circles
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/04Texture mapping
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/10Geometric effects

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

2 차원 스크린 공간에서의 다각형 렌더링을 위한 영상 처리 방법 및 장치가 기술되어 있으며, 상기 렌더링은 다각형 내의 화소 상으로 텍스쳐 맵으로부터의 텍셀들을 맵핑하는 것을 포함한다. 상기 텍스쳐 맵(18)은 화소의 전체 스크린 또는 심지어 커다란 다각형을 렌더링하는데 필요한 것보다 더 적은 텍셀들을 유지하고, 렌더링 처리는 다각형의 연이은 영역들을 오버라잉하는 렌더링 윈도우들의 시퀀스로 실행되고, 텍스쳐 메모리(18)는 윈도우들 간에 필요하게 될 때 대용량 저장 장치(12)로부터 재생된다. 저장 수단(20)은 계산된 다각형 모서리 데이타를 위해 제공되어서 불연속 효과를 방지하도록 두 개 이상의 렌더링 윈도우들 위에서 연속 모서리들이 유지될 수 있게 한다.

Description

그래픽 영상 처리 방법 및 장치
이를테면 입체적인 3 차원 물체 둘레를 감은 듯이 보이도록 2 차원 비디오 영상이나 2 차원 텍스쳐를 배열하는 컴퓨터 그래픽 시스템들이 공지되어 있다. 이를 달성하는 기술들은 텍스쳐 맵핑으로서 일반적으로 널리 공지되어 있는데, 이에 대한 변형예가 1990년 Foley, van Dam, Feiner 및 Hughes가 저술하고 Addision Wesley사가 출판한 ISBN 0-201-12110-7, "컴퓨터 그래픽: 원리 및 실제"의 741-744쪽에 기술되어 있다.
2 차원 영상이나 텍스쳐(texture)가 맵되는 3 차원 물체(object)는 3 차원 영상 데이타로서 나타내어지고, 다면체의 정점들은 보통 공간계로서 언급되는 가상 3 차원 세계 내의 3 차원 좌표 위치로서 규정된다. 상기 물체는 비디오 전송 매체나 광학 필름 상에 기록될 수도 있는 정지 2 차원 영상이나 영상들의 시퀀스를 생성하도록 3 차원 데이타로부터 2 차원 투사를 생성함으로써 뷰(viewed)된다.
뷰 위치 및 방향을 따라 물체의 위치는 3 차원 공간계 내에서 조절될 수도 있고, 이로 인해서 투사체들의 시퀀스가 계산될 수 있게 된다. 이와 같은 투사는 가급적 실시간으로 프레임 단위로 계산될 수도 있고, 이에 의해서 가상 대화형 환경을 용이하게 만들 수 있다.
3 차원 물체의 렌더링을 실현하기 위해, 다면체의 각각의 면은 개별적으로 간주되므로, 상기 물체를 다각형들의 네트(net)로 축소한다. 따라서, 다각형 단위로 물체를 투사하고 각각의 다각형에 대한 조명 값을 계산하는 것이 가능하므로, 표시 가능한 화소값들은 투사된 다각형 경계 내에 놓이는 화소 위치들에 대해 결정될 수도 있다.
뷰되는 3 차원 물체의 환영을 만들어 내기 위해서는, 2 차원 평면상으로 3 차원 다각형을 투사할 때 원근감을 고려하는 것이 필요하다. 이것은 비선형 처리이며, 따라서 컴퓨터적인 계산이 요구된다. 그러므로, 2 차원 평면 내의 위치로 3 차원 다각형의 정점을 투사하고 그 후 2 차원 다각형 상에서 음영 및 렌더링 등과 같은 다른 동작들을 실행하는 것이 바람직하므로, 3 차원보다는 오히려 2 차원에 관한 계산을 실행하는 것이 단지 필요하다.
실제의 텍스쳐 매핑 시스템에서 일어날 수 있는 문제점은 필요하게 될 수 있는 메모리 대역폭이다. 텍스쳐 영상을 샘플링하는 가장 간단한 기술(포인트 샘플링)이 이용되는 경우, 하나의 텍스쳐 맵 값(텍셀)은 디스플레이된 화소 단위로 필요하게 될 것이다. 쌍일차 또는 세쌍일차 보간 등의 기술이 이용되는 경우, 4 또는 8 개의 텍셀들이 각각 디스플레이된 화소에 대해 판독되는데 필요하게 된다.
이런 메모리 대역폭을 줄이는 한가지 공지된 방법은 텍스쳐 맵을 유지하기 위해 전용 메모리 영역을 갖는 것이다. 이는 다중 포트 메모리일 수 있으므로, 예를 들어 4 또는 8 번의 액세스가 동시에 이루어져 고속의 쌍일차 또는 세쌍일차 보간 텍스쳐 맵 액세스를 제공할 수 있다. 이같은 메모리는 실리콘 영역이 수요가 많은 3 차원 렌더링 칩 내에 집적된 소형 메모리일 수도 있으므로, 장면이나 심지어 커다란 다각형을 렌더링하는데 필요한 모든 텍스쳐 맵 데이타를 포함하는데 충분히 크지 않은 텍스쳐 맵 메모리의 문제점이 야기된다.
이런 문제점들을 인식하고 있는 시스템의 한 예가 영국 특허출원 제 2226481 호(Malachowsky/Sun Microsystems Inc)에 기술되어 있다. 상기 문제점들의 해결책은, 사변형과 같은 모든 다각형을 처리하는 단계와, 간단한 룩업 테이블을 이용하여 모서리들의 어느 쌍이 다각형의 연속되는 영역들에 대해 수평 경계선들을 규정하는지를 식별하는 단계를 포함하며, 각각의 모서리는 수평 주사선의 시퀀스로서 렌더링되게 하고 있다. 이와 같은 시스템은 다중 스크린 버퍼의 필요성을 제거해 주지만, 다각형 모서리가 하나 이상의 렌더링 영역을 가로지르는 경우에 불연속성의 문제점이 발생할 수 있다.
본 발명은 영상 처리 방법 및 장치에 관한 것이고, 특히 본 발명은 3 차원 영상 데이타로부터 2 차원 영상을 렌더링(rendering)하는 것에 관한 것이며, 3 차원 공간에서 규정된 다각형들이 2 차원 공간 내로 투사되고 2 차원 영상이나 텍스쳐 맵으로부터의 화소값들은 투사된 2 차원 다각형 내의 화소 위치 상으로 맵된다.
도 1은 본 발명을 구현하는 영상 처리 시스템의 개략적인 블럭도.
도 2는 스크린 공간 내로 맵되는 3 차원 가상체를 도시하는 도면.
도 3은 스크린 공간에 맵된 도 2의 가상체의 일부 표면을 형성하고 있는 다각형을 도시하는 도면.
도 4는 한 쌍의 다각형에서 한 다각형이 다수의 렌더링 윈도우로 분할되는것을 도시하는 도면.
도 5는 렌더링되기에 앞서 다각형들을 세분하는 공지된 기술을 도시하는 도면.
도 6 및 7은 본 발명을 구현하는 다각형 렌더링을 위한 기술을 도시하는 도면.
그러므로, 본 발명의 목적은 비교적 제한된 용량의 텍스쳐 메모리를 이용하여, 하나 이상의 다각형들로 구성된 영상들을 렌더링할 수 있고, 다각형 모서리를 분리하는 것으로 인해서 불연속성의 효과를 감소시키거나 제거할 수 있는 시스템을 제공하는데 있다.
본 발명의 제 1 양태에 따르면, 다각형이 2차원 스크린 공간에서 규정되고, 2차원 텍스쳐(texture) 맵으로부터의 화소 텍스쳐값(pixel texture value; texel) (텍셀)들이 상기 2 차원 다각형 내의 화소들 상에 맵핑되는, 이차원 영상을 렌더링하기 위한 영상 처리 방법으로서,
상기 방법은, 상기 다각형 또는 각각의 다각형에 대해서,
a) 렌더링을 위해 상기 텍스쳐 맵에서 텍셀들의 수보다, 전체에 있어서, 적거나 같은 수의 다수의 필요로 하는 화소들을 커버하는 텍스쳐 렌더링 윈도우를 규정하는 단계와,
b) 상기 렌더링 윈도우가 적어도 상기 다각형의 일부를 오버라잉(overlie) 하고 상기 윈도우의 최대 범위가 상기 다각형의 수직 높이에 또는 그 위에 있도록, 스크린 공간 내의 상기 다각형의 최상부 정점의 수직 높이를 결정하여 상기 렌더링 윈도우의 위치를 정하는 단계와,
c) 상기 텍스쳐 맵으로부터 텍셀들을 맵핑함으로써 상기 렌더링 윈도우 내에 놓여지는 상기 다각형의 일부를 렌더링하는 단계와,
d) 적어도 상기 다각형의 일부를 오버라잉하고 이전 렌더링 윈도우 위치에 인접하는 상기 스크린 공간 내의 또다른 위치로 상기 렌더링 윈도우를 이동시키는 단계를 포함하고,
상기 단계 c) 및 d)는 상기 다각형 모두가 렌더링되었을 때까지 순차적으로 반복되는, 상기 2 차원 영상을 렌더링하기 위한 영상 처리 방법에 있어서,
상기 텍스쳐 맵은 전체 스크린을 렌더링하는데 요구되는 것보다 더 적은 텍셀들을 유지하고, 제 1 렌더링 윈도우는 상기 다각형의 정점을 오버라잉하고, 상기 정점에 대한 다각형 모서리들의 기울기 값들이 계산되어 저장되고, 상기 모서리 또는 각각의 모서리 상의 교점은 부화소(subpixel) 정확도에 따라 식별되어 저장되고, 렌더링 윈도우가 상기 다각형 모서리들 중의 하나 또는 그외 다른 모서리의 일부를 오버라잉하는 각각의 또다른 렌더링 동작에 대해, 이전에 계산된 기울기 값들 및 교점 위치들이 저장부(storage)로부터 재호출되는 것을 특징으로 하는, 2 차원 영상을 렌더링하기 위한 영상 처리 방법이 제공된다. 이러한 방식으로, 다각형의 "단편(patches)"들을 순차적으로 렌더링함으로써, 적은 텍스쳐 메모리 공간의 문제점을 방지하고 텍스쳐 메모리에서 통상적으로 커버되는 것보다 더 큰 다각형이 렌더링될 수도 있고, 기울기 값의 저장 수단을 제공함으로써, 각각의 렌더링 윈도우에 대해 기울기 값을 재계산하는 것으로 인해 포텐셜 불연속성이 방지된다. 적합하게는 모서리가 부화소 정확성에 따라 식별된 윈도우 경계를 가로지르는 교점들을 저장함으로써, 윈도우들 사이에서 둥글어지는 화소로 인한 불연속성이 방지된다.
텍스쳐 맵 내용은 단계 c) 다음이나, 가급적 단계 d) 이후에 갱신되게 되고, 갱신된 텍스쳐 맵 내용은 스크린 공간에서 렌더링 윈도우의 새로운 위치에 의해 결정된다. 이와 같은 후자의 구성의 경우에, 렌더링 윈도우 위치들의 시퀀스는 텍스쳐 맵 내용들에 의해 규정되지 않고 렌더링 장치에 의해 결정될 수도 있다. 그러나, 그럼에도 불구하고, 두 개 이상의 렌더링 윈도우들이 스크린 공간 내에서 동일한 수직 위치를 필요로 하는 경우에, 상기 2개 이상의 렌더링 윈도우들은 스크린 공간의 좌측에서 우측으로 순서대로 적합하게 렌더링될 수도 있다.
기술의 신장으로, 다각형은 더 작은 다각형들로 분할될 수도 있고, 각각의 더 작은 다각형은 (비록 기울기 값이 전술한 바와 같이 유지되더라도) 하나의 렌더링 윈도우로 렌더링 가능한 크기로 된다. 적합하게는, 상기와 같은 세분은 보다 더 작은 다각형들 각각이 수평 및 수직 스크린 공간축들 중의 하나와 정합된 모서리를 갖도록 이루어진다.
또한, 본 발명에 따르면, 2 차원 스크린 공간에서 규정된 하나 이상의 다각형들을 포함하는 영상을 렌더링하도록 배열된 영상 처리 장치로서, 상기 장치는,
복수의 화소 텍스쳐 값들(텍셀들)을 포함하는 화소 텍스쳐 맵을 유지하는 제 1 저장 수단과,
2 차원 스크린 공간에서 다각형의 정점들의 좌표들을 저장하도록 배열된 제 2 저장 수단과,
상기 텍스쳐 맵으로부터의 텍셀들을 상기 다각형 내의 화소들 상으로 맵핑하도록 동작할 수 있는 영상 렌더링 수단과,
상기 제 1 및 제 2 저장 수단들에 연결되고 상기 스크린 공간 내의 인접 윈도우들의 시퀀스를 발생하도록 배열된 렌더링 윈도우 생성 수단을 포함하고,
각각의 윈도우는 적어도 상기 다각형의 일부를 오버라잉하고 상기 텍스쳐 맵내에 유지된 텍셀들의 총 수에 의해 렌더링될 수 있는 화소들의 수보다 적거나 같은 다수의 화소들을 커버하고, 상기 영상 렌더링 수단은 현재 발생된 렌더링 윈도우 내의 상기 다각형의 상기 화소들을 렌더링하도록 상기 윈도우 발생 수단에 의해 제어되는, 상기 영상 처리 장치에 있어서,
상기 텍스쳐 맵은 화소들의 전체 스크린을 렌더링하는데 요구되는 것보다 더 적은 텍셀들을 유지하고,
상기 장치는, 상기 영상 렌더링 수단과 결합되고 상기 렌더링 윈도우가 다각형 정점을 오버라잉할 때 상기 다각형 모서리들에 대한 기울기 값들을 계산하도록 배열된 기울기 계산 수단과, 계산된 기울기 값들을 수신하여 저장하도록 배열된 제 3 저장 수단을 더 포함하며, 상기 영상 렌더링 수단은 상기 렌더링 윈도우내의 임의의 다각형 모서리에 대해서 그 모서리에 대한 기울기 값이 저장되는지를 결정하고 그렇게 되는 경우 상기 저장된 기울기 값을 렌더링에 이용하도록 구성되는 것을 특징으로 하는, 영상 처리 장치가 제공된다. 상기 제 3 저장 수단은 또한 적합하게는 전술한 바와 같은 모서리 교점들을 유지할 수도 있다.
다각형이 3 차원으로부터 얻어진 영상의 일부인 경우, 상기 장치는 그와 같은 복수의 다각형(각각 관련 깊이 값을 가짐)들을 연속적으로 맵하도록 동작할 수도 있고, 복수의 다각형들중 어느 것이 가장 큰 깊이 값을 갖는지를 결정하고 그 다각형을 먼저 맵하는 수단을 포함할 수도 있다.
이제 본 발명은 이제 첨부된 도면을 참조하여 단지 예로서 기술된다.
도 1 은 영상 처리 및 렌더링 장치를 도시하고 있으며, 이 장치는 처리 장치(10)를 구비하고, 3 차원 영상 데이타를 처리하여 가상 3 차원 세계를 볼 수 있는 2 차원 뷰를 만들어 내도록 배열된다. 처리 장치(10)의 동작을 제어하는 3 차원 데이타 및 명령들은 대용량 기억 장치(12)에 유지되고, 이 장치(12)는 소정의 속도로 데이타를 처리 장치(10)에 공급할 수 있는 자기 디스크, 광학 디스크, 자기 광학 디스크, 또는 기타 다른 적당한 기억 매체를 포함한다. 또한, 하기에서 기술되는 바와 같이, 메모리(18)의 화소 텍스쳐값(pixel texture values)(texels), 및 메모리(20)에서의 도출된 기울기 및 스크린 공간 좌표를 위해 다른 기억 장치가 제공된다.
처리 장치에 의해 생성된 비디오 영상은 종래 텔레비전 수상기의 형태일 수 있는 비디오 모니터(14)에 공급된다. 또한, 대화형 사용자 입력은 제어기(16)로부터 수신되고, 이 제어기(16)는 키보드, 트랙커블, 마우스, 또는 전용 키패드 등의 형태를 취할 수 있을 것이다.
3 차원 데이타는 3 차원 좌표 공간에서 다면체 정점들의 위치를 규정해 주는 형태로 저장된다. 3 차원 데이타의 2 차원 뷰는 상기 정점들이 직선들로 연결되는 것으로 간주하여 평면 다각형의 네트(net)를 규정함으로써 한 프레임 한 프레임씩 생성된다. 뷰는 고려 중인 특정 뷰로부터 시각적으로 표시될 수 없는 다각형들을 없애기 위해, 가능하면 뒷면 발췌(back face culling) 등을 실행한 후에 각각의 다각형을 차례로 고려함으로써 렌더링되어진다. 다음으로, 다각형들의 목록이 규정되어 다각형들이 올바른 순서로 렌더링되어진다. 도 2 및 도 3은 3 차원 물체, 즉 이런 경우에는 정육면체(22)가 어떻게 평다각형들의 네트로서 보이게 되는지를 도시하고 있으며, 도 3은 정점(26, 27, 28)들의 3 차원 좌표들을 처리하여 2 차원 뷰 평면에 투사된 다각형(24)(이런 경우에 정육면체(22)의 한 면의 일부를 형성하는 삼각형)을 도시하고 있다. 따라서, 이들 정점들은 사전에 3 차원 공간에서 정의되어 있고, x, y, z 좌표들을 가지며, 2 차원(X, Y) 평면상에 투사된다.
z 차원에서 얻은 정보를 관찰자에게 전달하는 것은 다각형들이 올바른 순서로 렌더링되게 함으로써 달성되어지는데, 즉 후미를 향하는 다각형(가장 큰 z 범위를 가짐)들이 보다 낮은 z 값들을 갖는 다각형들에 앞서 렌더링되어지므로, 관찰자에 가장 근접해 있는 다각형들이 관찰자로부터 더 멀어지는 다각형들을 폐색(occlude)한다. 또한, z 차원으로부터 얻은 정보 역시 2 차원 평면상에 다각형들을 원근감 있게 정확하게 투사할 수 있도록 유지될 수도 있다. 정확한 원근을 유지하기 위한 기술은 계류 중인 유럽 특허출원 제 656,609 호에 기술되어 있다.
투사 후에, 정점(27, 28, 29)들은 2 차원 표시 영상 프레임 내의 원근감 있는 정확한 위치에 위치된다. 각각의 정점(vertex)은 3 차원 좌표 세트 및 2 차원 좌표 세트의 형태로, 3 차원 세계 공간으로부터 2 차원 표시 영상면으로의 매핑(mapping)을 반영(reflecting)하는 좌표 위치를 포함하고 있다. 그 외에, 각각의 정점은 다른 정보, 즉 이를테면 다각형 면의 색이나, 불투명도나, 반사도 등의 양상을 규정해 주는 정보를 포함할 수도 있다.
각각의 다각형(또는 다르게 렌더링되는 기본적인 기하 형태)을 위해 요구되는 텍스쳐 맵이 텍스쳐 메모리에 적합한 것보다 더 큰 경우에 대처하기 위해, 다각형(30)은 도 4에서 도시된 바와 같이 윈도우 w.1 내지 w.9를 렌더링하는 일련의 텍스쳐(texture)들로서 처리될 수도 있고, 각각의 윈도우들은 전체로, 렌더링을 위한 텍스쳐 맵에서의 텍셀들의 수 이하를 필요로 하는 화소 수를 커버(cover)한다. 각각의 윈도우는 차례로 렌더링되고, 렌더링된 이후에 렌더링 윈도우는 적어도 다각형의 일부를 오버라잉하고 이전 렌더링 윈도우 위치에 인접하는 스크린 공간 내의 다른 위치로 이동된다(예, w.1에서 w.2로 또는 w.2에서 w.3으로). 텍스쳐 메모리 용량에 기초한 이와 같은 세분은 '큰' 다각형들의 문제점을 해결하지만, 다각형의 일부 모서리들이 인접 다각형의 모서리가 분할되지 않는 동안 분할된다는 사실 때문에 또다른 문제점이 발생할 수 있다. 이런 상태는 도 4의 모서리 V.1-V.2에 대해 고찰될 수 있는데, 즉 다각형(30)에 관해 이 모서리는 분할되었지만 인접하는 다각형(32)에 대해서는 분할되지 않았다.
다양한 유형의 렌더링 시스템에서, 이러한 것은 이를테면 다각형들 사이의 단일 화소 갭들과 같은 효과를 이끌어 낼 수 있기 때문에 바람직하지 못하다. 두다각형들의 모서리들을 정확히 일치시키기 위해, 모든 화소들은 갭들이나 오버라잉 없이 디스플레이되므로, 두 모서리의 계산을 위한 연산은 정확히 일치해야 한다. 이것이 비교적 쉽게 달성되는 경우는, 모서리가 공통 쌍의 정점(도 4의 V.1과 V.2사이)을 공유하는 경우이다. 그러나, 'T 접합'이 있는 경우, 즉 한 다각형의 정점이 다른 다각형의 정점들 사이에 놓이는 부분적으로 공유하는 모서리인 경우, 문제점들이 발생할 수도 있다. 이러한 불연속성 문제점을 방지하기 위하여, 본 발명은 '큰' 다각형을 여러 개의 윈도우로 렌더링하지만, 단일 화소 홀(hole)들 등의 아티팩트들을 방지하도록 모서리 연속성을 유지한다.
상기 기술을 설명하고자, 정점 V.1, V.2, V.3를 가지면서 텍스쳐 맵 메모리에 대해 매우 큰 텍스쳐 영역을 커버하는, 도 5에 도시된 삼각형(34)을 간략히 고찰해 본다. 종래 방법을 따르면, 다른 정점 S가 추가로 정점 V.1과 V.3 사이에 지정될 것이다. 이러한 세분은 각각 두 개의 반쪽들에 대한 텍스쳐 맵이 텍스쳐 메모리에서 적합하게 될 수 있는 반면에, 분리하여 처리되기 위해서는 두 개의 분리된 부다각형(subpolygon)을 필요로 한다. 이것에 의해 다수의 시스템, 특히 모서리 V.1-V.3가 다른 다각형에 대해 연속인 경우, T 접합 문제점을 야기할 것이다. 모서리(V.1에서 S, S에서 V.2)의 두 반쪽들에 대한 기울기 계산은 그 계산 루트가 상이하다는 사실과, 특히 실제의 시스템에서 일어날 수도 있는 라운딩 에러(rounding error)에 의해 변화될 것 같다.
이런 문제점을 방지하기 위해, 본 발명은 도 6에 도시된 다각형(36)을 참조하여 이제 기술하는 바와 같이, 마치 다각형이 전체로서 렌더링된 것처럼, 모서리연산을 정확히 유지함으로써 모서리의 연속성을 유지한다. 다각형을 렌더링하는 점에 이르기까지의 처리는 이 다각형을 분할해야 할 필요에 의해 영향받지 않고 따라서 새로운 정점들이 도입되지 않아도 된다.
렌더링 처리는 모서리 V.1-V.3 및 V.1-V.2에 대한 기울기 값의 계산으로 시작되고, 기울기 값은 시스템(메모리 20; 도 1)에 의해 저장될 것이다. 그 처리는 표시선이 정점 V.2를 포함할 때까지 V.1로부터 실행된다(기술이 동일하게 하부에서 상부로 작용할지라도, 본 명세서에서는 상기 시스템에서 상부에서 하부로). 이와 같은 다각형 세그먼트(제 1 렌더링 윈도우 w.1을 포함)가 이제 얻어졌다.
이 점에서 새로운 모서리가 V.2로부터 모서리 V.1-V.3 상의 교점 S(그 위치가 저장됨)까지 실행하여 계산되고 렌더링 처리는 다시 계속된다. 이같은 제 2 렌더링 윈도우 w.2의 우측 모서리에 대한 렌더링 매개변수는 w.1로부터 계속되고 따라서 재계산 시의 부정확성을 초래하는 변화가 없다는 것을 유의하는 것이 중요하다.
윈도우 w.2의 완료 시에, S를 포함하는 표시선에 이르게 되면, 좌측 모서리 매개변수들의 새로운 세트가 필요하게 되고, 기울기는 모서리 V.2-V.3에 대해 계산되고, 이 값 역시 저장된다. 또한, 우측 모서리 매개변수들의 새로운 세트가 V.2로부터 S까지 발생되고, 윈도우 w.3가 렌더링된다.
마지막으로, 윈도우 w.4가 렌더링되어 원래의 다각형을 완성한다. 이 윈도우에 대해, 좌측 모서리 매개변수들이 변화되지 않고 남아 있어 모서리 V.2-V.3의 연속성을 유지하는 반면에, w.3이 렌더링되기 전에 세이브되었던 V.1 내지 V.3의 매개변수들은 상기 모서리의 연속성을 유지하기 위해 저장 장치로부터 이제 재생된다.
이제 다각형은 모서리 연속성을 유지하면서 렌더링되었다. 다양한 윈도우들의 렌더링 사이에 텍스쳐 메모리(메모리 18; 도 1)의 내용은 필요에 따라 변화하므로 렌더링될 주변의 영역을 커버하는 맵이 제공된다.
하나 이상의 윈도우(도 6의 w.2 및 w.3 사이)를 교차하는 화소선(pixel lines)들의 불연속성을 방지하기 위해, 화소 데이타는 윈도우들 간의 결합을 위해 유지된다. 도 7의 다각형(38)을 통과하는 화소 로우(row)(D.1 내지 D.2)를 고찰해보면, 만일 다각형이 분할선 V.1-S에 의해 분리 윈도우 w.1 및 w.2로 분할되지 않는다면, 로우 D.1 내지 D.2에 있는 모든 화소는 차례 차례로 렌더링된다.
윈도우 w.1에 대해, 처리는 화소 로우에 대한 렌더링 처리가 V.1에서 S까지의 선에 이르게 될 때 종료한다는 것을 제외하면 전술한 바와 같다. w.2를 렌더링하는 동안, 나머지 화소 로우의 렌더링은 이전에 렌더링된 최근의 화소 다음의 화소로 시작해야 하고, 수평으로 삽입된 모든 양에 대해 화소 로우가 간격없이 렌더링되었던 것을 나타내는 것과 동일한 값을 가져야 한다. 화소 위치는 V.1에서 S로의 모서리와 동일한 처리에 의해 얻어지고, 수평 삽입 양의 연속 값은 V.1에서 V.2까지의 좌측 모서리에서 얻어진 개시 값을 취하고 좌측 모서리에서 V.1-S 모서리까지의 수평 거리와 곱한 수평 기울기 값을 더함으로써 얻어진다.
상술한 내용은 다각형의 우측의 반을 그리는 동안 세 개의 모서리들이 트랙킹되는 것을 필요로 하는데, 이러한 필요는 항상 세분이 수직 및 수평 모서리를 따라 이루어지는 경우 완화될 수 있다.
본 명세서에 기재된 바와 같이 다른 변형예들이 기술적으로 숙련된 자들에게 명백할 것이다. 이러한 변형예들은 영상 처리 장치나 디바이스 및 이들의 구성부품들의 설계, 제조, 및 이용에 이미 공지되어 있는 다른 특징들을 포함할 수도 있고, 본 명세서에서 이미 기술한 특징들에 부가하여 또는 그 대신에 이용될 수도 있는 다른 특징들을 포함할 수도 있다. 특허청구의 범위가 특징들의 특정 조합으로 본 출원에서 공식화되었지만, 본 특허출원의 기재 범위는 그 범위가 소정의 청구범위에서 현재 청구된 바와 같은 동일한 발명에 관한 것이든 아니든, 또한 그 범위가 본 발명과 동일한 기술적 문제점중 전부 또는 일부를 완화시키든 아니든, 기술적으로 숙련된 자들에게 명백한 하나 이상의 특징들의 일반화나 명시적으로 또는 묵시적으로 본 명세서에 기재된 모든 신규 특징이나 특징들의 소정의 신규 조합을 포함한다는 것이 이해되어야 한다. 이에 의하여 본 출원인은 새로운 청구범위가 본원이나 본원에서 파생된 추가적인 출원의 절차 진행 동안 그러한 특징들 및/또는 그러한 특징들의 조합으로 공식화된다는 것을 공표한다.

Claims (8)

  1. 다각형이 2차원 스크린 공간에서 규정되고, 2차원 텍스쳐(texture)맵으로부터의 화소 텍스쳐값(pixel texture value; texel)(텍셀)들이 상기 2 차원 다각형 내의 화소들 상에 맵핑되는, 이차원 영상을 렌더링하기 위한 영상 처리 방법으로서,
    상기 방법은, 상기 다각형 또는 각각의 다각형에 대해서,
    a) 렌더링을 위해 상기 텍스쳐 맵에서 텍셀들의 수보다, 전체에 있어서, 적거나 같은 수의 다수의 필요로 하는 화소들을 커버하는 텍스쳐 렌더링 윈도우를 규정하는 단계와,
    b) 상기 렌더링 윈도우가 적어도 상기 다각형의 일부를 오버라잉(overlie)하고 상기 윈도우의 최대 범위가 상기 다각형의 수직 높이에 또는 그 위에 있도록, 스크린 공간 내의 상기 다각형의 최상부 정점의 수직 높이를 결정하여 상기 렌더링 윈도우의 위치를 정하는 단계와,
    c) 상기 텍스쳐 맵으로부터 텍셀들을 맵핑함으로써 상기 렌더링 윈도우 내에 놓여지는 상기 다각형의 일부를 렌더링하는 단계와,
    d) 적어도 상기 다각형의 일부를 오버라잉하고 이전 렌더링 윈도우 위치에 인접하는 상기 스크린 공간 내의 또다른 위치로 상기 렌더링 윈도우를 이동시키는 단계를 포함하고,
    상기 단계 c) 및 d)는 상기 다각형 모두가 렌더링되었을 때까지 순차적으로반복되는, 상기 2 차원 영상을 렌더링하기 위한 영상 처리 방법에 있어서,
    상기 텍스쳐 맵은 전체 스크린을 렌더링하는데 요구되는 것보다 더 적은 텍셀들을 유지하고, 제 1 렌더링 윈도우는 상기 다각형의 정점을 오버라잉하고, 상기 정점에 대한 다각형 모서리들의 기울기 값들이 계산되어 저장되고, 상기 모서리 또는 각각의 모서리 상의 교점은 부화소(subpixel) 정확도에 따라 식별되어 저장되고, 렌더링 윈도우가 상기 다각형 모서리들 중의 하나 또는 그외 다른 모서리의 일부를 오버라잉하는 각각의 또다른 렌더링 동작에 대해, 이전에 계산된 기울기 값들 및 교점 위치들이 저장부(storage)로부터 재호출되는 것을 특징으로 하는, 2 차원 영상을 렌더링하기 위한 영상 처리 방법.
  2. 제 1 항에 있어서,
    상기 단계 c)에 이어서 상기 텍스쳐 맵 내용들을 갱신하는 단계를 더 포함하는, 2 차원 영상을 렌더링하기 위한 영상 처리 방법.
  3. 제 2 항에 있어서,
    상기 텍스쳐 맵 내용들을 갱신하는 단계는 상기 단계 d) 이후에 일어나며, 갱신된 텍스쳐 맵 내용들은 스크린 공간에서 상기 렌더링 윈도우의 새로운 위치에 의해 결정되는, 2 차원 영상을 렌더링하기 위한 영상 처리 방법.
  4. 제 1 항에 있어서,
    두 개 이상의 렌더링 윈도우들이 스크린 공간 내의 동일 수직 위치에서 필요하게 되는 경우, 상기 두 개 이상의 렌더링 윈도우들은 상기 스크린 공간의 좌측에서 우측으로 순서대로 렌더링되는, 2 차원 영상을 렌더링하기 위한 영상 처리 방법.
  5. 제 1 항에 있어서,
    상기 다각형을 보다 더 작은 다각형들로 세분하는 단계를 더 포함하며, 각각의 보다 더 작은 다각형은 하나의 렌더링 윈도우로 렌더링 가능한 크기로 되는, 2 차원 영상을 렌더링하기 위한 영상 처리 방법.
  6. 제 5 항에 있어서,
    상기 세분은 상기 보다 더 작은 다각형들 각각이 수평 및 수직 스크린 공간축들중의 하나에 정합되는 모서리를 갖는, 2 차원 영상을 렌더링하기 위한 영상 처리 방법.
  7. 2 차원 스크린 공간에서 규정된 하나 이상의 다각형들을 포함하는 영상을 렌더링하도록 배열된 영상 처리 장치로서, 상기 장치는,
    복수의 화소 텍스쳐 값들(텍셀들)을 포함하는 화소 텍스쳐 맵을 유지하는 제 1 저장 수단과,
    2 차원 스크린 공간에서 다각형의 정점들의 좌표들을 저장하도록 배열된 제2 저장 수단과,
    상기 텍스쳐 맵으로부터의 텍셀들을 상기 다각형 내의 화소들 상으로 맵핑하도록 동작할 수 있는 영상 렌더링 수단과,
    상기 제 1 및 제 2 저장 수단들에 연결되고 상기 스크린 공간 내의 인접 윈도우들의 시퀀스를 발생하도록 배열된 렌더링 윈도우 생성 수단을 포함하고,
    각각의 윈도우는 적어도 상기 다각형의 일부를 오버라잉하고 상기 텍스쳐 맵내에 유지된 텍셀들의 총 수에 의해 렌더링될 수 있는 화소들의 수보다 적거나 같은 다수의 화소들을 커버하고, 상기 영상 렌더링 수단은 현재 발생된 렌더링 윈도우 내의 상기 다각형의 상기 화소들을 렌더링하도록 상기 윈도우 발생 수단에 의해 제어되는, 상기 영상 처리 장치에 있어서,
    상기 텍스쳐 맵은 화소들의 전체 스크린을 렌더링하는데 요구되는 것보다 더 적은 텍셀들을 유지하고,
    상기 장치는, 상기 영상 렌더링 수단과 결합되고 상기 렌더링 윈도우가 다각형 정점을 오버라잉할 때 상기 다각형 모서리들에 대한 기울기 값들을 계산하도록 배열된 기울기 계산 수단과, 계산된 기울기 값들을 수신하여 저장하도록 배열된 제 3 저장 수단을 더 포함하며, 상기 영상 렌더링 수단은 상기 렌더링 윈도우내의 임의의 다각형 모서리에 대해서 그 모서리에 대한 기울기 값이 저장되는지를 결정하고 그렇게 되는 경우 상기 저장된 기울기 값을 렌더링에 이용하도록 구성되는 것을 특징으로 하는, 영상 처리 장치.
  8. 제 7 항에 있어서,
    관련된 깊이 값을 각각 갖는 복수의 다각형들을 연속적으로 맵하도록 동작 가능하고, 상기 복수의 다각형들중 어느 것이 최대 깊이 값을 갖는지를 결정하고 그 다각형을 먼저 맵핑하는 수단을 포함하는, 영상 처리 장치.
KR1019970703164A 1995-09-13 1996-09-04 그래픽영상처리방법및장치 KR100429092B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
GB9518695.3 1995-09-13
GBGB9518695.3A GB9518695D0 (en) 1995-09-13 1995-09-13 Graphic image rendering

Publications (2)

Publication Number Publication Date
KR970707513A KR970707513A (ko) 1997-12-01
KR100429092B1 true KR100429092B1 (ko) 2004-07-23

Family

ID=10780642

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019970703164A KR100429092B1 (ko) 1995-09-13 1996-09-04 그래픽영상처리방법및장치

Country Status (7)

Country Link
US (1) US5838332A (ko)
EP (1) EP0791208B1 (ko)
JP (1) JPH10511203A (ko)
KR (1) KR100429092B1 (ko)
DE (1) DE69617626T2 (ko)
GB (1) GB9518695D0 (ko)
WO (1) WO1997010571A1 (ko)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1175377C (zh) * 1998-05-20 2004-11-10 索尼电脑娱乐公司 图像处理装置及方法
US6466223B1 (en) * 1999-03-24 2002-10-15 Microsoft Corporation Method and apparatus for texture memory management
JP3638568B2 (ja) * 2001-06-08 2005-04-13 株式会社ソニー・コンピュータエンタテインメント 画像処理プログラム、画像処理プログラムを記録した記録媒体、画像処理装置及び方法
GB2383248B (en) * 2001-12-14 2005-12-07 Imagination Tech Ltd 3-dimensional computer graphics system
US7955081B2 (en) * 2004-11-22 2011-06-07 Basimah Khulusi Md, Llc Methods and systems for producing faces of N-dimensional forms
US7479012B1 (en) * 2004-11-22 2009-01-20 Basimah Khulusi Md, Llc Method for producing polyhedral nets
EP3418979B1 (en) * 2017-06-21 2020-11-18 Canon Production Printing Holding B.V. Providing a three-dimensional object
US10424074B1 (en) 2018-07-03 2019-09-24 Nvidia Corporation Method and apparatus for obtaining sampled positions of texturing operations
CN114004925B (zh) * 2021-09-16 2022-11-22 北京城市网邻信息技术有限公司 基于WebGL的模型渲染方法、电子设备及存储介质

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4901251A (en) * 1986-04-03 1990-02-13 Advanced Micro Devices, Inc. Apparatus and methodology for automated filling of complex polygons
US4815009A (en) * 1987-04-21 1989-03-21 Xerox Corporation Algorithm for filling an image outline
JPH01241556A (ja) * 1988-03-22 1989-09-26 Dainippon Screen Mfg Co Ltd 凸ループ分割を用いた塗り潰しデータ生成方法
US5020002A (en) * 1988-12-20 1991-05-28 Sun Microsystems, Inc. Method and apparatus for decomposing a quadrilateral figure for display and manipulation by a computer system
JPH06251166A (ja) * 1993-02-25 1994-09-09 Toshiba Corp 画像処理装置
GB9324638D0 (en) * 1993-12-01 1994-01-19 Philips Electronics Uk Ltd Image processing
JPH07182537A (ja) * 1993-12-21 1995-07-21 Toshiba Corp 図形描画装置および図形描画方法
US5657436A (en) * 1995-06-08 1997-08-12 Hewlett-Packard Company Preprocessing apparatus and method for line scan conversion in a computer graphics system
US5651106A (en) * 1995-06-08 1997-07-22 Hewlett-Packard Company Method and apparatus for vertex sorting in a computer graphics system

Also Published As

Publication number Publication date
EP0791208B1 (en) 2001-12-05
JPH10511203A (ja) 1998-10-27
DE69617626T2 (de) 2002-08-14
WO1997010571A1 (en) 1997-03-20
US5838332A (en) 1998-11-17
EP0791208A1 (en) 1997-08-27
GB9518695D0 (en) 1995-11-15
DE69617626D1 (de) 2002-01-17
KR970707513A (ko) 1997-12-01

Similar Documents

Publication Publication Date Title
EP0637813B1 (en) Image processing
US5841439A (en) Updating graphical objects based on object validity periods
US5694533A (en) 3-Dimensional model composed against textured midground image and perspective enhancing hemispherically mapped backdrop image for visual realism
US7884825B2 (en) Drawing method, image generating device, and electronic information apparatus
US5704024A (en) Method and an apparatus for generating reflection vectors which can be unnormalized and for using these reflection vectors to index locations on an environment map
US5877769A (en) Image processing apparatus and method
US6191794B1 (en) Method and apparatus for scaling texture maps for graphical images
US20020027555A1 (en) Method of rendering motion blur image and apparatus therefor
WO1995004331A1 (en) Three-dimensional image synthesis using view interpolation
GB2259432A (en) Three dimensional graphics processing
JPH04220783A (ja) 表示装置及び表示方法
US7158133B2 (en) System and method for shadow rendering
US5745667A (en) 3d graphics apparatus using texture images with displacement information
EP0248626B1 (en) Video signal processing
KR100429092B1 (ko) 그래픽영상처리방법및장치
JPH09330423A (ja) 三次元形状データ変換装置
US5793372A (en) Methods and apparatus for rapidly rendering photo-realistic surfaces on 3-dimensional wire frames automatically using user defined points
US6714195B1 (en) Image processing apparatus
EP0656609B1 (en) Image processing
US6346939B1 (en) View dependent layer ordering method and system
JP2003504697A (ja) 副標本化テクスチャ端縁部のアンチエイリアシング
KR100256472B1 (ko) 사용자가 정의한 룸 및 윈도우를 이용하는 효율적인 렌더링
JP4308367B2 (ja) 3次元画像生成装置および環境マップの生成方法
US5821942A (en) Ray tracing through an ordered array
KR100466473B1 (ko) 텍셀 캐시들을 사용한 영상 텍스처 맵핑 장치

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
LAPS Lapse due to unpaid annual fee