KR100682456B1 - 렌더링 영역을 최소화하는 3d 그래픽스 데이터의 렌더링방법 및 시스템 - Google Patents
렌더링 영역을 최소화하는 3d 그래픽스 데이터의 렌더링방법 및 시스템 Download PDFInfo
- Publication number
- KR100682456B1 KR100682456B1 KR1020060012226A KR20060012226A KR100682456B1 KR 100682456 B1 KR100682456 B1 KR 100682456B1 KR 1020060012226 A KR1020060012226 A KR 1020060012226A KR 20060012226 A KR20060012226 A KR 20060012226A KR 100682456 B1 KR100682456 B1 KR 100682456B1
- Authority
- KR
- South Korea
- Prior art keywords
- rendering
- buffer
- graphics data
- result
- update
- Prior art date
Links
Images
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B23—MACHINE TOOLS; METAL-WORKING NOT OTHERWISE PROVIDED FOR
- B23B—TURNING; BORING
- B23B39/00—General-purpose boring or drilling machines or devices; Sets of boring and/or drilling machines
- B23B39/16—Drilling machines with a plurality of working-spindles; Drilling automatons
- B23B39/161—Drilling machines with a plurality of working-spindles; Drilling automatons with parallel work spindles
- B23B39/162—Drilling machines with a plurality of working-spindles; Drilling automatons with parallel work spindles having gear transmissions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/005—General purpose rendering architectures
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B23—MACHINE TOOLS; METAL-WORKING NOT OTHERWISE PROVIDED FOR
- B23B—TURNING; BORING
- B23B39/00—General-purpose boring or drilling machines or devices; Sets of boring and/or drilling machines
- B23B39/04—Co-ordinate boring or drilling machines; Machines for making holes without previous marking
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B23—MACHINE TOOLS; METAL-WORKING NOT OTHERWISE PROVIDED FOR
- B23B—TURNING; BORING
- B23B47/00—Constructional features of components specially designed for boring or drilling machines; Accessories therefor
- B23B47/26—Liftable or lowerable drill heads or headstocks; Balancing arrangements therefor
Landscapes
- Engineering & Computer Science (AREA)
- Mechanical Engineering (AREA)
- Computer Graphics (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Image Generation (AREA)
Abstract
본 발명은 렌더링 영역을 최소화하는 3D 그래픽스 데이터의 렌더링 방법 및 시스템에 관한 것으로서, 더욱 상세하게는 연속적으로 입력된 제1 그래픽스 데이터 및 제2 그래픽스 데이터의 기준 시점의 동일 여부를 판단하고, 기준 시점이 동일한 경우 제1 그래픽스 데이터의 정적 객체에 대한 렌더링 결과를 제2 그래픽스 데이터의 렌더링 결과로 재사용하고, 동적 객체에 대한 렌더링만을 수행함으로써, 렌더링 영역을 최소화하여 렌더링 속도를 향상시키는 렌더링 방법 및 시스템에 관한 것이다. 본 발명의 일실시예에 따라 3D 그래픽스 데이터를 렌더링하는 방법은, 입력된 제1 그래픽스 데이터를 정적 객체 및 동적 객체로 구분하고, 상기 정적 객체에 대한 렌더링 과정을 수행하여 렌더링 결과를 소정의 버퍼에 업데이트하는 단계- 상기 렌더링 결과는 상기 제1 그래픽스 데이터에 대하여 렌더링된 색상 정보 또는 깊이 정보를 포함함 -, 상기 동적 객체에 대한 변환(transformation) 과정을 수행하여 업데이트 영역을 판단하고, 상기 업데이트 영역에 해당하는 상기 버퍼의 렌더링 결과를 소정의 저장 수단에 저장하는 단계, 상기 동적 객체에 대한 나머지 렌더링 과정을 수행하여 상기 버퍼를 업데이트하고, 상기 렌더링 과정이 완료된 제1 이미지를 출력하는 단계 및, 상기 저장 수단을 참조하여 상기 업데이트 영역의 렌더링 결과를 상기 버퍼에 복구하고, 상기 복구된 버퍼의 렌더링 결과를 다음으로 입력된 제2 그래픽스 데이터의 렌더링 결과로 이용하는 단계를 포함한다.
3D 그래픽스 데이터, 렌더링, 카메라, 객체, 렌더링 영역
Description
도 1은 본 발명의 일실시예에 따라 연속적으로 입력되는 3D 그래픽스 데이터의 렌더링을 수행하는 과정을 도시한 흐름도.
도 2는 본 발명에 따라 제1 그래픽스 데이터에 포함된 정적 객체에 렌더링 과정을 수행하여 얻은 이미지를 보여주는 도면.
도 3은 본 발명에서 도 2의 결과 이미지의 업데이트 영역을 판단하는 실시예를 도시한 도면.
도 4는 본 발명에 따라 제1 그래픽스 데이터의 동적 객체에 대한 나머지 렌더링 과정을 수행하여 출력한 제1 이미지의 일실시예를 도시한 도면.
도 5는 본 발명에서 업데이트 영역의 렌더링 결과를 버퍼에 복구한 실시예를 도시한 도면.
도 6은 본 발명의 일실시예에 따른 렌더링 시스템의 구성을 도시한 블록도.
<도면의 주요 부분에 대한 부호의 설명>
601: 렌더링 모듈
602: 저장 수단
603: 출력 모듈
604: 업데이트 영역 복구 모듈
605: 버퍼
본 발명은 렌더링 영역을 최소화하는 3D 그래픽스 데이터의 렌더링 방법 및 시스템에 관한 것으로서, 더욱 상세하게는 연속적으로 입력된 제1그래픽스 데이터 및 제2 그래픽스 데이터의 기준 시점의 동일 여부를 판단하고, 기준 시점이 동일한 경우 제1 그래픽스 데이터의 정적 객체에 대한 렌더링 결과를 제2 그래픽스 데이터의 렌더링 결과로 재사용하고, 동적 객체에 대한 렌더링만을 수행함으로써, 렌더링해야 할 그래픽스 데이터의 양과 렌더링 영역을 최소화하여 렌더링 속도를 향상시키는 렌더링 방법 및 시스템에 관한 것이다.
종래 기술의 일반적인 3D 그래픽스 렌더링 과정은 다음과 같다.
(1) 종래 기술의 3D 그래픽스 렌더링 시스템은 프레임별 3D 그래픽스 데이터가 입력되면, 백 버퍼(Back buffer), Z 버퍼(Z-buffer) 등을 포함한 버퍼들을 클리어(clear)한다.
이 때, 백 버퍼의 값은 배경(background) 색상값으로 설정하고, Z 버퍼의 값은 이 버퍼가 표현할 수 있는 최대값으로 설정함으로써 클리어한다.
(2) 다음으로 종래 기술의 3D 렌더링 시스템은 3D 그래픽스 데이터에 포함된 모든 객체에 대해서, 파이프라인(pipeline) 단계를 수행하면서, 백 버퍼 및 Z 버퍼를 포함한 기타 버퍼들를 업데이트한다.
파이프라인 단계는 3D 그래픽스 데이터를 2D로 변환하는 변환(transformation) 과정, 광원 정보에 따라 색상을 조절하는 라이팅(lighting) 과정, 및 이렇게 변환 및 색상이 조절된 삼각형(triangle)을 그에 대응하는 이미지로 생성하는 래스터화(rasterization) 과정을 포함한다. 이와 같은 방식으로 입력 3D 그래픽스 데이터 내의 모든 삼각형을 처리할 경우 각 삼각형의 작은 이미지들이 합쳐져 최종 이미지로 만들어진다.
(3) 상기 업데이트된 백 버퍼를 프런트 버퍼로 전달하여 처리된 이미지를 화면에 출력한다.
(4) 다음 프레임의 3D 그래픽스 데이터가 입력되면 (1) 내지 (3) 단계를 반복하여 수행한다.
그런데 이러한 종래 기술의 일반적인 3D 그래픽스 렌더링 기법은 입력되는 3D 그래픽스 데이터를 렌더링할 때마다 (1)의 단계를 수행하므로, 출력화면에 표시되는 모든 객체를 3D 그래픽스 데이터가 입력될 때마다 다시 그려야 하는 단점이 있다.
특히, 모바일 3D 유저 인터페이스와 같이 일정한 기준 시점을 유지하면서 특정 객체만을 움직이는 경우에도 입력되는 3D 그래픽스 데이터를 렌더링할 때마다 버퍼를 클리어하는 (1)의 과정을 반복하여 수행하는 것은 굉장히 비효율적이다.
또한, 이러한 종래 기술의 일반적인 3D 그래픽스 렌더링 기법은 이미지의 기 준 시점이 움직이는 경우나, 기준 시점이 움직이지 않는 경우 모두 전체 객체를 렌더링하고, 객체가 움직이는 경우나, 움직이지 않는 경우 모두 전체 객체를 렌더링하므로, 렌더링 속도가 느리고, 렌더링 결과 영상의 화질이 떨어지며, 렌더링에 필요한 전력이 많이 소비되는 문제점이 있다.
따라서, 상기와 같은 종래 기술의 문제점을 해결하여 기준 시점의 움직임 여부 및 객체의 움직임 여부에 따라 렌더링 범위를 조절하여 렌더링 속도를 증가시키고, 렌더링 결과 영상의 화질을 개선하며, 렌더링에 필요한 전력을 절약할 수 있는 렌더링 방법의 개발이 절실하다.
본 발명은 입력된 그래픽스 데이터의 기준 시점의 움직임 여부 및 동적 객체의 포함 여부에 따라 렌더링 영역을 추적하여 렌더링 영역을 최소화하고, 렌더링 속도를 증가시키는 3D 그래픽스 렌더링 방법 및 시스템을 제공하는 것을 목적으로 한다.
또한, 본 발명은 제2 그래픽스 데이터에 대한 렌더링에 있어서, 버퍼 클리어 및 정적 객체의 렌더링 과정을 생략할 수 있으므로, 렌더링 속도가 현저하게 향상되며, 저전력 환경에서도 3D 그래픽스 렌더링을 구현할 수 있는 3D 그래픽스 렌더링 방법 및 시스템을 제공하는 것을 다른 목적을 한다.
또한, 본 발명은 렌더링할 객체의 개수와 렌더링 영역을 최소화하여 불필요한 렌더링 처리를 하지 않아도 되어 렌더링에 필요한 연산량을 감소시키므로, 종래 기술과 동일 메모리 또는 연산 모듈을 사용하는 경우 고화질의 3D 그래픽스를 제공 할 수 있는 3D 그래픽스 렌더링 방법 및 시스템을 제공하는 것을 또 다른 목적으로 한다.
상기의 목적을 달성하고 상술한 종래기술의 문제점을 해결하기 위하여, 본 발명의 일실시예에 따라 3D 그래픽스 렌더링 방법은, 입력된 제1 그래픽스 데이터를 정적 객체 및 동적 객체로 구분하고, 상기 정적 객체에 대한 렌더링 과정을 수행하여 렌더링 결과를 소정의 버퍼에 업데이트하는 단계 - 상기 렌더링 결과는 상기 제1 그래픽스 데이터에 대하여 렌더링된 색상 정보 또는 깊이 정보를 포함함 -, 상기 동적 객체에 대한 변환(transformation) 과정을 수행하여 업데이트 영역을 판단하고, 상기 업데이트 영역에 해당하는 상기 버퍼의 렌더링 결과를 소정의 저장 수단에 저장하는 단계, 상기 동적 객체에 대한 나머지 렌더링 과정을 수행하여 상기 버퍼를 업데이트하고, 상기 렌더링 과정이 완료된 제1 이미지를 출력하는 단계 및, 상기 저장 수단을 참조하여 상기 업데이트 영역의 렌더링 결과를 상기 버퍼에 복구하고, 상기 복구된 버퍼의 렌더링 결과를 다음으로 입력된 제2 그래픽스 데이터의 렌더링 결과로 이용하는 단계를 포함한다.
또한, 본 발명의 다른 실시예에 따라 3D 그래픽스 렌더링 시스템은, 입력된 제1 그래픽스 데이터를 정적 객체 및 동적 객체로 구분하고, 상기 정적 객체에 대한 렌더링 과정을 수행하여 렌더링 결과를 소정의 버퍼에 업데이트하는 렌더링 모듈- 상기 렌더링 결과는 상기 제1 그래픽스 데이터에 대한 일부 색상 정보 또는 깊이 정보를 포함함 -, 상기 동적 객체에 대한 변환(transformation) 과정을 수행하 여 업데이트 영역을 판단하고, 상기 업데이트 영역에 해당하는 상기 버퍼의 렌더링 결과를 저장하는 저장 수단, 상기 동적 객체에 대한 나머지 렌더링 과정을 수행하여 상기 버퍼를 업데이트하고, 상기 렌더링 과정이 완료된 제1 이미지를 출력하는 출력 모듈, 상기 저장 수단을 참조하여 상기 업데이트 영역의 렌더링 결과를 상기 버퍼에 복구하고, 상기 복구된 버퍼의 렌더링 결과를 다음으로 입력된 제2 그래픽스 데이터의 렌더링 결과로 이용하는 업데이트 영역 복구 모듈을 포함한다.
이하 첨부된 도면을 참조하여 본 발명에 따른 3D 렌더링 방법 및 시스템에 대하여 상세히 설명한다.
도 1은 본 발명의 일실시예에 따라 연속적으로 입력되는 3D 그래픽스 데이터의 렌더링을 수행하는 과정을 도시한 흐름도이다. 도 1을 참조하면 본 발명의 일실시예에 따라 연속적으로 입력되는 3D 그래픽스 데이터의 렌더링을 수행하는 과정은 다음과 같다.
본 발명의 렌더링 시스템은 렌더링 처리할 그래픽스 데이터를 수신하여 소정의 저장 수단에 저장한다. 그래픽스 데이터는 렌더링 시스템으로 입력되는 3D 그래픽스 데이터의 기준 시점(camera) 정보, 광원(밝기, 위치, 방향) 정보, 객체 정보 등을 포함하고, 상기 객체 정보는 3D 그래픽스 데이터에 포함되는 객체의 모양 정보, 움직임 여부(위치, 크기, 방향 등이 변경되는 것)에 대한 정보, 속성(색상, 재질) 정보 등을 포함한다.
렌더링 시스템은 상기 입력 그래픽스 데이터를 기초로 렌더링을 수행하며, 그래픽스 데이터들을 차례로 렌더링 처리하여 Z 버퍼, 백(back) 버퍼 등의 버퍼들 을 업데이트하게 된다. 상기 Z 버퍼는 화소별 깊이 정보를 저장하고, 백 버퍼는 화소별 색상 정보를 저장한다.
단계(S101)에서 본 발명의 렌더링 시스템은 프레임 별로 입력된 3D 그래픽스 데이터를 렌더링하기 전에 상기 Z 버퍼, 백 버퍼 등의 버퍼들을 클리어한다. 예를 들어, 렌더링 시스템은 상기 백 버퍼의 값은 최종으로 처리한 이미지의 배경(background) 색상값으로 설정하고, Z 버퍼의 값은 이 버퍼가 표현할 수 있는 최대값으로 설정함으로써 클리어한다.
단계(S102)에서 본 발명의 렌더링 시스템은 입력된 제1 그래픽스 데이터를 정적 객체 및 동적 객체로 구분하고, 상기 정적 객체에 대한 렌더링 과정을 수행하여 렌더링 결과를 소정의 버퍼에 업데이트한다.
이 때, 렌더링 시스템은 저장 수단에 저장된 그래픽스 데이터를 참조하여 제1 그래픽스 데이터에 포함된 객체를 정적 객체 및 동적 객체로 구분한다.
본 발명에서 동적 객체란, 1) 움직이는 객체(위치, 방향, 크기 등이 변경되는 것) 2) 속성 정보가 변경되는 객체(색상 정보, 재질 정보 등이 변경되는 것), 3) 객체에 영향을 주는 광원 정보가 변경되는 객체(광원의 색, 밝기, 위치, 방향 등이 변경되는 것) 등을 포함한다. .
상기 렌더링 과정은 3D 그래픽스 파이프라인(pipeline)일 수 있으며, 렌더링 시스템은 상기 제1 그래픽스 데이터에 3D 그래픽스 파이프라인(pipeline) 과정을 수행하면서, 렌더링 결과를 백 버퍼, Z 버퍼 등의 버퍼들에 업데이트한다. 상기 3D 그래픽스 파이프라인 과정은 3D 그래픽스 데이터를 2D로 변환하는 변환 (transformation) 과정, 광원 정보에 따라 색상을 조절하는 라이팅(lighting) 과정, 및 이렇게 변환 및 색상이 조절된 삼각형(triangle)을 그에 대응하는 패턴 이미지로 변환하는 래스터화(rasterization) 과정을 포함한다.
버퍼에 업데이트되는 렌더링 결과는 상기 제1 그래픽스 데이터하여 렌더링 처리된 색상 정보 또는 깊이 정보 등을 포함하고, 렌더링 시스템은 제1 그래픽스 데이터에 대한 렌더링 결과 화소별 색상 정보는 백 버퍼에, 렌더링 결과 화소별 깊이 정보는 Z 버퍼에 업데이트할 수 있다.
도 2는 본 발명에 따라 제1 그래픽스 데이터에 포함된 정적 객체에 렌더링 과정을 수행하여 얻은 이미지를 보여주는 도면이다.
다음으로, 본 발명의 렌더링 시스템은 도 1의 단계(S103)에서 제1 그래픽스 데이터에 포함된 동적 객체에 대한 변환(transformation) 과정을 수행하여 업데이트 영역을 판단하고, 상기 업데이트 영역에 해당하는 상기 버퍼의 렌더링 결과를 저장 수단에 저장한다.
도 3은 본 발명에서 도 2의 결과 이미지의 업데이트 영역을 판단하는 실시예를 도시한 도면이다. 도 3을 참조하면, 렌더링 시스템은 3D 그래픽스 데이터인 동적 객체를 2D로 변환(transformation)하고, 업데이트가 필요한 영역(301)을 판단한다.
예를 들어, 렌더링 시스템은 3D 그래픽스 데이터인 동적 객체를 2D로 변환하고, 상기 2D 로 변환한 영역을 모두 포함할 수 있는 최소의 사각형 영역(301)을 업데이트 영역으로 판단한다. 업데이트 영역을 사각형 영역(301)으로 판단하는 것 은 시스템의 연산량을 최소화하기 위한 것이다.
업데이트 영역(301)이 판단되면, 본 발명의 렌더링 시스템은 버퍼에서 업데이트 영역에 해당하는 화소의 렌더링 결과를 저장 수단에 저장한다.
도 1의 단계(S104)에서 본 발명의 렌더링 시스템은 동적 객체에 대한 나머지 렌더링 과정을 수행하여 렌더링 결과를 상기 버퍼를 업데이트하고, 상기 렌더링 과정이 완료된 제1 이미지를 출력한다. 상기 나머지 렌더링 과정은 3D 그래픽스 파이프라인 과정 중 광원 정보에 따라 색상을 조절하는 라이팅(lighting) 과정, 및 래스터화(rasterization) 과정일 수 있다.
도 4는 본 발명에 따라 제1 그래픽스 데이터의 동적 객체에 대한 나머지 렌더링 과정을 수행하여 출력한 제1 이미지의 일실시예를 도시한 도면이다. 도 3을 참조하면, 본 발명의 렌더링 시스템은 동적 객체(401)의 나머지 렌더링 과정을 수행하여 렌더링 과정을 완료하고, 업데이트 완료된 백 버퍼를 프런트 버퍼로 전달하여 렌더링 처리된 제1 이미지를 출력한다.
도 1의 단계(S106)에서 본 발명의 렌더링 시스템은 상기 저장 수단을 참조하여 상기 업데이트 영역의 렌더링 결과를 상기 버퍼에 복구하여 상기 복구된 버퍼의 렌더링 결과를 다음으로 처리할 제2 그래픽스 데이터의 렌더링 결과로 이용한다.
도 5는 본 발명에서 업데이트 영역의 렌더링 결과를 버퍼에 복구한 실시예를 도시한 도면이다. 도 4의 제1 이미지(400)와 도 5를 비교하면, 렌더링 시스템은 저장 수단에 저장된 업데이트 영역의 렌더링 결과를 Z 버퍼 및 백 버퍼 등의 버 퍼들에 복구함으로써, 동적 객체가 렌더링 되기 이전의 상태로 복귀된다.
단계(S107)에서 본 발명의 렌더링 시스템은 제1 그래픽스 데이터에 이어 다음 프레임의 제2 그래픽스 데이터가 입력되면, 상기 제 2 그래픽스 데이터의 기준 시점 및 상기 제1 그래픽스 데이터의 기준 시점의 동일 여부를 판단한다.
판단 결과 제2 그래픽스 데이터의 기준 시점이 제1 그래픽스 데이터의 기준 시점과 동일하지 않으면, 다른 시점에서 보는 3D 그래픽스 데이터를 렌더링하여야 하므로, 단계(S101) 내지 단계(106)을 다시 수행하여, Z 버퍼 및 백 버퍼 등의 버퍼들을 클리어하고 제2 그래픽스 데이터의 정적 객체 및 동적 객체를 모두 렌더링 하여야 한다.
판단 결과, 상기 기준 시점이 동일한 경우 상기 복구된 버퍼의 렌더링 결과를 제2 그래픽스 데이터의 렌더링 결과로 이용한다.
즉, 단계(S108)에서 렌더링 시스템은 제2 그래픽스 데이터를 동적 객체 및 정적 객체로 구분하고, 상기 복구된 버퍼의 렌더링 결과를 상기 정적 객체에 대한 렌더링 결과로 판단하므로, 재차 버퍼를 클리어하고, 정적 개체를 렌더링 할 필요가 없다.
예를 들어, 렌더링 시스템은 제1 그래픽스 데이터와 제2 그래픽스 데이터의 기준 시점이 동일한 경우, 도 2의 정적 객체를 제2 그래픽스 데이터에서도 동일하게 렌더링할 필요없이 복구한 버퍼의 렌더링 결과(500)을 이용하고, 제2 그래픽스 데이터의 동적 객체만 렌더링하면 된다.
따라서, 본 발명은 제2 그래픽스 데이터에 대한 단계(S101) 및 단계(S102) 의 과정을 생략하여 제2 그래픽스 데이터를 렌더링할 수 있으므로, 렌더링 속도가 현저하게 향상되며, 저전력 환경에서도 3D 그래픽스 데이터의 렌더링을 구현할 수 있는 효과가 있다.
또한, 본 발명은 렌더링 영역을 최소화하여 불필요한 렌더링 처리를 하지 않아도 되어 렌더링에 필요한 연산량을 감소시키므로, 종래 기술과 동일 메모리 또는 연산 모듈을 사용하는 경우 고화질의 3D 그래픽스를 제공할 수 있는 효과가 있다.
즉, 본 발명은 입력된 그래픽스 데이터의 기준 시점의 움직임 여부 및 객체의 움직임 여부에 따라 렌더링 범위를 조절하여 렌더링 속도를 증가시키고, 렌더링 결과 영상의 화질을 개선하며, 렌더링에 필요한 전력을 절약할 수 있는 효과가 있다.
본 발명에 따른 렌더링 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 상기 매체는 프로그램 명령, 데이터 구조 등을 지정하는 신호를 전송하는 반송파를 포함하는 광 또는 금속선, 도파관 등의 전송 매체일 수도 있다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 본 발명의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
도 6은 본 발명의 일실시예에 따른 렌더링 시스템의 구성을 도시한 블록도이다. 도 6을 참조하면, 본 발명의 일실시예에 따른 렌더링 시스템은 렌더링 모듈(601), 저장 수단(602), 출력 모듈(603), 업데이트 영역 복구 모듈(604), 버퍼(605)를 포함하여 구성될 수 있다.
렌더링 모듈(601)은 버퍼(605)를 클리어한 후, 제1 그래픽스 데이터를 정적 객체 및 동적 객체로 구분하고, 상기 정적 객체에 대한 렌더링 과정을 수행하여 렌더링 결과를 버퍼(605)에 업데이트한다.
상기 버퍼는 Z 버퍼, 백 버퍼 등을 포함할 수 있으며, 상기 렌더링 결과는 상기 제1 그래픽스 데이터에 대한 렌더링 처리 결과의 색상 정보 또는 깊이 정보를 포함할 수 있고, 상기 Z 버퍼는 상기 제1 그래픽스 데이터의 렌더링 결과 깊이 정보를 유지하고, 상기 백 버퍼는 상기 제1 그래픽스 데이터에 렌더링 결과 색상 정보를 유지할 수 있음은 이미 설명한 바와 같다.
저장 수단(602)은 상기 동적 객체에 대한 변환(transformation) 과정을 수 행하여 업데이트 영역을 판단하고, 상기 업데이트 영역에 해당하는 상기 버퍼의 렌더링 결과를 저장한다. 상기 저장 수단은, 데이터를 저장하는 구성으로, 메모리, 데이터베이스 등을 모두 포함한다.
출력 모듈(603)은 상기 동적 객체에 대한 나머지 렌더링 과정을 수행하여 상기 버퍼를 업데이트하고, 렌더링 과정이 완료된 제1 이미지를 출력한다. 상기 나머지 렌더링 과정은 라이팅(lighting) 및 래스터화(rasterization) 과정을 포함한다.
업데이트 영역 복구 모듈(604)은 상기 저장 수단을 참조하여 상기 업데이트 영역의 렌더링 결과를 상기 버퍼에 복구하고, 상기 복구된 버퍼의 렌더링 결과를 다음으로 입력된 제2 그래픽스 데이터의 렌더링 결과로 이용한다.
이 때, 상기 업데이트 영역 복구 모듈은 상기 제 2 그래픽스 데이터의 기준 시점 및 상기 제1 그래픽스 데이터의 기준 시점의 동일 여부를 판단하고, 상기 판단 결과, 상기 기준 시점이 동일한 경우 상기 복구된 버퍼의 렌더링 결과를 다음으로 처리할 제2 그래픽스 데이터의 렌더링 결과로 이용한다.
또한, 업데이트 영역 복구 모듈은 상기 제2 그래픽스 데이터를 동적 객체 및 정적 객체로 구분하고, 상기 복구된 버퍼의 렌더링 결과를 상기 정적 객체에 대한 렌더링 결과로 판단하여 상기 복구된 버퍼의 렌더링 결과를 제2 그래픽스 데이터의 렌더링 결과로 이용할 수 있다.
지금까지 본 발명에 따른 렌더링 시스템에 대해서 설명하였고, 앞서 실시예들에서 설명한 기술적 내용들이 도 6의 렌더링 시스템에서도 그대로 적용될 수 있 으므로 그 상세한 내용은 이하 생략하기로 한다.
이상과 같이 본 발명은 비록 한정된 실시예와 도면에 의해 설명되었으나, 본 발명은 상기의 실시예에 한정되는 것은 아니며, 이는 본 발명이 속하는 분야에서 통상의 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형이 가능하다. 따라서, 본 발명 사상은 아래에 기재된 특허청구범위에 의해서만 파악되어야 하고, 이의 균등 또는 등가적 변형 모두는 본 발명 사상의 범주에 속한다고 할 것이다.
발명은 입력된 그래픽스 데이터의 기준 시점의 움직임 여부 및 동적 객체의 포함 여부에 따라 렌더링 영역을 추적하여 렌더링 영역을 최소화할 수 있다.
또한, 본 발명은 제2 그래픽스 데이터에 대한 렌더링에 있어서, 버퍼 클리어 및 정적 객체의 렌더링 과정을 생략할 수 있으므로, 렌더링 속도가 현저하게 향상되며, 저전력 환경에서도 3D 그래픽스 렌더링을 구현할 수 있다.
또한, 본 발명은 렌더링할 객체의 개수와 렌더링 영역을 최소화하여 불필요한 렌더링 처리를 하지 않아도 되어 렌더링에 필요한 연산량을 감소시키므로, 종래 기술과 동일 메모리 또는 연산 모듈을 사용하는 경우 고화질의 3D 그래픽스를 제공할 수 있다.
Claims (14)
- 3D 그래픽스 데이터를 렌더링하는 방법에 있어서,입력된 제1 그래픽스 데이터를 정적 객체 및 동적 객체로 구분하고, 상기 정적 객체에 대한 렌더링 과정을 수행하여 렌더링 결과를 소정의 버퍼에 업데이트하는 단계- 상기 렌더링 결과는 상기 제1 그래픽스 데이터에 대하여 렌더링된 색상 정보 또는 깊이 정보를 포함함 -;상기 동적 객체에 대한 변환(transformation) 과정을 수행하여 업데이트 영역을 판단하고, 상기 업데이트 영역에 해당하는 상기 버퍼의 렌더링 결과를 소정의 저장 수단에 저장하는 단계;상기 동적 객체에 대한 나머지 렌더링 과정을 수행하여 상기 버퍼를 업데이트하고, 상기 렌더링 과정이 완료된 제1 이미지를 출력하는 단계; 및상기 저장 수단을 참조하여 상기 업데이트 영역의 렌더링 결과를 상기 버퍼에 복구하고, 상기 복구된 버퍼의 렌더링 결과를 다음으로 입력된 제2 그래픽스 데이터의 렌더링 결과로 이용하는 단계를 포함하는 것을 특징으로 하는 렌더링 방법.
- 제1항에 있어서,상기 복구된 버퍼의 렌더링 결과를 다음으로 입력된 제2 그래픽스 데이터의 렌더링 결과로 이용하는 상기 단계는,상기 제 2 그래픽스 데이터의 기준 시점 및 상기 제1 그래픽스 데이터의 기준 시점의 동일 여부를 판단하고, 상기 판단 결과, 상기 기준 시점이 동일한 경우 상기 복구된 버퍼의 렌더링 결과를 다음으로 입력된 제2 그래픽스 데이터의 렌더링 결과로 이용하는 것을 특징으로 하는 렌더링 방법.
- 제1항에 있어서,상기 복구된 버퍼의 렌더링 결과를 다음으로 입력된 제2 그래픽스 데이터의 렌더링 결과로 이용하는 단계는,상기 제2 그래픽스 데이터를 동적 객체 및 정적 객체로 구분하고, 상기 복구된 버퍼의 렌더링 결과를 상기 정적 객체에 대한 렌더링 결과로 판단하는 것을 특징으로 하는 렌더링 방법.
- 제1항에 있어서,상기 버퍼는 Z 버퍼 및 백 버퍼를 포함하고,상기 Z 버퍼는 그래픽스 데이터에 대한 색상 정보를 유지하고, 상기 백 버퍼는 상기 그래픽스 데이터에 대한 깊이 정보를 유지하는 것을 특징으로 하는 렌더링 방법.
- 제1항에 있어서,입력된 제1 그래픽스 데이터를 정적 객체 및 동적 객체로 구분하고, 상기 정적 객체에 대한 렌더링 과정을 수행하여 렌더링 결과를 소정의 버퍼에 업데이트하는 상기 단계는,상기 버퍼를 클리어한 후, 상기 정적 개체에 대한 렌더링 과정을 수행하여 상기 버퍼의 렌더링 결과를 업데이트하는 것을 특징으로 하는 렌더링 방법.
- 제1항에 있어서,상기 나머지 렌더링 과정은 라이팅(lighting) 및 래스터화(rasterization) 과정을 포함하는 것을 특징으로 하는 렌더링 방법.
- 제1항에 있어서,상기 복구된 버퍼의 렌더링 결과를 다음으로 입력된 제2 그래픽스 데이터의 렌더링 결과로 이용하는 상기 단계는,상기 복구된 버퍼의 렌더링 결과를 다음으로 입력된 제2 그래픽스 데이터의 정적 객체의 렌더링 결과로 판단하는 것을 특징으로 하는 렌더링 방법.
- 제1항 내지 제7항 중 어느 한 항의 방법을 실행하기 위한 프로그램이 기록되어 있는 것을 특징으로 하는 컴퓨터에서 판독 가능한 기록 매체.
- 3D 그래픽스 데이터를 렌더링하는 시스템에 있어서,입력된 제1 그래픽스 데이터를 정적 객체 및 동적 객체로 구분하고, 상기 정적 객체에 대한 렌더링 과정을 수행하여 렌더링 결과를 소정의 버퍼에 업데이트하는 렌더링 모듈- 상기 렌더링 결과는 상기 제1 그래픽스 데이터에 대하여 렌더링된 색상 정보 또는 깊이 정보를 포함함 -;상기 동적 객체에 대한 변환(transformation) 과정을 수행하여 업데이트 영역을 판단하고, 상기 업데이트 영역에 해당하는 상기 버퍼의 렌더링 결과를 저장하는 저장 수단;상기 동적 객체에 대한 나머지 렌더링 과정을 수행하여 상기 버퍼를 업데이트하고, 상기 렌더링 과정이 완료된 제1 이미지를 출력하는 출력 모듈; 및상기 저장 수단을 참조하여 상기 업데이트 영역의 렌더링 결과를 상기 버퍼에 복구하고, 상기 복구된 버퍼의 렌더링 결과를 다음으로 입력된 제2 그래픽스 데이터의 렌더링 결과로 이용하는 업데이트 영역 복구 모듈를 포함하는 것을 특징으로 하는 렌더링 시스템.
- 제9항에 있어서,상기 업데이트 영역 복구 모듈은,상기 제 2 그래픽스 데이터의 기준 시점 및 상기 제1 그래픽스 데이터의 기준 시점의 동일 여부를 판단하고, 상기 판단 결과, 상기 기준 시점이 동일한 경우 상기 복구된 버퍼의 렌더링 결과를 다음으로 입력된 제2 그래픽스 데이터의 렌더링 결과로 이용하는 것을 특징으로 하는 렌더링 시스템.
- 제9항에 있어서,상기 업데이트 영역 복구 모듈은,상기 제2 그래픽스 데이터를 동적 객체 및 정적 객체로 구분하고, 상기 복구된 버퍼의 렌더링 결과를 상기 정적 객체에 대한 렌더링 결과로 판단하는 것을 특징으로 하는 렌더링 시스템.
- 제9항에 있어서,상기 버퍼는 Z 버퍼 및 백 버퍼를 포함하고,상기 Z 버퍼는 상기 그래픽스 데이터에 대한 깊이 정보를 유지하고, 상기 백 버퍼는 상기 그래픽스 데이터에 대한 색상 정보를 유지하는 것을 특징으로 하는 렌더링 시스템.
- 제9항에 있어서,상기 렌더링 모듈은,상기 버퍼를 클리어한 후, 상기 정적 개체에 대한 렌더링 과정을 수행하여 상기 버퍼의 렌더링 결과를 업데이트하는 것을 특징으로 하는 렌더링 시스템.
- 제9항에 있어서,상기 나머지 렌더링 과정은 라이팅(lighting) 및 래스터화(rasterization) 과정을 포함하는 것을 특징으로 하는 렌더링 시스템.
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020060012226A KR100682456B1 (ko) | 2006-02-08 | 2006-02-08 | 렌더링 영역을 최소화하는 3d 그래픽스 데이터의 렌더링방법 및 시스템 |
US11/657,591 US7746346B2 (en) | 2006-02-08 | 2007-01-25 | Method and system of rendering 3-dimensional graphics data to minimize rendering area, rendering time, and power consumption |
JP2007024326A JP4589348B2 (ja) | 2006-02-08 | 2007-02-02 | レンダリング領域を最小化する3dグラフィックスデータのレンダリング方法およびシステム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020060012226A KR100682456B1 (ko) | 2006-02-08 | 2006-02-08 | 렌더링 영역을 최소화하는 3d 그래픽스 데이터의 렌더링방법 및 시스템 |
Publications (1)
Publication Number | Publication Date |
---|---|
KR100682456B1 true KR100682456B1 (ko) | 2007-02-15 |
Family
ID=38106332
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020060012226A KR100682456B1 (ko) | 2006-02-08 | 2006-02-08 | 렌더링 영역을 최소화하는 3d 그래픽스 데이터의 렌더링방법 및 시스템 |
Country Status (3)
Country | Link |
---|---|
US (1) | US7746346B2 (ko) |
JP (1) | JP4589348B2 (ko) |
KR (1) | KR100682456B1 (ko) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20110093404A (ko) * | 2010-02-12 | 2011-08-18 | 삼성전자주식회사 | 3차원 그래픽스 랜더링 장치 및 그 방법 |
US8253722B2 (en) | 2006-10-27 | 2012-08-28 | Samsung Electronics Co., Ltd. | Method, medium, and system rendering 3D graphics data to minimize power consumption |
US8896599B2 (en) | 2009-08-06 | 2014-11-25 | Samsung Electronics Co., Ltd. | Image processing apparatus and method |
US9805291B2 (en) | 2014-10-13 | 2017-10-31 | Samsung Electronics Co., Ltd | Method and apparatus for stereoscopically rendering three-dimensional content by including a left image and a right image |
Families Citing this family (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090002764A1 (en) * | 2007-06-27 | 2009-01-01 | Atkins C Brian | Arranging graphic objects on a page with relative area based control |
JP4882912B2 (ja) * | 2007-08-10 | 2012-02-22 | 日産自動車株式会社 | 可変圧縮比内燃機関 |
US9161063B2 (en) | 2008-02-27 | 2015-10-13 | Ncomputing, Inc. | System and method for low bandwidth display information transport |
KR20100084338A (ko) * | 2009-01-16 | 2010-07-26 | 삼성전자주식회사 | 이미지 드로잉 방법 및 장치 |
US8907987B2 (en) | 2010-10-20 | 2014-12-09 | Ncomputing Inc. | System and method for downsizing video data for memory bandwidth optimization |
US8896612B2 (en) * | 2010-11-16 | 2014-11-25 | Ncomputing Inc. | System and method for on-the-fly key color generation |
US8749566B2 (en) | 2010-11-16 | 2014-06-10 | Ncomputing Inc. | System and method for an optimized on-the-fly table creation algorithm |
US8711163B2 (en) * | 2011-01-06 | 2014-04-29 | International Business Machines Corporation | Reuse of static image data from prior image frames to reduce rasterization requirements |
US9317891B2 (en) | 2013-06-07 | 2016-04-19 | Ncomputing, Inc. | Systems and methods for hardware-accelerated key color extraction |
KR102116976B1 (ko) | 2013-09-04 | 2020-05-29 | 삼성전자 주식회사 | 렌더링 방법 및 장치 |
KR102100161B1 (ko) | 2014-02-04 | 2020-04-14 | 삼성전자주식회사 | Gpu 데이터 캐싱 방법 및 그에 따른 데이터 프로세싱 시스템 |
US9626733B2 (en) * | 2014-11-24 | 2017-04-18 | Industrial Technology Research Institute | Data-processing apparatus and operation method thereof |
US10672367B2 (en) * | 2017-07-03 | 2020-06-02 | Arm Limited | Providing data to a display in data processing systems |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0962863A (ja) * | 1995-08-22 | 1997-03-07 | Fujitsu Ltd | 3次元画像表示用zソート法及びこれを用いた図形データソート装置 |
KR20030032355A (ko) * | 2001-10-17 | 2003-04-26 | 이호석 | 움직임 객체 에지를 이용한 브이오피 추출방법 |
KR20050030569A (ko) * | 2003-09-25 | 2005-03-30 | 소니 가부시끼 가이샤 | 화상 처리 장치 및 그 방법 |
KR20050031207A (ko) * | 2003-09-29 | 2005-04-06 | 삼성전자주식회사 | 눈에 보이지 않는 프래그먼트를 처리하기 위한 3차원그래픽스 렌더링 엔진 및 그 방법 |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5150312A (en) * | 1989-06-16 | 1992-09-22 | International Business Machines Corporation | Animation processor method and apparatus |
JP3448930B2 (ja) * | 1993-12-27 | 2003-09-22 | 松下電器産業株式会社 | 画像表示装置 |
US6331856B1 (en) * | 1995-11-22 | 2001-12-18 | Nintendo Co., Ltd. | Video game system with coprocessor providing high speed efficient 3D graphics and digital audio signal processing |
JPH1165813A (ja) | 1997-08-26 | 1999-03-09 | Matsushita Electric Ind Co Ltd | 描画処理装置、描画処理方法及び描画プログラムを記録した記録媒体 |
US7023437B1 (en) * | 1998-07-22 | 2006-04-04 | Nvidia Corporation | System and method for accelerating graphics processing using a post-geometry data stream during multiple-pass rendering |
JP2000181441A (ja) * | 1998-12-16 | 2000-06-30 | Sony Corp | 画像表示装置 |
JP3144637B2 (ja) | 1999-07-30 | 2001-03-12 | 株式会社シーイーシー | 3次元レンダリング方法 |
JP2002251627A (ja) * | 2001-02-26 | 2002-09-06 | Hitachi Ltd | 画像データ生成方法および装置 |
JP2002352263A (ja) | 2001-05-23 | 2002-12-06 | Mitsubishi Electric Corp | 3d表示方法及び3d表示装置 |
-
2006
- 2006-02-08 KR KR1020060012226A patent/KR100682456B1/ko active IP Right Grant
-
2007
- 2007-01-25 US US11/657,591 patent/US7746346B2/en active Active
- 2007-02-02 JP JP2007024326A patent/JP4589348B2/ja active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0962863A (ja) * | 1995-08-22 | 1997-03-07 | Fujitsu Ltd | 3次元画像表示用zソート法及びこれを用いた図形データソート装置 |
KR20030032355A (ko) * | 2001-10-17 | 2003-04-26 | 이호석 | 움직임 객체 에지를 이용한 브이오피 추출방법 |
KR20050030569A (ko) * | 2003-09-25 | 2005-03-30 | 소니 가부시끼 가이샤 | 화상 처리 장치 및 그 방법 |
KR20050031207A (ko) * | 2003-09-29 | 2005-04-06 | 삼성전자주식회사 | 눈에 보이지 않는 프래그먼트를 처리하기 위한 3차원그래픽스 렌더링 엔진 및 그 방법 |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8253722B2 (en) | 2006-10-27 | 2012-08-28 | Samsung Electronics Co., Ltd. | Method, medium, and system rendering 3D graphics data to minimize power consumption |
US8896599B2 (en) | 2009-08-06 | 2014-11-25 | Samsung Electronics Co., Ltd. | Image processing apparatus and method |
KR20110093404A (ko) * | 2010-02-12 | 2011-08-18 | 삼성전자주식회사 | 3차원 그래픽스 랜더링 장치 및 그 방법 |
US8970580B2 (en) | 2010-02-12 | 2015-03-03 | Samsung Electronics Co., Ltd. | Method, apparatus and computer-readable medium rendering three-dimensional (3D) graphics |
KR101661931B1 (ko) * | 2010-02-12 | 2016-10-10 | 삼성전자주식회사 | 3차원 그래픽스 랜더링 장치 및 그 방법 |
US9805291B2 (en) | 2014-10-13 | 2017-10-31 | Samsung Electronics Co., Ltd | Method and apparatus for stereoscopically rendering three-dimensional content by including a left image and a right image |
Also Published As
Publication number | Publication date |
---|---|
US7746346B2 (en) | 2010-06-29 |
JP4589348B2 (ja) | 2010-12-01 |
US20070182748A1 (en) | 2007-08-09 |
JP2007213577A (ja) | 2007-08-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100682456B1 (ko) | 렌더링 영역을 최소화하는 3d 그래픽스 데이터의 렌더링방법 및 시스템 | |
KR101661931B1 (ko) | 3차원 그래픽스 랜더링 장치 및 그 방법 | |
JP6580800B2 (ja) | 加速されたライトフィールドディスプレイ | |
US9799088B2 (en) | Render target command reordering in graphics processing | |
KR101697910B1 (ko) | 그래픽 프로세싱을 위한 임의적 제어 지점들에서의 결함-허용 선점 메커니즘 | |
KR101217559B1 (ko) | 전력 소모를 최소화하는 그래픽스 데이터 렌더링 방법 및장치 | |
JP4230456B2 (ja) | 3次元画像処理 | |
US20200226828A1 (en) | Method and System for Multisample Antialiasing | |
KR100829564B1 (ko) | 효율적으로 모션 블러 효과를 제공하는 3차원 그래픽스렌더링 방법 및 장치 | |
JP2006503355A5 (ko) | ||
US10740955B2 (en) | Systems and methods for real-time large-scale point cloud surface reconstruction | |
US11570418B2 (en) | Techniques for generating light field data by combining multiple synthesized viewpoints | |
JP6207618B2 (ja) | 描画装置 | |
KR20150054650A (ko) | 3차원 영상 렌더링 방법 및 이를 적용한 영상 출력 장치 | |
JP4827659B2 (ja) | 画像処理装置、画像処理方法、及びコンピュータプログラム | |
US20150242988A1 (en) | Methods of eliminating redundant rendering of frames | |
US8098264B2 (en) | Method and apparatus for rendering computer graphics primitive | |
US7646385B2 (en) | Computer graphics rendering method and apparatus | |
JP2005346417A (ja) | 仮想三次元座標ポリゴンによるオブジェクト画像の表示制御方法及びこれを用いた画像表示装置 | |
JP2008071241A (ja) | 画像処理装置、画像処理方法、及びコンピュータプログラム | |
CN108803995B (zh) | 基于svg的图表数据展示系统 | |
US12002132B1 (en) | Rendering using analytic signed distance fields | |
US11664194B2 (en) | Procedural electron beam lithography | |
US11443485B2 (en) | Rendering device, rendering method, 3D model generating method, neural network model generating method, and non-transitory computer readable medium | |
US11900499B2 (en) | Iterative indirect command buffers |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20130115 Year of fee payment: 7 |
|
FPAY | Annual fee payment |
Payment date: 20140124 Year of fee payment: 8 |
|
FPAY | Annual fee payment |
Payment date: 20150116 Year of fee payment: 9 |
|
FPAY | Annual fee payment |
Payment date: 20160119 Year of fee payment: 10 |