KR20010022919A - 3차원 화상처리장치 - Google Patents

3차원 화상처리장치 Download PDF

Info

Publication number
KR20010022919A
KR20010022919A KR1020007001524A KR20007001524A KR20010022919A KR 20010022919 A KR20010022919 A KR 20010022919A KR 1020007001524 A KR1020007001524 A KR 1020007001524A KR 20007001524 A KR20007001524 A KR 20007001524A KR 20010022919 A KR20010022919 A KR 20010022919A
Authority
KR
South Korea
Prior art keywords
pixel
alpha
pattern
background color
luminance
Prior art date
Application number
KR1020007001524A
Other languages
English (en)
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 KR20010022919A publication Critical patent/KR20010022919A/ko

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/50Lighting effects
    • G06T15/503Blending, e.g. for anti-aliasing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/431Generation of visual interfaces for content selection or interaction; Content or additional data rendering

Abstract

본 발명은 처리시간을 들이지 않고, 적은 메모리로 알파 블렌드를 포함하는 앤티에일리어스처리를 실현하는 것을 목적으로 한다. 화소단위로 점유패턴을 산출하는 수단과, 점유패턴을 기억하는 수단과, 가장 앞쪽의 화소의 휘도를 기억하는 수단, 점유패턴이 100%인 화소로 가장 앞쪽의 깊이를 기억하는 수단과, 이들의 화소단위의 정보와, 메모리의 정보로부터 해당 메모리로 기억하는 정보를 산출하는 수단, 묘사화소의 알파 블렌드유효를 나타내는 수단, 해당 수단의 상태를 기억하는 수단, 미알파 블렌드 배경색을 기억하는 수단, 미알파 블렌드 배경색을 기억하기 위한 수단, 알파 블렌드 배경색을 선택하는 수단으로 구성된다. 본 발명에서는 알파 블렌드를 포함하는 앤티에일리어스처리를 1회 1패스의 묘사로 행하기 때문에 고속이고, 1화소단위로 필요한 메모리가 종래의 방식에 비하여 적기 때문에 저비용으로 실현할 수 있다.

Description

