KR100762811B1 - 하프 플레인 에지 함수를 이용한 타일 비닝 방법 및 시스템 - Google Patents

하프 플레인 에지 함수를 이용한 타일 비닝 방법 및 시스템 Download PDF

Info

Publication number
KR100762811B1
KR100762811B1 KR1020060067857A KR20060067857A KR100762811B1 KR 100762811 B1 KR100762811 B1 KR 100762811B1 KR 1020060067857 A KR1020060067857 A KR 1020060067857A KR 20060067857 A KR20060067857 A KR 20060067857A KR 100762811 B1 KR100762811 B1 KR 100762811B1
Authority
KR
South Korea
Prior art keywords
tile
determination value
triangle
value
node
Prior art date
Application number
KR1020060067857A
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 삼성전자주식회사
Priority to KR1020060067857A priority Critical patent/KR100762811B1/ko
Priority to JP2006305390A priority patent/JP4521391B2/ja
Priority to US11/604,691 priority patent/US8345064B2/en
Priority to EP06125221.9A priority patent/EP1881456B1/en
Application granted granted Critical
Publication of KR100762811B1 publication Critical patent/KR100762811B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/10Geometric effects
    • 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
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects

Landscapes

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

Abstract

본 발명은 타일 기반 3차원 렌더링에 있어서, 하프 플레인 에지 함수를 이용한 타일 비닝 방법 및 시스템에 관한 것으로, 더욱 상세하게는 삼각형을 렌더링 하기 위한 화면을 복수의 타일로 분할하고, 상기 타일의 타일 노드에서의 하프 플레인 에지 함수를 이용한 판별 값을 기초로 상기 타일들 중에서 상기 삼각형의 전부 또는 일부를 포함하는 타일을 판별하는 방법 및 시스템에 관한 것이다.
3차원 그래픽, 렌더링, Rendering, Rasterization, binning, 삼각형, 비닝, binning

Description

