KR20150095144A - 그래픽스 데이터를 렌더링하는 방법 및 장치 - Google Patents

그래픽스 데이터를 렌더링하는 방법 및 장치 Download PDF

Info

Publication number
KR20150095144A
KR20150095144A KR1020140016283A KR20140016283A KR20150095144A KR 20150095144 A KR20150095144 A KR 20150095144A KR 1020140016283 A KR1020140016283 A KR 1020140016283A KR 20140016283 A KR20140016283 A KR 20140016283A KR 20150095144 A KR20150095144 A KR 20150095144A
Authority
KR
South Korea
Prior art keywords
tile
size
frame
objects
graphics data
Prior art date
Application number
KR1020140016283A
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 KR1020140016283A priority Critical patent/KR20150095144A/ko
Priority to US14/335,207 priority patent/US9741155B2/en
Publication of KR20150095144A publication Critical patent/KR20150095144A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/005General purpose rendering architectures
    • 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

Abstract

그래픽스 데이터를 렌더링하는 방법이 개시된다. 그래픽스 데이터를 렌더링하는 방법은 제 1 프레임 내에서 타일 별로 중첩되는 객체의 수를 산출하여, 산출된 객체의 수에 기초하여, 제 2 프레임의 타일의 크기를 결정하고, 결정된 타일의 크기에 기초하여 제 2 프레임을 분할하여, 분할된 타일별로 제 2 프레임을 렌더링함으로써 그래픽스 데이터의 렌더링 효율을 높일 수 있다.

Description