3차원 화상처리장치{THREE-DIMENSIONAL IMAGE PROCESSOR}
도형을 래스터 스캔 디스플레이(raster scan display) 등의 표시장치에 표시하면, 도형의 기울어진 주변이 울퉁불퉁하게 된다. 이것은 표시장치를 구성하는 화소가, 도형의 영역에 포함되는지 아닌지에 의해, 그 화소를 도형의 휘도로 표시할지, 또는 도형의 테두리 밖의 배경의 휘도로 표시할지를 결정하기 위해서 발생하는 현상이다. 이 현상을 해결하기 위해서, 도형의 영역이, 화소에 대하여 얼마만큼 포함되어 있느냐로, 도형의 휘도와, 배경의 휘도를 블렌드(blend)하는 방법이 이용되어 왔다.
특개평 4-233086호 공보에서는, 동일 도형을, 복수회 좌표를 변경하여 묘사하여, 모든 휘도를 합성하고, 표시할 때에 합성한 횟수로 휘도를 나누어, 표시의 휘도로 하는 것으로 앤티에일리어스처리를 행하는 기술이 개시되어 있다. 이 방식은 합성의 횟수분만큼 처리시간이 걸린다.
또한, 특표평 5-507372호 공보에서는, 각 서브픽셀단위로 도형의 묘사를 행하고, 표시할 때에 l화소에 포함되는 서브픽셀의 휘도를 혼합하여 표시하는 휘도로 하는 기술이 개시되어 있다.
종래의 예에서는, 기억장치가 많이 필요하기 때문에, 비용이 많이 든다고 하는 문제점이 있었다. 또한, 앤티에일리어스처리와 함께 알파 블렌드(alpha blend)처리를 행하는 점에 관해서는, 상기 종래 예에서는 고려되어 있지 않았다.
본 발명의 목적은, 적은 기억장치로, 알파 블렌드처리를 포함한 전례의 앤티에일리어스처리와 동등의 처리를 고속으로 실현하는 것에 있다.
(발명의 개시)
종래의 예에서는, 서브픽셀단위로, 휘도와 깊이 정보를 기억하는 장치를 설치하고 있었지만, 적은 기억장치로 앤티에일리어스처리를 행하는 것에는 적합하지 않다. 그래서 본 발명에서는, 휘도나, 깊이 등의 정보는 1화소단위로 기억하고, 서브픽셀단위로는, 묘사하는 도형영역에 포함되는지 아닌지만을, 점유패턴으로서 기억하기 때문에, 기억장치가 적어도 된다. 점유패턴에 의해, 가장 앞쪽의 도형의 영역과, 배경의 영역의 비율을 산출하고, 해당 비율로 가장 앞쪽의 도형의 휘도와, 배경의 휘도를 블렌드함으로써, 앤티에일리어스처리를 달성한다.
이때, 배경의 휘도가 이미 알파 블렌드처리되어 있는지 어떤지를 조사하고, 또 가장 앞쪽의 도형의 휘도에 관해서도 알파 블렌드처리되어 있는지 조사하며, 동시에 알파 블렌드처리되어 있는 경우, 해당 앤티에일리어스처리에 있어서, 배경의 휘도가 아니라, 해당 휘도의 알파 블렌드처리 전의 배경휘도로 블렌드함으로써, 알파 블렌드를 포함하는 앤티에일리어스처리를 달성한다.
도형을 묘사할 때에, 도형을 구성하는 화소의 휘도와, 해당 묘사화소의 깊이와, 해당 묘사화소의 점유패턴을 산출한다. 최초에, 해당 묘사화소와 동좌표의 Z버퍼에 의한 전 점유깊이 기억장치의 깊이와, 해당 묘사화소의 깊이를 비교하고, 해당 묘사화소의 깊이쪽이 더 깊숙한 곳이면 그 화소의 묘사를 중지한다. 그리고, 해당 묘사화소의 점유패턴과, 해당 묘사화소와 동좌표의 점유패턴 기억장치의 점유패턴의, 도형영역의 비율에 의해, 해당 묘사화소의 휘도와, 해당 묘사화소와 동좌표의 휘도기억장치의 휘도와, 해당 묘사화소와 동좌표의 프레임 버퍼의 휘도를 블렌드하여, 다시 프레임 버퍼에 기억한다.
한편, 이 때의 해당 묘사화소의 휘도는, 알파 블렌드처리 전의 도형휘도이고, 해당 묘사화소와 동좌표의 휘도기억장치의 휘도는, 알파 블렌드처리후 또는 알파 블렌드처리하지 않은 그대로의 도형휘도이다.
해당 묘사화소의 휘도와, 해당 묘사화소와 동좌표의 휘도기억장치의 휘도와, 해당 묘사화소와 동좌표의 프레임 버퍼의 휘도를 블렌드하여, 알파 블렌드처리 및 앤티에일리어스처리를 실시할 때, 해당 묘사화소가 알파 블렌드처리되어 있는지를 판정하고, 또한, 휘도기억장치에 기억되어 있는 휘도가 알파 블렌드처리되어 있는지를 판정하며, 동시에 판정결과가 알파 블렌드처리되어 있다고 판정된 경우는, 해당 묘사화소의 휘도와 알파 블렌드처리 전의 배경색의 휘도를 사용하여 알파 블렌드처리를 실시하고, 상기 알파 블렌드처리 결과와 휘도기억장치의 휘도를 사용하여 앤티에일리어스를 위한 블렌드처리를 실시한다.
해당 묘사화소가 알파 블렌드처리되어 있다고 판정된 경우, 그 취지를 알파 블렌드처리가 있는 플래그에 격납하고, 또 알파 블렌드처리 전의 배경색을 기억한다.
본 발명은, 앤티에일리어스(antialias)처리에 의해 고품위의 화상표시를 행하는 3차원 화상처리장치에 관한 것이다.
도 l은, 본 실시예의 하드웨어의 전체 구성을 나타낸 블록도이고,
도 2는, 렌더링 프로세서의 상세 블럭도를 나타낸 도면이며,
도 3은, 화상 메모리의 구성을 나타낸 도면이고,
도 4는, 화소 정보 연산부의 처리의 선택을 나타낸 도면이며,
도 5는, 알파 블렌드 연산부의 상세 플로우를 나타낸 도면이다.
이하 본 발명의 실시예를 도 l∼도 5를 사용하여 설명한다.
본 실시예에 관한 하드웨어의 전체 블럭도를 도 l에 나타낸다.
이 전체 하드웨어는, 묘사하는 도형의 정점 좌표와, 정점 휘도와, 정점 깊이를 산출하여 렌더링 프로세서(200)로 발행하는 CPU(l00)와; CPU(l00)로부터 전송된 정점 좌표와, 정점 휘도와, 정점 깊이로부터, 화소정보로서, 도형을 구성하는 화소의 좌표와 묘사화소의 휘도, 깊이, 그리고 묘사화소의 점유패턴을 산출하는 화소정보 산출부(210)와, 산출된 화소정보로부터, 알파 블렌드처리를 위한 연산을 행하는 알파 블렌드 연산부(220)와, 상기 알파 블렌드 연산부(220)의 처리결과로부터 표시를 행하는 휘도를 산출하는 화소비교 연산부(230)를 구비하는 렌더링 프로세서(200)와; 상기 휘도 산출시에 사용하고, 또한 표시를 행하는 휘도를 기억하는 화상 메모리(300)와; 이 화상 메모리(300)의 프레임 버퍼(310)에 기억된 표시 휘도정보에 근거하여 표시를 행하는 표시제어수단(400)과; CRT(500)로 구성된다.
화상 메모리(300)의 구성도를 도 3에 나타낸다. 화상 메모리(300)는, CRT(500)에 표시하는 화소마다의 휘도를 기억하는 프레임 버퍼(310)와, 서브픽셀을 100% 다 가릴 때까지의 가장 앞쪽의 점유패턴으로 이루어지는 화소의 깊이(전 점유깊이 기억)를 기억하는 Z버퍼(320)와, 가장 앞쪽의 화소의 점유패턴을 기억하는 점유패턴 기억장치(330)와, 가장 앞쪽의 화소의 휘도를 기억하는 휘도기억장치(340)와, 가장 앞쪽의 화소의 깊이를 기억하는 깊이/미알파 블렌드 배경색 기억장치(350)와, 가장 앞쪽의 화소에 알파 블렌드처리가 행해졌는지 어떤지를 기억하는, 알파 블렌드가 있는 화소 플래그 기억장치(360)로 구성된다. 한편, 알파 블렌드처리를 행한 화소를 묘사할 때는, 깊이/미알파 블렌드 배경색 기억장치(350)에는, 가장 앞쪽의 화소의 깊이가 아니라, 해당 화소의 알파 블렌드처리를 행하기 전의 배경색(미알파 블렌드 배경색)을 기억한다.
각 메모리의 화소마다의 구성에서, 프레임 버퍼(310)는 24비트, Z버퍼(320)는 24비트, 점유패턴 기억장치(330)는 16비트, 휘도정보 기억장치(340)는 24비트, 깊이/미알파 블렌드 배경색 기억장치(350)는 24비트, 알파 블렌드가 있는 화소 플래그 기억장치(360)는 1비트로 한다. 프레임 버퍼(310)와, 휘도 기억장치(340)와 미알파 블렌드 배경색 기억장치(350)는, 23∼l6비트번째의 휘도 R성분, 15∼8비트번째의 휘도 G성분, 7∼0비트번째의 휘도 B성분으로 구성되어 있다. 점유패턴 기억장치(330)는 1화소 내에 포함되는 16의 서브픽셀의 정보를 16비트의 점유패턴으로서, 서브픽셀 내의 비트번호 25에 대응시켜 기억한다.
렌더링 프로세서(200)의 구성을 도 2에, 또한 알파 블렌드 처리부(225)에 있어서의 처리의 플로우를 도 5에 나타낸다. 본 실시예의 하드웨어의 동작으로서, 우선 CPU(100)로부터 도형(본 실시예에서는, 일반적인 폴리곤(polygon)인 3각형인 것으로 한다)의 정점 좌표, 정점 깊이, 정점 휘도를 발행하고, 렌더링 프로세서(200)의 화소정보 산출부(210)로 전송한다. 화소정보 산출부(210)는 수취한 도형의 정점의 정보를 바탕으로, 정점 사이의 화소의 X값을, Y 좌표방향에 관해서 l/4화소단위로 구분하여 보간을 행하고, 도형을 구성하는 각 화소를 4 × 4의 서브픽셀로 전개하며, 서브픽셀단위로 도형영역을 산출한다. 다음에 서브픽셀의 중심점이, 도형 내에 포함된 서브픽셀을 '0', 포함되지 않은 경우는 '1'로 하여, 어떤 1화소 내의 모든 서브픽셀마다의 값을 산출하고, 이것을 16비트의 점유패턴으로서, 알파 블렌드 연산부(220)로 전송한다. 동시에, 서브픽셀로 전개한 화소와 동좌표의 화소의 휘도와 깊이를, 알파 블렌드 연산부(220)로 전송한다. 이후, 특히 거절이 없는 한, 판독한 화상 메모리(300) 내의 각 메모리의 정보는, 묘사하는 화소와 동좌표의 메모리의 정보로서 설명을 한다.
도 5에 나타낸 바와 같이, 알파 블렌드 연산부(220)는, 이제부터 묘사하는 화소에 대하여, 알파 블렌드처리를 행하는지 어떤지를 판정하고(224), 이 판정결과를 A3으로 한다. 알파 블렌드처리를 행하는지 어떤지의 판정에 관해서는, 알파 블렌드처리를 유효(있음)로 하는지, 무효(없음)로 하는지를, CPU(100)가 알파 블렌드 연산부(220)의 레지스터(도시하지 않음)에 설정하고, 이 레지스터를 체크함으로써 실시된다.
알파 블렌드처리를 행하지 않은 경우, 이제부터 묘사하는 화소에 관해서는, 본 알파 블렌드 연산부(220)가 출력하는 묘사화소휘도 IA로서, 화소정보 산출부(210)로부터의 휘도 I를 그대로 주고받는다(l001).
이제부터 묘사하는 화소에 관해서 알파 블렌드처리를 행하는 경우, 이미 묘사되어 있는 가장 앞쪽의 화소가 알파 블렌드처리를 행하고 나서 묘사되었는지 어떤지를, 알파 블렌드가 있는 화소 플래그 기억장치(360)의 내용 AB으로 판정하고(223), 이 판정결과를 A2로 한다. 알파 블렌드가 있는 화소 플래그 기억장치(360)의 내용 AB가 '0'일 때, 이미 묘사된 가장 앞쪽의 화소는, 알파 블렌드처리를 행하지 않고 묘사된 것으로 판단하고, 이제부터 묘사하는 화소에 대한 알파 블렌드처리에 있어서는, 알파 블렌드처리의 배경색으로서, 프레임 버퍼(310)에 격납되어 있는 이미 묘사된 색의 R, G, B의 값을 사용하여, 이제부터 묘사하는 화소와의 알파 블렌드의 계산을 한다. 그 후, 알파 블렌드 연산부(220)의 출력하는 묘사화소휘도 IA로서, 계산한 알파 블렌드결과를 출력한다(1002).
한편, 알파 블렌드가 있는 화소 플래그 기억장치(360)의 내용이 'l'일 때, 이미 묘사된 가장 앞쪽의 화소는, 알파 블렌드처리를 행한 후에 묘사된 것으로 판단하고, 묘사하는 화소가 도형영역(폴리곤)의 에지인지 어떤지로, 알파 블렌드의 처리방법을 변경할 필요가 있다. 이것은, 묘사하는 화소가 에지가 아닌 경우에는 앤티에일리어스처리를 실시하지 않기 때문에, 알파 블렌드처리의 유무에 관계없이 알파 블렌드의 배경색으로서 이미 묘사된 색(프레임 버퍼(310)의 정보)을 사용할 수 있다.
그러나, 묘사하는 화소가 에지인 경우, 앤티에일리어스처리가 행해질 가능성이 있다. 통상 3차원의 물체는 물체표면을 미세한 폴리곤으로 분할하여 표현되지만, 알파 블렌드를 실시하여 이것들의 인접하는 폴리곤을 순차 묘사하는 경우, 그 폴리곤의 에지부분에 있어서는 전번의 폴리곤의 묘사시에, 이미 묘사된 가장 앞쪽의 화소에 대하여도 알파블렌드가 실시되게 된다. 따라서, 이제부터 묘사하는 에지의 화소의 알파 블렌드의 배경색으로서 이미 묘사된 색을 사용하면, 동좌표의 화소에 대하여, 2번 알파 블렌드를 행한 결과로 되어 버린다. 이 때문에, 이제부터 묘사하는 화소의 알파 블렌드의 배경색에는, 이미 묘사한 가장 앞쪽의 화소의 알파 블렌드처리를 행하기 전의 배경색을 사용해야 한다.
그래서 이미 묘사된 가장 앞쪽의 화소에 대하여 알파 블렌드처리가 행해지고 있는 경우에는, 이제부터 묘사하는 화소가 에지인지 어떤지를, 또 화소의 점유패턴 P의 모든 비트가 '0'인지를 판단하고(221), 이 판단결과를 A1로 한다.
이제부터 묘사하는 화소의 점유패턴의 전 비트가 '0'인 경우, 모든 서브픽셀이 도형영역인 것이 되기 때문에, 도형영역(폴리곤)의 에지가 아니라고 판단할 수 있다. 그래서, 그 후의 화소비교 연산부(230)에서의 처리에 있어서 앤티에일리어스처리가 행해지지 않기 때문에, 이제부터 묘사하는 화소에 대한 알파 블렌드처리의 배경색으로서, 표시되어 있는 프레임 버퍼(310)의 색을 사용한다(1002).
그러나, 화소의 점유패턴 P의 전 피트가 '0'이 아닌 (어느 것인가의 비트에 'l'이 있는)경우는, 이 화소가 도형영역(폴리곤)의 에지인 것을 나타내고 있다. 그리고, 이미 묘사된 가장 앞쪽의 화소에는 알파 블렌드처리를 행한 결과가 묘사되어 있기 때문에, 이제부터 묘사하는 화소의 알파 블렌드의 배경색으로서, 상기대로, 미알파 블렌드 배경색 기억장치(350)에 격납되어 있다, 이미 묘사한 가장 앞쪽의 화소에 대한 알파 블렌드처리를 행하기 이전의 배경색의 R, G, B를 사용한다(1003). 그 후, 알파 블렌드 연산부(220)의 출력하는 묘사화소휘도 IA로서, 계산한 알파 블렌드 결과를 출력한다(1002).
다음에 화소비교 연산부(230)에서의 처리를, 도 2 및 도 7을 사용하여 설명한다.
화소비교 연산부(230)에서는, 화소정보 산출부(210)에서 계산된 묘사화소의 깊이 Z와, Z 버퍼(320)의 깊이 정보 ZB를 비교하고, 이 비교결과를 C0으로 한다.
다음에, 이미 묘사된 가장 앞쪽의 화소는 알파 블렌드처리를 행하고 나서 묘사되어 있는지를 판정하기 위해서, 알파 블렌드가 있는 화소 플래그 기억장치(360)의 내용 AB가 'l'인지를 판정한다(223)A2. 알파 블렌드가 없을(AB가 '0') 때, 다음에 해당 묘사화소에 대하여 알파 블렌드를 실시하는지 어떤지의 판정을 위해, 해당 묘사화소의 알파 블렌드가 있는 플래그가 'l'인지 아닌지를 판정하고(224), 이것을 A3으로 한다.
다음에 해당 묘사화소의 점유패턴 P와, 점유패턴 기억장치(330)의 점유패턴 PB를, 비트단위로 논리합하고, 이것을 Cl로 한다.
P와 PB가 서로 인접하는 화소의 점유패턴인 경우는, 이들 2개의 점유패턴의 비트단위 논리합의 결과는 모든 비트가 'l'로 된다. 한편, 서로 겹치는 화소의 점유패턴인 경우는, 이들 2개의 점유패턴의 비트단위 논리합의 결과는 겹친 부분의 비트가 '0'으로 된다. 요컨대, 묘사화소의 점유패턴 P와, 점유패턴 기억장치(330)의 점유패턴 PB와의 비트단위 논리합을 함으로써, 묘사화소와 가장 앞쪽의 화소의 도형영역부분이 겹치는지 아닌지를 판정하는 것이 가능해진다.
또한, 묘사화소의 깊이 Z와, 깊이 기억장치(350)의 깊이 ZB를 비교한 결과를 C3으로 하고, 묘사화소의 점유패턴 P와 점유패턴 기억장치(330)의 점유패턴 PB와의 비트단위 논리적을 구하며, 이 비트단위 논리적의 결과 16비트 모두가 '0'으로 되는지 어떤지를 판정하고, 이것을 C4로 한다. 이 C4가 참이면, 즉 비트단위 논리적의 결과 16비트 모두가 '0'으로 되면, 묘사화소의 점유패턴 P와 점유패턴 기억장치(330)의 점유패턴 PB의 2개의 점유패턴에 의해, 묘사위치의 서브픽셀이 모두 숨겨져 있게 된다.
이상의 판정결과 A2, A3, C0, C1, C3, C4, C5의 신호에 근거하여, 화소비교 연산부(236)에서는, 도 4에 나타낸 테이블에 따라서 처리 14∼24를 행한다.
우선, C0이 0인 경우, 이제부터 묘사하는 화소쪽이 더 깊숙한 곳이고, 시점방향에서 본 묘사화소는, 앞쪽의 화소에 의해 숨겨져 보이지 않기 때문에, 즉 프레임 버퍼(310)의 정보는 갱신할 필요가 없기 때문에, 그 화소의 묘사를 중지한다(처리 24).
또, C0이 l로, 묘사화소쪽이 앞쪽 또는 같을 때, A2, A3이 동시에 0이면, 즉 묘사화소도 이전에 묘사한 화소도 어느 것이나 알파 블렌드처리를 행하고 있지 않은 경우, C3이 참(묘사화소가 가장 앞쪽, 또는 같은)인 경우, C4의 결과가 참으로 되는 경우에는, 처리 14(이하의 처리 A, C, E, F, G)를 행하고, C4가 거짓으로 되는 경우에는 처리15(이하의 처리 A, C, E, F)를 행한다. 한편 C3이 거짓이면, C4의 결과에 관계없이 처리16(이하의 처리B)을 행한다.
또한 A3이 참으로, 이제부터 묘사하는 화소에 대한 알파 블렌드처리가 있는 경우, A2가 거짓으로, 이미 묘사된 가장 앞쪽의 화소가 알파 블렌드가 없는 경우, C3이 참(이제부터 묘사하는 화소가 앞쪽, 또는 같은)인 경우, C4가 참으로 되는 경우는, 처리17(이하의 처리 H, I, E, F, G)을 행하고, C4가 거짓으로, 묘사화소의 점유패턴 P와 점유패턴 기억장치(330)의 점유패턴 PB의 비트단위 논리적의 16비트 모두가 '0'으로 되지 않은 경우는, 처리18(이하의 처리 H, I, E, F)을 행한다.
한편 C3이 거짓으로, 이제부터 묘사하는 화소가 깊숙한 곳이면, Cl, C4의 결과에 관계없이 처리 19(이하의 처리 J)를 행한다.
그리고, A2가 참으로, 이미 묘사된 가장 앞쪽의 화소에 대하여 알파 블렌드가 행해지고 있는 경우, A3이 거짓으로, 이제부터 묘사하는 화소에 대한 알파 블렌드처리가 행해지지 않은 것이면, C1, C3, C 4의 결과에 관계없이 처리 20(이하의 처리 A, C, E, F)을 행한다. 이 경우, 알파 블렌드처리가 없다고 판단되면, 화소의 깊이 판정을 행하지 않지만, 이것은 이미 묘사된 가장 앞쪽의 화소에 대하여, 알파 블렌드가 행해지고, 알파 블렌드시, 묘사화소에 대해서의 깊이가 기억되지 않기 때문이다. 이 이유는 이하의 예로 설명할 수 있다.
투명한 유리컵을 묘사하는 예를 고려하면, 컵이 투명하기 때문에, 알파 블렌드처리로 묘사하게 된다. 이때, 컵을 구성하는 각 화소에 대하여, 깊이를 Z 버퍼(310) 등에 기록, 깊이를 판정하면서 묘사처리를 행한 경우, 컵을 깊숙한 곳에서 앞쪽으로 걸쳐서 묘사하는 경우에는 문제가 없지만, 컵을 앞쪽의 화소에서 깊숙한 곳으로 걸쳐서 묘사하는 경우에는, 투명하여 깊숙한 곳의 유리가 보일 것이지만, 보이지 않게 되어, 깊숙한 곳의 유리가 묘사되지 않게 된다고 하는 문제가 발생한다.
그래서, 알파 블렌드를 행할 때는, 깊이에 관계없이 묘사를 행하기 위해서, 화소의 깊이를 기억하지 않고, 항상 겹쳐쓰기(항상 이제부터 묘사하는 화소쪽이 앞쪽)로서 묘사한다. 그 때문에, C3의 깊이 비교처리의 결과도 의미가 없고, 또한, 항상 겹쳐쓰기 때문에, 이미 묘사된 가장 앞쪽의 화소의 알파 블렌드처리완료로 A2가 참인 경우에는, 점유패턴이 100%라고 간주하기 위한 깊이 정보가 기억되어 있지 않기 때문에, 즉 C4의 판정도 의미가 없기 때문에, C4의 판정은 불필요해진다.
A2가 참으로, 이미 묘사된 가장 앞쪽의 화소에 대하여 알파 블렌드가 행해지고 있는 경우, 이제부터 묘사하는 화소의 알파 블렌드가 존재할(A3이 참) 때, 이미 묘사된 가장 앞쪽의 화소와 이제부터 묘사하는 화소의 2개의 점유패턴이 겹치는지 어떤지를 Cl의 결과(묘사화소의 점유패턴과, 점유패턴 기억장치(330)의 점유패턴과의 비트단위 논리합에서, 16비트 전부가 '1'인지 아닌지)에 의해 판정한다.
Cl이 참으로, 16피트 모두가 '1'이라고 판단된 경우, 2개의 점유패턴은 중복하지 않게 되기 때문에, C4의 판정결과를 참조하고, C4가 참으로 되는 경우는 2개의 점유패턴이 동시에 알파 블렌드존재로 또한 서브픽셀을 100% 숨기기 때문에, 2개의 점유패턴을 합성하여, 화소를 100% 숨기는 알파 블렌드가 있는 1개의 점유패턴이라고 간주하고, 처리 21(이하의 처리 H, K, D, F)을 행한다. 한편, C4가 거짓으로 되는 경우는, 어느 것인가의 서브픽셀에 배경이 보이게 되기 때문에, 처리22(이하의 처리 H, D, F)를 행한다.
또한 C1의 판정이 거짓으로, 2개의 점유패턴이 중복하고 있다고 판단된 경우, 처리 23(이하의 처리 H, I, E, F)을 행한다. 이때, 이미 묘사된 가장 앞쪽의 화소가, 알파 블렌드존재하기 때문에, 처리 20을 행하는 경우와 같이, C4의 판정은 불필요하다.
이상의 처리로, 갱신을 행하지 않은 화상 메모리(300) 내의 각 메모리는, 해당 묘사화소의 묘사를 행하기 전의 정보를 그대로 기억해 둔다.
이하, 처리 A, B, C, D, E, F, G, H, I, J, K의 설명을 한다.
처리 A는, 깊이 기억장치(350)로부터 판독한 깊이 ZB(323)보다, 묘사화소의 깊이 Z쪽이 앞쪽, 또는 같은 경우에, 프레임 버퍼(310)에 기억하기 위한 휘도를 산출하는 처리이다.
처리 A에서는, 시점방향에서 본, 가장 앞쪽에 오는 묘사화소의 점유패턴(묘사영역)과, 앞쪽에서 2번째의 화소에 해당하는 점유패턴 기억장치(330)에 격납되어 있는 이미 묘사된 가장 앞쪽의 점유패턴(묘사영역) PB와, 배경에 해당하는 이들 2개의 점유패턴으로 숨겨지지 않은 이전의 묘사화소 서브픽셀의 비율에 따라서, RGB 성분마다 묘사화소의 휘도와 휘도기억장치의 휘도와 프레임 버퍼의 휘도를 점유하는 서브픽셀의 비율로 가중하여 혼합한다. 이 경우, 묘사화소의 점유패턴이 시점방향에서 봐서 가장 앞쪽이 되기 때문에, 묘사화소의 점유패턴 P : 묘사화소의 점유패턴 P로 숨겨져 있지 않은 PB: P, PB로 숨겨져 있지 않은 서브픽셀의 비율로 혼합하고, 새롭게 프레임 버퍼(310)에 격납한다.
또, 배경에 해당하는 이전의 묘사화소의 비율은, 가장 앞쪽과 앞에서 2번째의 Z좌표에 해당하는 묘사화소의 2개의 점유패턴으로 숨겨지지 않은 부분으로 되지만, 그 휘도는 알 수 없기 때문에, 현재의 프레임 버퍼(310)로부터 판독한 휘도로 근사한다.
처리 B는, 이제부터 묘사를 행하는 화소가 이전에 묘사를 행한 화소 중에서, 앞에서 2번째에 위치하는 것으로 하고, 깊이 기억장치(350)로부터 판독한 깊이(324)보다, 묘사화소의 깊이(85)쪽이, 더 깊숙한 곳인 경우에 행하는 프레임 버퍼(310)에 기억하기 위한 휘도를 산출하는 처리이다.
처리 B에서는, 처리 A의 경우와 다르고, 점유패턴 기억장치(330)에 격납된 점유패턴 PB가 시점방향에서 봐서 가장 앞쪽이 되기 때문에, 각각의 휘도의 혼합비는, 점유패턴 기억장치(330)에 격납된 점유패턴 PB로 숨겨져 있지 않은 묘사화소의 점유패턴 P : 점유패턴 기억장치(330)에 격납된 점유패턴 PB : P, PB로 숨겨져 있지 않은 서브픽셀의 비율로 된다.
처리 C에서는, 묘사화소의 깊이가 지금까지 묘사한 화소의 깊이와 같은 경우 또는 그것보다도 앞쪽에 있는 경우에는, 묘사화소의 깊이 Z를 깊이/미알파 블렌드 배경색 기억장치(350)에 격납하고, 가장 앞쪽의 화소의 깊이를 갱신한다.
처리 D는, 묘사화소의 점유패턴 P와 점유패턴 기억장치(330)에 격납되어 있기 이전에 묘사를 행한 가장 앞쪽의 화소의 점유패턴 PB가 연속하고 있다고 판정될 때에, 2개의 화소가 연속하고 있는 것이라고 하고, 이들 2개의 점유패턴을 AND하여 결합하여 서로의 도형영역('0'의 영역)을 합성하고, 1개의 점유패턴으로서 점유패턴 기억장치(330)의 내용 PB를 갱신하는 처리이다.
처리 E는, 묘사화소가 지금까지 가장 앞쪽의 화소의 깊이와 동일한 경우 또는 그것보다도 앞쪽에 있는 경우에, 점유패턴 기억장치(330)에 격납되어 있는 가장 앞쪽의 화소의 점유패턴을 묘사화소의 점유패턴으로 갱신하는 처리이다.
처리 F는, 깊이 기억장치(350)의 깊이보다, 묘사화소의 깊이쪽이 앞쪽, 또는 같은 경우에, 휘도 기억장치(340)에 격납되어 있는, 지금까지 가장 앞쪽의 화소의 휘도를 묘사화소의 휘도로 갱신하는 처리이다.
처리 G는, 묘사화소와 이전에 묘사를 행한 가장 앞쪽의 화소의 2개로 화소를 100% 숨기는 경우, 지금까지 묘사를 행한 가장 앞쪽의 화소보다, 즉 묘사화소와 이전에 묘사를 행한 가장 앞쪽의 화소의 2개의 화소보다도 더 깊숙한 곳에 묘사하는 화소가 발생해도, 그 화소는 시점방향에서 보이지 않기 때문에, 이전에 묘사를 행한 가장 앞쪽의 화소의 깊이를, 점유패턴 100%의 가장 앞쪽의 화소의 깊이를 기억하는 Z 버퍼(320)에 기록하는 처리이다.
처리 H는, 깊이 기억장치(350)로부터 판독한 깊이 ZB보다, 묘사화소의 깊이 Z쪽이 앞쪽, 또는 같은 경우(C3=l)에, 프레임 버퍼(310)에 기억하기 위한 휘도를 산출하는 처리이며, 처리 A와 다르고, 배경색으로서 가장 앞쪽, 및 앞쪽에서 2번째의 점유패턴으로 숨겨지지 않은 서브픽셀의 휘도에는 프레임 버퍼의 값이 아니라, 알파 블렌드 연산부(220) 내의 알파 블렌드 처리부(225)에 있어서의 처리 M 또는 처리 N에 사용한 배경색, 요컨대, 프레임 버퍼(310)로부터 판독한 휘도, 또는 미알파 블렌드 배경색 기억장치(350)로부터 판독한 휘도를 사용한다.
처리 I는, 묘사화소가 알파 블렌드처리를 행하는 (A3=1) 경우에, 이전에 묘사한 가장 앞쪽의 화소의 알파 블렌드처리 완료에 있어서 (A2= 0) 양자의 점유패턴에 중복이 있을 (C1=0)때, 또는 묘사화소가 이전에 묘사한 가장 앞쪽의 화소보다 앞쪽(C3=l)인 경우, 이제부터 묘사하는 화소의 미알파 블렌드의 배경색(요컨대 프레임 버퍼(310)의 휘도)을, 미알파 블렌드 배경색 기억장치(30)에 기억하는 처리이다.
처리 J는, 묘사화소가, 이전에 묘사를 행한 화소 중에서, 앞에서 2번째에 위치하는 것이라고 가정하여 처리를 행하는 것이고, 깊이 기억장치(350)로부터 판독한 깊이 ZB(324)보다 묘사화소의 깊이 Z쪽이 더 깊숙한 곳인 경우에, 프레임 버퍼(310)에 기억하기 위한 휘도를 산출하는 처리이다.
처리 J에서는, 처리 B 대신에, 배경색으로서 프레임 버퍼의 값이 아니라, 알파 블렌드 연산부(220) 내의 알파 블렌드 처리부(225)로 사용한 배경색을 사용한다. 또한 처리 H와의 차이는, 묘사하는 화소가 앞에서 2번째라고 간주하고 있는 점이다. 따라서, Z버퍼(알파 블렌드시는 깊이를 고려하지 않기 때문), PB, IB, ZB의 갱신은 행해지지 않는다.
처리 K는, 이제부터 묘사하는 화소와, 이전에 묘사를 행한 가장 앞쪽의 화소가, 동시에 알파 블렌드 존재(A2=l, A3=l)하고, 양자의 점유패턴에 중복이 없고(Cl=l), 더구나 양자의 점유패턴에 의해 화소가 100% 숨겨져 있는 (C4=l), 즉 P와 PB으로 숨겨지는 서브픽셀이 100%이면, 이제부터 묘사하는 화소와, 이전에 묘사를 행한 가장 앞쪽의 화소의 2화소 이외의 배경은 보이지 않기 때문에, 본래 이제부터 묘사하는 화소의 미알파 블렌드 배경색이 아니라, 프레임 버퍼(310)에 기록하는 색인 묘사화소와 이전에 묘사를 행한 가장 앞쪽의 화소의 앤티에일리어스처리후의 표시색을, 미알파 블렌드 배경색 기억장치(350)에 기록하는 처리이다.
이상의 처리를, 도형을 구성하는 모든 화소에 대하여 행하기 때문에, 앤티에일리어스처리가 가능해진다.
본 실시예에서는, 기억장치의 용량을 감하기 위해서, 깊이 기억장치와, 미알파 블렌드 배경색 기억장치를 공유하고 있다(350). 이것은 상기한 대로, 그 화소의 깊이를 기억하지 않더라도 알파 블렌드처리를 실현할 수 있기 때문이다. 그러나, 3차원 화상처리로 알파 블렌드처리를 행할 때에, 깊이를 기억하는 사용방법도 존재한다. 이러한 경우에서는, 깊이와, 미알파 블렌드 배경색을, 1개의 기억장치를 공유하여 사용할 수 없다. 이러한 경우에는, 깊이/미알파 블렌드 배경색 기억장치(350)를 깊이만을 기억하는 깊이 기억장치와, 미알파 블렌드 배경색을 전용으로 기억하는 미알파 블렌드 배경색 기억장치로 나누는 것으로 해결할 수 있다. 이 경우는, 알파 블렌드 연산부(220)에 있어서, 알파 블렌드의 배경색을 결정하기 때문에, 프레임 버퍼(310) 또는 미알파 블렌드 배경색 기억장치를 선택하는 수단이 필요해진다.
본 발명에서는 알파 블렌드를 포함하는 앤티에일리어스처리를, 1회의 묘사로 행할 수 있기 때문에 고속이고, l화소단위로 유지하고 있는 가장 앞쪽의 점유패턴에 의해, 휘도의 연산을 행하기 때문에, 종래의 방식에 비하여, 적은 메모리로 실현할 수 있다.