하프 플레인 에지 함수를 이용한 타일 비닝 방법 및 시스템 {METHOD AND SYSTEM FOR TILE BINNING USING HALF-PLANE EDGE FUNCTION}
도 1은 종래 기술에 따른 타일 기반 3차원 렌더링 방법을 도시한 도면이다.
도 2는 종래 기술에 따른 분할 기법을 이용한 타일 비닝 방법을 도시한 도면이다.
도 3은 본 발명의 일실시예에 따른 타일 비닝 방법의 흐름을 도시한 흐름도이다.
도 4는 본 발명의 일실시예에 따른 타일 비닝 방법에서, 삼각형을 포함하는 최소의 사각형을 구하는 방법의 일례를 도시한 도면이다.
도 5는 본 발명의 일실시예에 따른 타일 비닝 방법에서, 각각의 타일 노드에 대한 하프 플레인 에지 함수를 계산하는 방법의 일례를 도시한 도면이다.
도 6은 삼각형의 내부 및 외부에서의 하프 플레인 에지 함수 값의 부호를 도시한 도면이다.
도 7은 본 발명의 일실시예에 따른 타일 비닝 방법에서 삼각형의 전부 또는 일부를 포함하는 타일을 판별하는 방법의 일례를 도시한 도면이다.
도 8는 본 발명의 일실시예에 따른 타일 비닝 시스템의 내부 구성을 도시 한 도면이다.
도 9은 본 발명의 일실시예에 따른 타일 기반 타일 비닝 시스템에서 각각의 타일에 대하여 삼각형의 전부 또는 일부를 포함하는지 여부를 병렬적으로 판단하기 위한 회로를 도시한 도면이다.
<도면의 주요 부분에 대한 부호의 설명>
801: 타일 비닝 시스템
810: 타일 분할부
820: 범위 선별부
830: 판별 값 결정부
840: 타일 판별부
본 발명은 하프 플레인 에지 함수를 이용한 타일 비닝 방법 및 시스템에 관한 것으로 더욱 상세하게는 삼각형에 대한 3차원 렌더링을 수행하기 위한 화면을 복수의 타일로 분할하고, 분할된 타일 중 삼각형의 전부 또는 일부를 포함하는 타일에 대해서만 렌더링을 수행할 수 있도록, 삼각형의 전부 또는 일부를 포함하는 타일을 판별하는 방법 및 시스템에 관한 것이다.
최근 개인용 단말기의 성능이 향상되면서, 3차원 그래픽을 이용하여 정보를 제공하는 경우가 늘어나고 있다. 종래에는 3차원 그래픽은 컴퓨터 단말기에서 만 사용할 수 있었지만, 최근 휴대전화, PDA 또는 네비게이션 등과 같은 휴대 단말기의 성능이 향상되면서, 이러한 휴대 단말기에서도 3차원 그래픽을 이용할 수 있게 되었다. 3차원 그래픽을 이용하면 2차원으로 표시되는 디스플레이 장치에서도 보다 사실적으로 3차원 모델을 표현할 수 있는 효과가 있다.
하지만, 3차원 그래픽으로 3차원 모델을 표현하는 경우에도 사용자가 확인할 수 있는 디스플레이 장치는 2차원 화면이기 때문에, 사용자에게 표시하기 위해서는 3차원 모델을 사용자의 시점에서 바라본 2차원 화면으로 변환하는 과정이 필요하다. 이와 같이 3차원 모델을 2차원 화면으로 변환하는 과정 중에서, 2차원 좌표로 변환되어 벡터 형태로 표시되어 있는 3차원 모델을 픽셀 기반의 2차원 화면으로 생성하는 과정을 래스터라이제이션(Rasterization)이라 한다. 상기 래스터라이제이션 과정에서는 3차원 모델의 기본 단위인 삼각형을 기초로 2차원 화면을 생성하는 연산을 수행하였다.
종래 기술에 따르면, 래스터라이제이션 과정에서 처리해야 할 각각의 삼각형을 전체 화면에 대하여 처리하였는데, 스크린 해상도와 동일한 크기의 프레임 버퍼 (컬러 버퍼 + Z 버퍼)를 필요로 한다. 이 경우 프레임 버퍼는 그 크기로 인해 칩 내부에 임베드 시키기가 쉽지 않으므로 랜덤한 외부 메모리 액세스를 통해 접근을 하게 된다. 외부 메모리 액세스는 칩 내부의 메모리 액세스에 비해 약 10배의 전력을 소모하기 때문에 저전력을 추구하는 모바일 환경에서는 이러한 잦은 외부 메모리 액세스를 줄이는 것이 큰 관건이다. 따라서, 상기와 같은 종래 기술의 문제점을 해결하기 위하여 개발된 것이 타일 기반 3차원 렌더링 방법이다.
도 1은 종래 기술에 따른 타일 기반 3차원 렌더링 방법을 도시한 도면이다.
도면에 도시한 바와 같이, 전체 화면 중 삼각형(110)의 전부 또는 일부를 포함하고 있는 타일은 도면 부호 (120)에 표시된 부분이고, 그 이외의 부분은 삼각형의 일부 조차도 포함하고 있지 않다. 이때 하나의 타일에 대한 렌더링은 칩 내부에 임베드된 하나의 타일 해상도 크기의 프레임 메모리를 이용하여 수행하며 타일에 대한 렌더링이 완료되면 한번에 버스트 모드를 이용하여 외부 프레임 버퍼의 타일 위치로 전송을 하게 된다. 이와 같이, 타일 기반 렌더링 방법에 따르면, 빈번한 외부 프레임 버퍼 메모리 액세스를 없애고 타일당 한번의 효과적인 외부 버스트 메모리 액세스만을 수행하기 때문에 저전력 구동이라는 측면에서 매우 유리해진다.
이와 같이 타일 기반 3차원 렌더링 방법을 수행하기 위해서는 삼각형(110)의 전부 또는 일부를 포함하는 타일을 판별하는 작업이 필요한데, 이를 타일 비닝(Tile Binning)이라고 한다. 그런데, 이와 같은 타일 비닝 방법은 기존의 렌더링 방법에는 불필요 하지만 타일 기반 3차원 렌더링 방법에 있어서는 부하가 크게 걸리는 작업이며, 정확하게 삼각형(110)의 전부 또는 일부를 포함하는 타일만을 판별해 내는 것이 매우 어렵다. 따라서, 빠른 시간에 정확하게 삼각형의 전부 또는 일부를 포함하는 타일을 판별해 낼 수 있는 방법이 요구된다.
도 2는 종래 기술에 따른 분할 기법을 이용한 타일 비닝 방법을 도시한 도면이다.
분할 기법을 이용한 타일 비닝 방법은 빠른 시간에 삼각형(210)의 전부 또는 일부를 포함하는 타일을 판별해 내기 위하여 고안된 것이다. 도면에 도시한 바와 같이, 이 방법에서는 먼저 도면 부호 (201)에서와 같이 삼각형(210)을 포함하는 최소의 사각형(220)을 구하고, 사각형(220)의 크기가 소정의 임계 값보다 큰 경우에는 도면 부호 (202)에서와 같이 삼각형(210)의 세 모서리의 중점을 연결하여 4개의 삼각형으로 분할하고, 각각의 분할된 삼각형을 포함하는 최소의 사각형을 구한다. 이와 같은 과정을 각각의 사각형의 크기가 상기 임계 값보다 작을 때까지 반복한다. 만일 사각형의 크기가 상기 임계 값 보다 작아지면, 상기 사각형들을 포함하는 타일들을 상기 삼각형(210)의 전부 또는 일부를 포함하는 타일로 판별한다.
하지만, 상기한 방법에 따르면, 도면 부호 (230)과 같이, 상기 삼각형(210)의 전부 또는 일부를 포함하는 타일로 판별되었으나, 실제로는 상기 삼각형(210)의 일부 조차 포함하고 있지 않은 타일이 존재할 수 있으므로, 완전히 정확한 처리를 기대할 수 없다. 또한, 한 단계 마다 삼각형이 4배로 늘어나므로, 삼각형의 크기가 큰 경우에 단계가 많아지면, 4n으로 기하급수적으로 처리해야 할 삼각형의 개수가 늘어나게 되어 연산 속도가 매우 느려질 수 있다는 문제점이 있다. 마지막으로 알고리즘 자체의 단순함과는 별개로 구현이라는 측면에서는 새로 생성되는 정점들을 삼각형의 형태로 재배열 해주는 과정이 추가적인 오버헤드로 작용할 것이다.
따라서, 삼각형의 전부 또는 일부를 포함하는 타일 만을 정확하게 찾아낼 수 있으며, 삼각형의 형태나 크기에 무관하게 일정한 성능을 기대할 수 있는 방법이 있다면, 타일 비닝 방법을 더욱 효율적으로 수행할 수 있을 것이다. 이에 본 발명은 하프 플레인 에지 함수를 이용하여 삼각형의 전부 또는 일부를 포함하는 타일 만을 정확하게 찾아낼 수 있는 방법 및 시스템에 관하여 제안하고자 한다.
본 발명은 상기와 같은 종래기술을 개선하기 위해 안출된 것으로서, 삼각형의 전부 또는 일부가 포함되는 타일을 정확히 판별하도록 함으로써, 삼각형에 대한 렌더링이 필요하지 않은 부분에서 불필요한 렌더링 작업이 수행되지 않도록 하는 것을 목적으로 한다.
또한 본 발명은 하프 플레인 에지 함수의 값을 이용하여 삼각형의 전부 또는 일부가 포함되는 타일을 정확히 판별할 수 있도록 하는 것을 목적으로 한다.
또한 본 발명은 삼각형을 포함하는 최소의 사각형이 포함되는 타일에 대해서만 타일 판별 작업을 수행하도록 함으로써, 불필요한 판별 작업을 줄이도록 하는 것을 목적으로 한다.
또한 본 발명은 삼각형의 전부 또는 일부를 포함하는 타일을 판별하는 작업을 타일 별로 병렬적으로 수행할 수 있도록 함으로써 빠르게 판별할 수 있도록 하는 것을 목적으로 한다.
또한 본 발명은 하프 플레인 에지 함수의 특성을 이용하여 모든 타일 노드에 대하여 하프 플레인 에지 함수를 계산하지 않아도, 타일 노드의 판별 값을 결정할 수 있도록 하는 것을 목적으로 한다.
상기의 목적을 이루고 종래기술의 문제점을 해결하기 위하여, 본 발명의 일실시예에 따른 타일 비닝 방법은 삼각형에 대하여 렌더링을 수행하기 위한 화면을 복수의 타일들로 분할하는 단계, 상기 타일 각각의 타일 노드의 판별 값을 결정하는 단계 및 상기 선별된 타일 각각의 상기 타일 노드의 상기 판별 값을 기초로 상기 선별된 타일 중 상기 삼각형의 전부 또는 일부를 포함하고 있는 타일을 판별하는 단계를 포함한다.
또한 본 발명의 일실시예에 따른 타일 비닝 시스템은 삼각형에 대하여 렌더링을 수행하기 위한 화면을 복수의 타일들로 분할하는 타일 분할부, 상기 타일 각각의 타일 노드의 판별 값을 결정하는 판별 값 결정부 및 상기 타일 각각의 상기 타일 노드의 상기 판별 값을 기초로 상기 타일 중 상기 삼각형의 전부 또는 일부를 포함하고 있는 타일을 판별하는 타일 판별부를 포함한다.
이하 첨부된 도면들 및 첨부된 도면들에 기재된 내용들을 참조하여 본 발명의 바람직한 실시예를 상세하게 설명하지만, 본 발명이 실시예들에 의해 제한되거나 한정되는 것은 아니다. 각 도면에 제시된 동일한 참조부호는 동일한 부재를 나타낸다.
도 3은 본 발명의 일실시예에 따른 타일 비닝 방법의 흐름을 도시한 흐름도이다.
여기에서는 본 발명의 일실시예에 따른 타일 비닝 방법의 전반적인 흐름에 관하여 설명하고, 각 단계에 대해서는 아래의 도 4 내지 도 7에서 보다 상세히 기 술하도록 한다.
단계 (S301)에서는 삼각형에 대하여 렌더링을 수행하기 위한 화면을 복수의 타일들로 분할한다. 상기 타일은 사용자에게 표시될 화면 해상도를 소정의 크기로 나눈 것으로, 각각의 타일에서 렌더링 과정을 수행함으로써, 전체 화면에 대한 렌더링을 수행할 수 있다. 예를 들면, 640 * 480의 해상도를 가지는 화면을 32 * 32의 해상도를 가지는 타일들로 분할하면, 20 * 15개의 타일이 렌더링을 위하여 사용된다. 이와 같이 전체 화면을 복수의 타일로 분할하게 되면, 해상도가 낮은 각각의 타일에 대해서 렌더링을 수행하는 것만으로 전체 화면의 렌더링을 처리할 수 있다.
단계 (S302)에서는 단계 (S301)에서 분할된 타일들 중 상기 삼각형을 포함하는 최소의 사각형의 범위에 포함되는 타일을 선별한다. 단계 (S301)에서 분할된 타일 중에 렌더링을 수행해야 하는 타일은 상기 삼각형의 전부 또는 일부를 포함하는 타일이다. 따라서, 상기 타일들 중에서 상기 삼각형의 전부 또는 일부를 포함하는 타일을 판별해야 하는데, 사각형은 삼각형에 비하여 그 범위가 명확하므로, 그 범위를 쉽게 판별할 수 있다. 따라서, 삼각형의 전부 또는 일부를 포함하는 타일을 판별하기 이전에, 삼각형을 포함하는 최소의 사각형을 구하고, 상기 최소의 사각형의 범위에 포함되는 타일을 선별함으로써, 타일 비닝 작업의 대상이 되는 타일을 크게 줄일 수 있다. 최소의 사각형을 구하는 방법에 대해서는 도 4에서 상술하도록 한다.
단계 (S303)에서는 단계 (S302)에서 선별된 타일 각각의 타일 노드의 판별 값을 결정한다. 상기 타일 노드는 타일의 꼭지점이 될 수 있으며, 상기 판별 값은 상기 타일 노드가 상기 삼각형을 기준으로 어떤 위치에 존재하는지 확인할 수 있도록 한다. 따라서, 단계 (S303)에서 판별 값을 결정하면, 타일의 네 꼭지점 각각이 상기 삼각형을 기준으로 어떤 위치에 존재하는지에 대한 정보를 얻을 수 있으므로, 이를 이용하여 각각의 타일이 삼각형의 전부 또는 일부를 포함하는지 여부를 확인할 수 있다.
단계 (S303)에서 결정하는 판별 값은 제1 판별 값, 제2 판별 값 및 제3 판별 값을 포함할 수 있으며, 상기 제1 판별 값, 제2 판별 값 및 제3 판별 값은 각각 상기 삼각형의 제1 모서리, 제2 모서리 및 제3 모서리 각각에 대한 상기 타일 노드에서의 하프 플레인 에지 함수 값의 부호를 기초로 결정될 수 있다. 일례로, 하프 플레인 에지 함수 값이 양수이면 1, 음수 또는 0이면 0으로 결정될 수 있으며, 양수, 음수, 0에 각각 다른 값을 설정할 수도 있다. 이와 같이 각각의 타일 노드에서 상기 삼각형의 세 모서리에 대한 하프 플레인 에지 함수 값의 부호를 확인할 수 있는 방법이라면, 어떤 방법으로도 판별 값을 기록할 수 있다.
단계 (S303)에서 판별 값을 결정하기 위하여 사용하는 하프 플레인 에지 함수는 직선 및 점의 관계를 나타내는 함수로, 하프 플레인 에지 함수 값은 아래의 수학식에 의하여 계산된다.
[수학식1]
△x = (x1 - x0)
△y = (y1 - y0)
E(x,y) = (x - x0) * △y - (y - y0) * △x
단, (x0, y0) 및 (x1, y1)은 각각 상기 직선의 양 끝 점을 의미하며, (x,y)는 상기 점의 좌표를 의미한다. 또한, E(x,y) 값이 하프 플레인 에지 함수 값이 된다. 상기 하프 플레인 에지 함수 값은 상기 점이 상기 직선의 좌측에 있는 경우에는 음수 값을 가지며, 상기 직선의 우측에 있는 경우에는 양수의 값을 가지는 성질이 있다. 그리고, (x0, y0) 및 (x1, y1)은 직선의 방향을 나타내는 것으로, 본 발명에서는 삼각형의 둘레를 따라서 시계방향으로 회전하는 방향으로 삼각형의 각 모서리의 방향을 결정하도록 한다. 상기 방향은 실시예에 따라서 달라질 수 있지만, 삼각형의 내부에 존재하는 타일 노드의 제1 판별 값, 제2 판별 값 및 제3 판별 값이 동일한 값을 가지도록 하려면, 각 모서리는 서로 꼬리를 무는 방향을 가져야 한다.
또한, 상기 하프 플레인 에지 함수는 아래의 수학식2와 같은 성질을 가진다.
[수학식2]
E(x+1,y) = E(x,y) + △y
E(x-1,y) = E(x,y) - △y
E(x,y+1) = E(x,y) - △x
E(x,y-1) = E(x,y) + △x
상기 수학식2는 상기 수학식1로부터 간단하게 구할 수 있다. 또한, 상기 수학식2의 성질을 이용하면, 소정의 직선에 대하여 수직 또는 수평 방향으로 이동 하는 점에 대하여 하프 플레인 에지 함수 값의 연산 과정을 크게 줄일 수 있다. 그리고, 동일한 방향으로 수직 또는 수평 이동을 하는 경우에는 하프 플레인 에지 함수 값이 일정하게 증가하거나 감소하기 때문에, 증가하는 방향에서 하프 플레인 에지 함수 값이 음수에서 양수로 변경되었다면, 그 이후의 점들은 모두 하프 플레인 에지 함수 값이 양수를 가지게 되며, 감소하는 방향에서 하프 플레인 에지 함수 값이 음수로 변경되었다면, 그 이후의 점들은 모두 하프 플레인 에지 함수 값이 음수가 된다.
단계 (S304)에서는 단계 (S303)에서 결정한 타일 각각의 타일 노드의 판별 값을 기초로 상기 타일 중 상기 삼각형의 전부 또는 일부를 포함하는 타일을 판별한다. 단계 (S303)에서 결정한 타일 노드의 판별 값을 이용하면 상기 삼각형을 기준으로 상기 타일 노드의 위치에 관한 정보를 확인할 수 있으므로, 단계 (S304)에서는 타일의 각 꼭지점인 타일 노드의 상기 삼각형을 기준으로 한 위치에 관한 정보를 이용하여, 상기 타일이 상기 삼각형의 전부 또는 일부를 포함하는지 판별할 수 있다.
예를 들어, 단계 (S303)에서 하프 플레인 에지 함수 값의 부호를 기초로 타일 노드의 판별 값을 결정한 경우, 타일의 네 꼭지점인 타일 노드의 제1 판별 값이 모두 동일하다면, 상기 타일의 네 꼭지점이 제1 모서리를 기준으로 모두 같은 방향에 존재하므로, 상기 제1 모서리는 상기 타일에 포함되지 않는다. 따라서, 상기 타일의 각각의 타일 노드의 제1 판별 값이 서로 동일하고, 제2 판별 값이 서로 동일하며, 제3 판별 값이 서로 동일하다면, 상기 타일은 상기 삼각형의 제1 모서 리, 제2 모서리 및 제3 모서리 중 어느 하나도 포함하지 않는다. 따라서 이와 같은 경우에는 상기 타일은 상기 삼각형의 내부에 존재하거나, 상기 삼각형의 외부에 존재한다. 그런데, 삼각형의 각 모서리의 방향을 시계방향으로 하여 하프 플레인 에지 함수 값을 계산한 경우에, 삼각형의 내부에 존재하려면, 모든 타일 노드의 제1 판별 값, 제2 판별 값 및 제3 판별 값이 모두 양수여야 한다.
또한, 단계 (S304)에서, 타일의 각각의 타일 노드 중에서 제1 판별 값, 제2 판별 값 및 제3 판별 값 중 어느 하나라도 다른 타일 노드가 존재한다면, 어느 하나의 모서리가 상기 타일에 포함되는 것이므로, 상기 타일은 상기 삼각형의 일부를 포함하게 된다. 결국, 상기 타일 중 상기 타일에 포함되는 타일 노드들의 제1 판별 값이 서로 동일하고, 제2 판별 값이 서로 동일하고, 제3 판별 값이 서로 동일하며, 상기 타일 노드들 중 어느 하나의 제1 판별 값, 제2 판별 값 및 제3 판별 값 중 적어도 어느 하나가 음수인 타일을 제외한 나머지 타일을 상기 삼각형의 전부 또는 일부를 포함하고 있는 일로 판별하도록 할 수 있다. 각각의 타일의 타일 노드의 판별 값이 결정되어 있다면, 이와 같은 비교 과정은 병렬적으로 수행될 수 있으므로, 연산 시간을 크게 줄일 수 있다.
그리고, 단계 (S304)에서는 상기한 바와 같이, 타일에 포함된 모든 타일 노드의 제1 판별 값, 제2 판별 값 및 제3 판별 값이 양수인 경우에는 모든 타일 노드가 삼각형의 내부에 포함되고, 상기 타일 노드는 상기 타일의 네 꼭지점이므로, 상기 타일 전체가 상기 삼각형의 내부에 포함되는 것으로 판별할 수 있다.
도 4는 본 발명의 일실시예에 따른 타일 비닝 방법에서, 삼각형을 포함하 는 최소의 사각형을 구하는 방법의 일례를 도시한 도면이다.
도면에 도시한 바와 같이, 도면 부호 (410), 도면 부호 (420) 및 도면 부호 (430)은 삼각형의 세 꼭지점이다. 상기 삼각형을 포함하는 최소의 사각형을 구하기 위해서는 상기 삼각형의 세 꼭지점의 좌표를 이용할 수 있다. 세 꼭지점의 좌표 중 x좌표의 최소 값 및 최대 값을 구하고, y좌표의 최소 값 및 최대 값을 구하면 상기 x좌표 및 y좌표의 범위에 포함되는 사각형은 상기 삼각형을 포함하는 최소의 사각형이 된다. 예를 들어, 도면 부호 (410)의 좌표가 (3,2)이고, 도면 부호 (420)의 좌표가 (19,16)이며, 도면 부호 (430)의 좌표가 (16, 19)인 경우에, 상기 세 꼭지점의 x좌표 중에서 최소값은 3이고, 최대 값은 19가 된다. 또한 세 꼭지점의 y좌표 중에서 최소 값은 2이며, 최대 값은 19가 된다. 따라서, 이와 같은 경우에는 (3,2), (19,2), (3,19), (19,19)를 꼭지점으로 하는 사각형이 상기 삼각형을 포함하는 최소의 사각형이 될 수 있다. 이 이외에도 삼각형을 포함하는 최소의 사각형을 구할 수 있는 방법이라면 어떤 방법이라도 본 발명에 적용 가능하며, 본 발명은 상기 사각형을 구하는 방법에 의하여 제한되지 않는다.
도 5는 본 발명의 일실시예에 따른 타일 비닝 방법에서, 각각의 타일 노드에 대한 하프 플레인 에지 함수를 계산하는 방법의 일례를 도시한 도면이다.
본 발명의 일실시예에 따른 타일 비닝 방법에서는 삼각형의 각각의 모서리에 대하여 각 타일 노드의 판별 값을 결정한다. 도면에서는 삼각형의 모서리 중 하나의 모서리(510)에 대하여 각 타일 노드에서의 하프 플레인 에지 함수를 계산함으로써, 각 타일 노드에서의 판별 값을 결정하는 방법을 도시하고 있다.
도면에 도시한 바와 같이, 모서리(510)에 대하여 도면 부호 (520)의 타일 노드에서부터 판별 값의 연산을 시작한다면, 먼저 상기 수학식1을 이용하여, 도면 부호 (520)의 타일 노드에서의 하프 플레인 에지 함수 값을 계산한다. 도면 부호 (520)의 타일 노드에서의 하프 플레인 에지 함수 값이 구해지면, 상기 값 및 상기 수학식2을 이용하여, 도면 부호 (520)의 타일 노드와 인접한 타일 노드들의 하프 플레인 에지 함수 값을 구할 수 있다. 도면에서는 모서리(510)이 우하향하는 방향을 가지게 되므로, 도면 부호 (520)의 하프 플레인 에지 함수 값은 음수의 값을 가지게 된다.
그런데, 도면 부호 (520)의 타일 노드와 인접한 타일 노드 중에서 좌측 또는 아래의 타일 노드는 하프 플레인 에지 함수 값이 양수가 된다. 따라서, 도면 부호 (530) 및 도면 부호 (540)에서와 같이, 도면 부호 (520)의 타일 노드를 기준으로 좌측 및 아래의 타일 노드의 하프 플레인 에지 함수 값은 모두 양수로 결정되고, 우측 및 위의 타일 노드의 하프 플레인 에지 함수 값은 모두 음수로 결정된다.
이에 따라서 도면 부호 (530) 및 도면 부호 (540)에 포함되는 타일 노드들의 판별 값은 모두 결정될 수 있다. 이와 같이 하나의 타일 노드(520)에 대하여 수학식1을 이용하여 하프 플레인 에지 함수 값을 계산하고, 상기 수학식2를 이용하여 그 인접 타일 노드의 하프 플레인 에지 함수 값을 계산하는 것으로, 도면 부호 (530) 및 도면 부호 (540)에 해당되는 모든 타일 노드의 판별 값을 결정할 수 있다. 상기한 방법으로 판별 값을 결정하기 위한 연산 과정을 크게 줄일 수 있다.
특히, 판별 값을 결정하는 과정을 시작하는 시작 타일 노드가 직선과 가까 이에 존재할수록 연산을 크게 줄일 수 있는데, 이를 위해서, 삼각형의 세 꼭지점이 위치한 타일의 각 타일 노드로부터 상기 판별 값을 결정하는 과정이 시작되도록 할 수 있다. 상기 모서리(510) 이외의 다른 모서리들에 대해서도 동일한 방법으로 판별 값을 결정할 수 있다.
도 6은 삼각형의 내부 및 외부에서의 하프 플레인 에지 함수 값의 부호를 도시한 도면이다.
도면에 도시한 바와 같이, 삼각형의 세 모서리의 방향을 시계방향으로 회전하는 방향으로 하여 각 모서리에 대한 하프 플레인 에지 함수 값을 구하게 되면, 삼각형의 내부(610)는 모든 모서리에 대하여 양수의 값을 가지게 되며, 삼각형의 외부(620, 630 및 640)는 적어도 어느 하나의 모서리에 대한 하프 플레인 에지 함수 값이 음수가 된다. 본 발명의 일실시예에 따른 타일 비닝 방법에서는 이와 같은 하프 플레인 에지 함수의 성질을 이용하여, 삼각형의 전부 또는 일부를 포함하는 타일을 판별할 수 있다.
도 7은 본 발명의 일실시예에 따른 타일 비닝 방법에서 삼각형의 전부 또는 일부를 포함하는 타일을 판별하는 방법의 일례를 도시한 도면이다.
도면에서는 본 발명의 일실시예에 따른 타일 비닝 방법을 이용하여 3 * 3으로 타일을 분할하고, 분할된 타일 중에서 삼각형의 전부 또는 일부를 포함하는 타일을 판별한다. 도면에서 각 타일 노드에 표시되어 있는 세 개의 원은 각 타일 노드의 제1 판별 값, 제2 판별 값 및 제3 판별 값을 의미하며, 흰 색 원은 하프 플레인 에지 함수가 양수인 타일 노드를 의미하고, 검은 색 원은 하프 플레인 에지 함수가 음수인 타일 노드를 의미한다.
도면에 도시한 바와 같이, 도면 부호 (710)의 영역에 속하는 7개의 타일은 각각의 타일에 포함된 타일 노드의 제1 판별 값, 제2 판별 값 및 제3 판별 값이 모두 동일하지 않으며, 어느 하나의 타일 노드도 제1 판별 값, 제2 판별 값 및 제3 판별 값이 모두 양수가 아니다. 따라서, 상기 7개의 타일은 상기 삼각형의 모서리 중 어느 하나를 포함하고 있는 것이므로, 상기 삼각형의 일부를 포함하는 타일로 판별된다. 하지만 도면 부호 (720)의 타일은 상기 타일의 네 꼭지점인 타일 노드가 모두 음수의 제1 판별 값을 가지고, 양수의 제2 판별 값 및 제3 판별 값을 가지므로, 상기 삼각형의 일부 조차 포함하지 않는 타일이다. 또한, 도면 부호 (730)의 타일은 상기 타일의 네 꼭지점의 타일 노드가 모두 양수의 제1 판별 값 및 제3 판별 값을 가지고, 음수의 제2 판별 값을 동일하게 가지므로, 상기 삼각형의 일부 조차 포함하지 않는 타일이다.
상기한 바와 같이 각 타일 노드의 판별 값을 가지고 있으면, 간단한 비교 연산만으로 각 타일이 상기 삼각형의 전부 또는 일부를 포함하는지 여부를 판별할 수 있다. 또한, 각각의 타일에 대하여 순차적으로 판별할 필요가 없으므로, 모든 타일에 대하여 병렬적으로 판별하는 것이 가능하다. 따라서, 처리 속도를 크게 향상시킬 수 있는 효과가 있다.
도 8는 본 발명의 일실시예에 따른 타일 비닝 시스템의 내부 구성을 도시한 도면이다.
도면에 도시한 바와 같이, 본 발명의 일실시예에 따른 타일 비닝 시스 템(801)은 타일 분할부(810), 범위 선별부(820), 판별 값 결정부(830) 및 타일 판별부(840)를 포함한다. 상기한 구성요소들은 소프트웨어, 하드웨어 또는 소프트웨어 및 하드웨어가 결합된 형태로 구현될 수 있으며, 서로 연결될 수 있다. 이하 구성요소 별로 상술하도록 한다.
타일 분할부(810)는 삼각형에 대하여 렌더링을 수행하기 위한 화면을 복수의 타일들로 분할한다. 상기 타일은 사용자에게 표시될 화면 해상도를 소정의 크기로 나눈 것으로, 각각의 타일에서 렌더링 과정을 수행함으로써, 전체 화면에 대한 렌더링을 수행할 수 있다. 예를 들면, 640 * 480의 해상도를 가지는 화면을 32 * 32의 해상도를 가지는 타일들로 분할하면, 20 * 15개의 타일이 렌더링을 위하여 사용된다. 이와 같이 전체 화면을 복수의 타일로 분할하게 되면, 해상도가 낮은 각각의 타일에 대해서 렌더링을 수행하는 것만으로 전체 화면의 렌더링을 처리할 수 있다.
범위 선별부(820)는 타일 분할부(810)에서 분할된 타일들 중 상기 삼각형을 포함하는 최소의 사각형의 범위에 포함되는 타일을 선별한다. 타일 분할부(810)에서 분할된 타일 중에 렌더링을 수행해야 하는 타일은 상기 삼각형의 전부 또는 일부를 포함하는 타일이다. 따라서, 상기 타일들 중에서 상기 삼각형의 전부 또는 일부를 포함하는 타일을 판별해야 하는데, 사각형은 삼각형에 비하여 그 범위가 명확하므로, 그 범위를 쉽게 판별할 수 있다. 따라서, 삼각형의 전부 또는 일부를 포함하는 타일을 판별하기 이전에, 삼각형을 포함하는 최소의 사각형을 구하고, 상기 최소의 사각형의 범위에 포함되는 타일을 선별함으로써, 타일 비닝 작업 의 대상이 되는 타일을 크게 줄일 수 있다.
판별 값 결정부(830)는 범위 선별부(820)에서 선별된 타일 각각의 타일 노드의 판별 값을 결정한다. 상기 타일 노드는 타일의 꼭지점이 될 수 있으며, 상기 판별 값은 상기 타일 노드가 상기 삼각형을 기준으로 어떤 위치에 존재하는지 확인할 수 있도록 한다. 따라서, 판별 값 결정부(830)에서 판별 값을 결정하면, 타일의 네 꼭지점 각각이 상기 삼각형을 기준으로 어떤 위치에 존재하는지에 대한 정보를 얻을 수 있으므로, 이를 이용하여 각각의 타일이 삼각형의 전부 또는 일부를 포함하는지 여부를 확인할 수 있다.
판별 값 결정부(830)에서 결정하는 판별 값은 제1 판별 값, 제2 판별 값 및 제3 판별 값을 포함할 수 있으며, 상기 제1 판별 값, 제2 판별 값 및 제3 판별 값은 각각 상기 삼각형의 제1 모서리, 제2 모서리 및 제3 모서리 각각에 대한 상기 타일 노드에서의 하프 플레인 에지 함수 값의 부호를 기초로 결정될 수 있다. 일례로, 하프 플레인 에지 함수 값이 양수이면 1, 음수 또는 0이면 0으로 결정될 수 있으며, 양수, 음수, 0에 각각 다른 값을 설정할 수도 있다. 이와 같이 각각의 타일 노드에서 상기 삼각형의 세 모서리에 대한 하프 플레인 에지 함수 값의 부호를 확인할 수 있는 방법이라면, 어떤 방법으로도 판별 값을 기록할 수 있다. 상기 하프 플레인 에지 함수 값은 상기 수학식1을 이용하여 계산할 수 있으며, 상기 하프 플레인 에지 함수는 상기 수학식2의 특성을 가진다.
타일 판별부(840)는 판별 값 결정부(830)에서 결정한 타일 각각의 타일 노드의 판별 값을 기초로 상기 타일 중 상기 삼각형의 전부 또는 일부를 포함하는 타 일을 판별한다. 판별 값 결정부(830)에서 결정한 타일 노드의 판별 값을 이용하면 상기 삼각형을 기준으로 상기 타일 노드의 위치에 관한 정보를 확인할 수 있으므로, 타일 판별부(840) 에서는 타일의 각 꼭지점인 타일 노드의 상기 삼각형을 기준으로 한 위치에 관한 정보를 이용하여, 상기 타일이 상기 삼각형의 전부 또는 일부를 포함하는지 판별할 수 있다.
일례로, 타일 판별부(840)는 결국, 상기 타일 중 상기 타일에 포함되는 타일 노드들의 제1 판별 값이 서로 동일하고, 제2 판별 값이 서로 동일하고, 제3 판별 값이 서로 동일하며, 상기 타일 노드들 중 어느 하나의 제1 판별 값, 제2 판별 값 및 제3 판별 값 중 적어도 어느 하나가 음수인 타일을 제외한 나머지 타일을 상기 삼각형의 전부 또는 일부를 포함하고 있는 일로 판별하도록 할 수 있다. 각각의 타일의 타일 노드의 판별 값이 결정되어 있다면, 이와 같은 비교 과정은 병렬적으로 수행될 수 있으므로, 연산 시간을 크게 줄일 수 있다.
그리고, 타일 판별부(840)에서는 상기한 바와 같이, 타일에 포함된 모든 타일 노드의 제1 판별 값, 제2 판별 값 및 제3 판별 값이 양수인 경우에는 모든 타일 노드가 삼각형의 내부에 포함되고, 상기 타일 노드는 상기 타일의 네 꼭지점이므로, 상기 타일 전체가 상기 삼각형의 내부에 포함되는 것으로 판별할 수 있다.
도 9은 본 발명의 일실시예에 따른 타일 비닝 시스템에서 각각의 타일에 대하여 삼각형의 전부 또는 일부를 포함하는지 여부를 병렬적으로 판단하기 위한 회로를 도시한 도면이다.
도면에서, 도면 부호 (901)은 각 타일에 대하여 타일 비닝을 수행하기 위 하여 구성된 시스템으로, 도면 부호 (910)은 각 타일 노드의 판별 값을 저장하고 있는 기록 장치이며, 도면 부호 (920)은 상기 기록 장치(910)에 기록된 값을 이용하여 타일 비닝 방법을 수행하는 회로 장치이다. 상기 기록 장치(910)는 상기 기록 장치(910)에 대응되는 타일 노드에서의 제1 판별 값, 제2 판별 값 및 제3 판별 값을 저장해야 하는데, 제1 판별 값, 제2 판별 값 및 제3 판별 값은 각각 하프 플레인 에지 함수 값의 부호를 나타내므로, 1 bit로 표현 가능하다. 따라서, 상기 기록 장치(910) 각각은 3bit의 용량으로 충분하다.
또한, 도면 부호 (902)는 도면 부호 (920)의 회로 장치를 도시한 것이다. 상기 회로 장치는 상기 회로 장치에서 확인할 수 있는 4개의 타일 노드의 저장 장치로부터 판별 값을 수신한다. 상기 판별 값은 양수인 경우에 1, 음수인 경우에 0의 값을 가진다. 도면 부호 (930)에서는 상기 4개의 타일 노드 중 어느 하나의 제1 판별 값, 제2 판별 값 및 제3 판별 값이 모두 1인 경우에는 0을, 그렇지 않은 경우에는 1을 출력한다. 또한, 도면 부호 (940)에서는 위에서부터 순서대로 각각 제1 판별 값, 제2 판별 값 및 제3 판별 값을 비교하는데, 각각의 판별 값이 모두 동일한 경우에는 1을 출력하고, 그렇지 않은 경우에는 0을 출력하게 되므로, 4개의 타일 노드의 판별 값들이 서로 일치하는지 여부를 판단할 수 있다. 따라서, 상기 회로 장치는 상기 회로 장치가 설치된 타일의 타일 노드 중 어느 하나도 판별 값이 모두 1이 아니며, 각각의 판별 값에 대하여 모든 타일 노드가 동일한 판별 값을 가지는 경우에만 1을 출력하게 된다. 이와 같이 1이 출력된 타일을 제거하면, 남은 타일이 삼각형의 전부 또는 일부를 포함하는 타일이 된다.
이와 같이 각각의 타일 별로 하나씩의 회로를 구성하게 되면, 간단한 논리 연산을 병렬적으로 수행하게 되어 빠른 시간에 타일 비닝을 수행할 수 있는 효과가 있다.
본 발명에 따른 타일 비닝 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 상기 매체는 프로그램 명령, 데이터 구조 등을 지정하는 신호를 전송하는 반송파를 포함하는 광 또는 금속선, 도파관 등의 전송 매체일 수도 있다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 본 발명의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상과 같이 본 발명은 비록 한정된 실시예와 도면에 의해 설명되었으나, 본 발명은 상기의 실시예에 한정되는 것은 아니며, 이는 본 발명이 속하는 분야에서 통상의 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형이 가능하다. 따라서, 본 발명 사상은 아래에 기재된 특허 청구 범위에 의해서만 파악되어야 하고, 이의 균등 또는 등가적 변형 모두는 본 발명 사상의 범주에 속한다고 할 것이다.
본 발명에 따르면 삼각형의 전부 또는 일부가 포함되는 타일을 정확히 판별하도록 함으로써, 삼각형에 대한 렌더링이 필요하지 않은 부분에서 불필요한 렌더링 작업이 수행되지 않도록 하는 효과가 있다.
또한 본 발명에 따르면 하프 플레인 에지 함수의 값을 이용하여 삼각형의 전부 또는 일부가 포함되는 타일을 정확히 판별할 수 있도록 하는 효과가 있다.
또한 본 발명에 따르면 삼각형을 포함하는 최소의 사각형이 포함되는 타일에 대해서만 타일 판별 작업을 수행하도록 함으로써, 불필요한 판별 작업을 줄이도록 하는 효과가 있다.
또한 본 발명에 따르면 삼각형의 전부 또는 일부를 포함하는 타일을 판별하는 작업을 타일 별로 병렬적으로 수행할 수 있도록 함으로써 빠르게 판별할 수 있도록 하는 효과가 있다.
또한 본 발명에 따르면 하프 플레인 에지 함수의 특성을 이용하여 모든 타일 노드에 대하여 하프 플레인 에지 함수를 계산하지 않아도, 타일 노드의 판별 값을 결정할 수 있도록 하는 효과가 있다.