그래픽스 데이터를 렌더링하는 방법 및 장치 {Method and apparatus for rendering graphics data and medium record of}
그래픽스 데이터를 렌더링하는 방법 및 장치 {Method and apparatus for rendering graphics data and medium record of}
그래픽스 데이터 처리 시스템은 3차원의 좌표를 가지는 그래픽스 데이터를 화면에 표시하기 위해 그래픽스 데이터 중에서 각 화면을 구성하는 객체의 화면상의 위치를 계산한다. 또한, 그래픽스 데이터 처리 시스템은 저장한 객체의 색상을 결정하는 연산을 수행한 후, 연산 결과에 기초하여 결정된 색상값을 메모리에 저장한다.
그래픽스 데이터 처리 시스템은 전력과 메모리 대역폭을 효율적으로 사용하기 위해 그래픽스 데이터의 각 프레임을 타일 단위로 분할하여 렌더링한다. 그래픽스 데이터 처리 시스템은 타일별로 각 타일에 포함된 객체의 정보를 내부 메모리에 저장한다. 종래의 그래픽스 데이터 처리 시스템은 프레임에 포함되는 객체의 크기 및 분포 등을 고려하지 않고 일정한 크기의 타일로 프레임을 분할하여 렌더링한다. 일정한 크기의 타일로 프레임을 분할하여 렌더링하는 경우 프레임을 구성하는 타일 중 특정 타일에 객체가 편중되어 렌더링 부하가 증가한다는 문제점이 있다.
개시된 실시예들은 그래픽스 데이터를 포함한 프레임을 타일 단위로 렌더링하는 경우, 타일의 크기를 프레임의 특징에 따라 조절하여, 프레임 별로 서로 다른 크기의 타일에 기초하여 그래픽스 데이터를 렌더링하는 방법 및 장치를 제공한다.
본 발명의 일 실시예에 따른 그래픽스 데이터를 처리하는 방법은 제 1 프레임 내에서 타일 별로 중첩되는 객체의 수를 산출하는 단계; 상기 산출된 객체의 수에 기초하여, 제 2 프레임의 타일의 크기를 결정하는 단계; 상기 결정된 타일의 크기에 기초하여 제 2 프레임을 분할하는 단계; 및 상기 분할된 타일별로 상기 제 2 프레임을 렌더링하는 단계를 포함할 수 있다.
본 발명의 일 실시예에 따른 그래픽스 데이터를 처리하는 방법은 이전 프레임에서 산출된 객체의 수에 기초하여 현재 프레임의 타일의 크기를 결정하는 단계를 더 포함할 수 있다.
본 발명의 일 실시예에 따른 그래픽스 데이터를 처리하는 방법에 있어서, 상기 중첩되는 객체의 수를 산출하는 단계는, 상기 제 1 프레임에서 각 타일에 중첩된 객체의 수를 합산하는 단계를 포함할 수 있다.
본 발명의 일 실시예에 따른 그래픽스 데이터를 처리하는 방법에 있어서, 상기 타일의 크기를 결정하는 단계는, 상기 합산된 객체의 수가 기설정된 범위를 초과하는 경우, 타일의 크기를 감소시키는 단계; 및 상기 합산된 객체의 수가 기설정된 범위 미만인 경우, 타일의 크기를 증가시키는 단계를 포함할 수 있다.
본 발명의 일 실시예에 따른 그래픽스 데이터를 처리하는 방법에 있어서, 상기 중첩되는 객체의 수를 산출하는 단계는, 상기 제 1 프레임에서 각 타일에 중첩된 객체의 평균 개수를 산출하는 단계를 포함할 수 있다.
본 발명의 일 실시예에 따른 그래픽스 데이터를 처리하는 방법에 있어서, 상기 타일의 크기를 결정하는 단계는, 상기 산출된 평균 개수가 기설정된 범위를 초과하는 경우, 타일의 크기를 감소시키는 단계; 및 상기 산출된 평균 개수가 기설정된 범위 미만인 경우, 타일의 크기를 증가시키는 단계를 포함할 수 있다.
본 발명의 일 실시예에 따른 그래픽스 데이터를 처리하는 방법에 있어서, 상기 타일의 크기를 결정하는 단계는, 상기 산출된 객체의 수와 미리 저장되어 있는 타일별로 중첩되는 객체의 수에 대응되는 타일의 크기 정보를 비교하는 단계; 및 상기 산출된 객체의 수와 대응되는 타일의 크기 정보에 기초하여 상기 제 2 프레임의 타일의 크기를 결정하는 단계를 포함할 수 있다.
본 발명의 일 실시예에 따른 그래픽스 데이터를 처리하는 장치는 제 1 프레임 내에서 타일 별로 중첩되는 객체의 수를 산출하는 산출부; 상기 산출된 객체의 수에 기초하여, 제 2 프레임의 타일의 크기를 결정하는 타일 크기 결정부;
상기 결정된 타일의 크기에 기초하여 제 2 프레임을 분할하고, 상기 분할된 타일별로 상기 제 2 프레임을 렌더링하는 렌더링부를 포함할 수 있다.
본 발명의 일 실시예에 따른 그래픽스 데이터를 처리하는 장치에 있어서, 상기 그래픽스 데이터를 렌더링하는 방법은, 이전 프레임에서 산출된 객체의 수에 기초하여 현재 프레임의 타일의 크기를 결정하는 것을 특징으로 할 수 있다.
본 발명의 일 실시예에 따른 그래픽스 데이터를 처리하는 방법에 있어서, 상기 산출부는, 상기 제 1 프레임에서 각 타일에 중첩된 객체의 수를 합산하는 것을 특징으로 할 수 있다.
본 발명의 일 실시예에 따른 그래픽스 데이터를 처리하는 장치에 있어서, 상기 타일 크기 결정부는, 상기 합산된 객체의 수가 기설정된 범위를 초과하는 경우, 타일의 크기를 감소시키고, 상기 합산된 객체의 수가 기설정된 범위 미만인 경우, 타일의 크기를 증가시키는 것을 특징으로 할 수 있다.
본 발명의 일 실시예에 따른 그래픽스 데이터를 처리하는 장치에 있어서, 상기 산출부는, 상기 제 1 프레임에서 각 타일에 중첩된 객체의 평균 개수를 산출하는 것을 특징으로 할 수 있다.
본 발명의 일 실시예에 따른 그래픽스 데이터를 처리하는 장치에 있어서, 상기 타일 크기 결정부는, 상기 산출된 평균 개수가 기설정된 범위를 초과하는 경우, 타일의 크기를 감소시키고, 상기 산출된 평균 개수가 기설정된 범위 이하인 경우, 타일의 크기를 증가시키는 것을 특징으로 할 수 있다.
본 발명의 일 실시예에 따른 그래픽스 데이터를 처리하는 장치에 있어서, 상기 타일 크기 결정부는, 상기 산출된 객체의 수와 미리 저장되어 있는 타일별로 중첩되는 객체의 수에 대응되는 타일의 크기 정보를 비교하고, 상기 산출된 객체의 수와 대응되는 타일의 크기 정보에 기초하여 상기 제 2 프레임의 타일의 크기를 결정하는 것을 특징으로 할 수 있다.
일 실시예에 따른 그래픽스 데이터를 렌더링하는 방법은 그래픽스 데이터의 특성에 따라 타일의 크기를 결정하여 그래픽스 데이터를 렌더링함으로써, 특정 타일에 렌더링 부하가 편중되지 않아 효율적으로 그래픽스 데이터의 렌더링을 수행할 수 있다.
도 1은 타일 기반의 그래픽스 데이터 렌더링 시스템을 도시한 도면이다.
도 2는 본 발명의 일 실시예에 따른 그래픽스 데이터를 렌더링하는 방법의 흐름도이다.
도 3은 본 발명의 일 실시예에 따라 이전 프레임의 타일의 크기를 기초로 현재 프레임의 타일의 크기를 결정하는 방법을 구체적으로 설명하기 위한 도면이다.
도 4는 본 발명의 일 실시예에 따라 이전 프레임의 타일별로 중첩되는 객체 수의 총합을 산출하는 방법을 설명하기 위한 흐름도이다.
도 5는 본 발명의 일 실시예에 따라 이전 프레임의 타일별로 중첩되는 객체의 평균 개수를 산출하는 방법을 설명하기 위한 흐름도이다.
도 6은 본 발명의 일 실시예에 따라 중첩되는 객체의 수가 기설정된 범위를 초과하는 경우 타일의 크기를 결정하는 방법을 설명하기 위한 도면이다.
도 7은 본 발명의 일 실시예에 따라 중첩되는 객체의 수가 기설정된 범위 미만인 경우 타일의 크기를 결정하는 방법을 설명하기 위한 도면이다.
도 8은 본 발명의 일 실시예에 따른 그래픽스 데이터를 렌더링하는 장치의 블록도이다.
아래에서는 첨부한 도면을 참조하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 본 발명의 실시예를 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 그리고 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.
명세서 전체에서, 어떤 부분이 다른 부분과 "연결"되어 있다고 할 때, 이는 "직접적으로 연결"되어 있는 경우뿐 아니라, 그 중간에 다른 소자를 사이에 두고 "전기적으로 연결"되어 있는 경우도 포함한다. 또한 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다.
이하 첨부된 도면을 참고하여 본 발명을 상세히 설명하기로 한다.
도 1은 타일 기반의 그래픽스 데이터 렌더링 시스템(100)을 도시한 도면이다.
도 1에 도시된 타일 기반의 그래픽스 데이터 렌더링 시스템(100)에는 본 실시예와 관련된 구성요소들만이 도시되어 있다. 따라서, 도 1에 도시된 구성요소들 외에 다른 범용적인 구성요소들이 더 포함될 수 있음을 본 실시예와 관련된 기술분야에서 통상의 지식을 가진 자라면 이해할 수 있다.
도 1을 참고하면, 타일 기반의 그래픽스 데이터 렌더링 시스템(100)은 타일 스케쥴러(110), 적어도 하나의 픽셀 채널(120), 캐쉬(130) 및 컬러 버퍼(140)를 포함할 수 있다.
타일 기반으로 그래픽스 데이터를 렌더링 하는 시스템은, 프레임을 기설정된 크기의 타일로 분할하고, 적어도 하나의 픽셀 채널(120)에 각각의 타일을 분배하여, 각 타일을 렌더링 할 수 있다. 각각의 프레임에는 화면에 표시되는 이미지 단위의 그래픽스 데이터가 포함될 수 있다.
타일 스케쥴러(110)는 적어도 하나의 픽셀 채널(120) 각각에 화면 이미지를 구성하는 각각의 타일을 분배할 수 있다.
적어도 하나의 픽셀 채널(120) 각각은 레스터라이져(122), 코어(114) 및 픽셀 처리부(126)를 포함할 수 있다. 레스터라이져(122)는 프리미티브 내의 각 꼭지점에 정의된 스크린 좌표, 텍스쳐(Texture) 좌표 등을 보간함으로써 프리미티브 내부에 들어가는 픽셀의 정보를 생성한다.
코어(124)는 캐쉬(130)를 통해 외부 메모리에 저장되어 있는 이미지 정보를 기초로 화면 이미지의 텍스쳐 매핑(mapping) 및 빛의 반사 등을 계산할 수 있다. 픽셀 처리부(126)는 코어(124)의 계산 결과에 기초하여 픽셀의 색상을 결정할 수 있다.
컬러 버퍼(140)는 적어도 하나의 픽셀 채널(120)에서 결정된 각각의 픽셀의 색상 값을 저장할 수 있다.
전술한 타일 기반의 그래픽스 렌더링을 수행하기 위해, 그래픽스 데이터를 렌더링하는 시스템(100)은 각각의 타일을 적어도 하나의 픽셀 채널(120)에 분배하기에 앞서, 각 프레임을 특정 크기의 타일로 분할할 수 있다.
본 발명의 일 실시예에 따른 그래픽스 데이터를 렌더링하는 방법은. 그래픽스 데이터의 특성에 기초하여, 그래픽스 데이터를 분류하기 위한 타일의 크기를 결정하는 방법을 포함한다. 이하, 본 발명의 일 실시예에 따라 그래픽스 데이터의 타일 크기를 결정하는 방법에 대해 설명하도록 한다.
도 2는 본 발명의 일 실시예에 따른 그래픽스 데이터를 렌더링하는 방법의 흐름도이다.
단계 210에서, 그래픽스 데이터를 렌더링하는 장치는 제 1 프레임 내에서 타일 별로 중첩되는 객체의 수를 산출한다. 그래픽스 데이터는 각각의 정점(Vertex) 위치를 나타내는 3차원 좌표와 이러한 3차원 정점 좌표로 구성되는 면(Face)의 표면에 그려지는 텍스처 정보를 정의하는 텍스처 좌표 및 텍스처를 포함할 수 있다. 또한, 그래픽스 데이터는 렌더링을 사용자의 의도에 따라 더욱 사실적으로 혹은 비사실적으로 나타내는 데 필요한 부가 정보(예를 들어, 노멀 정보 및 맵 정보)와 정점의 좌표가 어떻게 연결되는지를 정의하는 인덱스 정보를 포함할 수 있다. 제 1 프레임은 제 1 시점에 화면에 디스플레이 되는 그래픽스 데이터를 포함할 수 있다.
본 발명의 일 실시예에 따른 그래픽스 데이터를 렌더링하는 장치는 제 1 프레임을 타일로 분할하여, 분할된 타일별로 렌더링을 수행할 수 있다. 도 1을 참고하면, 그래픽스 데이터를 렌더링하는 장치에서 기설정된 크기에 따라 분할된 타일 정보는 타일 스케쥴러(110)에 전송될 수 있다. 타일 스케쥴러(110)는 분할된 타일 정보를 기초로 적어도 하나의 픽셀 채널(120)에 분할된 타일들을 각각 분배할 수 있다. 그래픽스 데이터를 렌더링하는 장치는 제 1 프레임을 기설정된 크기의 타일로 분할할 수 있다.
한편, 그래픽스 데이터를 렌더링하는 장치는 제 1 프레임에서 기설정된 크기로 분할된 타일별로 중첩된 객체의 수를 산출할 수 있다.
단계 220에서, 그래픽스 데이터를 렌더링하는 장치는 산출된 객체의 수에 기초하여, 제 2 프레임의 타일의 크기를 결정한다. 본 발명의 일 실시예에 따른 그래픽스 데이터를 렌더링하는 장치는 제 1 프레임에 포함된 각각의 타일에서 중첩된 객체의 수를 합산한 결과에 기초하여 제 2 프레임의 타일의 크기를 결정할 수 있다. 예를 들어, 그래픽스 데이터를 렌더링하는 장치는 합산된 객체의 수가 기설정된 범위를 초과하는 경우, 제 2 프레임의 타일의 크기를 감소시킬 수 있다. 반면에 그래픽스 데이터를 렌더링하는 장치는 합산된 객체의 수가 기설정된 범위 미만인 경우에는 제 2 프레임의 타일의 크기를 증가시킬 수 있다. 한편, 그래픽스 데이터를 렌더링하는 장치는 합산된 객체의 수가 기설정된 범위에 포함되는 경우, 제 1 프레임에서의 타일의 크기와 동일한 크기로 제 2 프레임의 타일의 크기를 결정할 수 있다.
본 발명의 다른 실시예에 따른 그래픽스 데이터를 렌더링하는 장치는 제 1 프레임에 포함된 각각의 타일에서 중첩된 객체의 수의 평균에 기초하여 제 2 프레임의 타일의 크기를 결정할 수 있다. 예를 들어, 그래픽스 데이터를 렌더링하는 장치는 제 1 프레임에서 각 타일에 중첩된 객체의 평균 개수가 기설정된 범위를 초과하는 경우, 제 2 프레임의 타일의 크기를 감소시킬 수 있다. 반면에 그래픽스 데이터를 렌더링하는 장치는 제 1 프레임에서 각 타일에 중첩된 객체의 평균 개수가 기설정된 범위 미만인 경우에는 제 2 프레임의 타일의 크기를 증가시킬 수 있다. 한편, 그래픽스 데이터를 렌더링하는 장치는 제 1 프레임에서 각 타일에 중첩된 객체의 평균 개수가 기설정된 범위에 포함되는 경우, 제 1 프레임에서의 타일의 크기와 동일한 크기로 제 2 프레임의 타일의 크기를 결정할 수 있다.
한편, 그래픽스 데이터를 렌더링하는 장치의 데이터 베이스에는 중첩되는 객체의 수에 기초하여 타일의 크기를 미리 설정한 타일 크기 정보가 저장될 수 있다. 예를 들어, 중첩되는 객체의 수가 3개 미만인 경우에는 타일의 크기를 a로 설정하고, 중첩되는 객체의 수가 3개 이상 6개 미만인 경우에는 타일의 크기를 b로 설정하는 타일 크기 정보가 그래픽스 데이터를 렌더링하는 장치에 미리 저장되어 있을 수 있다. 그래픽스 데이터를 렌더링하는 장치는 제 1 프레임에서 산출된 타일별로 중첩되는 객체의 수와 대응되는 타일 크기 정보를 데이터 베이스로부터 추출하여, 제 2 프레임의 타일의 크기를 결정할 수 있다.
단계 230에서, 그래픽스 데이터를 렌더링하는 장치는 결정된 타일의 크기에 기초하여 제 2 프레임을 분할한다. 본 발명의 일 실시예에 따른 그래픽스 데이터를 렌더링하는 장치는 결정된 타일의 크기가 제 1 프레임에서의 타일의 크기와 상이한 경우, 저장되어 있는 분할 정보를 갱신할 수 있다. 그래픽스 데이터를 렌더링하는 장치는 변경된 타일의 크기에 기초하여 제 2 프레임을 분할한다.
한편, 그래픽스 데이터를 렌더링하는 장치는 결정된 타일의 크기가 제 1 프레임에서의 타일의 크기와 동일한 경우, 저장되어 있는 분할 정보를 유지할 수 있다. 이러한 경우, 그래픽스 데이터를 렌더링하는 장치는 제 1 프레임의 타일의 크기와 동일한 크기로 제 2 프레임을 분할할 수 있다.
단계 240에서, 그래픽스 데이터를 렌더링하는 장치는 분할된 타일별로 제 2 프레임을 렌더링한다.
본 발명의 일 실시예에 따른 그래픽스 데이터를 렌더링하는 장치는 제 2 프레임의 분할된 타일 각각에 대한 정보를 타일 스케쥴러(도 1, 110)에 전송할 수 있다. 여기에서, 제 2 프레임의 분할된 타일 각각에 대한 정보에는 분할된 타일의 크기 정보, 각각의 타일을 식별할 수 있는 식별 정보를 포함한 타일 인덱스 정보 등이 포함될 수 있다. 타일 스케쥴러(도 1, 110)는 수신한 제 2 프레임의 분할된 타일 각각에 대한 정보에 기초하여, 적어도 하나의 픽셀 채널(120) 각각에 제 2 프레임을 구성하는 각각의 타일을 분배할 수 있다.
적어도 하나의 픽셀 채널(120) 각각에 포함된 레스터라이져(122)는 분배된 타일에 포함된 프리미티브 내의 각 꼭지점에 정의된 스크린 좌표, 텍스쳐(Texture) 좌표 등을 보간함으로써 프리미티브 내부에 들어가는 픽셀의 정보를 생성한다.
코어(124)는 캐쉬(130)를 통해 외부 메모리에 저장되어 있는 이미지 정보를 기초로 화면 이미지의 텍스쳐 매핑(mapping) 및 빛의 반사 등을 계산할 수 있다. 픽셀 처리부(126)는 코어(124)의 계산 결과에 기초하여 픽셀의 색상을 결정할 수 있다.
적어도 하나의 픽셀 채널(120) 각각에서는 분배된 타일에 포함된 복수개의 픽셀 각각의 색상 값을 결정할 수 있다.
본 발명의 일 실시예에 따른 그래픽스 데이터를 렌더링하는 장치는 이전 프레임에서 산출된 각 타일별로 중첩된 객체의 수에 기초하여 현재 프레임의 타일의 크기를 결정할 수 있다. 예를 들어. 그래픽스 데이터를 렌더링하는 장치는 이전 프레임인 제 2 프레임에서 산출된 각 타일별로 중첩된 객체의 수에 기초하여, 현재 프레임인 제 3 프레임의 타일의 크기를 결정할 수 있다.
도 3은 본 발명의 일 실시예에 따라 이전 프레임의 타일의 크기를 기초로 현재 프레임의 타일의 크기를 결정하는 방법을 구체적으로 설명하기 위한 도면이다.
도 3을 참고하면, 그래픽스 데이터를 렌더링하는 장치는 이전 프레임인 제 N프레임에서 각 타일별로 중첩되는 객체의 수를 산출할 수 있다. 그래픽스 데이터를 렌더링하는 장치는 제 N프레임에서 각 타일별로 중첩되는 객체의 수에 대한 정보를 포함하고 있는 오버랩 계수를 산출할 수 있다. 오버랩 계수는 다양한 방법으로 산출될 수 있다.
도 3의 실시예에서, 그래픽스 데이터를 렌더링하는 장치는 객체를 포함하고 있는 타일 각각에 대해 중첩되어 포함하고 있는 객체의 수를 합산하여 오버랩 계수를 산출할 수 있다. 예를 들어, 하나의 타일에 3개의 객체가 중첩되어 있는 경우, 중첩되어 포함하고 있는 객체의 수는 2개로 산출할 수 있다. 이러한 방법으로 도 3에서, 각 타일에서 중첩되어 포함하고 있는 객체의 수를 합산한 결과, 제 N 프레임의 오버랩 계수는 8이다.
그래픽스 데이터를 렌더링하는 장치는 제 N 프레임의 오버랩 계수가 기설정된 범위를 초과하는 경우, 제 N+1 프레임의 타일의 크기를 재 N 프레임의 타일의 크기에 비해 증가시킬 수 있다. 그래픽스 데이터를 렌더링하는 장치는 제 N 프레임의 오버랩 계수가 기설정된 범위 이하인 경우에는, 제 N+1 프레임의 타일의 크기에 비해 감소시킬 수 있다. 한편, 그래픽스 데이터를 렌더링하는 장치는 제 N 프레임의 오버랩 계수가 기설정된 범위에 포함되는 경우, 제 N+1의 프레임의 타일의 크기를 제 N프레임의 타일의 크기와 동일하게 유지할 수 있다.
도 3을 참고하면, 그래픽스 데이터를 렌더링하는 장치는 제 N 프레임의 오버랩 계수가 기설정된 범위인 5 이상 10 미만에 포함되므로, 제 N+1 프레임의 타일의 크기를 제 N 프레임의 타일의 크기와 동일하게 유지할 수 있다.
도 4는 본 발명의 일 실시예에 따라 이전 프레임의 타일별로 중첩되는 객체 수의 총합을 산출하는 방법을 설명하기 위한 흐름도이다.
단계 410에서, 그래픽스 데이터를 렌더링하는 장치는 제 1 프레임에서 타일별로 중첩되는 객체의 수를 합산할 수 있다. 예를 들어, 제 1 프레임에 포함된 복수개의 타일 중에서 제 n 타일에 중첩되는 객체의 수가 3, 제 n+1타일에 중첩되는 객체의 수가 2 및 제 2n 타일에 중첩되는 객체의 수가 4인 경우, 중첩되는 객체의 수를 합산한 값은 9이다.
단계 420에서, 그래픽스 데이터를 렌더링하는 장치는 합산된 객체의 수가 기설정된 범위를 초과하는지 여부를 판단할 수 있다. 여기에서, 기설정된 범위는 렌더링되는 그래픽스 데이터의 특징, 렌더링을 수행하는 장치의 성능 등에 따라 사용자가 결정할 수 있다.
단계 430에서, 그래픽스 데이터를 렌더링하는 장치는 제 2 프레임의 타일의 크기를 제 1 프레임의 타일의 크기 보다 감소시킬 수 있다. 그래픽스 데이터를 렌더링하는 장치는 제 1 프레임에서 합산된 중첩되는 객체의 수가 기설정된 범위를 초과하는 경우 제 2 프레임의 타일의 크기를 제 1 프레임의 타일의 크기 보다 감소시킬 수 있다. 그래픽스 데이터를 렌더링하는 장치는 중첩되는 객체의 수가 기설정된 범위를 초과하는 경우, 그래픽스 데이터의 복잡도가 높다고 추정할 수 있다. 여기에서 그래픽스 데이터의 복잡도는 그래픽스 데이터에 포함된 프리미티브의 크기, 분포 정도에 기초하여 결정될 수 있다. 예를 들어, 그래픽스 데이터에 포함된 프리미티브가 특정 영역에 집중되어 있는 경우, 특정 영역에 대한 그래픽스 데이터의 복잡도는 높을 수 있다.
본 발명의 일 실시예에 따른 그래픽스 데이터를 렌더링하는 장치는 제 2 프레임의 타일의 크기를 감소시켜, 타일이 할당되는 적어도 하나의 픽셀 채널(120)의 렌더링 로드를 분산시킬 수 있다. 제 2 프레임의 타일의 크기가 감소되는 경우, 하나의 타일에 중첩되는 객체의 수가 줄어들게 되므로, 하나의 픽셀 채널이 렌더링을 수행하는 경우, 저장된 프리미티브 정보를 호출하는 횟수가 줄어들 수 있다. 따라서, 하나의 픽셀 채널에서 처리해야 하는 렌더링 로드가 줄어들 수 있다.
한편, 그래픽스 데이터를 렌더링하는 장치는 합산된 중첩되는 객체의 수가 기설정된 범위를 초과하는 정도에 기초하여 타일의 크기를 결정할 수 있다. 예를 들어, 초과하는 정도가 3미만인 경우에는 타일의 크기를 제 1 프레임에서의 타일의 크기의 0.8배로 변경하고, 초과하는 정도가 3이상 6미만인 경우에는 타일의 크기를 제 1 프레임에서의 타일의 크기의 0.6배로 변경할 수 있다. 다만, 이는 본 발명의 일 실시예일 뿐, 본 발명이 이에 한정되는 것은 아니다.
다른 예에 따르면, 그래픽스 데이터를 렌더링하는 장치는 데이터베이스에 미리 저장되어 있는 합산되는 중첩되는 객체의 수와 대응되는 타일의 크기에 기초하여 제 2 프레임의 타일의 크기를 결정할 수 있다.
단계 440에서, 그래픽스 데이터를 렌더링하는 장치는 합산된 객체의 수가 기설정된 범위 미만인지 여부를 판단할 수 있다.
단계 450에서, 그래픽스 데이터를 렌더링하는 장치는 제 2 프레임의 타일의 크기를 제 1 프레임의 타일의 크기 보다 증가시킬 수 있다. 그래픽스 데이터를 렌더링하는 장치는 제 1 프레임에서 합산된 중첩되는 객체의 수가 기설정된 범위 미만인 경우 제 2 프레임의 타일의 크기를 제 1 프레임의 타일의 크기 보다 증가시킬 수 있다. 그래픽스 데이터를 렌더링하는 장치는 중첩되는 객체의 수가 기설정된 범위 미만인 경우, 그래픽스 데이터의 복잡도가 낮다고 추정할 수 있다.
본 발명의 일 실시예에 따른 그래픽스 데이터를 렌더링하는 장치는 제 2 프레임의 타일의 크기를 증가시켜, 특정 타일에 중첩되는 객체의 개수를 집중시킬 수 있다. 이러한 경우, 필요 이상의 개수의 픽셀 채널이 렌더링을 수행해야 하는 비효율을 줄일 수 있다. 제 2 프레임의 타일의 크기가 증가되는 경우, 특정 타일에 중첩되는 객체의 수를 집중시킬 수 있으므로, 렌더링을 수행해야 하는 픽셀 채널의 개수를 줄일 수 있다.
한편, 그래픽스 데이터를 렌더링하는 장치는 합산된 중첩되는 객체의 수가 기설정된 범위와의 차이에 기초하여 타일의 크기를 결정할 수 있다. 예를 들어, 기설정된 범위와의 차이가 3미만인 경우에는 타일의 크기를 1.2배 증가 시키고, 기설정된 범위와의 차이가 3이상 6미만인 경우에는 타일의 크기를 1.4배 증가시킬 수 있다. 다만, 이는 본 발명의 일 실시예일 뿐, 본 발명이 이에 한정되는 것은 아니다.
다른 예에 따르면, 그래픽스 데이터를 렌더링하는 장치는 데이터베이스에 미리 저장되어 있는 합산되는 중첩되는 객체의 수와 대응되는 타일의 크기에 기초하여 제 2 프레임의 타일의 크기를 결정할 수 있다.
단계 460에서, 그래픽스 데이터를 렌더링하는 장치는 제 2 프레임의 타일의 크기를 제 1 프레임의 크기와 동일하게 유지할 수 있다. 그래픽스 데이터를 렌더링하는 장치는 제 1 프레임에서 합산된 중첩되는 객체의 수가 기설정된 범위에 포함되는 경우 제 2 프레임의 타일의 크기를 제 1 프레임의 타일의 크기와 동일하게 유지할 수 있다.
도 5는 본 발명의 일 실시예에 따라 이전 프레임의 타일별로 중첩되는 객체의 평균 개수를 산출하는 방법을 설명하기 위한 흐름도이다.
단계 510에서, 그래픽스 데이터를 렌더링하는 장치는 제 1 프레임에서 타일별로 중첩되는 객체의 평균 개수를 산출할 수 있다. 예를 들어, 제 1 프레임에 포함된 복수개의 타일 중에서 제 n 타일에 중첩되는 객체의 수가 3, 제 n+1 타일에 중첩되는 객체의 수가 2 및 제 2n 타일에 중첩되는 객체의 수가 4인 경우, 중첩되는 객체의 수의 평균은 3이다.
단계 520에서, 그래픽스 데이터를 렌더링하는 장치는 중첩되는 객체의 평균 개수가 기설정된 범위를 초과하는지 여부를 판단할 수 있다. 여기에서 기설정된 범위는 렌더링되는 그래픽스 데이터의 특징, 렌더링을 수행하는 장치의 성능 등에 따라 사용자가 결정할 수 있다.
단계 530에서, 그래픽스 데이터를 렌더링하는 장치는 제 2 프레임의 타일의 크기를 제 1 프레임의 타일의 크기 보다 감소시킬 수 있다. 그래픽스 데이터를 렌더링하는 장치는 제 1 프레임에서 산출한 중첩되는 객체의 평균 개수가 기설정된 범위를 초과하는 경우, 제 2 프레임의 타일의 크기를 제 1 프레임의 타일의 크기 보다 감소시킬 수 있다.
본 발명의 일 실시예에 따른 그래픽스 데이터를 렌더링하는 장치는 중첩되는 객체의 평균 개수가 기설정된 범위를 초과하는 정도에 기초하여 타일의 크기를 결정할 수 있다. 예를 들어, 초과하는 정도가 4미만인 경우에는 타일의 크기를 제 1 프레임에서의 타일의 크기의 0.7배로 변경하고, 초과하는 정도가 4이상 8미만인 경우에는 타일의 크기를 제 1 프레임에서의 타일의 크기의 0.5배로 변경할 수 있다. 다만, 이는 본 발명의 일 실시예일 뿐, 본 발명이 이에 한정되는 것은 아니다.
다른 예에 따르면, 그래픽스 데이터를 렌더링하는 장치는 데이터베이스에 미리 저장되어 있는 중첩되는 객체의 평균 개수와 대응되는 타일의 크기에 기초하여 제 2 프레임의 타일의 크기를 결정할 수 있다.
단계 540에서, 그래픽스 데이터를 렌더링하는 장치는 중첩되는 객체의 평균 개수가 기설정된 범위 미만인지 여부를 판단할 수 있다.
단계 550에서, 그래픽스 데이터를 렌더링하는 장치는 제 2 프레임의 타일의 크기를 제 1 프레임의 타일의 크기 보다 증가시킬 수 있다. 그래픽스 데이터를 렌더링하는 장치는 제 1 프레임의 중첩되는 객체의 평균 개수가 기설정된 범위 미만인 경우 제 2 프레임의 타일의 크기를 제 1 프레임의 타일의 크기보다 증가시킬 수 있다.
본 발명의 일 실시예에 따른 그래픽스 데이터를 렌더링하는 장치는 제 1 프레임의 중첩되는 객체의 평균 개수와 기설정된 범위와의 차이에 기초하여 타일의 크기를 결정할 수 있다. 예를 들어, 기설정된 범위와의 차이가 4 미만인 경우에는 타일의 크기를 1.3배 증가시키고, 기설정된 범위와의 차이가 4이상 8미만인 경우에는 타일의 크기를 1.5배 증가시킬 수 있다. 다만, 이는 본 발명의 일 실시예일 뿐, 본 발명이 이에 한정되는 것은 아니다.
다른 예에 따르면, 그래픽스 데이터를 렌더링하는 장치는 데이터베이스에 미리 저장되어 있는 프레임 내의 중첩되는 객체의 평균 개수와 대응되는 타일의 크기에 기초하여 제 2 프레임의 타일의 크기를 결정할 수 있다.
단계 560에서, 그래픽스 데이터를 렌더링하는 장치는 제 2 프레임의 타일의 크기를 제 1 프레임의 크기와 동일하게 유지할 수 있다. 그래픽스 데이터를 렌더링하는 장치는 제 1 프레임의 중첩되는 객체의 평균 개수가 기설정된 범위에 포함되는 경우 제 2 프레임의 타일의 크기를 제 1 프레임의 타일의 크기와 동일하게 유지할 수 있다.
도 6은 본 발명의 일 실시예에 따라 중첩되는 객체의 수가 기설정된 범위를 초과하는 경우 타일의 크기를 결정하는 방법을 설명하기 위한 도면이다.
도 6을 참고하면, 제 1 프레임(610)의 제 1 타일(612)에 중첩되는 객체의 수는 4이다. 제 1 프레임(610)내에서 제 1 타일(612) 이외의 다른 타일에는 객체가 존재하지 않는다. 이러한 경우, 제 1 타일(612)이 할당되는 픽셀 채널에 렌더링 로드가 집중되게 된다. 따라서 픽셀 채널에서 제 1 타일(612)의 렌더링을 수행하는 경우, 제 1 타일(612)에 포함된 4개의 객체에 대한 정보를 메모리로부터 읽어들여 렌더링을 수행해야 한다. 이러한 경우, 렌더링의 속도면에서 비효율이 발생할 수 있다.
본 발명의 일 실시예에 따른 그래픽스 데이터를 렌더링하는 장치는 제 1 프레임(610)에서 산출된 중첩되는 객체의 수가 기설정된 범위를 초과하는 것에 기초하여, 제 2 프레임(620)의 타일의 크기를 감소시킬 수 있다. 연속되는 프레임의 경우 각 프레임을 구성하는 그래픽스 데이터의 특성이 유사할 수 있으므로, 그래픽스 데이터를 렌더링하는 장치는 제 1 프레임(610)에서 산출된 중첩되는 객체의 수에 기초하여 제 2 프레임(620)의 타일의 크기를 결정할 수 있다.
그래픽스 데이터를 렌더링하는 장치는 제 2 프레임(620)의 타일의 크기를 제 1 프레임(610)의 타일의 크기에 비해 감소시킬 수 있다. 도 6을 참고하면, 타일의 크기가 감소됨에 따라 제 2 프레임(620)의 제 1 타일(622)에는 1개, 제 2 타일(624)에는 2개, 제 3 타일에는(626) 2개 및 제 4 타일(628)에는 1개의 객체가 포함되는 것을 확인할 수 있다. 그래픽스 데이터를 렌더링하는 장치는 제 1 프레임에서 산출된 중첩되는 객체의 수가 기설정된 범위를 초과하는 경우, 타일의 크기를 감소시킴으로써, 특정 픽셀 채널에서 수행해야 하는 렌더링의 로드를 줄일 수 있다.
도 7은 본 발명의 일 실시예에 따라 중첩되는 객체의 수가 기설정된 범위 미만인 경우 타일의 크기를 결정하는 방법을 설명하기 위한 도면이다.
도 7을 참고하면, 제 1 프레임(710)의 각 타일(711-718)에 객체가 고루 분포되어 있는 것을 확인할 수 있다. 이러한 경우 필요 이상의 픽셀 채널이 제 1 프레임의 각 채널을 렌더링하기 위해 사용될 수 있다.
본 발명의 일 실시예에 따른 그래픽스 데이터를 렌더링하는 장치는 제 1 프레임(710)에서 산출된 중첩되는 객체의 수가 기설정된 범위 미만이라는 것에 기초하여, 제 2 프레임(720)의 타일의 크기를 증가시킬 수 있다. 연속되는 프레임의 경우 각 프레임을 구성하는 그래픽스 데이터의 특성이 유사할 수 있으므로, 그래픽스 데이터를 렌더링하는 장치는 제 1 프레임(710)에서 산출된 중첩되는 객체의 수에 기초하여 제 2 프레임(720)의 타일의 크기를 결정할 수 있다.
그래픽스 데이터를 렌더링하는 장치는 제 2 프레임(720)의 타일의 크기를 제 1 프레임(710)의 타일의 크기에 비해 증가시킬 수 있다. 도 7을 참고하면, 타일의 크기가 증가됨에 따라 제 2 프레임(720)의 제 1 타일(721)에는 1개 및 제 2 타일(722)에는 2개의 객체가 포함되는 것을 확인할 수 있다. 그래픽스 데이터를 렌더링하는 장치는 제 1 프레임에서 산출된 중첩되는 객체의 수가 기설정된 범위 미만인 경우, 타일의 크기를 증가시킴으로써, 필요 이상의 픽셀 채널에서 렌더링이 수행되는 비효율을 줄일 수 있다.
도 8은 본 발명의 일 실시예에 따른 그래픽스 데이터를 렌더링하는 장치(800)의 블록도이다.
도 8에 도시된 바와 같이, 본 발명의 일 실시예에 따른 그래픽스 데이터를 렌더링하는 장치(800)는 산출부(810), 타일 크기 결정부(820) 및 렌더링부(830)를 포함할 수 있다. 그러나 도시된 구성요소 모두가 필수구성요소인 것은 아니다. 도시된 구성요소보다 많은 구성요소에 의해 그래픽스 데이터를 렌더링하는 장치(800)가 구현될 수도 있고, 그보다 적은 구성요소에 의해서도 그래픽스 데이터를 렌더링하는 장치(800)가 구현될 수 있다.
이하 상기 구성요소들에 대해 차례로 살펴본다.
산출부(810)는 제 1 프레임 내에서 타일 별로 중첩되는 객체의 수를 산출한다. 제 1 프레임은 제 1 시점에 화면에 디스플레이 되는 그래픽스 데이터를 포함할 수 있다.
산출부(810)는 제 1 프레임을 타일로 분할하여, 분할된 타일별로 렌더링을 수행할 수 있다. 도 1을 참고하면, 그래픽스 데이터를 렌더링하는 장치에서 기설정된 크기에 따라 분할된 타일 정보가 타일 스케쥴러(110)에 전송될 수 있다. 타일 스케쥴러(110)는 분할된 타일 정보를 기초로 적어도 하나의 픽셀 채널(120)에 타일들을 각각 분배할 수 있다.
한편, 산출부(810)는 제 1 프레임에서 기설정된 크기로 분할된 타일별로 중첩된 객체의 수를 산출할 수 있다. 예에 따르면, 산출부(810)가 제 1 프레임의 타일별로 중첩된 객체의 수를 산출하는 과정은 제 1 프레임을 렌더링하는 과정 이전에 수행될 수 도 있다.
타일 크기 결정부(820)는 산출된 객체의 수에 기초하여, 제 2 프레임의 타일의 크기를 결정한다. 본 발명의 일 실시예에 따른 타일 크기 결정부(820)는 제 1 프레임에 포함된 각각의 타일에서 중첩된 객체의 수를 합산한 결과에 기초하여 제 2 프레임의 타일의 크기를 결정할 수 있다. 예를 들어, 타일 크기 결정부(820)는 합산된 객체의 수가 기설정된 범위를 초과하는 경우, 제 2 프레임의 타일의 크기를 감소시킬 수 있다. 반면에 타일 크기 결정부(820)는 합산된 객체의 수가 기설정된 범위 미만인 경우에는 제 2 프레임의 타일의 크기를 증가시킬 수 있다. 한편, 타일 크기 결정부(820)는 합산된 객체의 수가 기설정된 범위에 포함되는 경우, 제 1 프레임에서의 타일의 크기와 동일한 크기로 제 2 프레임의 타일의 크기를 결정할 수 있다.
본 발명의 다른 실시예에 따른 타일 크기 결정부(820)는 제 1 프레임에 포함된 각각의 타일에서 중첩된 객체의 수의 평균에 기초하여 제 2 프레임의 타일의 크기를 결정할 수 있다. 예를 들어, 타일 크기 결정부(820)는 제 1 프레임에서 각 타일에 중첩된 객체의 평균 개수가 기설정된 범위를 초과하는 경우, 제 2 프레임의 타일의 크기를 감소시킬 수 있다. 반면에 타일 크기 결정부(820)는 제 1 프레임에서 각 타일에 중첩된 객체의 평균 개수가 기설정된 범위 미만인 경우에는 제 2 프레임의 타일의 크기를 증가시킬 수 있다. 한편, 타일 크기 결정부(820)는 제 1 프레임에서 각 타일에 중첩된 객체의 평균 개수가 기설정된 범위에 포함되는 경우, 제 1 프레임에서의 타일의 크기와 동일한 크기로 제 2 프레임의 타일의 크기를 결정할 수 있다.
한편, 타일 크기 결정부(820)는 중첩되는 객체의 수에 기초하여 타일의 크기를 미리 설정한 타일 크기 정보가 저장될 수 있다. 예를 들어, 중첩되는 객체의 수가 3개 미만인 경우에는 타일의 크기를 a로 설정하고, 중첩되는 객체의 수가 3개 이상 6개 미만인 경우에는 타일의 크기를 b로 설정하는 타일 크기 정보가 그래픽스 데이터를 렌더링하는 장치에 미리 저장되어 있을 수 있다. 타일 크기 결정부(820)는 제 1 프레임에서 산출된 타일별로 중첩되는 객체의 수와 대응되는 타일 크기 정보를 데이터 베이스로부터 추출하여, 제 2 프레임의 타일의 크기를 결정할 수 있다.
렌더링부(830)는 결정된 타일의 크기에 기초하여 제 2 프레임을 분할한다. 본 발명의 일 실시예에 따른 렌더링부(830)는 결정된 타일의 크기가 제 1 프레임에서의 타일의 크기와 상이한 경우, 저장되어 있는 분할 정보를 갱신할 수 있다. 렌더링부(830)는 변경된 타일의 크기에 기초하여 제 2 프레임을 분할한다.
한편, 렌더링부(830)는 결정된 타일의 크기가 제 1 프레임에서의 타일의 크기와 동일한 경우, 저장되어 있는 분할 정보를 유지할 수 있다. 이러한 경우, 렌더링부(830)는 제 1 프레임의 타일의 크기와 동일한 크기로 제 2 프레임을 분할할 수 있다.
렌더링부(830)는 분할된 타일별로 제 2 프레임을 렌더링한다. 본 발명의 일 실시예에 따른 렌더링부(830) 제 2 프레임의 분할된 타일 각각에 대한 정보를 타일 스케쥴러(도 1, 110)에 전송할 수 있다. 여기에서, 제 2 프레임의 분할된 타일 각각에 대한 정보에는 분할된 타일의 크기 정보, 각각의 타일을 식별할 수 있는 식별 정보를 포함한 타일 인덱스 정보 등이 포함될 수 있다.
타일 스케쥴러(도 1, 110)는 수신한 제 2 프레임의 분할된 타일 각각에 대한 정보에 기초하여, 적어도 하나의 픽셀 채널(120) 각각에 제 2 프레임을 구성하는 각각의 타일을 분배할 수 있다.
본 실시 예들에 따른 장치는 프로세서, 프로그램 데이터를 저장하고 실행하는 메모리, 디스크 드라이브와 같은 영구 저장부(permanent storage), 외부 장치와 통신하는 통신 포트, 터치 패널, 키(key), 버튼 등과 같은 사용자 인터페이스 장치 등을 포함할 수 있다.  소프트웨어 모듈 또는 알고리즘으로 구현되는 방법들은 상기 프로세서상에서 실행 가능한 컴퓨터가 읽을 수 있는 코드들 또는 프로그램 명령들로서 컴퓨터가 읽을 수 있는 기록 매체 상에 저장될 수 있다.  여기서 컴퓨터가 읽을 수 있는 기록 매체로 마그네틱 저장 매체(예컨대, ROM(read-only memory), RAM(random-access memory), 플로피 디스크, 하드 디스크 등) 및 광학적 판독 매체(예컨대, 시디롬(CD-ROM), 디브이디(DVD: Digital Versatile Disc)) 등이 있다.  컴퓨터가 읽을 수 있는 기록 매체는 네트워크로 연결된 컴퓨터 시스템들에 분산되어, 분산 방식으로 컴퓨터가 판독 가능한 코드가 저장되고 실행될 수 있다.  매체는 컴퓨터에 의해 판독가능하며, 메모리에 저장되고, 프로세서에서 실행될 수 있다.
본 실시 예들에서 인용하는 공개 문헌, 특허 출원, 특허 등을 포함하는 모든 문헌들은 각 인용 문헌이 개별적으로 및 구체적으로 병합하여 나타내는 것 또는 본 발명에서 전체적으로 병합하여 나타낸 것과 동일하게 본 발명에 병합될 수 있다.
본 실시 예들의 이해를 위하여, 도면에 도시된 바람직한 실시 예들에서 참조 부호를 기재하였으며, 본 발명의 실시 예들을 설명하기 위하여 특정 용어들을 사용하였으나, 특정 용어에 의해 본 발명이 한정되는 것은 아니며, 본 발명은 당업자에 있어서 통상적으로 생각할 수 있는 모든 구성 요소들을 포함할 수 있다.
본 실시 예들은 기능적인 블록 구성들 및 다양한 처리 단계들로 나타내어질 수 있다.  이러한 기능 블록들은 특정 기능들을 실행하는 다양한 개수의 하드웨어 또는/및 소프트웨어 구성들로 구현될 수 있다.  예를 들어, 본 발명은 하나 이상의 마이크로프로세서들의 제어 또는 다른 제어 장치들에 의해서 다양한 기능들을 실행할 수 있는, 메모리, 프로세싱, 로직(logic), 룩업 테이블(look-up table) 등과 같은 직접 회로 구성들을 채용할 수 있다.  본 발명에의 구성 요소들이 소프트웨어 프로그래밍 또는 소프트웨어 요소들로 실행될 수 있는 것과 유사하게, 본 발명은 데이터 구조, 프로세스들, 루틴들 또는 다른 프로그래밍 구성들의 조합으로 구현되는 다양한 알고리즘을 포함하여, C, C++, 자바(Java), 어셈블러(assembler) 등과 같은 프로그래밍 또는 스크립팅 언어로 구현될 수 있다.  기능적인 측면들은 하나 이상의 프로세서들에서 실행되는 알고리즘으로 구현될 수 있다.  또한, 본 발명은 전자적인 환경 설정, 신호 처리, 및/또는 데이터 처리 등을 위하여 종래 기술을 채용할 수 있다.  “매커니즘”, “요소”, “수단”, “구성”과 같은 용어는 넓게 사용될 수 있으며, 기계적이고 물리적인 구성들로서 한정되는 것은 아니다.  상기 용어는 프로세서 등과 연계하여 소프트웨어의 일련의 처리들(routines)의 의미를 포함할 수 있다.
본 실시 예들에서 설명하는 특정 실행들은 일 실시 예들로서, 어떠한 방법으로도 본 발명의 범위를 한정하는 것은 아니다.  명세서의 간결함을 위하여, 종래 전자적인 구성들, 제어 시스템들, 소프트웨어, 상기 시스템들의 다른 기능적인 측면들의 기재는 생략될 수 있다.  또한, 도면에 도시된 구성 요소들 간의 선들의 연결 또는 연결 부재들은 기능적인 연결 및/또는 물리적 또는 회로적 연결들을 예시적으로 나타낸 것으로서, 실제 장치에서는 대체 가능하거나 추가의 다양한 기능적인 연결, 물리적인 연결, 또는 회로 연결들로서 나타내어질 수 있다.  또한, “필수적인”, “중요하게” 등과 같이 구체적인 언급이 없다면 본 발명의 적용을 위하여 반드시 필요한 구성 요소가 아닐 수 있다.
800: 그래픽스 데이터를 렌더링하는 장치
810; 산출부
820: 타일 크기 결정부
830: 렌더링부