Claims (3)

  1. 묘사도형을 구성하는 화소단위로, 해당 화소를 더 복수로 분할한 화소(이후, 서브픽셀)가 해당 도형의 영역에 포함되는지 아닌지를 서브픽셀 단위로 나타내는 패턴(이후, 점유패턴)을 생성하는 패턴발생수단과,
    가장 앞쪽의 화소의 상기 점유패턴을 기억하는 패턴기억수단을 가진 3차원 화상처리장치에 있어서,
    도형의 각 화소마다,
    앤티에일리어스처리를 행할 때에 가장 앞쪽의 도형의 휘도와 배경의 휘도의 알파 블렌드처리를 행한 결과가 기억되는 프레임 버퍼와,
    알파 블렌드처리를 행하기 전의 가장 앞쪽의 화소의 휘도정보를 기억하는 수단과,
    묘사화소가, 알파 블렌드처리된 경우에, 상기 화소의 미알파 블렌드 배경색을 기억하는 미알파 블렌드 배경색수단을 갖고, 해당 문제가 화소의 미알파 블렌드 배경색을, 미알파 블렌드 배경색 기억수단에 격납하는 것을 특징으로 하는 3차원 화상처리장치.
  2. 제 1 항에 있어서,
    묘사화소에 대하여, 알파 블렌드처리를 행하고 있는 것을 나타내는 플래그와, 각 화소에 관해서 가장 앞쪽의 화소에 알파 블렌드처리가 행해졌는지 어떤지를 기억하는 알파 블렌드처리 기억수단을 가지는 것을 특징으로 하는 3차원 화상처리장치.
  3. 제 2 항에 있어서,
    알파 블렌드처리 기억수단에 기억된 상태와,
    상기 패턴발생수단에 의해 생성된 이제부터 알파 블렌드처리를 실행하는 화소의 점유패턴과,
    상기 패턴기억수단에서 기억하고 있는 가장 앞쪽의 화소점유패턴의 상태에 의해,
    상기 알파 블렌드처리를 실행하는 화소의 배경색을,
    상기 미알파 블렌드 배경색수단의 내용을 사용하는지, 상기 프레임 버퍼의 내용을 사용하는지를 선택하고, 선택후의 배경색을 사용하여 알파 블렌드처리 및 앤티에일리어스처리를 행하는 것을 특징으로 하는 3차원 화상처리장치.