Claims (17)

  1. 삼각형에 대하여 렌더링을 수행하기 위한 화면을 복수의 타일들로 분할하는 단계;
    상기 타일 각각의 타일 노드의 판별 값을 결정하는 단계; 및
    상기 타일 각각의 상기 타일 노드의 상기 판별 값을 기초로 상기 타일 중 상기 삼각형의 전부 또는 일부를 포함하고 있는 타일을 판별하는 단계
    를 포함하는 것을 특징으로 하는 타일 비닝 방법.
  2. 제1항에 있어서,
    상기 판별 값은 제1 판별 값, 제2 판별 값 및 제3 판별 값을 포함하고,
    상기 판별 값을 결정하는 상기 단계는,
    상기 타일 노드에서 상기 삼각형의 제1 모서리, 제2 모서리 및 제3 모서리 각각에 대한 하프 플레인 에지 함수 값의 부호 기초로 제1 판별 값, 제2 판별 값 및 제3 판별 값을 결정하는 것
    을 특징으로 하는 타일 비닝 방법.
  3. 제2항에 있어서,
    상기 삼각형의 전부 또는 일부를 포함하고 있는 타일을 판별하는 상기 단계는,
    상기 타일 중 상기 타일에 포함되는 타일 노드들의 제1 판별 값이 서로 동일하고, 제2 판별 값이 서로 동일하고, 제3 판별 값이 서로 동일하며, 상기 타일 노드들 중 어느 하나의 제1 판별 값, 제2 판별 값 및 제3 판별 값 중 적어도 하나가 음수인 타일을 제외한 나머지 타일을 상기 삼각형의 전부 또는 일부를 포함하고 있는 타일로 판별하는 것
    을 특징으로 하는 타일 비닝 방법.
  4. 제3항에 있어서,
    상기 삼각형의 전부 또는 일부를 포함하고 있는 타일을 판별하는 상기 단계는,
    상기 타일 각각에 대하여 병렬적으로 수행되는 것
    을 특징으로 하는 타일 비닝 방법.
  5. 제1항에 있어서,
    상기 분할된 타일들 중 상기 삼각형을 포함하는 최소의 사각형의 범위에 포함되는 타일을 선별하는 단계
    를 더 포함하고,
    상기 판별 값을 결정하는 상기 단계는,
    상기 선별된 타일에 대해서만 각각의 타일 노드의 판별 값을 결정하는 것
    을 특징으로 하는 타일 비닝 방법.
  6. 제5항에 있어서,
    상기 타일들 중 상기 삼각형을 포함하는 최소의 사각형을 포함하는 타일을 선별하는 상기 단계는,
    상기 삼각형의 꼭지점의 좌표를 기초로 상기 삼각형을 포함하는 최소의 사각형을 구하는 것
    을 특징으로 하는 타일 비닝 방법.
  7. 제2항에 있어서,
    상기 판별 값을 결정하는 상기 단계는,
    상기 타일 노드 중 임의의 타일 노드인 제1 타일 노드에서 상기 삼각형의 제1 모서리에 대한 하프 플레인 에지 함수 값을 계산하는 단계; 및
    상기 함수 값을 기초로 상기 제1 타일 노드와 인접한 타일 노드인 제2 타일 노드의 하프 플레인 에지 함수 값을 계산하는 단계
    를 포함하는 것을 특징으로 하는 타일 비닝 방법.
  8. 제7항에 있어서,
    상기 제1 타일 노드의 하프 플레인 에지 함수 값의 부호가 상기 제2 타일 노드에서의 하프 플레인 에지 함수 값의 부호와 다른 경우에, 상기 제2 타일 노드로부터 상기 제1 타일 노드에서 상기 제2 타일 노드로의 방향에 존재하는 타일 노드의 판별 값을 상기 제2 타일 노드의 판별 값으로 결정하는 단계
    를 더 포함하는 것을 특징으로 하는 타일 비닝 방법.
  9. 제7항에 있어서,
    상기 제1 타일 노드는 상기 삼각형의 꼭지점 중 어느 하나가 포함된 타일에 포함되는 타일 노드 중 하나인 것
    을 특징으로 하는 타일 비닝 방법.
  10. 제1항에 있어서,
    상기 타일 각각의 상기 타일 노드의 상기 판별 값을 기초로 상기 타일 중 상기 삼각형에 전부 포함되는 타일을 판별하는 단계
    를 더 포함하는 것을 특징으로 하는 타일 비닝 방법.
  11. 제10항에 있어서,
    상기 삼각형에 전부 포함되는 타일을 판별하는 상기 단계는,
    상기 타일 중 상기 타일에 포함되는 타일 노드 전부에 대해서 상기 제1 판별 값, 상기 제2 판별 값 및 상기 제3 판별 값이 모두 양수인 타일을 상기 삼각형에 전부 포함되는 타일로 판별하는 것
    을 특징으로 하는 타일 비닝 방법.
  12. 제1항에 있어서,
    상기 타일 노드는 상기 타일의 꼭지점인 것을 특징으로 하는 타일 비닝 방법.
  13. 제1항 내지 제12항 중 어느 한 항의 방법을 실행시키기 위한 프로그램을 기록한 컴퓨터 판독 가능한 기록매체.
  14. 삼각형에 대하여 렌더링을 수행하기 위한 화면을 복수의 타일들로 분할하는 타일 분할부;
    상기 타일 각각의 타일 노드의 판별 값을 결정하는 판별 값 결정부; 및
    상기 타일 각각의 상기 타일 노드의 상기 판별 값을 기초로 상기 타일 중 상기 삼각형의 전부 또는 일부를 포함하고 있는 타일을 판별하는 타일 판별부
    를 포함하는 것을 특징으로 하는 타일 비닝 시스템.
  15. 제14항에 있어서,
    상기 판별 값은 제1 판별 값, 제2 판별 값 및 제3 판별 값을 포함하고,
    상기 판별 값을 결정부는,
    상기 타일 노드에서 상기 삼각형의 제1 모서리, 제2 모서리 및 제3 모서리 각각에 대한 하프 플레인 에지 함수 값의 부호 기초로 제1 판별 값, 제2 판별 값 및 제3 판별 값을 결정하는 것
    을 특징으로 하는 타일 비닝 시스템.
  16. 제15항에 있어서,
    상기 타일 판별부는,
    상기 타일 중 상기 타일에 포함되는 타일 노드들의 제1 판별 값이 서로 동일하고, 제2 판별 값이 서로 동일하고, 제3 판별 값이 서로 동일하며, 상기 타일 노드들 중 어느 하나의 제1 판별 값, 제2 판별 값 및 제3 판별 값 중 적어도 어느 하나가 음수인 타일을 제외한 나머지 타일을 상기 삼각형의 전부 또는 일부를 포함하고 있는 타일로 판별하는 것
    을 특징으로 하는 타일 비닝 시스템.
  17. 제14항에 있어서,
    상기 분할된 타일들 중 상기 삼각형을 포함하는 최소의 사각형의 범위에 포함되는 타일을 선별하는 범위 선별부
    를 더 포함하고,
    상기 판별 값 결정부는,
    상기 선별된 타일에 대해서만 각각의 타일 노드의 판별 값을 결정하는 것
    을 특징으로 하는 타일 비닝 시스템.