Claims (15)

  1. 제 1 프레임 내에서 타일 별로 중첩되는 객체의 수를 산출하는 단계;
    상기 산출된 객체의 수에 기초하여, 제 2 프레임의 타일의 크기를 결정하는 단계;
    상기 결정된 타일의 크기에 기초하여 제 2 프레임을 분할하는 단계; 및
    상기 분할된 타일별로 상기 제 2 프레임을 렌더링하는 단계를 포함하는 그래픽스 데이터를 렌더링하는 방법.
  2. 제 1 항에 있어서, 상기 제 2 프레임은,
    상기 제 1 프레임 이후에 렌더링 되는 프레임인 것을 특징으로 하는 그래픽스 데이터를 렌더링하는 방법.
  3. 제 1항에 있어서, 상기 중첩되는 객체의 수를 산출하는 단계는,
    상기 제 1 프레임에서 각 타일에 중첩된 객체의 수를 합산하는 단계를 포함하는 것을 특징으로 하는 그래픽스 데이터를 렌더링하는 방법.
  4. 제 3항에 있어서, 상기 타일의 크기를 결정하는 단계는,
    상기 합산된 객체의 수가 기설정된 범위를 초과하는 경우, 타일의 크기를 감소시키는 단계; 및
    상기 합산된 객체의 수가 기설정된 범위 미만인 경우, 타일의 크기를 증가시키는 단계를 포함하는 것을 특징으로 하는 그래픽스 데이터를 렌더링하는 방법.
  5. 제 1항에 있어서, 상기 중첩되는 객체의 수를 산출하는 단계는,
    상기 제 1 프레임에서 각 타일에 중첩된 객체의 평균 개수를 산출하는 단계를 포함하는 것을 특징으로 하는 그래픽스 데이터를 렌더링하는 방법.
  6. 제 5항에 있어서, 상기 타일의 크기를 결정하는 단계는,
    상기 산출된 평균 개수가 기설정된 범위를 초과하는 경우, 타일의 크기를 감소시키는 단계; 및
    상기 산출된 평균 개수가 기설정된 범위 미만인 경우, 타일의 크기를 증가시키는 단계를 포함하는 것을 특징으로 하는 그래픽스 데이터를 렌더링하는 방법.
  7. 제 1항에 있어서, 상기 타일의 크기를 결정하는 단계는,
    상기 산출된 객체의 수와 미리 저장되어 있는 타일별로 중첩되는 객체의 수에 대응되는 타일의 크기 정보를 비교하는 단계; 및
    상기 산출된 객체의 수와 대응되는 타일의 크기 정보에 기초하여 상기 제 2 프레임의 타일의 크기를 결정하는 단계를 포함하는 것을 특징으로 하는 그래픽스 데이터를 렌더링하는 방법.
  8. 제 1 프레임 내에서 타일 별로 중첩되는 객체의 수를 산출하는 산출부;
    상기 산출된 객체의 수에 기초하여, 제 2 프레임의 타일의 크기를 결정하는 타일 크기 결정부;
    상기 결정된 타일의 크기에 기초하여 제 2 프레임을 분할하고, 상기 분할된 타일별로 상기 제 2 프레임을 렌더링하는 렌더링부를 포함하는 그래픽스 데이터를 렌더링하는 장치.
  9. 제 8 항에 있어서, 상기 제 2 프레임은,
    상기 제 1 프레임 이후에 렌더링 되는 프레임인 것을 특징으로 하는 그래픽스 데이터를 렌더링하는 장치.
  10. 제 8항에 있어서, 상기 산출부는,
    상기 제 1 프레임에서 각 타일에 중첩된 객체의 수를 합산하는 것을 특징으로 하는 그래픽스 데이터를 렌더링하는 장치.
  11. 제 10항에 있어서, 상기 타일 크기 결정부는,
    상기 합산된 객체의 수가 기설정된 범위를 초과하는 경우, 타일의 크기를 감소시키고, 상기 합산된 객체의 수가 기설정된 범위 미만인 경우, 타일의 크기를 증가시키는 것을 특징으로 하는 그래픽스 데이터를 렌더링하는 장치.
  12. 제 8항에 있어서, 상기 산출부는,
    상기 제 1 프레임에서 각 타일에 중첩된 객체의 평균 개수를 산출하는 것을 특징으로 하는 그래픽스 데이터를 렌더링하는 장치.
  13. 제 12항에 있어서, 상기 타일 크기 결정부는,
    상기 산출된 평균 개수가 기설정된 범위를 초과하는 경우, 타일의 크기를 감소시키고, 상기 산출된 평균 개수가 기설정된 범위 이하인 경우, 타일의 크기를 증가시키는 것을 특징으로 하는 그래픽스 데이터를 렌더링하는 장치.
  14. 제 8항에 있어서, 상기 타일 크기 결정부는,
    상기 산출된 객체의 수와 미리 저장되어 있는 타일별로 중첩되는 객체의 수에 대응되는 타일의 크기 정보를 비교하고, 상기 산출된 객체의 수와 대응되는 타일의 크기 정보에 기초하여 상기 제 2 프레임의 타일의 크기를 결정하는 것을 특징으로 하는 그래픽스 데이터를 렌더링하는 장치.
  15. 제 1항 내지 제 7항 중 어느 하나의 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체.