KR1020007001524A 1998-04-17 1998-04-17 3차원 화상처리장치 KR20010022919A (ko)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP1998/001771 WO1999054847A1 (fr) 1998-04-17 1998-04-17 Processeur d'images en trois dimensions

Publications (1)

Publication Number Publication Date
KR20010022919A true KR20010022919A (ko) 2001-03-26

Family

ID=14208059

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020007001524A KR20010022919A (ko) 1998-04-17 1998-04-17 3차원 화상처리장치

Country Status (2)

Country Link
KR (1) KR20010022919A (ko)
WO (1) WO1999054847A1 (ko)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4683760B2 (ja) * 2000-08-23 2011-05-18 任天堂株式会社 再構成可能なピクセルフォーマットを有する組み込みフレームバッファを有するグラフィックスシステム
JP4843010B2 (ja) * 2008-10-27 2011-12-21 株式会社バンダイナムコゲームス プログラム、情報記憶媒体及び画像生成システム

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2210540A (en) * 1987-09-30 1989-06-07 Philips Electronic Associated Method of and arrangement for modifying stored data,and method of and arrangement for generating two-dimensional images
JP3098060B2 (ja) * 1991-05-18 2000-10-10 三菱プレシジョン株式会社 模擬視界信号発生装置

Also Published As

