KR20160032936A - 렌더링 데이터의 압축을 해제하는 장치, 방법 및 기록매체 - Google Patents

렌더링 데이터의 압축을 해제하는 장치, 방법 및 기록매체 Download PDF

Info

Publication number
KR20160032936A
KR20160032936A KR1020140123706A KR20140123706A KR20160032936A KR 20160032936 A KR20160032936 A KR 20160032936A KR 1020140123706 A KR1020140123706 A KR 1020140123706A KR 20140123706 A KR20140123706 A KR 20140123706A KR 20160032936 A KR20160032936 A KR 20160032936A
Authority
KR
South Korea
Prior art keywords
control
component
texture
data
control component
Prior art date
Application number
KR1020140123706A
Other languages
English (en)
Other versions
KR102245137B1 (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 삼성전자주식회사
Priority to KR1020140123706A priority Critical patent/KR102245137B1/ko
Priority to US14/667,780 priority patent/US9721359B2/en
Publication of KR20160032936A publication Critical patent/KR20160032936A/ko
Application granted granted Critical
Publication of KR102245137B1 publication Critical patent/KR102245137B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • Image Generation (AREA)
  • Computer Graphics (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

객체의 렌더링 정보를 포함하는 압축된 입력 데이터로부터 제어 컴포넌트 및 텍스쳐 컴포넌트를 획득하는 데이터 파싱부, 복수의 제어 유닛들을 포함하며 획득한 제어 컴포넌트와 대응되는 제어 유닛에 획득한 제어 컴포넌트를 할당하고, 제어 컴포넌트가 할당된 제어 유닛은 제어 컴포넌트로부터 제어 명령을 추출하는 압축 해제 제어부 및 압축 해제 제어부로부터 수신한 제어 명령에 기초하여, 텍스쳐 컴포넌트로부터 객체의 텍스쳐 데이터를 복원하는 로직 연산부를 포함하는 렌더링 데이터의 압축을 해제하는 장치가 개시된다.

Description

렌더링 데이터의 압축을 해제하는 장치, 방법 및 기록매체 {Apparatus and method for decompressing rendering data and recording medium thereof}
렌더링 데이터의 압축을 해제하는 장치, 렌더링 데이터의 압축을 해제하는 방법 및 그 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체에 관한 것이다.
최근 3차원의 그래픽스 데이터를 화면에 표시하는 디바이스가 각광받고 있다. 예를 들어, 모바일 디바이스에서 사용되는 UI(User Interface) 어플리케이션 및 시뮬레이션을 위한 어플리케이션 등이 적용되는 디바이스의 시장 규모가 확대되는 추세에 있다.
그래픽스 데이터의 적용 범위가 확대되면서, 보다 정확한 3차원의 그래픽을 구현하기 위해 디바이스에서 처리해야 하는 그래픽스 데이터의 양이 증가하고 있다. 따라서, 어플리케이션 실행 시, 디바이스에서 그래픽스 데이터의 렌더링을 수행하는데 있어, 연산량이 늘어남에 따라 기존보다 더 많은 메모리 공간 및 더 많은 시간을 필요로 한다는 문제가 있다.
그래픽스 데이터를 렌더링하는 경우, 그래픽스 데이터의 렌더링에 사용되는 메모리 공간과 시간을 감소시키기 위해, 렌더링 데이터의 압축을 효율적으로 해제 할 수 있는 장치, 방법 및 기록 매체를 제공한다.
일 실시예에 따른 렌더링 데이터의 압축을 해제하는 장치는 객체의 렌더링 정보를 포함하는 압축된 입력 데이터로부터 제어 컴포넌트 및 텍스쳐 컴포넌트를 획득하는 데이터 파싱부; 복수의 제어 유닛들을 포함하며, 획득한 제어 컴포넌트와 대응되는 제어 유닛에 획득한 제어 컴포넌트를 할당하고, 제어 컴포넌트가 할당된 제어 유닛은 제어 컴포넌트로부터 제어 명령을 추출하는 압축 해제 제어부; 및 압축 해제 제어부로부터 수신한 제어 명령에 기초하여, 텍스쳐 컴포넌트로부터 객체의 텍스쳐 데이터를 복원하는 로직 연산부를 포함한다.
일 실시예에 따른 렌더링 데이터의 압축을 해제하는 장치에 있어서, 압축 해제 제어부는, 압축된 입력 데이터의 압축 포맷에 따라 결정되는 서로 다른 유형의 제어 유닛들을 포함하고, 압축된 입력 데이터의 압축 포맷에 대응되는 제어 유닛에 획득한 제어 컴포넌트를 할당한다.
일 실시예에 따른 렌더링 데이터의 압축을 해제하는 장치에 있어서, 압축 해제 제어부는, 기 설정된 식별자에 따라 식별 가능한 동일한 유형의 복수개의 제어 유닛들을 포함하고, 획득한 제어 컴포넌트가 할당되는, 제어 유닛의 유형 및 식별자를 결정한다.
일 실시예에 따른 렌더링 데이터의 압축을 해제하는 장치는, 제어 컴포넌트와 텍스쳐 데이터를 저장하는 데이터 버퍼를 더 포함한다.
일 실시예에 따른 렌더링 데이터의 압축을 해제하는 장치에 있어서, 압축 해제 제어부는, 미리 획득된 제 1 제어 컴포넌트 및 제 1 텍스쳐 컴포넌트와 획득한 제 2 제어 컴포넌트 및 제 2 텍스쳐 컴포넌트를 각각 비교하고, 제 1 제어 컴포넌트 및 제 1 텍스쳐 컴포넌트와 제 2 제어 컴포넌트 및 제 2 텍스쳐 컴포넌트가 상이한 경우 제 2 제어 컴포넌트로부터 복원된 제 2 텍스쳐 데이터를 출력 데이터로 결정하고, 제 1 제어 컴포넌트 및 제 1 텍스쳐 컴포넌트와 상기 제 2 제어 컴포넌트 및 상기 제 2 텍스쳐 컴포넌트가 동일한 경우, 제 1 텍스쳐 컴포넌트로부터 복원된 제 1 텍스쳐 데이터를 출력 데이터로 결정한다.
일 실시예에 따른 렌더링 데이터의 압축을 해제하는 장치에 있어서, 압축 해제 제어부는, 이전에 미리 획득한 제 1 제어 컴포넌트와 획득한 제 2 제어 컴포넌트를 비교하고, 제 1 제어 컴포넌트와 제 2 제어 컴포넌트가 동일한 경우, 제 2 제어 컴포넌트로부터 추출한 제어 명령에 따라 제 2 제어 컴포넌트에 대응되는 제 2 텍스쳐 컴포넌트로부터 제 2 텍스쳐 데이터를 복원하도록 상기 로직 연산부를 제어하고, 제 1 제어 컴포넌트와 제 2 제어 컴포넌트 데이터가 동일한 경우, 미리 저장된 제 1 제어 컴포넌트와 대응되는 제 1 텍스쳐 데이터를 선택한다.
일 실시예에 따른 렌더링 데이터의 압축을 해제하는 장치에 있어서, 데이터 파싱부는, 복수개의 제어 컴포넌트 및 복수개의 텍스쳐 컴포넌트를 획득하고, 압축 해제 제어부는, 복수개의 제어 컴포넌트를 대응되는 각각의 제어 유닛에 할당하고, 각각의 제어 유닛으로부터 획득한 제어 명령들을 로직 연산부에 전송한다.
일 실시예에 따른 렌더링 데이터의 압축을 해제하는 장치에 있어서, 로직 연산부는, 복수개의 연산 유닛을 포함하고, 복수개의 연산 유닛 각각에 획득한 제어 명령들을 기초로 복수개의 텍스쳐 컴포넌트를 할당하여, 복수개의 텍스쳐 데이터를 병렬적으로 복원한다.
일 실시예에 따른 렌더링 데이터의 압축을 해제하는 방법은, 압축 해제 장치에서, 객체의 렌더링 정보를 포함하는 압축된 입력 데이터로부터 제어 컴포넌트 및 텍스쳐 컴포넌트를 획득하는 단계; 압축 해제 장치에 포함된 복수의 제어 유닛들 중에서, 획득한 제어 컴포넌트와 대응되는 제어 유닛에 획득한 제어 컴포넌트를 할당하는 단계; 압축 해제 장치에 포함된 로직 연산부에 텍스쳐 컴포넌트를 할당하는 단계; 및 제어 컴포넌트로부터 추출된 제어 명령에 기초하여, 텍스쳐 컴포넌트로부터 객체의 텍스쳐 데이터를 복원하는 단계를 포함한다.
일 실시예에 따른 렌더링 데이터의 압축을 해제하는 방법에 있어서, 획득한 제어 컴포넌트를 할당하는 단계는, 압축된 입력 데이터의 압축 포맷에 따라 결정되는 서로 다른 유형의 제어 유닛들 중에서 압축된 입력 데이터의 압축 포맷에 대응되는 제어 유닛에 획득한 제어 컴포넌트를 할당한다.
일 실시예에 따른 렌더링 데이터의 압축을 해제하는 방법에 있어서, 획득한 제어 컴포넌트를 할당하는 단계는, 식별자에 따라 식별 가능한 동일한 유형의 복수개의 제어 유닛들이 존재하는 경우, 획득한 제어 컴포넌트가 할당되는, 제어 유닛의 유형 및 식별자를 결정하는 단계를 포함한다.
일 실시예에 따른 렌더링 데이터의 압축을 해제하는 방법은, 제어 컴포넌트와 텍스쳐 데이터를 압축 해제 장치에 포함되는 데이터 버퍼에 저장하는 단계를 더 포함한다.
일 실시예에 따른 렌더링 데이터의 압축을 해제하는 방법은, 미리 획득된 제 1 제어 컴포넌트 및 제 1 텍스쳐 컴포넌트와 획득한 제 2 제어 컴포넌트 및 제 2 텍스쳐 컴포넌트를 각각 비교하는 단계; 및 제 1 제어 컴포넌트 및 제 1 텍스쳐 컴포넌트와 제 2 제어 컴포넌트 및 제 2 텍스쳐 컴포넌트가 상이한 경우 제 2 제어 컴포넌트로부터 복원된 제 2 텍스쳐 데이터를 출력 데이터로 결정하고 제 1 제어 컴포넌트 및 제 1 텍스쳐 컴포넌트와 제 2 제어 컴포넌트 및 상기 제 2 텍스쳐 컴포넌트가 동일한 경우, 제 1 텍스쳐 컴포넌트로부터 복원된 제 1 텍스쳐 데이터를 출력 데이터로 결정하는 단계를 더 포함한다.
일 실시예에 따른 렌더링 데이터의 압축을 해제하는 방법은, 이전에 미리 획득한 제 1 제어 컴포넌트와 획득한 제 2 제어 컴포넌트를 비교하는 단계; 및 제 1 제어 컴포넌트와 제 2 제어 컴포넌트가 동일한 경우, 제 2 제어 컴포넌트로부터 추출한 제어 명령에 따라 제 2 제어 컴포넌트에 대응되는 제 2 텍스쳐 컴포넌트로부터 제 2 텍스쳐 데이터를 복원하고, 제 1 제어 컴포넌트와 제 2 제어 컴포넌트 데이터가 동일한 경우, 미리 저장된 제 1 제어 컴포넌트와 대응되는 제 1 텍스쳐 데이터를 선택하는 단계를 더 포함한다.
일 실시예에 따른 렌더링 데이터의 압축을 해제하는 방법에 있어서, 획득하는 단계는, 복수개의 제어 컴포넌트 및 복수개의 텍스쳐 컴포넌트를 획득하고, 제어 컴포넌트를 할당하는 단계는, 복수개의 제어 컴포넌트를 대응되는 각각의 제어 유닛에 할당하는 단계; 및 각각의 제어 유닛으로부터 획득한 제어 명령들을 로직 연산부에 전송하는 단계를 포함한다.
일 실시예에 따른 렌더링 데이터의 압축을 해제하는 방법에 있어서, 텍스쳐 컴포넌트를 할당하는 단계는, 로직 연산부에 포함된 복수개의 연산 유닛 각각에 획득한 제어 명령들을 기초로 복수개의 텍스쳐 컴포넌트를 할당하고 텍스쳐 데이터를 복원하는 단계는, 복수개의 텍스쳐 데이터를 병렬적으로 복원한다.
렌더링 데이터의 압축에 사용되는 자원을 효율적으로 이용할 수 있다.
도 1은 일 실시예에 따라 렌더링 데이터의 압축을 해제하는 그래픽스 데이터의 렌더링 시스템을 도시한 블록도이다.
도 2는 일 실시예에 따라 렌더링 데이터의 압축을 해제하여 텍스쳐 데이터를 획득하는 프레그먼트 쉐이더의 블록도를 도시한 도면이다.
도 3은 일 실시예에 따른 압축 해제 장치의 블록도를 도시한 도면이다.
도 4는 일 실시예에 따른 압축 해제 장치가 BC 방식으로 압축된 입력 데이터를 파싱하여 할당하는 방법을 설명하기 위한 도면이다.
도 5는 일 실시예에 따른 압축 해제 장치가 ETC 방식으로 압축된 입력 데이터를 파싱하여 할당하는 방법을 설명하기 위한 도면이다.
도 6은 일 실시예에 따라 복수개의 제어 유닛들을 포함하고 있는 압축 해제 제어부를 포함하는 압축 해제 장치를 도시한 블록도이다.
도 7은 다른 실시예에 따른 압축 해제 장치를 도시한 도면이다.
도 8은 다른 실시예에 따른 압축 해제 장치를 도시한 블록도이다.
도 9는 일 실시예에 따른 압축 해제 장치가 렌더링 데이터의 압축을 해제하는 방법을 설명하기 위한 흐름도이다.
도 10은 다른 실시예에 따른 압축 해제 장치가 렌더링 데이터의 압축을 해제하는 방법을 설명하기 위한 흐름도이다.
도 11은 또 다른 실시예에 따른 압축 해제 장치가 렌더링 데이터의 압축을 해제하는 방법을 설명하기 위한 흐름도이다.
아래에서는 첨부한 도면을 참조하여 개시된 실시예들이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 개시된 실시예들을 상세히 설명한다. 그러나 개시된 실시예들은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 그리고 도면에서 개시된 실시예들을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.
명세서 전체에서, 어떤 부분이 다른 부분과 "연결"되어 있다고 할 때, 이는 "직접적으로 연결"되어 있는 경우뿐 아니라, 그 중간에 다른 소자를 사이에 두고 "전기적으로 연결"되어 있는 경우도 포함한다. 또한 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다.
이하 첨부된 도면을 참고하여 개시된 실시예들을 상세히 설명하기로 한다.
도 1은 일 실시예에 따라 렌더링 데이터의 압축을 해제하는 그래픽스 데이터의 렌더링 시스템(100, 이하 렌더링 시스템)을 도시한 블록도이다.
도 1에 도시된 렌더링 시스템(100)에는 본 실시예와 관련된 구성요소들만이 도시되어 있다. 따라서, 도 1에 도시된 구성요소들 외에 다른 범용적인 구성요소들이 더 포함될 수 있음을 본 실시예와 관련된 기술분야에서 통상의 지식을 가진 자라면 이해할 수 있다.
도 1을 참조하면, 렌더링 시스템(100)은 호스트 연산 프로세서(110) 및 일 실시예에 따라 렌더링 데이터의 압축을 해제하는 그래픽스(graphics) 프로세서(120)를 포함할 수 있다. 렌더링 시스템(100)은 데스크 탑 컴퓨터, 서버, 랩탑 컴퓨터, 태블릿 컴퓨터, 게임 콘솔(console) 및 PDA나 셀률러 폰(cellular phone)과 같은 휴대용 단말기를 포함할 수 있다.
호스트 연산 프로세서(110)는 UI(User Interface) 어플리케이션 및 시뮬레이션을 위한 어플리케이션 등의 그래픽스 어플리케이션을 실행하기 위해 필요한 연산을 수행할 수 있다. 여기에서, 그래픽스 어플리케이션은 어플리케이션 각각의 실행 목적을 수행하기 위해, 이미지를 렌더링 하는 동작을 필요로 하는 어플리케이션일 수 있다. 예를 들어, 게임 어플리케이션 및 동영상 어플리케이션 등이 그래픽스 어플리케이션에 포함될 수 있다. 호스트 연산 프로세서(100)는 그래픽스 어플리케이션 실행 시 렌더링 데이터를 처리하기 위해 하이-레벨 커멘드를 생성할 수 있다. 렌더링 데이터는 렌더링 대상이 되는 이미지 또는 영상에 포함되는 객체들의 텍스쳐 정보 등을 포함할 수 있다.
그래픽스 프로세서(120)는 호스트 연산 프로세서(110)와 통신을 수행한다. 그래픽스 프로세서(120)는 호스트 연산 프로세서(110)로부터 수신한 하이-레벨 커맨드를 기초로 호스트 연산 프로세서(110)에서 어플리케이션을 실행하는 데 필요한 이미지 또는 영상을 렌더링 하여, 호스트 연산 프로세서(110)에 제공할 수 있다.
한편, 도 1을 참조하면, 그래픽스 프로세서(120)는 그래픽스 인터페이스(121), 메모리(122) 및 그래픽스 프로세싱 파이프라인(123)을 포함할 수 있다.
그래픽스 인터페이스(121)는 호스트 연산 프로세서(110)로부터 하이-레벨 커맨드를 수신하고, 수신한 하이-레벨 커맨드를 메모리(122) 및 그래픽스 프로세싱 파이프라인(123)에 전달할 수 있다.
메모리(122)는 그래픽스 인터페이스(121)로부터 수신한 하이-레벨 커맨드를 저장할 수 있고, 그래픽스 프로세싱 파이프라인(123)에서 렌더링을 수행하는 데 필요한 렌더링 데이터를 저장할 수 있다.
그래픽스 프로세싱 파이프라인(123)은 이미지 또는 영상을 렌더링 하여 출력할 수 있다. 그래픽스 프로세싱 파이프라인(123)은 지오메트리(geometry) 프로세서(124), 래스터라이저(125), 프래그먼트 쉐이더(126) 및 래스터 연산 유닛(127)을 포함할 수 있다.
지오메트리 프로세서(124)는 어플리케이션 특유(application-specific)의 데이터 구조에 따른 데이터를 수신하고, 수신한 데이터에 기초하여 정점들을 생성할 수 있다. 지오메트리 프로세서(124)는 각각의 정점들의 가상 공간내의 3D 위치를 화면에서 나타날 2D 좌표 및 Z 버퍼의 깊이 값으로 변환할 수 있다. 지오메트리 프로세서(124)는 정점 데이터를 기초로 실행 가능한 프리미티브(예를 들어, 선, 점 및 삼각형)를 생성할 수 있다.
레스터라이저(125)는 지오메트리 프로세서(124)에서 수신한 프리미티브 내의 각 정점에 정의된 화면(screen) 좌표 및 텍스트 좌표 등을 보간하여, 프리미티브 내부에 대한 프레그먼트(fragment)의 정보를 생성할 수 있다. 하기의 실시예들 및 예들에서, 용어 ?족묽琉廊? 및 ?횝? 은 동일한 의미로 상호 교환되어 사용될 수 있다.
프레그먼트 쉐이더(126)는 프레그먼트 각각에 대해 텍스처 매핑 및 빛의 반사 등을 계산하여, 프레그먼트의 색상 및 텍스쳐를 결정할 수 있다. 예를 들어, 프레그먼트 쉐이더(126)는 메모리(122)로부터 획득한 압축된 입력 데이터를 기초로 프레그먼트 각각에 대한 텍스쳐를 결정할 수 있다. 일 실시예에 따른 프레그먼트 쉐이더(126)는 다양한 압축 포맷에 따라 압축된 적어도 하나의 입력 데이터를 제어 컴포넌트(component) 및 텍스쳐 컴포넌트(component)로 파싱(parsing)하여, 처리한다. 프레그먼트 쉐이더(126)는 압축된 입력 데이터를 제어 컴포넌트 및 텍스쳐 컴포넌트로 파싱하여 처리함으로써, 서로 다른 압축 포맷을 갖는 제어 컴포넌트들은 각기 대응되는 유닛에서 처리하고, 텍스쳐 컴포넌트들은 하나의 유닛에서 처리함으로써 렌더링의 효율을 높일 수 있다. 이에 대해서는 다음에서 구체적으로 후술하도록 한다. 프레임 버퍼(170)는 완전한 데이터 프레임을 포함하는 메모리 버퍼로부터 비디오 출력을 구동하는 비디오 출력장치일 수 있다.
래스터 연산 유닛(127)은 결정된 프레그먼트의 색상 및 텍스쳐에 기초하여, 프레그먼트를 출력한다. 또한, 래스터 연산 유닛(170)은 색상 및 텍스쳐가 적용된 프레그먼트에 관한 정보를 메모리(122)에 저장할 수도 있다.
도 2는 일 실시예에 따라 렌더링 데이터의 압축을 해제하여 텍스쳐 데이터를 획득하는 프레그먼트 쉐이더(126)의 블록도를 도시한 도면이다.
도 2를 참조하면, 프레그먼트 쉐이더(126)는 렌더링 데이터의 압축을 해제하는 장치(210, 이하, 압축 해제 장치) 및 텍스쳐 렌더링 유닛(220)을 포함할 수 있다. 도 2에 도시된 프레그먼트 쉐이더(126)에는 본 실시예와 관련된 구성요소들만이 도시되어 있다. 따라서, 도 2에 도시된 구성요소들 외에 다른 범용적인 구성요소들이 더 포함될 수 있음을 본 실시예와 관련된 기술분야에서 통상의 지식을 가진 자라면 이해할 수 있다.
일 실시예에 따른 압축 해제 장치(210)는 메모리(도 1, 122)로부터 압축된 입력 데이터를 획득한다. 여기에서, 압축된 입력 데이터에는 프레그먼트의 텍스쳐를 결정하는데 필요한 렌더링 데이터가 포함될 수 있다. 이하에서는, 설명의 편의상 렌더링 데이터의 일 예로 텍스쳐 데이터를 들어 설명하도록 한다.
한편, 압축된 입력 데이터에는 압축을 해제하여, 텍스쳐 데이터를 획득하기 위해 필요한 제어 컴포넌트 및 텍스쳐 컴포넌트가 포함될 수 있다. 제어 컴포넌트는 압축 포맷에 관한 정보가 포함되어 있다. 여기에서, 제어 컴포넌트는 텍스쳐 데이터를 압축하는데 사용된 압축 포맷에 따라 포함하고 있는 정보가 상이할 수 있다. 텍스쳐 컴포넌트는 압축된 입력 데이터로부터 텍스쳐 데이터를 획득하는데 수행해야 하는 논리 연산에 관한 정보가 포함될 수 있다. 텍스쳐 컴포넌트는 압축 포맷과는 별개로, 다양한 압축 포맷들에서 공통적으로 필요한 논리 연산에 사용되는 연산자 정보 및 연산 데이터 등이 포함될 수 있다. 제어 컴포넌트 및 텍스쳐 컴포넌트에 관한 구체적인 실시예에 대해서는 도 3을 참조하여 설명하도록 한다.
일 실시예에 따른 압축 해제 장치(210)는 획득한 입력 데이터를 파싱(parsing)하여, 제어 컴포넌트 및 텍스쳐 컴포넌트를 획득한다. 압축 해제 장치(210)는 압축 포맷에 따라 상이한 제어 컴포넌트와 압축 포맷에 상관 없이 동일하게 처리 가능한 텍스쳐 컴포넌트를 분리하여, 텍스쳐 컴포넌트를 하나의 모듈에서 처리함으로써 렌더링 시 필요한 자원을 효율적으로 이용할 수 있다.
텍스쳐 렌더링 유닛(220)은 압축된 입력 데이터의 압축을 해제한 결과 획득된 텍스쳐 데이터를 기초로 프레그먼트 각각에 대해 텍스처 매핑 및 빛의 반사 등을 계산하여, 프레그먼트의 텍스쳐를 결정할 수 있다. 텍스쳐 렌더링 유닛(220)이 텍스쳐 데이터를 기초로 프레그먼트의 텍스쳐를 결정하는 방법으로는 텍스쳐 렌더링에 이용되는 기존의 방법들이 모두 적용될 수 있다.
도 3은 일 실시예에 따른 압축 해제 장치(210)의 블록도를 도시한 도면이다.
도 3을 참조하면, 압축 해제 장치(210)는 데이터 파싱부(310), 압축 해제 제어부(320) 및 로직 연산부(330)를 포함할 수 있다. 도 3에 도시된 압축 해제 장치(210)에는 본 실시예와 관련된 구성요소들만이 도시되어 있다. 따라서, 도 3에 도시된 구성요소들 외에 다른 범용적인 구성요소들이 더 포함될 수 있음을 본 실시예와 관련된 기술분야에서 통상의 지식을 가진 자라면 이해할 수 있다.
데이터 파싱부(310)는 객체의 렌더링 정보를 포함하는 압축된 입력 데이터로부터 제어 컴포넌트 및 텍스쳐 컴포넌트를 획득한다. 제어 컴포넌트에는 압축 포맷에 관한 정보가 포함될 수 있다. 예를 들어, 제어 컴포넌트에는 압축 포맷의 종류에 관한 정보, 파티션에 관한 정보, 픽셀 인덱스 마스크에 관한 정보 및 색상 인덱스 정보에 관한 정보 등이 포함될 수 있다.
압축 포맷의 종류에는 BC(Block compression), ETC(Ericsson Texture Compression) 및 ATSC 등이 포함될 수 있다. 파티션에 관한 정보는 데이터의 처리 단위에 관한 정보가 포함될 수 있다. 예를 들어, 파티션에 관한 정보에는 4x4의 픽셀 단위로 이루어진 데이터를 가로축 또는 세로축으로 몇 개씩 분할하여 처리할 것인지에 관한 정보가 포함될 수 있다.
픽셀 인덱스 마스크에 관한 정보는 처리되는 픽셀들의 좌표에 관한 정보가 포함될 수 있다. 픽셀 인덱스 마스크에 포함된 정보에 따라 처리되는 픽셀들의 좌표가 재지정될 수 있다. 색상 인덱스 정보는 복수개의 색상들 각각에 대응되는 인덱스 정보를 나타낸다. 색상 인덱스 정보에 따라, 입력 데이터에 포함된 색상 정보가 결정된다.
한편, 데이터 파싱부(310)는 압축된 입력 데이터로부터 획득한 제어 컴포넌트 및 텍스쳐 컴포넌트를 각각 압축 해제 제어부(320) 및 로직 연산부(330)에 전송한다.
압축 해제 제어부(320)는 복수의 제어 유닛들(미도시)을 포함하며, 획득한 제어 컴포넌트와 대응되는 제어 유닛에 획득한 제어 컴포넌트를 할당한다. 예를 들어, 압축 해제 제어부(329)는 제어 컴포넌트의 압축 포맷에 따라, 대응되는 압축 포맷의 정보를 처리할 수 있는 제어 유닛에 획득한 제어 컴포넌트를 할당할 수 있다. 제어 컴포넌트가 할당된 제어 유닛은 제어 컴포넌트로부터 제어 명령을 추출한다.
압축 해제 제어부(320)에 포함되는 복수개의 제어 유닛들에 대해서는 도 6을 참조하여 설명하도록 한다.
도 6은 일 실시예에 따라 복수개의 제어 유닛들(322, 324, 326, 328)을 포함하고 있는 압축 해제 제어부(320)를 포함하는 압축 해제 장치(210)를 도시한 블록도이다. 도 6에 도시된 압축 해제 장치(210)에 포함된 데이터 파싱부(310), 압축 해제 제어부(320) 및 로직 연산부(330)는 도 3을 참조하여 전술한 바와 동일하게 동작한다.
한편, 압축 해제 제어부(320)에는 복수개의 제어 유닛들(322, 324, 326, 328)이 포함될 수 있다. 복수개의 제어 유닛들(322, 324, 326, 328)은 압축 포맷의 종류에 따라 상이하게 구성될 수 있다. 예를 들어, 압축 해제 제어부(320)에는 BC 방식으로 압축된 입력 데이터의 제어 컴포넌트를 처리 가능한 적어도 하나의 제어 유닛(322), ETC 방식으로 압축된 입력 데이터의 제어 컴포넌트를 처리 가능한 적어도 하나의 제어 유닛(326) 및 ATSC 방식으로 압축된 입력 데이터의 제어 컴포넌트를 처리 가능한 적어도 하나의 제어 유닛(328)이 포함될 수 있다.
또한 압축 해제 제어부(320)가 압축 방식 별로 복수개의 제어 유닛들(322, 324, 326, 328)을 포함하는 경우, 동일한 압축 방식의 제어 컴포넌트를 처리하는 복수개의 제어 유닛들(322, 324)은 식별자에 의해 식별될 수 있다. 예를 들어, 제 1 제어 유닛(322)과 제 2 제어 유닛(324)은 모두 BC 방식으로 압축된 입력 데이터의 제어 컴포넌트를 처리하는 제어 유닛으로서, 식별자에 의해 식별될 수 있다. 데이터 파싱부(310)는 압축 해제 제어부(320)에 제어 컴포넌트를 전송하는 경우, 식별자를 지정하여, 압축 해제 제어부(320)에 제어 컴포넌트를 전송할 수 있다.
압축 해제 제어부(320)는 획득한 제어 컴포넌트에 기초하여, 로직 연산부(330)에서 텍스쳐 컴포넌트를 기초로 수행되는 연산을 제어하기 위한 제어 명령을 로직 연산부(330)에 전송할 수 있다. 또한, 압축 해제 제어부(320)는 로직 연산부(330)와 통신함으로써, 로직 연산부(330)에서 수행되는 연산 과정 중에서 필요로 하는 제어 명령들을 로직 연산부(330)에 전송할 수 있다.
로직 연산부(330)는 데이터 파싱부(310)로부터 텍스쳐 컴포넌트를 획득한다. 또한, 로직 연산부(330)는 압축 해제 제어부(320)로부터 수신한 제어 명령에 기초하여, 획득한 텍스쳐 컴포넌트로부터 객체의 텍스쳐 데이터를 복원한다.
또한, 로직 연산부(330)에는 복수개의 연산 유닛들이 포함될 수 있다. 로직 연산부(330)는 획득한 텍스쳐 컴포넌트로부터 텍스쳐 데이터를 획득하기 위해, 적어도 하나의 논리 연산 또는 산술 연산을 수행할 수 있다. 일 실시예에 따른, 복수개의 연산 유닛들은 덧셈 및 곱셈 등의 연산을 수행할 수 있다. 로직 연산부(330)는 연산 유닛들을 이용하여 BC 방식으로 압축된 입력 데이터에 대해, 최소 색상 0과 최대 색상 1을 기초로 연산을 수행하여 다른 색상들에 관한 정보를 획득할 수 있다.
한편, 이는 일 실시예일 뿐, 로직 연산부(330)는 ETC 및 ATSC 등의 방식으로 압축된 입력 데이터에 대해서도 연산 유닛들을 이용하여, 텍스쳐 데이터를 획득할 수 있다.
도 4는 일 실시예에 따른 압축 해제 장치(210)가 BC 방식으로 압축된 입력 데이터를 파싱하여 할당하는 방법을 설명하기 위한 도면이다.
도 4를 참조하면, 압축 해제 장치(210)의 데이터 파싱부(310)는 BC 방식으로 압축된 입력 데이터를 파싱하여, 제어 컴포넌트는 압축 해제 제어부(320)에 할당하고 텍스쳐 컴포넌트는 로직 연산부(330)에 할당한다. 일 실시예에 따라 로직 연산부(330)에는 두 개의 곱셈 연산 유닛(410, 420)과 하나의 덧셈 연산 유닛(430)이 포함될 수 있다. 로직 연산부(330)는 텍스쳐 컴포넌트에 포함된 최소 색상 0에 기설정된 제 1 값을 곱하고, 최대 색상 1에 기설정된 제 2 값을 곱하여, 제 1 중간 색상을 복원할 수 있다. 또한, 로직 연산부(330)는 텍스쳐 컴포넌트에 포함된 최소 색상 0에 기설정된 제 2 값을 곱하고, 최대 색상 1에 기설정된 제 1 값을 곱하여, 제 2 중간 색상을 복원할 수 있다.
한편, 로직 연산부(330)가 전술한 색상 복원 작업을 수행하는데 필요한 제어 명령들은 압축 해제 제어부(320)로부터 획득할 수 있다. 압축 해제 제어부(320)는 로직 연산부(330)가 획득한 텍스쳐 컴포넌트를 기초로, 텍스쳐 데이터를 복원하는 과정에서, 처리해야 하는 입력 데이터의 단위 및 순서 등에 관한 정보를 제공할 수 있다.
도 5는 일 실시예에 따른 압축 해제 장치(210)가 ETC 방식으로 압축된 입력 데이터를 파싱하여 할당하는 방법을 설명하기 위한 도면이다.
도 5를 참조하면, 압축 해제 장치(210)의 데이터 파싱부(310)는 ETC 방식으로 압축된 입력 데이터를 파싱하여, 제어 컴포넌트는 압축 해제 제어부(320)에 할당하고 텍스쳐 컴포넌트는 로직 연산부(330)에 할당한다. 도 4를 참조하여 전술한 바와 같이, ETC 방식으로 압축된 입력 데이터에 대해서도 두 개의 곱셈 연산 유닛(410, 420)과 하나의 덧셈 연산 유닛(430)을 포함하는 로직 연산부(330)에서, 텍스쳐 컴포넌트로부터 텍스쳐 데이터를 복원할 수 있다.
로직 연산부(330)는 기본 색상 1 과 기본 색상 2 를 기초로, 거리 정보를 이용하여, 다른 색상들에 관한 정보를 복원할 수 있다. 예를 들어, 로직 연산부(330)는 기본 색상 2 로부터 기설정된 거리를 더하여, 다른 제 1 색상을 복원할 수 있다. 또한, 로직 연산부(330)는 기본 색상 2 로부터 기 설정된 거리를 빼서, 다른 제 2 색상을 복원할 수 있다.
한편, 로직 연산부(330)가 전술한 색상 복원 작업을 수행하는데 필요한 제어 명령들은 압축 해제 제어부(320)로부터 획득할 수 있다. 압축 해제 제어부(320)는 로직 연산부(330)가 획득한 텍스쳐 컴포넌트를 기초로, 텍스쳐 데이터를 복원하는 과정에서, 처리해야 하는 입력 데이터의 단위 및 순서 등에 관한 정보를 제공할 수 있다.
도 7은 다른 실시예에 따른 압축 해제 장치(700)를 도시한 도면이다.
도 7을 참조하면, 압축 해제 장치(700)는 데이터 파싱부(710), 압축 해제 제어부(720), 로직 연산부(730) 및 데이터 버퍼(740)를 포함할 수 있다. 도 7에 도시된 압축 해제 장치(700)에는 본 실시예와 관련된 구성요소들만이 도시되어 있다. 따라서, 도 7에 도시된 구성요소들 외에 다른 범용적인 구성요소들이 더 포함될 수 있음을 본 실시예와 관련된 기술분야에서 통상의 지식을 가진 자라면 이해할 수 있다.
데이터 파싱부(710)는 객체의 렌더링 정보를 포함하는 압축된 입력 데이터로부터 제어 컴포넌트 및 텍스쳐 컴포넌트를 획득한다. 데이터 파싱부(710)는 도 3을 참조하여 전술한 데이터 파싱부(310)와 대응될 수 있다.
압축 해제 제어부(720)는 복수의 제어 유닛들(미도시)을 포함하며, 획득한 제어 컴포넌트와 대응되는 제어 유닛에 상기 획득한 제어 컴포넌트를 할당한다. 제어 컴포넌트가 할당된 제어 유닛은 제어 컴포넌트로부터 제어 명령을 추출한다.
또한, 압축 해제 제어부(720)는 수신한 제어 컴포넌트를 이전에 수신한 제어 컴포넌트와 비교하여, 로직 연산부(730)에서 텍스쳐 컴포넌트를 기초로 텍스쳐 데이터를 복원하기 위해 수행되는 연산을 제어할 수 있다. 이에 대한 설명은, 데이터 버퍼(740)에 대한 설명과 함께 아래에서 후술하도록 한다.
로직 연산부(730)는 데이터 파싱부(310)로부터 텍스쳐 컴포넌트를 획득한다. 또한, 로직 연산부(730)는 압축 해제 제어부(320)로부터 수신한 제어 명령에 기초하여, 획득한 텍스쳐 컴포넌트로부터 객체의 텍스쳐 데이터를 복원한다.
데이터 버퍼(740)는 압축 해제 제어부(720)로부터 제어 컴포넌트를 수신하고, 로직 연산부(730)로부터 텍스쳐 데이터를 수신한다. 데이터 버퍼(740)는 수신한 제어 컴포넌트 및 텍스쳐 데이터를 저장할 수 있다. 또한, 데이터 버퍼(740)는 텍스쳐 렌더링 유닛(220)에 제어 컴포넌트 및 텍스쳐 데이터를 출력할 수 있다.
한편, 일 실시예에 따른 압축 해제 제어부(720)는 데이터 버퍼(740)에 저장되는 제어 컴포넌트 및 텍스쳐 데이터를 이용하여, 압축된 입력 데이터로부터 텍스쳐 데이터를 복원하는 방법을 보다 효율적으로 수행할 수 있다.
압축 해제 제어부(720)는 데이터 파싱부(710)로부터 이전에 수신한 제 1 제어 컴포넌트와 현재 수신한 제 2 제어 컴포넌트를 비교한다. 이하에서는 설명의 편의상 이전에 획득한 압축된 제 1 입력 데이터로부터 파싱된 제어 컴포넌트및 텍스쳐 컴포넌트를 각각 제 1 제어 컴포넌트 및 제 1 텍스쳐 컴포넌트로 설명하도록 한다. 또한, 현재 획득한 압축된 제 2 입력 데이터로부터 파싱된 제어 컴포넌트 및 텍스쳐 컴포넌트를 각각 제 2 제어 컴포넌트 및 제 2 텍스쳐 컴포넌트로 설명하도록 한다.
압축 해제 제어부(720)는 제 1 제어 컴포넌트와 제 2 제어 컴포넌트를 비교한 결과, 제 1 제어 컴포넌트와 제 2 제어 컴포넌트가 동일한 경우, 로직 연산부(730)에 제 2 텍스쳐 컴포넌트로부터 텍스쳐 데이터를 복원하는데 필요한 제어 명령을 전송하지 않을 수 있다. 압축 해제 제어부(720)는 이전에 데이터 버퍼(740)에 저장된 제 1 제어 컴포넌트를 이용하여 제 1 텍스쳐 컴포넌트로부터 획득한 텍스쳐 데이터를 선택할 수 있다. 압축 해제 제어부(720)는 기 저장된 제 1 텍스쳐 데이터를 압축된 제 2 입력 데이터로부터 복원된 텍스트 데이터로서 출력할 수 있다. 압축 해제 제어부(720)는 수신한 제어 컴포넌트가 이전에 획득한 제어 컴포넌트와 동일한 경우, 데이터 버퍼(740)에 기 저장된 텍스쳐 데이터를 이용함으로써, 로직 연산부(730)를 이용하여 텍스쳐 데이터를 복원하는데 이용되는 자원을 줄일 수 있다.
압축 해제 제어부(720)는 제 1 제어 컴포넌트와 제 2 제어 컴포넌트가 상이한 경우에는 도 3을 참조하여, 전술한 바와 같이 제 2 제어 컴포넌트로부터 추출한 제어 명령에 기초하여, 제 2 텍스쳐 컴포넌트로부터 제 2 텍스쳐 데이터를 획득할 수 있다. 압축 해제 제어부(720)는 획득한 제 2 텍스쳐 데이터를 데이터 버퍼(740)에 저장할 수 있다.
한편, 다른 실시예에 따라, 압축 해제 제어부(720)는 수신한 제어 컴포넌트 및 텍스쳐 컴포넌트와 이전에 수신한 제어 컴포넌트 및 텍스쳐 컴포넌트를 각각 비교하여, 압축된 입력 데이터로부터 텍스쳐 데이터를 복원하는 방법을 보다 효율적으로 수행할 수 도 있다.
압축 해제 제어부(720)는 제 1 제어 컴포넌트 및 제 1 텍스쳐 컴포넌트와 제 2 제어 컴포넌트 및 제 2 텍스쳐 컴포넌트를 각각 비교한 결과, 1 제어 컴포넌트와 제 2 제어 컴포넌트가 동일하고, 제 1 텍스쳐 컴포넌트와 제 2 텍스쳐 컴포넌트가 동일한 경우, 로직 연산부(730)에 제 2 텍스쳐 컴포넌트로부터 텍스쳐 데이터를 복원하는데 필요한 제어 명령을 전송하지 않을 수 있다. 압축 해제 제어부(720)는 이전에 데이터 버퍼(740)에 저장된 제 1 제어 컴포넌트를 이용하여 제 1 텍스쳐 컴포넌트로부터 획득한 텍스쳐 데이터를 선택할 수 있다. 또한, 압축 해제 제어부(720)는 기 저장된 제 1 텍스쳐 데이터를 압축된 제 2 입력 데이터로부터 복원된 텍스트 데이터로서 출력할 수 있다.
압축 해제 제어부(720)는 제 1 제어 컴포넌트와 제 2 제어 컴포넌트가 상이하거나 제 1 텍스쳐 컴포넌트와 제 2 텍스쳐 컴포넌트가 상이한 경우에는 도 3을 참조하여, 전술한 바와 같이 제 2 제어 컴포넌트로부터 추출한 제어 명령에 기초하여, 제 2 텍스쳐 컴포넌트로부터 제 2 텍스쳐 데이터를 획득할 수 있다. 압축 해제 제어부(720)는 획득한 제 2 텍스쳐 데이터를 데이터 버퍼(740)에 저장할 수 있다.
도 8은 다른 실시예에 따른 압축 해제 장치(800)를 도시한 블록도이다.
도 8을 참조하면, 압축 해제 장치(800)는 데이터 파싱부(810), 압축 해제 제어부(820), 로직 연산부(830) 및 데이터 버퍼(840)를 포함할 수 있다. 도 8에 도시된 압축 해제 장치(800)에는 본 실시예와 관련된 구성요소들만이 도시되어 있다. 따라서, 도 8에 도시된 구성요소들 외에 다른 범용적인 구성요소들이 더 포함될 수 있음을 본 실시예와 관련된 기술분야에서 통상의 지식을 가진 자라면 이해할 수 있다.
데이터 파싱부(810)는 객체의 렌더링 정보를 포함하는 압축된 입력 데이터로부터 제어 컴포넌트 및 텍스쳐 컴포넌트를 획득한다. 데이터 파싱부(810)는 도 7을 참조하여 전술한 데이터 파싱부(310)와 대응될 수 있다.
한편, 데이터 파싱부(810)는 압축된 입력 데이터로부터 복수의 제어 컴포넌트 및 복수의 텍스쳐 컴포넌트를 획득할 수 있다. 예를 들어, 압축된 입력 데이터의 크기가 2M 바이트인 경우, 압축된 입력 데이터에는 각각 A 바이트의 크기를 갖는 2개의 제어 컴포넌트들과 2B 바이트의 크기를 갖는 텍스쳐 컴포넌트를 획득할 수 있다.
압축 해제 제어부(820)는 복수의 제어 유닛들(822, 824, 826, 828)을 포함하며, 획득한 제어 컴포넌트와 대응되는 제어 유닛에 상기 획득한 제어 컴포넌트를 할당한다. 제어 컴포넌트가 할당된 제어 유닛은 제어 컴포넌트로부터 제어 명령을 추출한다. 압축 해제 제어부(820)는 로직 연산부(830)에 추출한 제어 명령을 전송할 수 있다.
한편, 압축 해제 제어부(820)는 복수의 제어 컴포넌트들을 획득할 수도 있다. 예를 들어, 압축 해제 제어부(820)는 각각 A 바이트의 크기를 갖는 2개의 제어 컴포넌트들을 획득할 수 있다. 압축 해제 제어부(820)는 획득한 제어 컴포넌트들에 대응되는 제어 유닛인 제 1 제어 유닛(822) 및 제 2 제어 유닛(824)에 각각 제어 컴포넌트들을 할당할 수 있다. 제 1 제어 유닛(822) 및 제 2 제어 유닛(824)은 각각 할당된 제어 컴포넌트를 병렬적으로 처리할 수 있다.
로직 연산부(830)는 데이터 파싱부(810)로부터 텍스쳐 컴포넌트를 획득한다. 로직 연산부(830)는 압축 해제 제어부(820)로부터 수신한 제어 명령에 기초하여, 획득한 텍스쳐 컴포넌트로부터 객체의 텍스쳐 데이터를 복원한다.
로직 연산부(830)는 복수개의 연산 유닛들(832, 834)을 포함할 수 있다. 복수개의 연산 유닛들(832, 834)은 빈번하게 수행되는 연산의 종류에 따라 분류될 수 있다. 예를 들어, 제 1 연산 유닛(832)에는 기설정된 횟수 이상 수행되는 연산들을 수행할 수 있는 연산기들이 포함될 수 있다. 제 2 연산 유닛(834)에는 기설정된 횟수 미만으로 수행되는 연산들을 수행할 수 있는 연산기들이 포함될 수 있다. 일 실시예에 따른 로직 연산부(830)는 빈번하게 사용되는 연산들을 수행하는 연산기들을 추출하여, 제 1 연산 유닛(832)에 할당하고, 나머지 연산들을 수행하는 연산기들을 제 2 연산 유닛(834)에 할당하여, 제 1 연산 유닛(832)의 메모리 크기를 줄임으로써, 압축 해제 제어부(820)와 제 1 연산 유닛(832)간에 명령을 송수신하는 경우, 보다 효율적으로 자원을 활용할 수 있다.
데이터 버퍼(840)는 압축 해제 제어부(820)로부터 제어 컴포넌트를 수신하고, 로직 연산부(830)로부터 텍스쳐 데이터를 수신한다. 데이터 버퍼(840)는 수신한 제어 컴포넌트 및 텍스쳐 데이터를 저장할 수 있다. 또한, 데이터 버퍼(840)는 텍스쳐 렌더링 유닛(220)에 제어 컴포넌트 및 텍스쳐 데이터를 출력할 수 있다.
도 9는 일 실시예에 따른 압축 해제 장치(210)가 렌더링 데이터의 압축을 해제하는 방법을 설명하기 위한 흐름도이다.
단계 910에서, 압축 해제 장치(210)는 객체의 렌더링 정보를 포함하는 압축된 입력 데이터로부터 제어 컴포넌트 및 텍스쳐 컴포넌트를 획득한다. 제어 컴포넌트에는 압축 포맷에 관한 정보가 포함될 수 있다. 예를 들어, 제어 컴포넌트에는 압축 포맷의 종류에 관한 정보, 파티션에 관한 정보, 픽셀 인덱스 마스크에 관한 정보, 색상 인덱스 정보 및 출력 레이턴시에 관한 정보 등이 포함될 수 있다.
단계 920에서, 압축 해제 장치(210)는 압축 해제 장치(210)에 포함된 복수의 제어 유닛들(322, 324, 326, 328) 중에서, 획득한 제어 컴포넌트와 대응되는 제어 유닛에 획득한 제어 컴포넌트를 할당한다. 제어 컴포넌트는 텍스쳐 데이터를 압축하는데 사용된 압축 포맷에 따라 포함하고 있는 정보가 상이할 수 있다. 제어 컴포넌트가 할당된 제어 유닛은 제어 컴포넌트로부터 제어 명령을 추출한다. 복수개의 제어 유닛들(322, 324, 326, 328)은 압축 포맷의 종류에 따라 상이하게 구성될 수 있다.
또한 압축 해제 장치(210)는 압축 방식 별로 복수개의 제어 유닛들(322, 324, 326, 328)을 포함하는 경우, 동일한 압축 방식의 제어 컴포넌트를 처리하는 복수개의 제어 유닛들(322, 324)을 식별자에 의해 식별할 수 있다. 압축 해제 장치(210)는 압축 해제 제어부(320)에 제어 컴포넌트를 전송하는 경우, 식별자를 지정하여, 압축 해제 제어부(320)에 제어 컴포넌트를 전송할 수 있다.
단계 930에서, 압축 해제 장치(210)는 압축 해제 장치(210)에 포함된 로직 연산부(330)에 텍스쳐 컴포넌트를 할당한다. 텍스쳐 컴포넌트는 압축된 입력 데이터로부터 텍스쳐 데이터를 획득하는데 수행해야 하는 논리 연산에 관한 정보가 포함될 수 있다. 텍스쳐 컴포넌트는 압축 포맷과는 별개로, 다양한 압축 포맷들에서 공통적으로 필요한 논리 연산에 사용되는 연산자 정보 및 연산 데이터 등이 포함될 수 있다.
단계 940에서, 압축 해제 장치(210)는 제어 컴포넌트로부터 추출된 제어 명령에 기초하여, 텍스쳐 컴포넌트로부터 객체의 텍스쳐 데이터를 복원한다. 압축 해제 장치(210)는 텍스쳐 데이터의 복원 작업을 수행하는데 필요한 제어 명령들을 제어 컴포넌트로부터 획득할 수 있다. 압축 해제 장치(210)는 제어 컴포넌트로부터 텍스쳐 데이터를 복원하는 과정에서, 처리해야 하는 입력 데이터의 단위 및 순서 등에 관한 정보를 획득할 수 있다.
도 10은 다른 실시예에 따른 압축 해제 장치(210)가 렌더링 데이터의 압축을 해제하는 방법을 설명하기 위한 흐름도이다.
단계 1010에서, 압축 해제 장치(210)는 객체의 렌더링 정보를 포함하는 압축된 입력 데이터로부터 제 2 제어 컴포넌트 및 제 2 텍스쳐 컴포넌트를 획득한다. 제 2 제어 컴포넌트에는 압축 포맷에 관한 정보가 포함될 수 있다.
한편, 단계 1010은 도 9의 단계 910과 대응될 수 있다.
단계 1020에서, 압축 해제 장치(210)는 압축 해제 장치(210)에 포함된 복수의 제어 유닛들(322, 324, 326, 328) 중에서, 획득한 제 2 제어 컴포넌트와 대응되는 제어 유닛에 획득한 제 2 제어 컴포넌트를 할당한다.
한편, 단계 1020은 도 9의 단계 920과 대응될 수 있다.
단계 1030에서, 압축 해제 장치(210)는 압축 해제 장치(210)에 포함된 로직 연산부(330)에 제 2 텍스쳐 컴포넌트를 할당한다.
한편, 단계 1030은 도 9의 단계 930과 대응될 수 있다.
단계 1040에서, 압축 해제 장치(210)는 이전에 획득한 제 1 제어 컴포넌트와 제 2 제어 컴포넌트를 비교한다.
단계 1050에서, 압축 해제 장치(210)는 제 1 제어 컴포넌트와 제 2 제어 컴포넌트가 동일한 경우, 미리 저장된 제 1 텍스쳐 데이터를 출력 데이터로 결정한다. 압축 해제 장치(210)는 제 1 제어 컴포넌트와 제 2 제어 컴포넌트가 동일한 경우, 제 2 텍스쳐 컴포넌트로부터 텍스쳐 데이터를 복원하는 동작을 수행하지 않을 수 있다. 압축 해제 장치(210)는 수신한 제어 컴포넌트가 이전에 획득한 제어 컴포넌트와 동일한 경우, 기 저장된 제 1 텍스쳐 데이터를 압축된 입력 데이터의 복원 데이터로서 이용할 수 있다.
단계 1060에서, 압축 해제 장치(210)는 제 2 제어 컴포넌트로부터 추출된 제어 명령에 기초하여, 제 2 텍스쳐 컴포넌트로부터 제 2 텍스쳐 데이터를 복원한다.
한편, 단계 1060은 도 9의 단계 940과 대응될 수 있다.
단계 1070에서, 압축 해제 장치(210)는 복원된 제 2 텍스쳐 데이터를 저장한다.
도 11은 또 다른 실시예에 따른 압축 해제 장치(210)가 렌더링 데이터의 압축을 해제하는 방법을 설명하기 위한 흐름도이다.
단계 1110에서, 압축 해제 장치(210)는 객체의 렌더링 정보를 포함하는 압축된 입력 데이터로부터 제 2 제어 컴포넌트 및 제 2 텍스쳐 컴포넌트를 획득한다. 제 2 제어 컴포넌트에는 압축 포맷에 관한 정보가 포함될 수 있다.
한편, 단계 1110은 도 9의 단계 910과 대응될 수 있다.
단계 1120에서, 압축 해제 장치(210)는 압축 해제 장치(210)에 포함된 복수의 제어 유닛들(322, 324, 326, 328) 중에서, 획득한 제 2 제어 컴포넌트와 대응되는 제어 유닛에 획득한 제 2 제어 컴포넌트를 할당한다.
한편, 단계 1120은 도 9의 단계 920과 대응될 수 있다.
단계 1130에서, 압축 해제 장치(210)는 압축 해제 장치(210)에 포함된 로직 연산부(330)에 제 2 텍스쳐 컴포넌트를 할당한다.
한편, 단계 1130은 도 9의 단계 930과 대응될 수 있다.
단계 1140에서, 압축 해제 장치(210)는 이전에 획득한 제 1 제어 컴포넌트 및 이전에 획득한 제 1 텍스쳐 컴포넌트와 제 2 제어 컴포넌트 ? 제 2 텍스쳐 컴포넌트를 각각 비교한다.
단계 1150에서, 압축 해제 장치(210)는 제 1 제어 컴포넌트와 제 2 제어 컴포넌트가 동일하고, 제 1 텍스쳐 컴포넌트와 제 2 텍스쳐 컴포넌트가 동일한 경우, 미리 저장된 제 1 텍스쳐 데이터를 출력 데이터로 결정한다. 압축 해제 장치(210)는 제 1 제어 컴포넌트와 제 2 제어 컴포넌트가 동일하고, 제 1 텍스쳐 컴포넌트와 제 2 텍스쳐 컴포넌트가 동일한 경우, 제 2 텍스쳐 컴포넌트로부터 텍스쳐 데이터를 복원하는 동작을 수행하지 않을 수 있다. 압축 해제 장치(210)는 수신한 제어 컴포넌트 및 텍스쳐 컴포넌트가 이전에 획득한 제어 컴포넌트 및 텍스쳐 컴포넌트와 동일한 경우, 기 저장된 제 1 텍스쳐 데이터를 압축된 입력 데이터의 복원 데이터로서 이용할 수 있다.
단계 1160에서, 압축 해제 장치(210)는 제 2 제어 컴포넌트로부터 추출된 제어 명령에 기초하여, 제 2 텍스쳐 컴포넌트로부터 제 2 텍스쳐 데이터를 복원한다.
한편, 단계 1160은 도 9의 단계 940과 대응될 수 있다.
단계 1170에서, 압축 해제 장치(210)는 복원된 제 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)의 의미를 포함할 수 있다.
개시된 실시예들에서 설명하는 특정 실행들은 일 실시 예들로서, 어떠한 방법으로도 개시된 실시예들의 범위를 한정하는 것은 아니다.  명세서의 간결함을 위하여, 종래 전자적인 구성들, 제어 시스템들, 소프트웨어, 상기 시스템들의 다른 기능적인 측면들의 기재는 생략될 수 있다.  또한, 도면에 도시된 구성 요소들 간의 선들의 연결 또는 연결 부재들은 기능적인 연결 및/또는 물리적 또는 회로적 연결들을 예시적으로 나타낸 것으로서, 실제 장치에서는 대체 가능하거나 추가의 다양한 기능적인 연결, 물리적인 연결, 또는 회로 연결들로서 나타내어질 수 있다.  또한, “필수적인”, “중요하게” 등과 같이 구체적인 언급이 없다면 개시된 실시예들의 적용을 위하여 반드시 필요한 구성 요소가 아닐 수 있다.
210: 압축 해제 장치
310: 데이터 파싱부
320: 제어부
330: 로직 연산부

Claims (17)

  1. 객체의 렌더링 정보를 포함하는 압축된 입력 데이터로부터 제어 컴포넌트 및 텍스쳐 컴포넌트를 획득하는 데이터 파싱부;
    복수의 제어 유닛들을 포함하며, 상기 획득한 제어 컴포넌트와 대응되는 제어 유닛에 상기 획득한 제어 컴포넌트를 할당하고, 상기 제어 컴포넌트가 할당된 제어 유닛은 상기 제어 컴포넌트로부터 제어 명령을 추출하는 압축 해제 제어부; 및
    상기 압축 해제 제어부로부터 수신한 제어 명령에 기초하여, 상기 텍스쳐 컴포넌트로부터 상기 객체의 텍스쳐 데이터를 복원하는 로직 연산부를 포함하는 렌더링 데이터의 압축을 해제하는 장치.
  2. 제 1항에 있어서, 상기 압축 해제 제어부는,
    상기 압축된 입력 데이터의 압축 포맷에 따라 결정되는 서로 다른 유형의 제어 유닛들을 포함하고, 상기 압축된 입력 데이터의 압축 포맷에 대응되는 제어 유닛에 상기 획득한 제어 컴포넌트를 할당하는 렌더링 데이터의 압축을 해제하는 장치.
  3. 제 2항에 있어서, 상기 압축 해제 제어부는,
    기 설정된 식별자에 따라 식별 가능한 동일한 유형의 복수개의 제어 유닛들을 포함하고,
    상기 획득한 제어 컴포넌트가 할당되는, 제어 유닛의 유형 및 식별자를 결정하는 렌더링 데이터의 압축을 해제하는 장치.
  4. 제 1 항에 있어서,
    상기 제어 컴포넌트와 상기 텍스쳐 데이터를 저장하는 데이터 버퍼를 더 포함하는 렌더링 데이터의 압축을 해제하는 장치.
  5. 제 4 항에 있어서, 상기 압축 해제 제어부는,
    미리 획득된 제 1 제어 컴포넌트 및 제 1 텍스쳐 컴포넌트와 상기 획득한 제 2 제어 컴포넌트 및 제 2 텍스쳐 컴포넌트를 각각 비교하고,
    제 1 제어 컴포넌트 및 제 1 텍스쳐 컴포넌트와 상기 제 2 제어 컴포넌트 및 상기 제 2 텍스쳐 컴포넌트가 상이한 경우 상기 제 2 제어 컴포넌트로부터 복원된 제 2 텍스쳐 데이터를 출력 데이터로 결정하고
    제 1 제어 컴포넌트 및 제 1 텍스쳐 컴포넌트와 상기 제 2 제어 컴포넌트 및 상기 제 2 텍스쳐 컴포넌트가 동일한 경우, 상기 제 1 텍스쳐 컴포넌트로부터 복원된 제 1 텍스쳐 데이터를 출력 데이터로 결정하는 렌더링 데이터의 압축을 해제하는 장치.
  6. 제 1 항에 있어서, 상기 압축 해제 제어부는,
    이전에 미리 획득한 제 1 제어 컴포넌트와 상기 획득한 제 2 제어 컴포넌트를 비교하고,
    상기 제 1 제어 컴포넌트와 상기 제 2 제어 컴포넌트가 동일한 경우, 상기 제 2 제어 컴포넌트로부터 추출한 제어 명령에 따라 상기 제 2 제어 컴포넌트에 대응되는 제 2 텍스쳐 컴포넌트로부터 제 2 텍스쳐 데이터를 복원하도록 상기 로직 연산부를 제어하고,
    상기 제 1 제어 컴포넌트와 상기 제 2 제어 컴포넌트 데이터가 동일한 경우, 미리 저장된 상기 제 1 제어 컴포넌트와 대응되는 상기 제 1 텍스쳐 데이터를 선택하는 렌더링 데이터의 압축을 해제하는 장치.
  7. 제 1 항에 있어서, 상기 데이터 파싱부는,
    복수개의 제어 컴포넌트 및 복수개의 텍스쳐 컴포넌트를 획득하고,
    상기 압축 해제 제어부는,
    상기 복수개의 제어 컴포넌트를 대응되는 각각의 제어 유닛에 할당하고, 상기 각각의 제어 유닛으로부터 획득한 제어 명령들을 상기 로직 연산부에 전송하는 렌더링 데이터의 압축을 해제하는 장치.
  8. 제 7 항에 있어서, 상기 로직 연산부는,
    복수개의 연산 유닛을 포함하고, 상기 복수개의 연산 유닛 각각에 상기 획득한 제어 명령들을 기초로 상기 복수개의 텍스쳐 컴포넌트를 할당하여, 상기 복수개의 텍스쳐 데이터를 병렬적으로 복원하는 렌더링 데이터의 압축을 해제하는 장치.
  9. 압축 해제 장치에서, 객체의 렌더링 정보를 포함하는 압축된 입력 데이터로부터 제어 컴포넌트 및 텍스쳐 컴포넌트를 획득하는 단계;
    상기 압축 해제 장치에 포함된 복수의 제어 유닛들 중에서, 상기 획득한 제어 컴포넌트와 대응되는 제어 유닛에 상기 획득한 제어 컴포넌트를 할당하는 단계;
    상기 압축 해제 장치에 포함된 로직 연산부에 상기 텍스쳐 컴포넌트를 할당하는 단계; 및
    상기 제어 컴포넌트로부터 추출된 제어 명령에 기초하여, 상기 텍스쳐 컴포넌트로부터 상기 객체의 텍스쳐 데이터를 복원하는 단계를 포함하는 렌더링 데이터의 압축을 해제하는 방법.
  10. 제 9항에 있어서, 상기 획득한 제어 컴포넌트를 할당하는 단계는,
    상기 압축된 입력 데이터의 압축 포맷에 따라 결정되는 서로 다른 유형의 제어 유닛들 중에서 상기 압축된 입력 데이터의 압축 포맷에 대응되는 제어 유닛에 상기 획득한 제어 컴포넌트를 할당하는 렌더링 데이터의 압축을 해제하는 방법.
  11. 제 10항에 있어서, 상기 획득한 제어 컴포넌트를 할당하는 단계는,
    식별자에 따라 식별 가능한 동일한 유형의 복수개의 제어 유닛들이 존재하는 경우, 상기 획득한 제어 컴포넌트가 할당되는, 제어 유닛의 유형 및 식별자를 결정하는 단계를 포함하는 렌더링 데이터의 압축을 해제하는 방법.
  12. 제 9 항에 있어서,
    상기 제어 컴포넌트와 상기 텍스쳐 데이터를 상기 압축 해제 장치에 포함되는 데이터 버퍼에 저장하는 단계를 더 포함하는 렌더링 데이터의 압축을 해제하는 장치.
  13. 제 12 항에 있어서,
    미리 획득된 제 1 제어 컴포넌트 및 제 1 텍스쳐 컴포넌트와 상기 획득한 제 2 제어 컴포넌트 및 제 2 텍스쳐 컴포넌트를 각각 비교하는 단계; 및
    제 1 제어 컴포넌트 및 제 1 텍스쳐 컴포넌트와 상기 제 2 제어 컴포넌트 및 상기 제 2 텍스쳐 컴포넌트가 상이한 경우 상기 제 2 제어 컴포넌트로부터 복원된 제 2 텍스쳐 데이터를 출력 데이터로 결정하고
    제 1 제어 컴포넌트 및 제 1 텍스쳐 컴포넌트와 상기 제 2 제어 컴포넌트 및 상기 제 2 텍스쳐 컴포넌트가 동일한 경우, 상기 제 1 텍스쳐 컴포넌트로부터 복원된 제 1 텍스쳐 데이터를 출력 데이터로 결정하는 단계를 더 포함하는 렌더링 데이터의 압축을 해제하는 방법.
  14. 제 9 항에 있어서,
    이전에 미리 획득한 제 1 제어 컴포넌트와 상기 획득한 제 2 제어 컴포넌트를 비교하는 단계; 및
    상기 제 1 제어 컴포넌트와 상기 제 2 제어 컴포넌트가 동일한 경우, 상기 제 2 제어 컴포넌트로부터 추출한 제어 명령에 따라 상기 제 2 제어 컴포넌트에 대응되는 제 2 텍스쳐 컴포넌트로부터 제 2 텍스쳐 데이터를 복원하고,
    상기 제 1 제어 컴포넌트와 상기 제 2 제어 컴포넌트 데이터가 동일한 경우, 미리 저장된 상기 제 1 제어 컴포넌트와 대응되는 상기 제 1 텍스쳐 데이터를 선택하는 단계를 더 포함하는 렌더링 데이터의 압축을 해제하는 방법.
  15. 제 9 항에 있어서, 상기 획득하는 단계는,
    복수개의 제어 컴포넌트 및 복수개의 텍스쳐 컴포넌트를 획득하고,
    상기 제어 컴포넌트를 할당하는 단계는,
    상기 복수개의 제어 컴포넌트를 대응되는 각각의 제어 유닛에 할당하는 단계; 및
    상기 각각의 제어 유닛으로부터 획득한 제어 명령들을 상기 로직 연산부에 전송하는 단계를 포함하는 렌더링 데이터의 압축을 해제하는 방법.
  16. 제 15 항에 있어서, 상기 텍스쳐 컴포넌트를 할당하는 단계는,
    상기 로직 연산부에 포함된 복수개의 연산 유닛 각각에 상기 획득한 제어 명령들을 기초로 상기 복수개의 텍스쳐 컴포넌트를 할당하고
    상기 텍스쳐 데이터를 복원하는 단계는,
    상기 복수개의 텍스쳐 데이터를 병렬적으로 복원하는 렌더링 데이터의 압축을 해제하는 방법.
  17. 제 9항 내지 제 16항 중 어느 하나의 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록 매체.
KR1020140123706A 2014-09-17 2014-09-17 렌더링 데이터의 압축을 해제하는 장치, 방법 및 기록매체 KR102245137B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020140123706A KR102245137B1 (ko) 2014-09-17 2014-09-17 렌더링 데이터의 압축을 해제하는 장치, 방법 및 기록매체
US14/667,780 US9721359B2 (en) 2014-09-17 2015-03-25 Apparatus and method of decompressing rendering data and recording medium thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020140123706A KR102245137B1 (ko) 2014-09-17 2014-09-17 렌더링 데이터의 압축을 해제하는 장치, 방법 및 기록매체

Publications (2)

Publication Number Publication Date
KR20160032936A true KR20160032936A (ko) 2016-03-25
KR102245137B1 KR102245137B1 (ko) 2021-04-28

Family

ID=55455231

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020140123706A KR102245137B1 (ko) 2014-09-17 2014-09-17 렌더링 데이터의 압축을 해제하는 장치, 방법 및 기록매체

Country Status (2)

Country Link
US (1) US9721359B2 (ko)
KR (1) KR102245137B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20200035446A (ko) * 2017-08-25 2020-04-03 어드밴스드 마이크로 디바이시즈, 인코포레이티드 압축 메타데이터를 사용하는 텍스처 상주 체크

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9378560B2 (en) * 2011-06-17 2016-06-28 Advanced Micro Devices, Inc. Real time on-chip texture decompression using shader processors
US10192280B2 (en) 2016-04-08 2019-01-29 Qualcomm Incorporated Per-vertex variable rate shading
US20180046250A1 (en) * 2016-08-09 2018-02-15 Wipro Limited System and method for providing and modulating haptic feedback
CN113256803A (zh) * 2021-06-23 2021-08-13 合肥量圳建筑科技有限公司 一种数据压缩方法、装置、设备及存储介质
CN116597025B (zh) * 2023-04-24 2023-09-26 北京麟卓信息科技有限公司 一种基于异构指令穿透的压缩纹理解码优化方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6339428B1 (en) * 1999-07-16 2002-01-15 Ati International Srl Method and apparatus for compressed texture caching in a video graphics system
US6959110B1 (en) * 2000-08-17 2005-10-25 Nvidia Corporation Multi-mode texture compression algorithm

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6157743A (en) * 1998-07-31 2000-12-05 Hewlett Packard Company Method for retrieving compressed texture data from a memory system
US20110157196A1 (en) * 2005-08-16 2011-06-30 Exent Technologies, Ltd. Remote gaming features
US7683910B2 (en) 2006-06-29 2010-03-23 Microsoft Corporation Strategies for lossy compression of textures
US7760936B1 (en) 2006-09-12 2010-07-20 Nvidia Corporation Decompressing image-based data compressed using luminance
US9665951B2 (en) * 2007-12-20 2017-05-30 Telefonaktiebolaget Lm Ericsson (Publ) Unified compression/decompression graphics architecture
US8508543B2 (en) 2008-06-18 2013-08-13 Microsoft Corporation Layered texture compression architecture
GB0916924D0 (en) * 2009-09-25 2009-11-11 Advanced Risc Mach Ltd Graphics processing systems
US9001135B2 (en) * 2010-09-18 2015-04-07 Google Inc. Method and mechanism for delivering applications over a wan
US8625910B2 (en) * 2011-02-25 2014-01-07 Adobe Systems Incorporated Compression of image data
US9055120B1 (en) * 2011-12-16 2015-06-09 Google Inc. Device capability filtering
US20130208795A1 (en) 2012-02-09 2013-08-15 Google Inc. Encoding motion vectors for video compression
GB2503691B (en) * 2012-07-04 2019-08-14 Advanced Risc Mach Ltd Methods of and apparatus for encoding and decoding data
US20140198846A1 (en) * 2013-01-16 2014-07-17 Qualcomm Incorporated Device and method for scalable coding of video information
US20150278981A1 (en) * 2014-03-27 2015-10-01 Tomas G. Akenine-Moller Avoiding Sending Unchanged Regions to Display

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6339428B1 (en) * 1999-07-16 2002-01-15 Ati International Srl Method and apparatus for compressed texture caching in a video graphics system
US6959110B1 (en) * 2000-08-17 2005-10-25 Nvidia Corporation Multi-mode texture compression algorithm

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20200035446A (ko) * 2017-08-25 2020-04-03 어드밴스드 마이크로 디바이시즈, 인코포레이티드 압축 메타데이터를 사용하는 텍스처 상주 체크

Also Published As

Publication number Publication date
US20160078665A1 (en) 2016-03-17
KR102245137B1 (ko) 2021-04-28
US9721359B2 (en) 2017-08-01

Similar Documents

Publication Publication Date Title
CN111033570B (zh) 使用两个渲染计算装置从计算机图形渲染图像
KR102245137B1 (ko) 렌더링 데이터의 압축을 해제하는 장치, 방법 및 기록매체
CN106548498B (zh) 用于处理压缩纹理的方法和设备
US20200007602A1 (en) Remote desktop video streaming alpha-channel
US11158109B2 (en) UV mapping and compression
CN101918921B (zh) 用于远程提供三维图形的方法和系统
US10776997B2 (en) Rendering an image from computer graphics using two rendering computing devices
KR20210151114A (ko) 하이브리드 렌더링
KR102354992B1 (ko) 양안 시차 영상에 대한 타일 기반 렌더링 방법 및 장치
KR101956197B1 (ko) 그래픽 처리 유닛을 이용한 데이터 처리 방법 및 장치
CN106575158B (zh) 环境映射虚拟化机构
EP3149709B1 (en) Techniques for deferred decoupled shading
US9153201B2 (en) Real-time order-independent transparent rendering
CN105550973B (zh) 图形处理单元、图形处理系统及抗锯齿处理方法
CN112714357B (zh) 视频播放方法、视频播放装置、电子设备和存储介质
KR20160032935A (ko) 렌더링 데이터를 처리하는 방법, 장치 및 기록매체
WO2019040187A1 (en) PROGRAMMABLE WIRELESS MULTIMEDIA PROCESSING SYSTEM
WO2016016607A1 (en) Managing display data for display
CN110782387B (zh) 图像处理方法、装置、图像处理器及电子设备
KR20150093048A (ko) 그래픽스 데이터를 렌더링하는 방법 및 장치
KR20170031480A (ko) 렌더링 장치 및 방법
KR20150042094A (ko) 객체를 렌더링하는 방법, 장치 및 기록매체
RU2810701C2 (ru) Гибридный рендеринг
US11037329B2 (en) Encoding positional coordinates based on multiple channel color values

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