KR1020060067857A 2006-07-20 2006-07-20 하프 플레인 에지 함수를 이용한 타일 비닝 방법 및 시스템 KR100762811B1 (ko)

Priority Applications (4)

Application Number Priority Date Filing Date Title
KR1020060067857A KR100762811B1 (ko) 2006-07-20 2006-07-20 하프 플레인 에지 함수를 이용한 타일 비닝 방법 및 시스템
JP2006305390A JP4521391B2 (ja) 2006-07-20 2006-11-10 半平面エッジ関数を用いたタイルビニング方法およびシステム
US11/604,691 US8345064B2 (en) 2006-07-20 2006-11-28 Method and system for tile binning using half-plane edge function
EP06125221.9A EP1881456B1 (en) 2006-07-20 2006-12-01 Method and system for tile binning using half-plane edge function

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020060067857A KR100762811B1 (ko) 2006-07-20 2006-07-20 하프 플레인 에지 함수를 이용한 타일 비닝 방법 및 시스템

Publications (1)

Publication Number Publication Date
KR100762811B1 true KR100762811B1 (ko) 2007-10-02

Family

ID=38683482

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020060067857A KR100762811B1 (ko) 2006-07-20 2006-07-20 하프 플레인 에지 함수를 이용한 타일 비닝 방법 및 시스템