Publication number Publication date
WO1999054847A1 (fr) 1999-10-28

Similar Documents

Publication Publication Date Title
US6104407A (en) Method and apparatus for processing fragment pixel information in a three-dimensional graphics processing system
US6201545B1 (en) Method and apparatus for generating sub pixel masks in a three dimensional graphic processing system
US6181352B1 (en) Graphics pipeline selectively providing multiple pixels or multiple textures
EP0582875B1 (en) Apparatus for parallel image generation
US5966132A (en) Three-dimensional image synthesis which represents images differently in multiple three dimensional spaces
US6774910B2 (en) Method and system for providing implicit edge antialiasing
US7348996B2 (en) Method of and system for pixel sampling
JP4332934B2 (ja) アンチエイリアシング方法及びこれを用いた画像処理装置
KR20050030595A (ko) 화상 처리 장치 및 그 방법
WO2003046836A1 (en) Image processing apparatus and constituent parts thereof, rendering method
EP1177532B1 (en) Method and system for efficiently using fewer blending units for antialiasing
KR20050030569A (ko) 화상 처리 장치 및 그 방법
US5973701A (en) Dynamic switching of texture mip-maps based on pixel depth value
US6172680B1 (en) Method and apparatus for a three-dimensional graphics processing system including anti-aliasing
EP1312047B1 (en) Apparatus and method for rendering antialiased image
US6501474B1 (en) Method and system for efficient rendering of image component polygons
US7050066B2 (en) Image processing apparatus and image processing program
EP0913795B1 (en) Image generation apparatus, image generation method, image generation program recording medium, image composition apparatus, image composition method, and image composition program recording medium
US6712700B1 (en) Stereo model displaying method and apparatus in video game, game apparatus, and computer-readable recording medium stored with stereo model displaying program for video game
JPH03138783A (ja) 陰面消去回路
US20050104893A1 (en) Three dimensional image rendering apparatus and three dimensional image rendering method
JP3253020B2 (ja) レンダリング方法及び装置、ゲーム装置、並びに立体モデルをレンダリングするプログラムを格納するコンピュータ読み取り可能な記録媒体
JPH09245191A (ja) 透明度変換方法及びその装置、画像処理装置
US6563497B1 (en) Image processing apparatus
KR20010022919A (ko) 3차원 화상처리장치

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
SUBM Submission of document of abandonment before or after decision of registration