KR1020140016283A 2014-02-12 2014-02-12 그래픽스 데이터를 렌더링하는 방법 및 장치 KR20150095144A (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020140016283A KR20150095144A (ko) 2014-02-12 2014-02-12 그래픽스 데이터를 렌더링하는 방법 및 장치
US14/335,207 US9741155B2 (en) 2014-02-12 2014-07-18 Apparatus and method for tile-based graphic data rendering

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020140016283A KR20150095144A (ko) 2014-02-12 2014-02-12 그래픽스 데이터를 렌더링하는 방법 및 장치

Publications (1)

Publication Number Publication Date
KR20150095144A true KR20150095144A (ko) 2015-08-20

Family

ID=53775379

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020140016283A KR20150095144A (ko) 2014-02-12 2014-02-12 그래픽스 데이터를 렌더링하는 방법 및 장치

Country Status (2)

Country Link
US (1) US9741155B2 (ko)
KR (1) KR20150095144A (ko)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102177554B1 (ko) * 2013-01-07 2020-11-12 마그마 기에세레이테크날로지 게엠베하 표면 사이의 열 복사를 시뮬레이션하기 위한 방법
DK178380B1 (en) * 2014-07-01 2016-01-25 Magma Giessereitechnologie Gmbh Method of beam tracking for use in a simulation or calculation process
US10373286B2 (en) 2016-08-03 2019-08-06 Samsung Electronics Co., Ltd. Method and apparatus for performing tile-based rendering

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06223201A (ja) * 1993-01-22 1994-08-12 Matsushita Electric Ind Co Ltd 並列画像生成装置
US6064407A (en) 1998-04-30 2000-05-16 Ati Technologies, Inc. Method and apparatus for tiling a block of image data
US20050149251A1 (en) * 2000-07-18 2005-07-07 University Of Minnesota Real time high accuracy geospatial database for onboard intelligent vehicle applications
US7034825B2 (en) * 2000-08-24 2006-04-25 Stowe Jason A Computerized image system
US7561155B1 (en) * 2000-10-23 2009-07-14 Evans & Sutherland Computer Corporation Method for reducing transport delay in an image generator
US6919896B2 (en) * 2002-03-11 2005-07-19 Sony Computer Entertainment Inc. System and method of optimizing graphics processing
US6975318B2 (en) 2002-06-25 2005-12-13 Intel Corporation Polygon binning process for tile-based rendering
US7075541B2 (en) * 2003-08-18 2006-07-11 Nvidia Corporation Adaptive load balancing in a multi-processor graphics processing system
US8194071B2 (en) 2004-05-24 2012-06-05 St-Ericsson Sa Tile based graphics rendering
US7505043B2 (en) 2004-08-30 2009-03-17 Qualcomm Incorporated Cache efficient rasterization of graphics data
US8928676B2 (en) 2006-06-23 2015-01-06 Nvidia Corporation Method for parallel fine rasterization in a raster stage of a graphics pipeline
US9070213B2 (en) 2006-07-26 2015-06-30 Nvidia Corporation Tile based precision rasterization in a graphics pipeline
US8089481B2 (en) * 2006-09-28 2012-01-03 International Business Machines Corporation Updating frame divisions based on ray tracing image processing system performance
US8963931B2 (en) 2009-09-10 2015-02-24 Advanced Micro Devices, Inc. Tiling compaction in multi-processor systems
US8564600B2 (en) * 2010-05-12 2013-10-22 International Business Machines Corporation Streaming physics collision detection in multithreaded rendering software pipeline
US8379955B2 (en) * 2010-11-27 2013-02-19 Intrinsic Medical Imaging, LLC Visualizing a 3D volume dataset of an image at any position or orientation from within or outside
US8902228B2 (en) * 2011-09-19 2014-12-02 Qualcomm Incorporated Optimizing resolve performance with tiling graphics architectures
US9202129B2 (en) * 2013-03-12 2015-12-01 Qualcomm Incorporated Reducing object detection time by utilizing space localization of features

Also Published As

Publication number Publication date
US9741155B2 (en) 2017-08-22
US20150228113A1 (en) 2015-08-13

Similar Documents

Publication Publication Date Title
KR101916341B1 (ko) 스크린 위치에 따라 달라지는 분해능을 가진 다수의 렌더 타겟을 위한 텍스처 매핑을 위한 그라디언트 조정
KR102637736B1 (ko) 그래픽스 처리 방법 및 시스템
US11393165B2 (en) Method and system for multisample antialiasing
KR102247565B1 (ko) 렌더링 방법 및 장치
CN110140151B (zh) 用于生成光强度图像的装置和方法
KR20160051154A (ko) 렌더링 방법, 렌더링 장치 및 전자 장치
KR102503210B1 (ko) 텍스처 필터링하는 방법 및 이를 위한 장치
KR20180071767A (ko) 큐브 맵을 텍스쳐링하기 위한 LOD(level of detail)를 결정하는 방법 및 장치
US11908051B2 (en) Image processing system and method for generating image content
US20140327689A1 (en) Technique for real-time rendering of temporally interpolated two-dimensional contour lines on a graphics processing unit
US20080055335A1 (en) Level of detail value calculating method and medium reducing power consumption, and 3-dimensional rendering system
US10134171B2 (en) Graphics processing systems
KR20150095144A (ko) 그래픽스 데이터를 렌더링하는 방법 및 장치
KR20170013747A (ko) 3d 렌더링 방법 및 장치
KR102482874B1 (ko) 렌더링 장치 및 방법
KR20150093048A (ko) 그래픽스 데이터를 렌더링하는 방법 및 장치
EP3319046B1 (en) Texture processing method and unit
US11030791B2 (en) Centroid selection for variable rate shading
US10388060B2 (en) System and method for multi-view rendering
KR20150042094A (ko) 객체를 렌더링하는 방법, 장치 및 기록매체
KR100914312B1 (ko) 그래픽스 하드웨어 및 프로그래머블 쉐이더를 이용한돌출맵 생성 방법, 그 시스템 및 이를 기록한 기록매체
KR102304932B1 (ko) 그래픽스 데이터를 처리하는 방법, 장치 및 기록매체
KR20150042093A (ko) 그래픽스 데이터를 렌더링하는 방법, 장치 및 기록매체
EP1926052B1 (en) Method, medium, and system rendering 3 dimensional graphics data considering fog effect
US20160321835A1 (en) Image processing device, image processing method, and display device

Legal Events

Date Code Title Description
WITN Withdrawal due to no request for examination