Country Status (4)

Country Link
US (1) US8345064B2 (ko)
EP (1) EP1881456B1 (ko)
JP (1) JP4521391B2 (ko)
KR (1) KR100762811B1 (ko)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101082547B1 (ko) 2009-10-27 2011-11-10 동의대학교 산학협력단 반평면 경계 함수를 사용하는 삼각형의 정점 정렬 장치 및 방법과, 삼각형의 정점 정렬 방법을 프로그램 코드로 기록한 컴퓨터 판독 가능한 기록매체
US9159157B2 (en) 2011-11-09 2015-10-13 Samsung Electronics Co., Ltd. Apparatus and method for tile binning
US9805502B2 (en) 2012-02-27 2017-10-31 Samsung Electronics Co., Ltd. Rendering system and method
US9984497B2 (en) 2014-08-11 2018-05-29 Samsung Electronics Co., Ltd. Method and apparatus for performing tile-based path rendering
US10210639B2 (en) 2015-03-20 2019-02-19 Samsung Electronics Co., Ltd. Method and apparatus for tile-based rendering
US10529098B2 (en) 2015-04-14 2020-01-07 Samsung Electronics Co., Ltd. Method and apparatus for performing tile binning for path rendering

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20120065589A (ko) * 2010-12-13 2012-06-21 삼성전자주식회사 저전력을 위한 타일 비닝 장치 및 방법
US9633458B2 (en) * 2012-01-23 2017-04-25 Nvidia Corporation Method and system for reducing a polygon bounding box
US9842428B2 (en) * 2014-06-27 2017-12-12 Samsung Electronics Co., Ltd. Dynamically optimized deferred rendering pipeline
US9799091B2 (en) * 2014-11-20 2017-10-24 Intel Corporation Apparatus and method for efficient frame-to-frame coherency exploitation for sort-last architectures

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6975318B2 (en) 2002-06-25 2005-12-13 Intel Corporation Polygon binning process for tile-based rendering

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5446836A (en) 1992-10-30 1995-08-29 Seiko Epson Corporation Polygon rasterization
US5369739A (en) * 1993-07-09 1994-11-29 Silicon Graphics, Inc. Apparatus and method for generating point sample masks in a graphics display system
AU5686199A (en) 1998-08-20 2000-03-14 Apple Computer, Inc. Deferred shading graphics pipeline processor
GB2343603B (en) * 1998-11-06 2003-04-02 Videologic Ltd Shading 3-dimensional computer generated images
US20010040583A1 (en) * 1999-02-03 2001-11-15 Ati Internation, Srl Trivial discard of triangles reusing regional comparisons
US6437780B1 (en) * 1999-03-17 2002-08-20 Nvidia Us Investment Company Method for determining tiles in a computer display that are covered by a graphics primitive
WO2001037220A1 (en) 1999-11-18 2001-05-25 Info Assets, Inc. Rendering image data
JP3367506B2 (ja) * 2000-03-30 2003-01-14 日本電気株式会社 画像処理装置および画像処理方法
US6819321B1 (en) 2000-03-31 2004-11-16 Intel Corporation Method and apparatus for processing 2D operations in a tiled graphics architecture
US6885378B1 (en) * 2000-09-28 2005-04-26 Intel Corporation Method and apparatus for the implementation of full-scene anti-aliasing supersampling
US6900800B2 (en) * 2001-02-27 2005-05-31 David Robert Baldwin Tile relative origin for plane equations
US6738069B2 (en) * 2001-12-31 2004-05-18 Intel Corporation Efficient graphics state management for zone rendering
US7301537B2 (en) * 2002-12-20 2007-11-27 Telefonaktiebolaget Lm Ericsson (Publ) Graphics processing apparatus, methods and computer program products using minimum-depth occlusion culling and zig-zag traversal
US7218331B2 (en) * 2003-05-13 2007-05-15 Via Technologies, Inc. Bounding box in 3D graphics
US7551174B2 (en) * 2003-12-23 2009-06-23 Via Technologies, Inc. Method and apparatus for triangle rasterization with clipping and wire-frame mode support
GB0426170D0 (en) * 2004-11-29 2004-12-29 Falanx Microsystems As Processing of computer graphics

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6975318B2 (en) 2002-06-25 2005-12-13 Intel Corporation Polygon binning process for tile-based rendering

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101082547B1 (ko) 2009-10-27 2011-11-10 동의대학교 산학협력단 반평면 경계 함수를 사용하는 삼각형의 정점 정렬 장치 및 방법과, 삼각형의 정점 정렬 방법을 프로그램 코드로 기록한 컴퓨터 판독 가능한 기록매체
US9159157B2 (en) 2011-11-09 2015-10-13 Samsung Electronics Co., Ltd. Apparatus and method for tile binning
US9805502B2 (en) 2012-02-27 2017-10-31 Samsung Electronics Co., Ltd. Rendering system and method
US9984497B2 (en) 2014-08-11 2018-05-29 Samsung Electronics Co., Ltd. Method and apparatus for performing tile-based path rendering
US10672184B2 (en) 2014-08-11 2020-06-02 Samsung Electronics Co., Ltd. Method and apparatus for performing tile-based path rendering
US11074744B2 (en) 2014-08-11 2021-07-27 Samsung Electronics Co., Ltd. Method and apparatus for performing tile-based path rendering
US11694393B2 (en) 2014-08-11 2023-07-04 Samsung Electronics Co., Ltd. Method and apparatus for performing tile-based path rendering
US10210639B2 (en) 2015-03-20 2019-02-19 Samsung Electronics Co., Ltd. Method and apparatus for tile-based rendering
US10529098B2 (en) 2015-04-14 2020-01-07 Samsung Electronics Co., Ltd. Method and apparatus for performing tile binning for path rendering

