KR20070026521A - 그래픽 시스템, 버텍스 데이터의 타일 기반 변환 방법 및컴퓨터 프로그램 제품 - Google Patents

그래픽 시스템, 버텍스 데이터의 타일 기반 변환 방법 및컴퓨터 프로그램 제품 Download PDF

Info

Publication number
KR20070026521A
KR20070026521A KR1020067024576A KR20067024576A KR20070026521A KR 20070026521 A KR20070026521 A KR 20070026521A KR 1020067024576 A KR1020067024576 A KR 1020067024576A KR 20067024576 A KR20067024576 A KR 20067024576A KR 20070026521 A KR20070026521 A KR 20070026521A
Authority
KR
South Korea
Prior art keywords
tile
polygon
tiles
vertex
strip
Prior art date
Application number
KR1020067024576A
Other languages
English (en)
Other versions
KR101140460B1 (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 KR20070026521A publication Critical patent/KR20070026521A/ko
Application granted granted Critical
Publication of KR101140460B1 publication Critical patent/KR101140460B1/ko

Links

Images

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/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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • G06T17/20Finite element generation, e.g. wire-frame surface description, tesselation

Landscapes

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

Abstract

본 발명은 버텍스 데이터(vertex data)를 스크린(111) 상에 디스플레이할 출력 이미지로 타일(tile) 기반으로 변환하는 그래픽 시스템에 관한 것이다. 상기 버텍스 데이터는 다각형들의 세트에 의해서 객체를 표현하며, 상기 이미지 내의 각각의 버텍스(q1,q2,...,q12)에 대한 3D 공간 좌표를 적어도 포함한다. 하나의 다각형은 적어도 3 개의 버텍스들(q1,q2,...,q12)로 구성된다. 이 시스템은 상기 이미지를 다수의 타일(t21,t22,t23)로 하위분할하고, 각각이 적어도 하나의 다각형의 시퀀스를 포함하는 다수의 다각형 스트립(q1-q12)을 결정하는 타일 프로세서를 포함한다. 이 타일 프로세서는 상기 각 다각형 스트립(q1-q12)에 대하여 하위 스트립들(q3-q10)을 결정한다. 각 하위 스트립(q3-q10)은 상기 다수의 타일(t21,t22,t23) 중 하나의 타일과 적어도 부분적으로 중첩하는 상기 다각형 스트립(q1-q12) 중의 다각형들을 포함한다. 이 단일의 타일(t21,t22,t23)의 프로세싱 동안, 오직 하위 스트립(q3-q10), 즉 상기 단일의 타일(t21,t22,t23)과 적어도 부분적으로 중첩하는 다각형들만이 프로세싱되어야 한다.

Description

그래픽 시스템, 버텍스 데이터의 타일 기반 변환 방법 및 컴퓨터 프로그램 제품{TILE BASED GRAPHICS RENDERING}
본 발명은 버텍스 데이터(vertex data)를 스크린 상에 디스플레이할 출력 이미지로 타일(tile) 기반으로 변환하는 그래픽 시스템에 관한 것으로, 상기 버텍스 데이터는 다각형들의 세트에 의해서 객체를 표현하며, 하나의 다각형은 적어도 3 개의 버텍스들로 구성된다.
유럽 특허 EP 1127337은 특히 삼각형인 평면 다각형들의 세트에 의해서 각 객체를 이미지로 표현하는 3D 컴퓨터 생성형 이미지를 쉐이딩(shading)하는 장치를 개시하고 있다. 버텍스 좌표(x,y,z)가 삼각형의 각 버텍스에 대해 제공된다. 삼각형은 삼각형 스트립의 일부로서 제공될 수 있으며, 만일 이렇게 삼각형이 삼각형 스트립의 일부로서 제공되지 않는다면, 각 버텍스들을 서로 비교함으로써, 삼각형들이 스트립들로 변환될 수 있다. 스트립은 보다 적은 메모리 면적을 차지하는데, 그 이유는 3n 개의 버텍스 대신에 오직 n+2 개의 버텍스만이 n 개의 삼각형을 저장하는데 요구되기 때문이다. 또한, 스트립 내의 모든 객체들을 지시하기 위해서 오 직 하나의 포인터만이 요구된다.
상기 문헌 EP 1127337에 개시된 방법에 따르면, 한 타일에 대해서 그래픽을 렌더링하기 위해서, 이 타일과 중첩하는 스트립의 모든 삼각형들이 프로세싱된다. 가령, 50 개의 타일과 중첩하는 삼각형 스트립의 일부인 삼각형은 자신이 단일 타일과만 중첩하는 경우에도 50 번 프로세싱을 받는다.
본 발명의 목적은 스크린 상에 이미지를 보다 효과적으로 디스플레이할 수 있는 서두에서 언급된 그래픽 시스템을 제공하는 것이다. 본 발명은 특허 청구 범위의 독립항들에 의해서 규정된다. 종속항들은 유리한 실시예들을 규정한다.
상기 목적은 상기 그래픽 시스템이 상기 이미지 내의 상기 각각의 버텍스에 대한 3D 공간 좌표를 적어도 포함하는 상기 버텍스 데이터를 수신하는 입력부와, 상기 이미지를 다수의 타일로 하위분할하고, 각각이 적어도 하나의 다각형의 시퀀스를 포함하는 다수의 다각형 스트립━상기 다각형 스트립 중 각각의 후속하는 다각형은 이에 선행하는 다각형과 한 변(side)을 공유함━을 결정하며, 상기 각 다각형 스트립에 대하여, 각각이 상기 다수의 타일 중 하나의 타일과 적어도 부분적으로 중첩하는 상기 다각형 스트립 중의 다각형들을 포함하는 하위 스트립들을 결정하고 상기 하나의 타일을 상기 중첩하는 하위 스트립과 연관시키는 타일 프로세서와, 상기 타일에 대한 디스플레이 목록━상기 디스플레이 목록은 상기 타일과 연관된 하위 스트립들 각각의 식별부를 포함함━을 포함하는 다각형 타일 데이터베이스와, 상기 스크린 상에 디스플레이할 이미지의 렌더링을 가능하게 하는 출력부를 포함함으로써 실현된다.
본 발명에 따른 그래픽 시스템은 다각형 스트립이 영향을 주는 타일의 개수와 상관없이, 어느 타일이 다각형에 의해서 중첩되는지를 결정하는 테스트를 하나의 다각형에 대해서 오직 한번의 테스만으로 하면 된다. 이러한 테스트는 버텍스 데이터가 입력부에서 수신된 후에 타일 프로세서에 의해서 수행된다. 동일한 타일을 중첩하는 다각형 스트립 중의 다각형들은 함께 이 타일과 연관된 하위 스트립을 형성한다. 각 타일에 대해서, 중첩하는 서브 스트립들의 목록이 다각형 타일 데이터베이스에 의해서 관리된다. 각 타일의 후속 프로세싱 동안, 해당 단일 타일과 중첩하는 다각형들만이 사용되기 때문에 어떠한 추가적 테스트도 요구되지 않는다. 반면에, 하위 스트립 대신에 각 타일에 대해서 전체 다각형 스트립들이 프로세싱되는 경우에는, 다각형이 해당 타일을 중첩하고 있는지의 여부를 결정하는 테스트는 매 타일 및 이 특정 타일과 중첩하는 다각형 스트립의 일부인 매 다각형마다 수행되어야 한다. 따라서, 가령, 50 개의 타일에 영향을 주고 있는 100 개의 다각형들로 구성된 스트립의 경우에, 상기 공지된 장치는 5000 번의 테스트를 필요로 하지만, 본원 발명에 따른 그래픽 시스템은 오직 100 번의 테스트만을 요구한다.
3D 공간 좌표는 모델 공간 좌표, 실제 공간 좌표, 시야 공간 좌표, 스크린 공간 좌표 또는 다른 공간으로부터의 좌표일 수 있으며, 이로써 이러한 좌표들은 스크린 공간으로 맵핑될 수 있다.
본 발명의 다른 측면에서, 해당 타일과 연관된 하위 스트립 각각의 식별부가 하위 스트립의 제 1 버텍스를 지시하는 참조부, 하위 스트립의 최종 스트립을 지시하는 참조부 및/또는 하위 스트립 내의 버텍스의 개수를 포함한다.
이러한 하위 스트립을 지시하는 참조부를 사용함으로써, 하위 스트립들을 별도의 다각형 하위 스트립들로 저장할 필요가 없어진다. 대신에, 다각형 스트립들이 전체적으로 저장된다. 이로써, 요구되는 메모리 크기가 저감되고 요구되는 메모리 대역폭도 저감된다.
본 발명의 이러한 측면들 및 다른 측면들은 이후에 설명되는 실시예를 참조하면 분명하게 이해될 것이다.
도 1은 본 발명에 따른 그래픽 시스템의 실시예의 블록도,
도 2는 버텍스 캐시(vertex cache)를 포함하는 그래픽 시스템의 블록도,
도 3은 스크린 상에 디스플레이된 다각형 스트립의 도면,
도 4는 가능한 TTDB 데이터 구조를 개략적으로 도시한 도면,
도 5는 2 개의 타일과 중첩하는 다각형을 도시한 도면,
도 6은 RGBA 픽셀 값을 계산하는 프로세스의 흐름도,
도 7a 내지 도 7c는 몇 개의 버텍스 캐시의 동작을 설명하는 도면.
도 1은 본 발명에 따른 그래픽 시스템의 개략도이다. 이 시스템은 버텍스 데이터 및 텍스처 데이터를 포함하는 그래픽 데이터를 수신하는 입력부(101)를 포함한다. 상기 텍스처 데이터는 텍스터 맵들을 포함하고 텍스처 메모리(106) 내에 저장된다. 버텍스 데이터는 디스플레이될 그래픽 이미지 내의 모든 버텍스들의 정보 및 다각형들의 구성을 가능하게 하는 접속 정보를 포함한다. 이 정보는 가령 스크린 공간에서 버텍스 위치를 규정하는 스크린 공간 좌표 (x,y,z) 및 텍스처 공간에서 버텍스 위치를 규정하는 텍스처 좌표 (u,v) 및 버텍스 색상(R,G,B)과 투명도(A)를 규정하는 RGBA 값들을 포함한다. 입력부(101)에서의 그래픽 데이터는 컴퓨터 게임 또는 비디오 클립 재생 프로그램과 같은 그래픽 프로그램(112)에 제공된다. 그래픽 프로그램은 스크린 공간 좌표를 제공하거나 모델 공간 좌표, 실제 공간 좌표 또는 시야 공간 좌표와 같은 다른 3D 공간 좌표를 제공한다. 그래픽 프로그램이 스크린 공간 좌표를 제공하지 않는다면, 버텍스 좌표 변환 및 광원 처리 장치(도시되지 않음)가 다른 3D 공간 좌표를 스크린 공간 좌표로 맵핑하고 스크린 공간 좌표를 입력부로 제공하기 위해서 사용된다.
버텍스 데이터가 타일 프로세서(102) 상으로 전달된다. 타일 프로세서(102)는 이 데이터를 다각형 스트립으로서 수신하거나 버텍스 데이터를 다각형 스트립으로 변환하고 이 사전 프로세싱된 데이터를 다각형 타일 데이터베이스로 지칭되는 데이터 구조 내에 저장한다. 통상적으로, 다각형은 삼각형이지만 사각형 또는 오각형과 같은 다른 다각형들이 사용될 수 있다. 삼각형을 사용할 때에, 다각형 타일 데이터베이스는 삼각형 타일 데이터베이스(TTDB)(103)로 지칭된다. 이후에 기술되는 대부분의 실시예들은 삼각형을 사용할 것이다. 그러나, 본 기술 분야의 당 업자는 삼각형 대신에 사각형, 오각형 등과 같은 다른 다각형도 쉽게 사용할 있을 것이다. 버텍스를 다각형으로 변환하는 것은 근방의 버텍스들을 비교하여 유사한 버텍스들을 그룹화함으로써 실현될 수 있다. 본 발명에 따른 그래픽 시스템에서, 이웃하면서 유사한 다각형들은 다각형 스트립으로 변환된다. 다각형 스트립은 적어도 하나의 다각형의 시퀀스를 포함하며, 각각의 후속하는 다각형은 자신의 선행하는 다각형과 한 변을 공유한다. 삼각형들을 사용하는 대신에 삼각형 스트립들을 사용함으로써 그래픽 시스템에서 요구되는 메모리 크기 및 대역폭이 저감되는데, 그 이유는 삼각형 스트립을 사용하면 오직 하나의 버텍스만이 새로운 삼각형을 규정하는데 필요하며 오직 하나의 포인터만이 스트립 내의 모든 버텍스들을 지시하는데 요구되기 때문이다. 개별 삼각형을 사용하는 경우에, 3 개의 버텍스가 새로운 삼각형을 규정하기 위해서 요구된다. 각 타일에 대해서, 타일 프로세서(102)는 다각형 스트립 중 어느 부분이 해당 타일과 중첩하는지를 결정한다. 이어서, 다수의 타일 중 하나의 특정 타일과 중첩하는 다각형들을 포함하는 하위 스트립이 규정된다. 다각형이 타일과 중첩하는지의 여부를 결정하는 예시적인 알고리즘이 도 5를 참조하여 이후에 설명될 것이다.
한 타일과 중첩하는 모든 하위 스트립들의 기하 구조 데이터 및 제 1 버텍스에 대한 포인터가 TTDB(103) 내에 저장된다. TTDB(103)는 해당 타일과 중첩하는 각각의 하위 스트립에 대한 포인터와 함께 해당 타일에 대한 디스플레이 목록을 포함한다. TTDB(103)의 구조가 도 4를 참조하여 이후에 설명될 것이다. 래스터라이저(105)는 TTDB(103) 및 텍스처 메모리(106)로부터의 데이터를 RGBA 픽셀 값으로 변환시킨다. 래스터라이저(105)에 의해서 수행되는 프로세스에 대한 상세한 설명은 도 5를 참조하여 이후에 설명될 것이다. 래스터라이저(105)에 의해서 계산된 타일에 대한 RGBA 픽셀 값은 RGBA 타일 버퍼(108) 내에 기록된다. RGBA 픽셀 값들은 가능하게는 그 (x,y) 픽셀 좌표에 대해서 Z 타일(107)로부터 깊이(z) 값을 판독하는 단계를 포함하는 깊이 테스트에 의존한다. 한 타일에 대한 모든 RGBA 픽셀 값들이 산출되면, RGBA 타일이 RGBA 프레임 버퍼(110)로 복사된다. 그래픽 이미지의 모든 타일 내의 모든 픽셀에 대한 RGBA 픽셀 값이 프레임 버퍼에 존재하면, 이 그래픽 이미지는 디스플레이 스크린(111) 상에 디스플레이되거나 빔 발생기로 전송된다.
타일 프로세서(102) 및 래스터라이저(105)와 같은 데이터 프로세싱 유닛 및 이 데이터 프로세싱 유닛에 의해 사용된 정보를 임시적으로 저장하는 RGBA 타일 버퍼(108)와 같은 소형 메모리 버퍼들은 통상적으로 그래픽 프로세싱 칩(100)의 일부이다. TTDB(103), 텍스처 메모리(106) 및 RGBA 프레임 버퍼(109)와 같은 대형 메모리들은 통상적으로 오프-칩 형태로 실현된다. 3D 그래픽은 오프 칩 텍스처 메모리와 온 칩 프로세싱 유닛 간에 대량의 트래픽을 요구한다. 전체 다각형 스트립을 사용하는 대신에 하위 스트립을 사용함으로써 이러한 데이터 트래픽이 크게 감소될 수 있다. 한 타일이 프로세싱되고 있으면, 이러한 프로세싱은 해당 타일을 중첩하는 다각형들과만 관련된다. 전체 다각형 스트립을 사용하는 경우에는, 스트립의 오직 일부분만이 현재 프로세싱되고 있는 타일과 실제적으로 중첩할지라도, 스트립의 각 다각형이 프로세싱되어야만 한다. 또한, 본 발명에 따른 방법을 사용하면, 요구되는 컴퓨터 자원이 크게 감소된다.
도 2는 도 1에 도시된 실시예와 유사하지만 버텍스 캐시(204)를 더 포함하는 그래픽 시스템의 실시예를 도시하고 있다. 몇몇 다각형들은 하나 이상의 타일과 중첩한다. 따라서, 이들 다각형은 하나 이상의 하위 스트립의 일부이다. 이들 다각형의 버텍스 데이터는 몇 개의 타일의 프로세싱 동안에 사용될 것이다. 도 2에 도시된 그래픽 시스템에서, 버텍스 데이터는 온 칩 버텍스 캐시(204) 내에 임시적으로 저장된다. 온 칩 버텍스 캐시(204)를 사용함으로써, 오프 칩 메모리로부터의 데이터 트래픽이 더 감소된다.
그래픽 시스템의 바람직한 실시예에서, 버텍스 캐시(204)는 신중하게 선정된 버텍스만을 관리한다. 가령, 오직 하나의 타일과만 중첩하는 다각형들의 버텍스는 오직 한번 프로세싱될 것이며 버텍스 캐시(204)에서는 관리될 필요가 없다. 또한, 이미 프로세싱된 타일들과만 중첩하는 버텍스들도 버텍스 캐시(204)에서 관리될 필요가 없다. 이러한 지능형 캐시 관리는 다각형이 다시 사용될지의 여부를 결정하기 위해서 타일 대 타일 프로세싱 방향을 다각형 스트립에서의 다각형 대 다각형 방향과 비교하는 것을 포함한다. 가령, 다각형이 제 1 타일 및 상기 제 1 타일의 상부에 이웃하는 타일인 제 2 타일과 중첩하고 타일 대 타일 횡단 방향이 좌측에서 우측으로 되고 상부에서 하부로 되면, 이 다각형은 다시 프로세싱되지 않을 것이며 버텍스 캐시(204) 내에 관리될 필요가 없다. 이와 반대로, 타일 대 타일 프로세싱 방향이 다각형 대 다각형 방향과 동일하면, 중첩하는 다각형은 다시 사용될 것이며 버텍스 캐시(204)에서 관리되어야 한다. 이러한 효율적인 캐시 관리로 인해서 버 텍스 캐시(204)에 대해서 요구되는 메모리 크기가 감소되고 그래픽 프로세싱 칩(100)에 대해서 요구되는 크기도 감소된다. 이러한 효율적인 캐시 관리의 실례가 도 7a 내지 도 7c를 참조하여 이후에 설명될 것이다.
도 3은 스크린 상에 디스플레이된 다각형 스트립(30)을 도시한다. 이 스크린은 12 개의 타일(t1 내지 t12)로 분할된다. 이 타일 크기는 가령 온 칩 메모리의 크기, 프로세싱 전력, 스크린 크기 및 이미지 복잡 정도에 따라서 선정된다. 가령 320*240 해상도를 갖는 이동 전화 스크린은 32*16 픽셀로 구성된 10*15 개의 타일로 분할된다. 도 3에서, 하나의 삼각형 스트립(30)이 스크린 상에 디스플레이된다. 이 삼각형 스트립(30)은 3 개의 타일(t5,t6,t7)과 중첩한다. 본 발명에 따른 그래픽 시스템에서, 타일 프로세서(102)는 하위 스트립을 규정하는데, 이 하위 스트립 각각은 타일들 중 하나의 타일과 적어도 부분적으로 중첩하는 다각형 스트립 중의 다각형들을 포함한다. 도 3에서, 3 개의 하위 스트립들이 규정된다. 타일(t5)와 중첩하는 하위 스트립은 버텍스(v3)에서 시작하여 버텍스(v9)에서 끝나고, 타일(t6)과 중첩하는 하위 스트립은 버텍스(v6)에서 버텍스(v14)로 연장되고, 타일(t7)과 중첩하는 하위 스트립은 버텍스(v11)에서 버텍스(v14)로 연장된다. 타일(t5)의 프로세싱 동안, 버텍스(v3 내지 v9)가 TTDB(103)로부터 검색된다. 버텍스(v3 내지 v9)는 타일(t6)의 프로세싱 동안에 재사용되기 위해서 버텍스 캐시(204) 내에 저장된다.
도 4는 가능한 TTDB 데이터 구조를 개략적으로 도시하고 있다. TTDB는 버텍스 데이터를 갖는 이미지 버퍼를 포함한다. 이미지 버퍼는 버텍스 어레이(44) 및 텍스처 포인터 어레이(41)를 포함한다. 버텍스 어레이(44)는 버텍스와 관련된 기하 구조 데이터를 포함한다. 버텍스는 XYZUVRGBA-속성((x,y,z) 좌표는 스크린 공간 또는 다른 3D 공간에서 버텍스의 위치에 대한 것이며, (u,v) 좌표는 텍스처 공간에서의 버텍스의 위치에 대한 것이고, RGBA 색상 값은 버텍스의 색상 및 투명도를 규정함)을 사용하여 코딩된다. 텍스처 포인터 어레이(41)는 텍스처 메모리(106) 내에 저장된 텍스처 맵에 대한 포인터를 포함한다.
TTDB는 각 타일에 대한 디스플레이 목록을 포함한다. 타일(t5)(도 3 참조)에 대한 디스플레이 목록 및 타일(t3)(도 3 참조)에 대한 디스플레이 목록이 도 4에 도시되어 있다. 이 디스플레이 목록들은 적어도 2 개의 타입의 엔트리를 포함하는데, 한 타입의 엔트리(45,47)는 버텍스 어레이(44) 내의 버텍스 데이터를 지시하는 버텍스에 대한 인덱스 또는 포인터를 가능하게는 포함하며, 다른 타입의 엔트리(46,48)는 상태 변경 엔트리이다. s 엔트리에 의해 포함되는 상태 변경 데이터는 텍스처 포인터 어레이에 대한 인덱스이거나 소정의 상태가 변경되어야 함을 표시하는 코드일 수 있다. 포그(fog), 광원 처리 및 다른 인에이블/디스에이블 OpenGL 특징과 같은 다른 상태 변경이 s 엔트리 내로 직접 인코딩된다.
각 버텍스 포인터는 하위 스트립의 제 1 버텍스를 지시한다. 가령, 타일(t5)에 대한 디스플레이 목록(42)은 도 3에 도시된 하위 스트립의 제 1 버텍스(v3)에 대한 버텍스 포인터(45)를 포함하고 상태 변경 엔트리(46)는 텍스처 포인터 어레이(41) 내의 텍스처 포인터(49)에 대한 인덱스를 포함한다. 하위 스트립의 모든 버텍스들이 파이프라인의 동일한 상태를 사용하여 프로세싱된다. 하위 스트 립의 최종 버텍스가 프로세싱되었다면, 다음 버텍스 포인터가 지시하는 다음 하위 스트립의 프로세싱이 개시된다. 새로운 텍스처 상태 변경 엔트리에 도달할 때까지, 스트립 내의 모든 삼각형들이 동일한 텍스처를 사용하여 프로세싱된다.
하위 스트립의 단부는 각 버텍스에 대해서 이 버텍스가 해당 타일과 중첩하는 삼삭형의 일부인지를 검사함으로써 결정된다. 그래픽 시스템의 일 실시예에서, 디스플레이 목록은 각각의 하위 스트립의 길이 또는 하위 스트립의 최종 버텍스에 대한 포인터를 더 포함한다. 이러한 실시예에서, 타일을 렌더링할 때에, 각 버텍스에 대해서 이 버텍스가 프로세싱되고 있는 하위 스트립의 일부인지의 여부를 검사하는 단계가 필요 없다.
도 5는 타일(C,D)과 중첩하는 다각형(50)을 도시한다. 어느 타일이 삼각형(50)에 의해서 중첩되는지를 결정하는 예시적인 알고리즘은 다음과 같은 단계를 포함한다.
1. 삼각형을 구성하는 버텍스들의 최소 x 좌표 값(xmin), 최대 x 좌표 값(xmzx), 최소 y 좌표 값(ymin) 및 최대 y 좌표 값(ymzx)을 결정함으로써 삼각형을 둘러싸는 경계 박스를 생성하는 단계
2. 모든 타일의 전체 세트와 함께 개시하는 단계
3. 최소 x 좌표 값보다 작은 최대 x 값을 갖는 모든 타일을 제외시키는 단계
4. 최대 x 좌표 값보다 큰 최소 x 값을 갖는 모든 타일을 제외시키는 단계
5. 최소 y 좌표 값보다 작은 최대 y 값을 갖는 모든 타일을 제외시키는 단계
6. 최대 y 좌표 값보다 큰 최소 y 값을 갖는 모든 타일을 제외시키는 단계
이로써, 남아 있는 타일의 세트 내의 모든 타일들은 삼각형에 의해서 중첩된다. 도 1에 도시된 그래픽 시스템에서, 이러한 알고리즘은 타일 프로세서(102)에 의해서 실행된다. 어느 삼각형이 어느 타일을 중첩하는지를 결정하기 위해서 다른 알고리즘이 사용될 수 있다. 다각형이 삼각형이 아니라 사각형, 오각형 또는 다른 타입의 다각형이어도, 동일한 알고리즘이 사용될 수 있다.
상술된 알고리즘으로, 기본적으로는, 타일과 다각형의 경계 박스의 중첩이 검출된다. 다각형이 가령 도 3에 도시된 3 개의 타일(t2,t3,t7)을 중첩하면, 다각형 그 자체는 이 경우에는 타일(t6)인 네번째 타일과는 중첩하지 않지만 경계 박스는 이 네번째 타일과 중첩한다. 이러한 경우에, 그 타일과 중첩하는 것은 다각형이 아니라 경계 박스일지라도, 이 다각형도 이 타일과 중첩하는 것으로서 규정된다. 이로써, 하위 스트립은 때때로 해당 타일과 실제적으로 중첩하지 않은 다각형을 포함할 수 있다. 그러나, 요구되지 않은 다각형의 버텍스들이 이웃하는 타일과 함께 사용되기 위해서 버텍스 캐시(204) 내에 여전히 저장될 수 있다. 이러한 추가적인 다각형은 메모리 크기, 계산 전력 및 대역폭과 같은 시스템 기술적 요구 레벨을 크게 증가시키지는 않는다. 다소 보다 복잡한 알고리즘으로, 어느 타일이 어느 다각형에 의해서 중첩되고 있는지를 정확하게 알 수 있다.
도 6은 래스터라이저(105)에서 RGBA 픽셀 값들을 계산하는 프로세스의 흐름 도이다. 제 1 RETR 단계에서, 한 타일의 디스플레이 목록 내의 제 1 하위 스트립의 삼각형의 버텍스 데이터가 TTDB(103)로부터 검색된다. 이어서, CALC 단계에서, 래스터라이저는 삼각형 내의 모든 픽셀들을 횡단하며 색상, Z 값, (u,v) 텍스처 좌표를 계산하고 이 좌표에 대한 텍셀 색상을 현재의 텍스처 맵으로부터 페치하며 가능하게는 각 픽셀에 대한 다른 속성들도 페치한다.
선택 사양적인 깊이 테스트 단계 COMP에서, 계산된 z 값들이 z 타일 버퍼(107)에 저장된 값들과 비교된다. 이 테스트의 결과에 따라서, 저장된 z 값은 계산된 z 값으로 대체되고 RGBA 색상이 기록 단계 WRT에서 RGBA 타일 버퍼(108)에 저장된다. 다음 단계 MP에서, 동일한 하위 스트립의 보다 많은 삼각형 또는 동일한 타일 상의 보다 많은 하위 스트립들이 프로세싱되어야 하는지의 여부가 검사된다. 만일 그러하다면, 다음 하위 스트립의 다음 삼각형이 제 1 RETR 단계와 함께 시작하면서 프로세싱된다. 만일 그러하지 않다면, 전체 RGBA 타일 버퍼(108)가 프레임 버퍼(110)로 복사된다. 이후에, 다음 단계 MT에서, 프레임 상의 보다 많은 타일들이 프로세싱되어야 하는지의 여부가 검사된다. 만일 그러하다면, 다음 타일의 제 1 하위 스트립의 제 1 삼각형이 제 1 RETR 단계와 함께 다시 시작하면서 프로세싱된다. 만일 그러하지 않다면, 디스플레이 단계 DISP에서, 전체 프레임이 스크린(111) 상에 디스플레이되거나 빔 발생기로 전송된다.
도 7a 내지 도 7c에서는, 효율적인 캐시 관리의 몇몇 실례들이 개시된다. 도 7a에서, 버텍스(q1-q12)로 구성된 다각형 스트립(70)이 도시되어 있다. 이 다각형 스트립(70)은 타일(t21,t22,t23)과 중첩한다. 도 7a에서, 하위 스트립(71)은 음영으로 강조되었다. 타일(t22)을 렌더링하기 이전에, 하위 스트립(71)의 버텍스(q3-q10)가 버텍스 캐시(204) 내에 이미 존재하지 않는다면 버텍스 캐시(204) 내부로 로딩되어 오프 칩 메모리에 대한 대역폭 요구 레벨을 최소함으로써 타일을 효율적으로 렌더링하게 한다. 바람직하게는, 버텍스 캐시(204)는 이미지를 렌더링하기 위해서 계속 필요하게 되는 모든 버텍스들을 포함한다. 이러한 목적은 한 이미지의 모든 버텍스 데이터를 포함하기에 충분하게 큰 버텍스 캐시(204)를 제공함으로써 용이하게 달성될 수 있다. 그러나, 이러한 대형 버텍스 캐시(204)는 생산 비용 및 칩 면적의 측면에서 볼 때 비용이 많이 든다.
버텍스 캐시(204)의 바람직한 실시예에서, 타일을 렌더링한 후에, 다른 타일을 렌더링하기 위해서 다시 사용되지 않는 버텍스들은 다른 타일을 렌더링하기 위해서 필요한 버텍스들에 의해서 오버라이트된다. 가령, 도 7b의 음영으로 강조된 다각형들을 구성하는 버텍스(q7-q10)는 타일(t23)을 렌더링하기 위해서 필요하다. 따라서, 버텍스(q7-q10)는 타일(t22)을 렌더링한 후에 버텍스 캐시(204) 내에서 관리되어야 한다. 하위 스트립(71)의 다른 버텍스(q3-q6)는 타일(t23)을 렌더링하기 위해서 필요한 다른 버텍스들에 의해서 오버라이트된다.
다른 개선된 실시예에서, 타일을 렌더링하기 이전에, 다른 타일을 렌더링하기 위해서 이후에 사용될 버텍스들은 버텍스 캐시(204) 내에 로딩된다. 가령, 타일(t22)을 렌더링하기 이전에 또한 하위 스트립(71)의 버텍스(q3-q10)를 캐싱(caching)하기까지, 타일(t23)을 렌더링하기 위해서 필요한 버텍스(q11,q12)는 버텍스 캐시로 로딩된다. 도 7c에서, 음영으로 된 구역은 이 개선된 실시예를 사 용할 경우에 타일(t22)을 렌더링하기 이전에 캐싱되는 버텍스들을 포함한다. 이 실시예로 인해서, 타일을 렌더링하기 위해 필요한 데이터가 버텍스 캐시(204)로부터 직접 검색되지 않을 가능성이 최소화된다. 이로써, 적은 캐시 충돌이 발생한다.
본 발명은 본 발명을 실행시킬 수 있도록 적응되는 컴퓨터 프로그램, 특히 캐리어 상 또는 내의 컴퓨터 프로그램으로 확장될 수 있다. 이 프로그램은 본 발명에 따른 방법을 구현하는데 있어서 사용되기 적합한 소스 코드, 객체 코드 및 부분적으로 컴파일링된 형태와 같은 중간의 소스 및 객체 코드의 형태 또는 임의의 다른 형태로 구현될 수 있다. 캐리어는 프로그램을 저장할 수 있는 임의의 개체 또는 디바이스일 수 있다. 가령, 캐리어는 CD ROM 또는 반도체 ROM과 같은 ROM과 같은 저장 매체 또는 플로피 디스크 또는 하드 디스크와 같은 자기 기록 매체를 포함한다. 또한, 캐리어는 전기 케이블 또는 광학 케이블을 통해서 또는 무선 수단 또는 다른 수단에 의해서 반송되는 전기 신호 또는 광학 신호와 같은 전송가능한 캐리어일 수 있다. 프로그램이 이러한 신호로 구현되면, 캐리어는 이러한 케이블 또는 다른 디바이스에 의해 구성된다. 이와 달리, 캐리어는 프로그램이 내장된 집적 회로일 수 있으며, 이 집적 회로는 본 발명에 따른 방법을 수행하도록 적응된다.
상술된 실시예들은 본 발명을 한정하기보다는 예시적으로 설명하고 있으며, 본 기술 분야의 당업자들은 다음의 첨부된 청구범위를 일탈하지 않는 수많은 다른 실시예들을 설계할 수 있다. 청구 범위에서, 괄호 안의 임의의 참조 부호들은 해 당 청구항을 한정하는 것으로 해석되지 말아야 한다. 동사 "포함한다" 및 이의 활용어는 그 청구항에서 열거된 단계 또는 구성 요소 이외의 단계 또는 구성 요소의 존재를 배제하지 않는다. 구성 요소의 단수형은 그 구성 요소가 복수 개로 존재하는 것을 배제하지 않는다. 본 발명은 몇 개의 개별 구성 요소들을 포함하는 하드웨어 및 적합하게 프로그램된 컴퓨터에 의해서 구현될 수 있다. 몇 개의 수단을 열거하는 장치 청구항에 있어서, 이들 다수의 구성 요소들은 하나의 하드웨어 및 동일한 하드웨어로 구현될 수 있다. 소정의 수단들이 서로 상이한 종속항에서 인용되었다는 사실은 이들 수단들의 조합이 유리하게 사용될 수 없음을 나타내지 않는다.

Claims (9)

  1. 버텍스 데이터(vertex data)를 스크린(111) 상에 디스플레이할 출력 이미지로 타일(tile) 기반으로 변환하는 그래픽 시스템━상기 버텍스 데이터는 다각형들의 세트에 의해서 객체를 표현하며, 하나의 다각형은 적어도 3 개의 버텍스들(v3,v4,...,v14)로 구성됨━으로서,
    상기 이미지 내의 상기 각각의 버텍스(v3,v4,...,v14)에 대한 3D 공간 좌표를 적어도 포함하는 상기 버텍스 데이터를 수신하는 입력부(101)와,
    상기 이미지를 다수의 타일(t1,t2,...,t12)로 하위분할하고, 각각이 적어도 하나의 다각형의 시퀀스를 포함하는 다수의 다각형 스트립(30)━상기 다각형 스트립 중 각각의 후속하는 다각형은 이에 선행하는 다각형과 한 변(side)을 공유함━을 결정하며, 상기 각 다각형 스트립(30)에 대하여, 각각이 상기 다수의 타일(t1,t2,...,t12) 중 하나의 타일과 적어도 부분적으로 중첩되는 상기 다각형 스트립(30) 중의 다각형들을 포함하는 하위 스트립들을 결정하고 상기 하나의 타일(t1,t2,...,t12)을 상기 중첩되는 하위 스트립과 연관시키는 타일 프로세서(102)와,
    각각의 상기 타일(t1,t2,...,t12)에 대한 디스플레이 목록━상기 디스플레이 목록은 상기 타일(t1,t2,...,t12)과 연관된 하위 스트립들 각각의 식별부(45,47)를 포함함━을 포함하는 다각형 타일 데이터베이스(103)와,
    상기 스크린(111) 상에 디스플레이할 이미지의 렌더링을 가능하게 하는 출력 부(109)를 포함하는
    그래픽 시스템.
  2. 제 1 항에 있어서,
    상기 타일(t1,t2,...,t12)과 연관된 하위 스트립들 각각의 식별부(45,47)는 상기 하위 스트립의 제 1 버텍스에 대한 참조부(reference)를 포함하는
    그래픽 시스템.
  3. 제 2 항에 있어서,
    상기 타일(t1,t2,...,t12)과 연관된 하위 스트립들 각각의 식별부(45,47)는 상기 하위 스트립의 최종 버텍스에 대한 참조부를 포함하는
    그래픽 시스템.
  4. 제 2 항에 있어서,
    상기 타일(t1,t2,...,t12)과 연관된 하위 스트립들 각각의 식별부(45,47)는 상기 하위 스트립 내의 버텍스의 개수를 포함하는
    그래픽 시스템.
  5. 제 1 항에 있어서,
    상기 타일(t1,t2,...,t12)과 연관된 하위 스트립들의 버텍스 데이터를 캐시하는(caching) 버텍스 캐시(204)를 더 포함하는
    그래픽 시스템.
  6. 제 5 항에 있어서,
    상기 버텍스 캐시(204)는 후속하는 타일을 위해서 사용될 버텍스 데이터를 관리하는
    그래픽 시스템.
  7. 제 5 항에 있어서,
    상기 버텍스 캐시(204)는 후속하는 타일을 위해서 사용될 버텍스 데이터를 사전 페치하는(pre-fetching)
    그래픽 시스템.
  8. 버텍스 데이터를 스크린(111) 상에 디스플레이할 출력 이미지로 타일 기반으 로 변환하는 방법━상기 버텍스 데이터는 다각형들의 세트에 의해서 객체를 표현하며, 하나의 다각형은 적어도 3 개의 버텍스들(v3,v4,...,v14)로 구성됨━으로서,
    상기 이미지 내의 상기 각각의 버텍스(v3,v4,...,v14)에 대한 3D 공간 좌표를 적어도 포함하는 상기 버텍스 데이터를 수신하는 단계와,
    상기 이미지를 다수의 타일(t1,t2,...,t12)로 하위분할하는 단계와,
    각각이 적어도 하나의 다각형의 시퀀스를 포함하는 다수의 다각형 스트립(30)━상기 다각형 스트립 중 각각의 후속하는 다각형은 이에 선행하는 다각형과 한 변을 공유함━을 결정하는 단계와,
    상기 각 다각형 스트립(30)에 대하여, 각각이 상기 다수의 타일(t1,t2,...,t12) 중 하나의 타일과 적어도 부분적으로 중첩되는 상기 다각형 스트립(30) 중의 다각형들을 포함하는 하위 스트립들을 결정하고, 상기 하나의 타일(t1,t2,...,t12)을 상기 중첩하는 하위 스트립과 연관시키는 단계와,
    상기 타일(t1,t2,...,t12)에 대한 디스플레이 목록━상기 디스플레이 목록은 상기 타일(t1,t2,...,t12)과 연관된 하위 스트립들 각각의 식별부를 포함함━을 포함하는 다각형 타일 데이터베이스를 마련하는 단계와,
    상기 스크린(111) 상에 디스플레이할 이미지의 렌더링을 가능하게 하는 단계를 포함하는
    버텍스 데이터의 타일 기반 변환 방법.
  9. 프로세서로 하여금 제 8 항에 따른 방법을 수행하게 하는 컴퓨터 프로그램 제품.
KR1020067024576A 2004-05-24 2005-05-10 그래픽 시스템, 꼭지점 데이터의 타일 기반 변환 방법 및 컴퓨터 판독가능한 저장 매체 KR101140460B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
EP04102260.9 2004-05-24
EP04102260 2004-05-24
PCT/IB2005/051528 WO2005116930A1 (en) 2004-05-24 2005-05-10 Tile based graphics rendering

Publications (2)

Publication Number Publication Date
KR20070026521A true KR20070026521A (ko) 2007-03-08
KR101140460B1 KR101140460B1 (ko) 2012-04-30

Family

ID=34967068

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020067024576A KR101140460B1 (ko) 2004-05-24 2005-05-10 그래픽 시스템, 꼭지점 데이터의 타일 기반 변환 방법 및 컴퓨터 판독가능한 저장 매체

Country Status (6)

Country Link
US (1) US8194071B2 (ko)
EP (1) EP1754195B1 (ko)
JP (1) JP4769984B2 (ko)
KR (1) KR101140460B1 (ko)
CN (1) CN100576249C (ko)
WO (1) WO2005116930A1 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20120034293A (ko) * 2010-10-01 2012-04-12 삼성전자주식회사 정점 처리 방법 및 장치
US9514506B2 (en) 2011-06-17 2016-12-06 Samsung Electronics Co., Ltd. Method and apparatus for tile based rendering using tile-to-tile locality

Families Citing this family (35)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB0524804D0 (en) 2005-12-05 2006-01-11 Falanx Microsystems As Method of and apparatus for processing graphics
US7843468B2 (en) 2006-07-26 2010-11-30 Nvidia Corporation Accellerated start tile search
US9965886B2 (en) 2006-12-04 2018-05-08 Arm Norway As Method of and apparatus for processing graphics
GB0723536D0 (en) * 2007-11-30 2008-01-09 Imagination Tech Ltd Multi-core geometry processing in a tile based rendering system
US20100020069A1 (en) 2008-07-25 2010-01-28 Qualcomm Incorporated Partitioning-based performance analysis for graphics imaging
WO2010011980A1 (en) * 2008-07-25 2010-01-28 Qualcomm Incorporated Partitioning-based performance analysis for graphics imaging
US9792718B2 (en) * 2008-07-25 2017-10-17 Qualcomm Incorporated Mapping graphics instructions to associated graphics data during performance analysis
KR101511273B1 (ko) * 2008-12-29 2015-04-10 삼성전자주식회사 멀티 코어 프로세서를 이용한 3차원 그래픽 렌더링 방법 및시스템
GB0900700D0 (en) 2009-01-15 2009-03-04 Advanced Risc Mach Ltd Methods of and apparatus for processing graphics
US8217962B2 (en) * 2009-01-29 2012-07-10 Microsoft Corporation Single-pass bounding box calculation
US8761520B2 (en) 2009-12-11 2014-06-24 Microsoft Corporation Accelerating bitmap remoting by identifying and extracting 2D patterns from source bitmaps
JP2011128713A (ja) * 2009-12-15 2011-06-30 Toshiba Corp 画像処理装置および画像処理プログラム
CN102667850B (zh) * 2009-12-23 2015-01-28 英特尔公司 图像处理技术
CN104599304B (zh) * 2009-12-23 2018-06-08 英特尔公司 图像处理技术
US8913080B2 (en) * 2011-05-09 2014-12-16 Microsoft Corporation Partitioning high resolution images into sub-images for display
CN102903094B (zh) * 2011-07-25 2015-09-02 株式会社理光 电子文档栅格化方法和电子文档栅格化装置
US9317948B2 (en) 2012-11-16 2016-04-19 Arm Limited Method of and apparatus for processing graphics
US10957094B2 (en) 2013-03-29 2021-03-23 Advanced Micro Devices, Inc. Hybrid render with preferred primitive batch binning and sorting
US10169906B2 (en) 2013-03-29 2019-01-01 Advanced Micro Devices, Inc. Hybrid render with deferred primitive batch binning
US10204391B2 (en) 2013-06-04 2019-02-12 Arm Limited Method of and apparatus for processing graphics
KR102109130B1 (ko) 2013-08-12 2020-05-08 삼성전자주식회사 그래픽스 프로세싱 유닛, 이의 동작 방법, 및 이를 포함하는 장치들
US9659393B2 (en) * 2013-10-07 2017-05-23 Intel Corporation Selective rasterization
KR20150095144A (ko) 2014-02-12 2015-08-20 삼성전자주식회사 그래픽스 데이터를 렌더링하는 방법 및 장치
CN105096299B (zh) * 2014-05-08 2019-02-26 北京大学 多边形检测方法和多边形检测装置
GB2524121B (en) 2014-06-17 2016-03-02 Imagination Tech Ltd Assigning primitives to tiles in a graphics processing system
US20160035128A1 (en) * 2014-08-03 2016-02-04 Mediatek Singapore Pte. Ltd. Graphics processing system for performing deferred vertex attribute shading based on split vertex bitstreams and related graphics processing method
US9799091B2 (en) 2014-11-20 2017-10-24 Intel Corporation Apparatus and method for efficient frame-to-frame coherency exploitation for sort-last architectures
GB2553744B (en) 2016-04-29 2018-09-05 Advanced Risc Mach Ltd Graphics processing systems
US20170358132A1 (en) * 2016-06-12 2017-12-14 Apple Inc. System And Method For Tessellation In An Improved Graphics Pipeline
US10930086B2 (en) 2016-11-01 2021-02-23 Dg Holdings, Inc. Comparative virtual asset adjustment systems and methods
US10275941B2 (en) * 2016-11-01 2019-04-30 Dg Holdings, Inc. Multi-layered depth and volume preservation of stacked meshes
CN107101453A (zh) * 2017-05-19 2017-08-29 Tcl家用电器(合肥)有限公司 冰箱的温度控制方法、冰箱及计算机可读存储介质
EP3888063A1 (en) * 2018-11-27 2021-10-06 Renesas Electronics Corporation Instruction list generation
US11106404B2 (en) 2019-12-07 2021-08-31 Kyocera Document Solutions Inc. Template generation for tiling for appearance of overlap
US11106410B2 (en) 2019-12-07 2021-08-31 Kyocera Document Solutions Inc. Automated template generation for tiling

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6697063B1 (en) * 1997-01-03 2004-02-24 Nvidia U.S. Investment Company Rendering pipeline
JP3732317B2 (ja) * 1997-09-17 2006-01-05 株式会社ソニー・コンピュータエンタテインメント 情報処理装置および方法、並びに伝送媒体
GB2343603B (en) * 1998-11-06 2003-04-02 Videologic Ltd Shading 3-dimensional computer generated images
GB2343602B (en) 1998-11-06 2003-03-19 Videologic Ltd Shading 3-dimensional computer generated images
US6344852B1 (en) 1999-03-17 2002-02-05 Nvidia Corporation Optimized system and method for binning of graphics data
US20020039100A1 (en) * 2000-06-08 2002-04-04 Stephen Morphet Memory management for systems for generating 3-dimensional computer images
US6816161B2 (en) * 2002-01-30 2004-11-09 Sun Microsystems, Inc. Vertex assembly buffer and primitive launch buffer
FR2840705A1 (fr) * 2002-06-06 2003-12-12 Artabel Procede et dispositif d'equilibrage de charge au sein d'un ensemble (cluster) d'ordinateurs utilises en parallele pour des applications graphiques

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20120034293A (ko) * 2010-10-01 2012-04-12 삼성전자주식회사 정점 처리 방법 및 장치
US9514506B2 (en) 2011-06-17 2016-12-06 Samsung Electronics Co., Ltd. Method and apparatus for tile based rendering using tile-to-tile locality

Also Published As

Publication number Publication date
EP1754195A1 (en) 2007-02-21
JP4769984B2 (ja) 2011-09-07
US20080259076A1 (en) 2008-10-23
CN1957377A (zh) 2007-05-02
US8194071B2 (en) 2012-06-05
EP1754195B1 (en) 2016-02-17
JP2008500625A (ja) 2008-01-10
KR101140460B1 (ko) 2012-04-30
WO2005116930A1 (en) 2005-12-08
CN100576249C (zh) 2009-12-30

Similar Documents

Publication Publication Date Title
KR101140460B1 (ko) 그래픽 시스템, 꼭지점 데이터의 타일 기반 변환 방법 및 컴퓨터 판독가능한 저장 매체
CN108734624B (zh) 包括多个处理级的图形处理流水线及其操作方法与介质
US7280121B2 (en) Image processing apparatus and method of same
JP5595739B2 (ja) グラフィックスを処理する方法およびそのための装置
US8456468B2 (en) Graphic rendering method and system comprising a graphic module
US8345051B2 (en) Processing of 3-dimensional graphics
US20130021445A1 (en) Camera Projection Meshes
KR102322433B1 (ko) 그래픽 처리 시스템
US10339703B2 (en) Device and method to compute shadow in a 3D scene
TWI434226B (zh) 影像處理技術
JP2002526842A (ja) ディファード・シェーディング(deferredshading)を伴うグラフィックス・プロセッサ(graphicsprocessor)
KR101609266B1 (ko) 타일 기반의 랜더링 장치 및 방법
JP2001357410A (ja) 別々に生成された3次元イメージを合成するグラフィックス・システム
EP1519317A1 (en) Apparatus and method for antialiasing based on z buffer or normal vector information
US7027047B2 (en) 3D graphics rendering engine for processing an invisible fragment and a method therefor
KR20180038793A (ko) 영상 데이터 처리 방법 및 장치
US9092907B2 (en) Image shader using two-tiered lookup table for implementing style attribute references
US20210295586A1 (en) Methods and apparatus for decoupled shading texture rendering
US20220245883A1 (en) Method and system of decoupled object space shading

Legal Events

Date Code Title Description
N231 Notification of change of applicant
A201 Request for examination
N231 Notification of change of applicant
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20160411

Year of fee payment: 5

LAPS Lapse due to unpaid annual fee