Also Published As

Publication number Publication date
US20080018664A1 (en) 2008-01-24
JP2008027418A (ja) 2008-02-07
EP1881456A1 (en) 2008-01-23
JP4521391B2 (ja) 2010-08-11
EP1881456B1 (en) 2017-04-26
US8345064B2 (en) 2013-01-01

Similar Documents

Publication Publication Date Title
KR100762811B1 (ko) 하프 플레인 에지 함수를 이용한 타일 비닝 방법 및 시스템
KR100793990B1 (ko) 타일 기반 3차원 렌더링에서의 조기 z 테스트 방법 및시스템
US9697640B2 (en) Start node determination for tree traversal in ray tracing applications
JP6571884B2 (ja) グラフィックス処理におけるシャドーレイのツリー横断のための開始ノード決定
US10592242B2 (en) Systems and methods for rendering vector data on static and dynamic-surfaces using screen space decals and a depth texture
US20080030522A1 (en) Graphics system employing pixel mask
US11257181B2 (en) Tiling a primitive in a graphics processing system by edge-specific testing of a subset of tiles in a rendering space
KR20160069801A (ko) 렌더링 방법 및 장치
US9672642B2 (en) Apparatus and method of performing tile binning of bezier curve
US10242482B2 (en) Tiling a primitive in a graphics processing system
US9805495B2 (en) Single pass bounding volume hierarchy rasterization
US20070097118A1 (en) Apparatus and method for a frustum culling algorithm suitable for hardware implementation
US11551412B2 (en) Systems and methods for traversing implied subdivision hierarchical level of detail content
US9324127B2 (en) Techniques for conservative rasterization
US20190220411A1 (en) Efficient partitioning for binning layouts
Wang et al. A 18.4 M Triangles/s 122.6 mW Tile Co-processor for Embedded GPU Systems

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: 20120814

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20130822

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20140822

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20150820

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20160819

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20170817

Year of fee payment: 11

FPAY Annual fee payment

Payment date: 20180820

Year of fee payment: 12

FPAY Annual fee payment

Payment date: 20190814

Year of fee payment: 13