KR101433951B1 - 2의 비멱 텍스쳐 맵을 위한 좌표 산출 - Google Patents

2의 비멱 텍스쳐 맵을 위한 좌표 산출 Download PDF

Info

Publication number
KR101433951B1
KR101433951B1 KR1020080040966A KR20080040966A KR101433951B1 KR 101433951 B1 KR101433951 B1 KR 101433951B1 KR 1020080040966 A KR1020080040966 A KR 1020080040966A KR 20080040966 A KR20080040966 A KR 20080040966A KR 101433951 B1 KR101433951 B1 KR 101433951B1
Authority
KR
South Korea
Prior art keywords
texture
texture coordinate
component
coordinate
denotes
Prior art date
Application number
KR1020080040966A
Other languages
English (en)
Other versions
KR20080097355A (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 KR20080097355A publication Critical patent/KR20080097355A/ko
Application granted granted Critical
Publication of KR101433951B1 publication Critical patent/KR101433951B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/04Texture mapping
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/20Processor architectures; Processor configuration, e.g. pipelining
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing

Landscapes

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

Abstract

텍스쳐 좌표를 산출하는 그래픽 처리 시스템을 제공한다. 그래픽 처리 시스템의 일 실시예는, 메모리 장치, 텍스쳐 좌표 생성기, 및 디스플레이 장치를 포함한다. 메모리 장치는 다수의 텍스쳐 맵을 저장하도록 구성된다. 텍스쳐 좌표 생성기는 메모리 장치에 연결된다. 텍스쳐 좌표 생성기는 제산 연산이 아닌 산술 연산을 이용하여 최종 텍스쳐 좌표를 산출하도록 구성된다. 디스플레이 장치는 텍스쳐 좌표 생성기에 연결된다. 디스플레이 장치는 최종 텍스쳐 좌표에 따라 다수의 텍스쳐 맵 중 하나의 텍스쳐 맵의 표현을 표시하도록 구성된다. 그래픽 처리 시스템의 실시예들은 제산이 아닌 연산들을 이용하여 간단하게 하드웨어로 구현된다.
텍스쳐 좌표, 그래픽 처리 시스템, 텍스쳐 좌표 생성기

Description

2의 비멱 텍스쳐 맵을 위한 좌표 산출{COORDINATE COMPUTATIONS FOR NON-POWER OF 2 TEXTURE MAPS}
본 발명은 텍스쳐 좌표를 산출하는 그래픽 처리에 관한 것이다.
비디오 그래픽 애플리케이션에서는, 많은 기술을 이용하여 서로 다른 형상 및 크기의 그래픽 이미지들을 렌더링한다. 통상적으로, 그래픽 이미지들은 삼각형과 같은 수천 개 또는 심지어 수백만 개의 원시 형상들로 이루어진다. 각 삼각형은 자신의 꼭지점들의 좌표들에 의해 정의된다. 그래픽 렌더링의 3차원 양상을 향상시키기 위해, 삼각형들 또는 다른 그림 유닛들의 각각에 텍스쳐를 부가할 수 있다. 텍스쳐 좌표들은 오브젝트가 디스플레이 장치 상에서 렌더링될 때 텍스쳐 맵들을 각 오브젝트에 할당하는 데 사용된다. 텍스쳐 맵은 텍스쳐의 표준 블록을 형성하도록 결합된 텍스쳐 요소들(즉, 텍셀(texels))의 어레이이다.
텍스쳐를 렌더링된 오브젝트에 매핑하는 것은 렌더링된 신(scene)에서의 다양한 오브젝트들의 심도(즉, 관찰자에 대한 거리)에 의해 복잡할 수 있다. 렌더링된 오브젝트의 배향도, 텍스쳐를 렌더링된 오브젝트에 매핑하는 복잡성에 영향을 끼칠 수 있다. 게다가, 텍스쳐를 단일 오브젝트에 적용하는 것은 이 오브젝트의 심도 및 배향이 디스플레이 장치상에서 가변되는 경우 복잡할 수 있다.
텍스쳐를 오브젝트에 매핑하기 위해, 하나 이상의 텍스쳐 맵을 오브젝트의 표면적에 걸쳐 배열할 수 있다. 텍스퍼 래핑(wrapping) 및 텍스쳐 미러(mirror)와 같은 서로 다른 유형의 어레이 패턴들을 이용할 수 있다. 그러나, 각각의 경우, 각 텍스쳐 맵에 대한 좌표들이 계산되어 여러 텍스쳐 맵들이 디스플레이의 정확한 영역들에서 렌더링된다.
2의 비멱(non-power) 텍스쳐 좌표 래핑 및 미러 패턴들을 구현하는 종래 기술에서는 제산기(divider)를 사용하여 텍스쳐 공간의 텍스쳐 좌표를 2의 비멱 텍스쳐 크기에 의해 제산하여 결과를 얻게 된다. 일례로, 다음에 따르는 식을 사용한다.
U' = (int(S*width))%width, 및
I = (int(S*width))/width
여기서, S는 부동점 텍스쳐 좌표를 가리키고, U'는 중간 텍스쳐 좌표를 가리키고, I는 고정점 정수 성분을 가리키고, width는 텍스쳐 맵의 크기를 가리킨다. 중간 텍스쳐 좌표(U')의 산출은 나머지 제산 연산(예를 들어, 모듈로(modulo), 또는 모드(mod), 연산)을 구현하고, 고정점 정수 성분(I)의 산출은 몫 제산 연산을 구현한다.
텍스쳐 좌표 래핑 패턴에 대하여, 최종 텍스쳐 좌표(U)는 U=U'에 따라 계산된다.
텍스쳐 좌표 미러 패턴에 대하여, 최종 텍스쳐 좌표(U)는 아래에 따라 계산된다.
I%1 = 0인 경우 U=U, 및 I%1 = 1인 경우 U = width - U'
다시 말하면, 텍스쳐 맵은, 렌더링된 오브젝트의 표면적에 걸쳐 텍스쳐 맵들의 어레이에서 텍스쳐 맵의 인스턴스들을 교번하도록 역으로 되거나 미러링된다. 텍스쳐 맵의 폭 대신에 텍스쳐 맵의 높이를 이용하여 유사한 식들이 수직 방향으로 구현된다.
그러나, 제산 연산(즉, 중간 텍스쳐 좌표(U')를 산출하는 나머지 제산 연산, 및 고정점 정수 성분(I)을 산출하는 몫 제산 연산)의 구현은 산출 확장성이 있다. 또한, 이러한 구성은 이러한 제산 연산들을 구현하는 데 소모되는 표면적 때문에 하드웨어로 구현하는 데 고비용이 든다.
시스템의 실시예들을 설명한다. 일 실시예에서, 이 시스템은 텍스쳐 좌표를 산출하는 그래픽 처리 시스템이다. 그래픽 처리 시스템의 일 실시예는 메모리 장치, 텍스쳐 좌표 생성기, 및 디스플레이 장치를 포함한다. 메모리 장치는 다수의 텍스쳐 맵을 저장하도록 구성된다. 텍스쳐 좌표 생성기는 메모리 장치에 연결된다. 텍스쳐 좌표 생성기는 제산 연산을 제외한 산술 연산을 사용하여 최종 텍스쳐 좌표를 산출하도록 구성된다. 디스플레이 장치는 텍스쳐 좌표 생성기에 연결된다. 디스플레이 장치는 최종 텍스쳐 좌표에 따라 다수의 텍스쳐 맵 중 하나의 텍스쳐 맵의 표현을 표시하도록 구성된다. 그래픽 처리 시스템의 실시예들은 제산이 아닌 연산들을 사용하여 간단한 하드웨어로 용이하게 구현된다. 이 시스템의 다른 실시예들도 설명한다.
방법의 실시예들도 설명한다. 일 실시예에서, 이 방법은 텍스쳐 좌표를 산출하는 방법이다. 이 방법의 일 실시예는, 부동점 텍스쳐 좌표의 정수 성분을 식별하는 단계와, 부동점 텍스쳐 좌표의 분수 성분을 식별하는 단계와, 제산 연산이 아닌 산술 연산을 사용하여 부동점 텍스쳐 좌표의 분수 성분에 기초하여 중간 텍스쳐 좌표를 산출하는 단계를 포함한다. 이 방법의 다른 실시예들도 설명한다.
다른 실시예들도 설명한다. 본 발명의 실시예들의 다른 양태들 및 이점들은, 본 발명의 원리를 예시하고 있는 첨부 도면과 함께 다음에 따르는 상세한 설명으로부터 명백해질 것이다.
본 발명에 따르면, 제산이 아닌 연산들을 이용하여 그래픽 처리 시스템을 간단하게 하드웨어로 구현할 수 있다.
도 1은 컴퓨터 그래픽 시스템(100)의 일 실시예의 개략적인 블록도이다. 컴 퓨터 그래픽 시스템(100)은 후술하는 바와 같이 텍스쳐 매핑 및 LOD(level of detail) 산출을 구현할 수 있다. 도 1에 도시한 바와 같이, 컴퓨터 그래픽 시스템(100)은, 집적 프로세서 회로(102), 메모리 장치(104), 및 디스플레이 모니터(106)를 포함하는 고집적 시스템이다. 일 실시예에서, 메모리 장치(104)는 ROM 및 RAM을 포함한다. 다른 실시예들은 서로 다른 유형들의 메모리 장치들을 포함할 수 있다. 고집적 아키텍처는 전력을 절약할 수 있게 한다. 다른 실시예들은 주변 컨트롤러(도시하지 않음)와 같은 다른 컴포넌트들을 포함할 수 있다.
도시한 집적 프로세서 회로(102)는, 메모리 관리 유닛(MMU; 110)과 하나 이상의 명령 및/또는 데이터 캐시(112)를 포함하는 처리 유닛(CPU; 108)을 포함한다. 집적 프로세서 회로(102)는 메모리 장치(104)에 인터페이싱되는 메모리 인터페이스(114)도 포함한다. 집적 프로세서 회로(102)는 텍스쳐 엔진(118)을 포함하는 그래픽 컨트롤러(116)도 포함한다. 일 실시예에서, 텍스쳐 엔진(118)은 텍스쳐 파이프라인(130)에 관련되며 보다 상세히 후술되는 하나 이상의 텍스쳐 연산을 구현한다. 특히, 텍스쳐 엔진(118)은 하나 이상의 텍스쳐 맵을 하나의 그래픽 오브젝트에 적용할 수 있다. 텍스쳐 엔진(118)은 LOD 계산에 기초하여 어떤 텍스트 맵을 적용할지를 결정한다. 그래픽 컨트롤러(116)는 버스(120)에 의해 처리 유닛(108) 및 메모리 인터페이스(114)에 연결된다.
직접 메모리 액세스(DMA) 컨트롤러(122)도 버스(120)에 연결된다. DMA 컨트롤러(122)는, 버스(120)를, 인코더/디코더(CODEC) 인터페이스, 병렬 인터페이스, 직렬 인터페이스, 및 입력 장치 인터페이스와 같은 다른 코어 로직 기능 컴포넌트 들(도시하지 않음)이 연결될 수 있는 인터페이스(I/F) 버스(124)에 연결한다. 일 실시예에서, DMA 컨트롤러(122)는 메모리 인터페이스(114)를 통해 메모리 장치(104)에 저장된 데이터에 액세스하여 I/F 버스(124)에 연결된 주변 장치들에게 제공한다. 또한, DMA 컨트롤러(122)는 데이터를 주변 장치들로부터 메모리 인터페이스(114)를 통해 메모리 장치(104)에 전송한다.
일 실시예에서, 그래픽 컨트롤러(116)는 메모리 인터페이스(114)를 통해 메모리 장치(104)로부터 그래픽 데이터를 요청하고 이 데이터에 액세스한다. 이후, 그래픽 컨트롤러(116)는 이 데이터를 처리하고, 처리한 데이터를 포맷하며, 포맷한 데이터를 디스플레이 장치(106)에 전송한다. 일부 실시예들에서, 디스플레이 장치(106)는 액정 디스플레이(LCD), 음극선관(CRT), 또는 텔레비전(TV) 모니터일 수 있다. 컴퓨터 그래픽 시스템(100)의 다른 실시예들은 보다 많은 또는 보다 적은 컴포넌트들을 포함할 수 있고 보다 많은 또는 보다 적은 연산들을 구현할 수 있다.
도 2는 다수의 LOD에 대응하는 다수의 텍스쳐 맵(130)의 일 실시예의 개략적인 도면이다. 특히, 다수의 텍스쳐 맵(130)은 텍셀들의 16x16 어레이를 포함하는 고 해상도 텍스쳐 맵(132)을 포함한다. 또한, 다수의 텍스쳐 맵(130)은 하나의 텍셀인 저 해상도 텍스쳐 맵(139)을 포함한다. 고 해상도 텍스쳐 맵(132) 및 저 해상도 텍스쳐 맵(139) 사이에는, 해상도가 상이한 여러 개의 중간 텍스쳐 맵들(134, 136, 138)이 존재한다. 예를 들어, 텍스쳐 맵(134)은 텍셀들의 8x8 어레이를 포함하고, 텍스쳐 맵(136)은 텍셀들의 4x4 어레이를 포함하며, 텍스쳐 맵(138)은 텍셀들의 2x2 어레이를 포함한다.
다수의 텍스쳐 맵(130)의 각각은 LOD에 대응하며 그 이유는 텍스쳐 표현의 상세가 다수의 텍스쳐 맵(130) 중에서 가변되기 때문이다. 예를 들어, 고 해상도 텍스쳐 맵(132)은 제1 중간 텍스쳐 맵(134)보다 많은 텍스쳐 상세를 갖는다. 따라서, 고 해상도 텍스쳐 맵(132)은 매우 상세한 텍스쳐들을, 디스플레이 장치(106)상에서 관찰자에게 가까운 것으로 표현되는 오브젝트에 또는 오브젝트의 일부에 매핑하는 데 사용될 수 있다. 마찬가지로, 제1 중간 텍스쳐 맵(134)은 제2 중간 텍스쳐 맵(136)보다 많은 텍스쳐 상세를 갖고, 제2 중간 텍스쳐 맵(136)은 제3 중간 텍스쳐 맵(138)보다 많은 텍스쳐 상세를 갖고, 제3 중간 텍스쳐 맵(138)은 저 해상도 텍스쳐 맵(139)보다 많은 텍스쳐 상세를 갖는다. 따라서, 저 해상도 텍스쳐 맵(139)은 저 상세 텍스쳐들을 디스플레이 장치(106)상에서 관찰자로부터 멀리 떨어져 있는 것으로 표현되는 오브젝트에 또는 오브젝트의 일부에 매핑하는 데 사용될 수 있다. 다수의 텍스쳐 맵(130)을 생성하는 것은, 압축, 보간, 필터링 등을 비롯하여 알려져 있는 다양한 텍스쳐 맵 생성 기술들을 이용하여 수행될 수 있다.
고 해상도 텍스쳐 맵(132)은 다수의 텍스쳐 맵(13) 중 가장 상세한 텍스쳐를 나타내기 때문에, 고 해상도 텍스쳐 맵(132)은 레벨 0으로 지정될 수 있다. 마찬가지로, 제1 중간 텍스쳐 맵(134)은 레벨 1로 지정될 수 있고, 제2 중간 텍스쳐 맵(136)은 레벨 2로 지정될 수 있고, 제3 중간 텍스쳐 맵(138)은 레벨 3으로 지정될 수 있고, 저 해상도 텍스쳐 맵(139)은 레벨 4로 지정될 수 있다. 또한, LOD 산출로부터의 다양한 값들은 레벨들 또는 텍스쳐 맵들의 각각에 대응할 수 있다. 이러한 방식으로, LOD 산출은, 디스플레이 장치(106)상에서 표현되는 오브젝트 또는 오브젝트의 일부를 텍스쳐링하는 데 사용될 다수의 텍스쳐 맵(130) 중 하나를 선택하는 데 사용될 수 있다.
도 3a는 텍스쳐 맵(140)의 일 실시예를 개략적으로 도시한다. 텍스쳐 맵(140)은 임의의 상세 레벨(level of detail; LOD)을 나타낼 수 있다. 텍스쳐 맵의 텍스쳐는 문자 "F"로 표시되어 있어서 텍스쳐 미러 패턴과 같은 서로 다른 텍스쳐 매핑 패턴들에서의 텍스쳐 맵(140)의 배향이 여기서 가시화될 수 있으며 설명될 수 있다. 그러나, 텍스쳐 맵(140)의 실시예들은 대칭 텍스쳐 및 비대칭 텍스쳐를 비롯하여 임의의 유형의 텍스쳐를 구현할 수 있다.
도 3b는 텍스쳐 래핑 패턴(142)의 일 실시예를 개략적으로 도시한다. 예시한 텍스쳐 래핑 패턴(142)은 텍스쳐 맵(140)이 렌더링된 오브젝트의 표면적에 걸쳐 배열되는 방식을 나타내며, 이 때 텍스쳐 맵(140)의 각 인스턴스는 대략 동일한 방식으로 배향된다. 렌더링된 오브젝트가 정사각형으로 도시되어 있지만, 렌더링된 오브젝트의 다른 실시예들, 즉, 텍스쳐 래핑 패턴(142)은 다른 형상들로 될 수 있다. 또한, 개별적인 텍스쳐 맵(140)들은 다른 각도 또는 배향으로 적용될 수 있다.
도 3c는 텍스쳐 미러 패턴(144)의 일 실시예를 개략적으로 도시한다. 예시한 텍스쳐 미러 패턴(144)은 렌더링된 오브젝트의 표면적에 걸쳐 텍스쳐 맵(140)이 배열되는 방식을 나타내며, 이 때 텍스쳐 맵(140)의 교번하는 인스턴스들이 서로 대향하는 방식 또는 미러링된 방식으로 배향된다. 도시한 텍스쳐 미러 패턴(144)은 렌더링된 오브젝트의 전체 표면적에 걸쳐 수직 방향 및 수평 방향 둘 다에 있어 서 텍스쳐 미러링을 구현한다.
다른 실시예들은 텍스쳐 미러 패턴(144)의 변형예들을 구현할 수 있다. 예를 들어, 도 3d는 단일 미러 인스턴스를 갖는 텍스쳐 미러 패턴(146)의 일 실시예를 개략적으로 도시한다. 이 텍스쳐 미러 패턴(146)도 텍스쳐 미러 원스 패턴(texture mirror once pattern)이라 칭할 수 있다. 특히, 미러링된 텍스쳐 맵(140)의 각 배향의 단일 인스턴스만이 렌더링된 오브젝트에 대하여 생성된다. 예시한 실시예에서, 미러링된 텍스쳐 맵(140)들은 상부 좌측 코너에 위치하지만, 다른 실시예들은 렌더링된 오브젝트의 다른 위치에서 단일 미러 인스턴스를 구현할 수 있다.
도 4는 텍스쳐 엔진(118)에서 구현하기 위한 텍스쳐 매핑 파이프라인의 일 실시예의 개략적인 블록도이다. 예시한 텍스쳐 매핑 파이프라인은, 셰이더(150), 텍스쳐 좌표 생성기(152), 텍스쳐 어드레스 생성기(154), 텍스쳐 캐시(156), 및 텍스쳐 필터(158)를 포함한다. 그러나, 텍스쳐 매핑 파이프라인의 다른 실시예들은 텍스쳐 엔진(118)의 다른 실시예들에서 구현될 수 있다. 또한, 여기서 설명하는 스테이지들 중 일부는 그래픽 컨트롤러(116)의 다른 컴포넌트들에 의해 적어도 부분적으로 구현된다.
일 실시예에서, 셰이더(150)는 디스플레이 장치(106)상에서 렌더링될 오브젝트에 대응하는 꼭지점 좌표들을 수신한다. 이후, 텍스쳐 좌표 생성기(152)는 텍스쳐 매핑 패턴에서 텍스쳐 맵(140)들의 각각의 위치들에 대응하는 텍스쳐 좌표들을 생성한다. 일 실시예에서, 텍스쳐 좌표 생성기(152)도 LOD 산출을 구현한다. 텍 스쳐 좌표 생성기(152)의 예시적인 일 실시예는 도 5에 도시되어 있으며 보다 상세히 후술한다.
이후, 텍스쳐 어드레스 생성기(154)는 LOD 산출에 대응하는 텍스쳐 맵의 메모리 어드레스를 결정한다. 텍스쳐 어드레스 생성기(154)는 텍스쳐 맵 어드레스를 텍스쳐 캐시(156)에 전송하고, 이 캐시는 요구된 텍스쳐 맵이 캐시에 또는 다른 메모리 장치에 저장되어 있는지 여부를 결정한다. 텍스쳐 맵이 다른 메모리 장치에 저장되어 있다면, 텍스쳐 캐시(156)는 요구된 데이터를 메모리 장치로부터 검색하여 텍스쳐 캐시(156)에 저장한다. 이후, 텍스쳐 캐시(156)는 요구된 텍스쳐 맵의 카피를 텍스쳐 필터(158)에 제공한다.
텍스쳐 필터(158)는 텍스쳐 맵의 텍셀들을 디스플레이 장치(106)의 대응 픽셀들의 각각에 상관시킨다. 일부 실시예들에서, 텍셀들 및 픽셀들 간에는 크기 및 위치 면에서 일대일의 상관이 존재한다. 다른 방안으로, 텍셀들 및 픽셀들 간에 크기 면에서 일대일 상관이 존재할 수 있지만, 그럼에도 불구하고 텍스쳐 필터(158)는 텍스쳐 필터링을 수행하는데 그 이유는 텍셀들의 위치가 픽셀들의 위치와 정렬되지 않기 때문이다. 다른 실시예들에서, 텍셀 크기들은 픽셀 크기들과 다르며, 이에 따라 텍스쳐 필터(158)는 요구된 텍스쳐 맵의 텍셀들을 디스플레이 장치(106)의 픽셀들에 상관시키도록 확대 또는 축소를 구현한다. 텍스쳐 필터(158)의 다른 실시예들은 다른 유형들의 텍스쳐 필터링을 구현할 수 있다.
도 5는 도 4의 텍스쳐 매핑 파이프라인의 텍스쳐 좌표 생성기(152)의 일 실시예의 개략적인 블록도이다. 예시한 텍스쳐 좌표 생성기(152)는, 식별 로 직(162), 중간 산출 로직(164), 최종 산출 로직(166), 및 LSB 로직(least significant bit logic; 168)을 포함한다. 텍스쳐 좌표 생성기(152)의 다른 실시예들은 보다 많은 또는 보다 적은 로직 컴포넌트들을 구현할 수 있다.
일반적으로, 텍스쳐 좌표 생성기(152)는 텍스쳐 래핑 패턴(142) 및 텍스쳐 미러 패턴(144)과 같은 텍스쳐 매핑 패턴에서 텍스쳐 맵(140)의 각 인스턴스에 대한 텍스쳐 좌표를 생성한다. 일부 실시예들에서, 텍스쳐 좌표들 중 적어도 일부를 생성하는 것에 관련된 산출은 구현되는 텍스쳐 매핑 패턴의 유형에 의존한다.
일 실시예에서, 식별 로직(162)은 부동점 텍스쳐 좌표(S)의 정수 성분(Si) 및 분수 성분(Sf)을 식별하도록 구성된다. 정수 성분(Si)을 식별하기 위해, 식별 로직(162)은 Si = float(int(S))를 구현한다. 상기 분수 성분은 부동점 텍스쳐 좌표의 소수점 이하 성분을 말한다.
분수 성분(Sf)을 식별하기 위해, 식별 로직(162)은 Sf = float(frac(S))를 구현한다.
이러한 구현예들이 제산 연산들을 사용하지 않는다는 점에 주목하기 바란다. 특히, 이러한 구현예들은 몫이나 나머지 제산 연산들을 사용하지 않는다. 따라서, 하드웨어에서 식별 로직(162)을 구현하는 것은, 제산 연산들을 사용하는 종래의 텍스쳐 매핑 컴포넌트들을 구현하는 것보다 덜 복잡할 수 있다. 다른 실시예들은 식별 로직(162)의 다른 구현예들을 이용하여 부동점 텍스쳐 좌표의 정수 성분 및 분수 성분을 식별할 수 있다.
일 실시예에서, 중간 산출 로직(164)은, I = int(Si)에 따라 부동점 텍스쳐 좌표(S)의 정수 성분(Si)을 고정점 정수 성분(I)으로 변환하도록 구성된다.
마찬가지로, 중간 산출 로직(164)은 부동점 텍스쳐 좌표(S)의 분수 성분(Sf)에 기초하여 중간 텍스쳐 좌표(U')를 산출하도록 구성된다. 일 실시예에서, 중간 산출 로직(164)은 U' = int(Sf x width)에 따라 중간 텍스쳐 좌표(U')를 산출한다.
width 변수는 텍스쳐 맵(140)들 중 하나의 텍스쳐 맵의 치수를 가리킨다. 그러나, 다른 실시예들에서, 텍스쳐 맵(140)들 중 하나의 텍스쳐 맵의 높이 치수를 사용하여 유사한 연산들이 구현된다. 다른 실시예들에서, 중간 산출 로직(164)은 다른 구현예들을 사용하여 고정점 정수 성분(I) 및 중간 텍스쳐 좌표(U')를 산출한다.
일 실시예에서, 최종 산출 로직(166)은 최종 텍스쳐 좌표(U)를 산출하도록 구성된다. 최종 텍스쳐 좌표(U)의 산출은 구현되는 텍스쳐 매핑 패턴의 유형에 의존할 수 있다. 예를 들어, 부동점 텍스쳐 좌표(S)의 분수 성분(Sf)은, 텍스쳐 래핑 패턴(142)에 대하여 적절한 텍스쳐 크기 또는 치수(예를 들어, width 변수)에 의해 승산될 수 있다. 일 실시예에서, 최종 산출 로직(166)은, U = U'에 따라 텍스쳐 래핑 연산에 대하여 중간 텍스쳐 좌표(U')와 동일한 최종 텍스쳐 좌표(U)를 산출하도록 구성된다.
이러한 방식으로, 텍스쳐 맵(140)들의 모두가 텍스쳐 래핑 패턴(142)에 대하 여 동일한 방식으로 배향된다.
대조적으로, 텍스쳐 미러 패턴(144)에서 텍스쳐 맵(140)의 인스턴스들 모두는 동일한 방식으로 배향되지 않는다. 일 실시예에서, 텍스쳐 미러 패턴(144)에서 각 텍스쳐 맵(140)의 배향은 고정점 정수 성분(I)의 LSB에 의존한다. 고정점 정수 성분(I)의 LSB가 (수평 또는 수직 방향으로) 증가함에 따라 논리값 하이(즉, 로직 1) 상태 및 논리값 로우(즉, 로직 0) 상태 간에 교번하기 때문에, 최종 산출 로직(166)은 LSB의 값에 따라 서로 다른 연산들을 구현할 수 있다. 일 실시예에서, 최종 산출 로직(166)은, LSB = 0인 경우 U = U' 및 LSB = 1인 경우 U = width - U'에 따라 텍스쳐 미러링 연산에 대하여 최종 텍스쳐 좌표(U)를 산출하도록 구성된다.
다른 일 실시예에서, 고정점 정수 성분(I)의 LSB가 논리값 0이면, 부동점 텍스쳐 좌표(S)의 분수 성분(Sf)은 텍스쳐 크기 또는 치수(예를 들어, width 변수)에 의해 승산되어 텍스쳐를 어드레싱하는 값을 생성한다. 다른 방안으로, 고정점 정수 성분(I)의 LSB가 논리값 1이면, 항(1-Sf)은 텍스쳐 크기 또는 치수(예를 들어, width 변수)에 의해 승산되어 텍스쳐를 어드레싱하는 값을 생성한다.
일 실시예에서, LSB 로직(168)은 고정점 정수 성분(I)의 LSB 값을 식별하도록 구성된다. 전술한 바와 같이, 고정점 정수 성분(I)은 부동점 텍스쳐 좌표(S)의 정수 성분(Si)에 기초한다.
일 실시예에서, 전술한 컴포넌트들을 이용하여 최종 텍스쳐 좌표를 산출하는 것은, 몫 연산, 나머지 연산 또는 다른 제산 연산과 같은 임의의 제산 연산을 이용하지 않고서 텍스쳐 좌표 산출의 수행을 용이하게 한다. 따라서, 하드웨어는 산출면에서 확장성이 덜하며, 이것은 설계의 전체 비용을 줄이게 된다.
도 6은 텍스쳐 래핑 연산에 대한 텍스쳐 좌표 생성 방법(170)의 일 실시예의 개략적인 흐름도이다. 텍스쳐 좌표 생성 방법(170)의 일부 실시예들은 도 5의 텍스쳐 좌표 생성기(152)와 관련하여 구현될 수 있지만, 다른 실시예들은 다른 텍스쳐 좌표 생성기들과 관련하여 구현될 수 있다.
예시한 텍스쳐 좌표 생성 방법(170)에서, 식별 로직(162)은 부동점 텍스쳐 좌표(S)의 정수 성분(Si)을 식별한다(블록 172). 또한, 식별 로직(162)은 부동점 텍스쳐 좌표(S)의 분수 성분(Sf)을 식별한다(블록 174). 이후, 중간 산출 로직(164)은 전술한 바와 같이 부동점 텍스쳐 좌표(S)의 정수 성분(Si)을 고정점 정수 성분(I)으로 변환한다(블록 176). 또한, 중간 산출 로직(164)은 부동점 텍스쳐 좌표(S)의 분수 성분(Sf)에 기초하여 중간 텍스쳐 좌표(U')를 산출한다(블록 178). 이후, 최종 산출 로직(166)은 중간 텍스쳐 좌표(U')와 동일한 최종 텍스쳐 좌표(U)를 설정한다(블록 180). 이후, 예시한 텍스쳐 좌표 생성 방법(17)은 종료된다. 일 실시예에서, 텍스쳐 좌표 생성 방법(170)은 텍스쳐 매핑 패턴에서의 텍스쳐 맵(140)의 각 인스턴스에 대하여 구현될 수 있다.
도 7은 텍스쳐 미러 연산에 대한 텍스쳐 좌표 생성 방법(190)의 다른 일 실시예의 개략적인 흐름도이다. 텍스쳐 좌표 생성 방법(190)의 일부 실시예들은 도 5의 텍스쳐 좌표 생성기(152)와 관련하여 구현될 수 있지만, 다른 실시예들은 다른 텍스쳐 좌표 생성기들과 관련하여 구현될 수 있다. 편의상, 도 7에 도시한 연산들 중 일부는 도 6에 도시한 연산들과 동일하며 전술되어 있다.
중간 산출 로직(164)이 중간 텍스쳐 좌표(U')를 산출한 후(블록 178), LSB 로직(168)은 고정점 정수 성분(I)의 LSB가 논리값 0 또는 논리값 1인지를 결정한다. 고정점 정수 성분(I)의 LSB가 논리값 0이면, 최종 산출 로직(166)은 전술한 바와 같이 중간 텍스쳐 좌표(U')와 동일한 최종 텍스쳐 좌표(U)를 설정한다. 그렇지 않다면, 즉, 고정점 정수 성분(I)의 LSB가 논리값 1이면, 최종 산출 로직(166)은 전술한 바와 같이 중간 텍스쳐 좌표(U')의 미러와 동일한 최종 텍스쳐 좌표(U)를 설정한다. 이후, 예시한 텍스쳐 좌표 생성 방법(190)이 종료된다. 일 실시예에서, 텍스쳐 좌표 생성 방법(190)은 텍스쳐 매핑 패턴에서의 텍스쳐 맵(140)의 각 인스턴스에 대하여 구현될 수 있다.
텍스쳐 레벨 좌표 생성 방법들(170, 190)이 소프트웨어, 펌웨어, 하드웨어, 또는 이들의 일부 조합으로 구현될 수 있다는 점에 주목하기 바란다. 또한, 텍스쳐 레벨 좌표 생성 방법들(170, 190)의 일부 실시예들은, 전술한 연산들에 관한 하나 이상의 알고리즘을 나타내는 소프트웨어 또는 하드웨어를 이용하여 구현될 수 있다. 예를 들어, 소프트웨어, 하드웨어, 또는 소프트웨어와 하드웨어의 조합은, 전술한 다양한 항들 또는 성분들의 하나 이상을 산출하도록 구현될 수 있다.
또한, 본 발명의 실시예들은, 중앙 처리 유닛(CPU), 그래픽 처리 유닛(GPU), 또는 마이크로프로세서와 같은 컴퓨터 프로세서에 의해 수행되는 다수의 함수를 포 함할 수 있다. 마이크로프로세서는 특정한 작업들을 정의하는 기계 판독가능 소프트웨어 코드를 실행함으로써 그 특정한 작업들을 수행하도록 구성된 특정 또는 전용 마이크로프로세서일 수 있다. 또한, 마이크로프로세서는, 및 직접 메모리 액세스 모듈, 메모리 저장 장치, 인터넷 관련 하드웨어, 데이터 전송에 관한 기타 장치들과 같이 다른 장치들과 함께 동작 및 통신하도록 구성될 수 있다. 소프트웨어 코드는, Java, C++, XML(확장가능 마크업 언어), 및 본 명세서에서 설명한 관련 함수 연산들을 실행하는 데 필요한 장치들의 동작들에 관한 함수들을 정의하는 데 사용될 수 있는 기타 언어와 같은 소프트웨어 포맷을 이용하여 구성될 수 있다. 이 코드는 서로 다른 형태들 및 스타일들로 작성될 수 있고, 이들 중 많은 부분은 당업자에게 알려져 있다. 마이크로프로세서의 연산들을 정의하는 코드를 구성하는 기타 수단 및 소프트웨어 프로그램의 서로 다른 코드 포맷들, 코드 구성들, 스타일들 및 형태들이 구현될 수 있다.
본 발명을 활용하는 컴퓨터 서버와 같이 서로 다른 유형들의 컴퓨터 내에는, 정보를 저장 및 검색하는 한편 본 명세서에서 설명한 함수들의 일부 또는 전부를 수행하는 서로 다른 유형들의 메모리 장치들이 존재한다. 일부 실시예들에서, 데이터가 저장되는 메모리/저장 장치는 프로세서 외부에 있는 별도의 장치일 수 있고, 또는 모놀리식 장치 내에 구성될 수 있으며, 여기서, 메모리/저장 장치는 단일 기판상에 접속된 컴포넌트들과 같이 동일한 집적 회로 상에 위치한다. 캐시 메모리 장치는 흔히 CPU 또는 GPU에 의해 사용되도록 컴퓨터 내에 자주 저장되고 검색되는 정보의 편리한 저장 위치로서 포함된다. 마찬가지로, 이러한 컴퓨터에서 중 앙 처리 유닛에 의해 자주 검색되지만 캐리 메모리와는 달리 영구 메모리 내에서 자주 수정되지 않는 정보를 유지하기 위한 영구적 메모리도 자주 사용된다. 중앙 처리 유닛에 의해 실행될 때 소정의 함수들을 수행하도록 구성된 데이터 및 소프트웨어 애플리케이션과 같이 보다 많은 양의 정보를 저장 및 검색하기 위한 메인 메모리도 일반적으로 포함된다. 이러한 메모리 장치들은, RAM, SRAM, DRAM, 플래시 메모리, 및 정보를 저장 및 검색하도록 중앙 처리 유닛에 의해 액세스될 수 있는 기타 메모리 저장 장치와 같이 구성될 수 있다. 실시예들은, 다양한 메모리 및 저장 장치들에 대하여 정보를 저장 및 검색하기 위한 임의의 공통적으로 사용되는 프로토콜뿐만 아니라 이러한 메모리 장치들을 사용하여 구현될 수 있다.
본 명세서에서는 방법의 연산을 특정 순서로 도시하고 설명하고 있지만 각 방법의 연산들의 순서는 소정의 연산들이 역 순서로 수행되도록 또는 소정의 연산들이 적어도 부분적으로 다른 연산들과 동시에 수행되도록 변경될 수 있다. 다른 일 실시예에서, 개별적인 연산들의 명령 또는 부연산(sub-operation)은 간헐적인 방식 및/또는 교번 방식으로 구현될 수 있다.
본 발명의 특정 실시예들을 설명하고 예시하였지만, 본 발명은 설명 및 예시한 특정 형태나 배치로 한정되지 않는다. 본 발명의 범위는 청구범위 및 그 등가물에 의해서만 한정된다.
도 1은 컴퓨터 그래픽 시스템의 일 실시예의 개략적인 블록도이다.
도 2는 다수의 상세 레벨에 대응하는 다수의 텍스쳐 맵의 일 실시예를 개략적으로 도시한다.
도 3a는 텍스쳐 맵의 일 실시예를 개략적으로 도시한다.
도 3b는 텍스쳐 래핑 패턴의 일 실시예를 개략적으로 도시한다.
도 3c는 텍스쳐 미러 패턴의 일 실시예를 개략적으로 도시한다.
도 3d는 단일 미러 인스턴스를 갖는 텍스쳐 미러 패턴의 일 실시예를 개략적으로 도시한다.
도 4는 텍스쳐 엔진에서 구현하기 위한 텍스쳐 매핑 파이프라인의 일 실시예의 개략적인 블록도이다.
도 5는 도 4의 텍스쳐 매핑 파이프라인의 텍스쳐 좌표 생성기의 일 실시예의 개략적인 블록도이다.
도 6은 텍스쳐 래핑 연산에 대한 텍스쳐 좌표 생성 방법의 일 실시예의 개략적인 흐름도이다.
도 7은 텍스쳐 미러 연산에 대한 텍스쳐 좌표 생성 방법의 다른 일 실시예의 개략적인 흐름도이다.

Claims (25)

  1. 텍스쳐 좌표를 산출하는 그래픽 처리 시스템으로서,
    다수의 텍스쳐 맵을 저장하는 메모리 장치;
    상기 메모리 장치에 연결되며, 제산 연산을 제외한 산술 연산을 이용하여 최종 텍스쳐 좌표를 산출하는 텍스쳐 좌표 생성기; 및
    상기 텍스쳐 좌표 생성기에 연결되며, 상기 최종 텍스쳐 좌표에 따라 상기 다수의 텍스쳐 맵 중 하나의 텍스쳐 맵의 표현을 표시하는 디스플레이 장치를 포함하고,
    상기 텍스쳐 좌표 생성기는 부동점 텍스쳐 좌표의 정수 성분 및 소수점 이하 성분(이하 분수 성분)을 식별하는 식별 로직을 포함하고,
    상기 식별 로직은 Sf = float(frac(S))에 따라 상기 부동점 텍스쳐 좌표의 성분을 식별하도록 더 구성되고, 여기서, S는 상기 부동점 텍스쳐 좌표를 가리키고, Sf는 상기 부동점 텍스쳐 좌표의 분수 성분을 가리키고, frac(S)는 S의 소수점 이하 성분을 추출하는 연산을 가리키고,
    상기 텍스쳐 좌표 생성기는 U' = int(Sf x width)에 따라 중간 텍스쳐 좌표를 산출하는 중간 산출 로직을 더 포함하며, 여기서, U'는 상기 중간 텍스쳐 좌표를 가리키고, width는 상기 다수의 텍스쳐 맵 중 하나의 텍스쳐 맵의 치수를 가리키는 그래픽 처리 시스템.
  2. 삭제
  3. 제 1 항에 있어서,
    상기 식별 로직은 Si = float(int(S))에 따라 상기 부동점 텍스쳐 좌표의 정수 성분을 식별하도록 더 구성되고, S는 상기 부동점 텍스쳐 좌표를 가리키고, Si는 상기 부동점 텍스쳐 좌표의 정수 성분을 가리키는 그래픽 처리 시스템.
  4. 제 3 항에 있어서,
    상기 텍스쳐 좌표 생성기는, I = int(Si)에 따라 상기 부동점 텍스쳐 좌표의 정수 성분을 고정점 정수 성분으로 변환하는 중간 산출 로직을 더 포함하고, 여기서, I는 상기 고정점 정수 성분을 가리키는 그래픽 처리 시스템.
  5. 삭제
  6. 삭제
  7. 제 1 항에 있어서,
    상기 텍스쳐 좌표 생성기는 U = U'에 따라 텍스쳐 래핑(wrapping) 연산에 대하여 상기 중간 텍스쳐 좌표와 동일한 최종 텍스쳐 좌표를 산출하는 최종 산출 로직을 더 포함하며, 여기서, U는 상기 최종 텍스쳐 좌표를 가리키는 그래픽 처리 시스템.
  8. 제 1 항에 있어서,
    상기 텍스쳐 좌표 생성기는 고정점 정수 성분의 LSB 값을 식별하는 LSB 로직을 더 포함하고, 상기 고정점 정수 성분은 상기 부동점 텍스쳐 좌표의 정수 성분에 기초하는 그래픽 처리 시스템.
  9. 제 8 항에 있어서,
    상기 텍스쳐 좌표 생성기는 LSB = 0인 경우 U = U' 및 LSB = 1인 경우 U = width - U'에 따라 텍스쳐 미러링 연산에 대하여 상기 최종 텍스쳐 좌표를 산출하는 최종 산출 로직을 더 포함하고, 여기서, U는 상기 최종 텍스쳐 좌표를 가리키고, LSB는 상기 고정점 정수 성분의 LSB 값을 가리키는 그래픽 처리 시스템.
  10. 제 1 항에 있어서,
    상기 제산 연산은 몫 제산 연산 또는 나머지 제산 연산을 포함하는 그래픽 처리 시스템.
  11. 텍스쳐 좌표를 산출하는 방법으로서,
    부동점 텍스쳐 좌표의 정수 성분을 식별하는 단계;
    상기 부동점 텍스쳐 좌표의 소수점 이하 성분(이하 분수 성분)을 식별하는 단계; 및
    제산 연산이 아닌 산술 연산을 이용하여 상기 부동점 텍스쳐 좌표의 분수 성분에 기초하여 중간 텍스쳐 좌표를 산출하는 단계를 포함하고,
    U' = int(Sf x width)에 따라 상기 중간 텍스쳐 좌표를 산출하는 단계를 더 포함하고, 여기서, U'는 상기 중간 텍스쳐 좌표를 가리키고, 상기 Sf는 상기 부동점 텍스쳐 좌표의 분수 성분을 가리키고, width는 텍스쳐 맵의 치수를 가리키는 텍스쳐 좌표 산출 방법.
  12. 제 11 항에 있어서,
    Si = float(int(S)) 및 Sf = float(frac(S))에 따라 상기 부동점 텍스쳐 좌표의 상기 정수 성분 및 상기 분수 성분을 식별하는 단계를 더 포함하며, 여기서, S는 상기 부동점 텍스쳐 좌표를 가리키고, Si는 상기 부동점 텍스쳐 좌표의 정수 성분을 가리키며, Sf는 상기 부동점 텍스쳐 좌표의 분수 성분을 가리키고, frac(S)는 S의 소수점 이하 성분을 추출하는 연산을 가리키는 텍스쳐 좌표 산출 방법.
  13. 제 11 항에 있어서,
    상기 제산 연산은 몫 제산 연산을 포함하는 텍스쳐 좌표 산출 방법.
  14. 제 11 항에 있어서,
    상기 제산 연산은 나머지 제산 연산을 포함하는 텍스쳐 좌표 산출 방법.
  15. 삭제
  16. 제 11 항에 있어서,
    상기 중간 텍스쳐 좌표에 기초하여 최종 텍스쳐 좌표를 산출하는 단계를 더 포함하는 텍스쳐 좌표 산출 방법.
  17. 제 16 항에 있어서,
    U = U'에 따라 텍스쳐 래핑 연산에 대하여 상기 중간 텍스쳐 좌표와 동일한 최종 텍스쳐 좌표를 산출하는 단계를 더 포함하며, 여기서, U는 상기 최종 텍스쳐 좌표이고, U'는 상기 중간 텍스쳐 좌표인 텍스쳐 좌표 산출 방법.
  18. 제 16 항에 있어서,
    I = int(Si)에 따라 상기 부동점 텍스쳐 좌표의 정수 성분을 고정점 정수 성분으로 변환하는 단계를 더 포함하고, 여기서, I는 상기 고정점 정수 성분을 가리키고, Si는 상기 부동점 텍스쳐 좌표의 정수 성분을 가리키는 텍스쳐 좌표 산출 방법.
  19. 제 18 항에 있어서,
    LSB = 0인 경우 U = U' 및 LSB = 1인 경우 U = width - U'에 따라 텍스쳐 미러링 연산에 대하여 상기 고정점 정수 성분의 LSB 값의 결정에 응답하여 상기 최종 텍스쳐 좌표를 산출하는 단계를 수행하고, 여기서, U는 상기 최종 텍스쳐 좌표를 가리키고, U'는 상기 중간 텍스쳐 좌표를 가리키고, width는 텍스쳐 맵의 치수를 가리키고, LSB는 상기 고정점 정수 성분의 LBS 값을 가리키는 텍스쳐 좌표 산출 방법.
  20. 텍스쳐 좌표의 산출이 용이하도록 디지털 프로세서에 의해 실행가능하며 연산들을 수행하는 기계 판독가능 명령어들의 프로그램을 구현하는 컴퓨터 판독가능 저장매체로서, 상기 연산들은,
    부동점 텍스쳐 좌표의 정수 성분을 식별하는 연산;
    상기 부동점 텍스쳐 좌표의 소수점 이하 성분(이하 분수 성분)을 식별하는 연산; 및
    제산 연산이 아닌 산술 연산을 이용하여 상기 부동점 텍스쳐 좌표의 고정점 분수에 기초하여 중간 텍스쳐 좌표를 산출하는 연산을 포함하고,
    상기 연산들은, I = int(Si)에 따라 상기 부동점 텍스쳐 좌표의 정수 성분을 고정점 정수 성분으로 변환하는 연산, 여기서 I는 상기 고정점 정수 성분을 가리키고, Si는 상기 부동점 텍스쳐 좌표의 정수 성분을 가리키고;
    상기 고정점 정수 성분의 LSB 값을 식별하는 연산; 및
    LSB = 0인 경우 U = U' 및 LSB = 1인 경우 U = width - U'에 따라 텍스쳐 미러링 연산에 대한 최종 텍스쳐 좌표를 산출하는 연산을 더 포함하고,
    여기서, U는 상기 최종 텍스쳐 좌표를 가리키고, LSB는 상기 고정점 정수 성분의 LSB 값을 가리키는 컴퓨터 판독가능 저장매체.
  21. 제 20 항에 있어서,
    상기 연산들은 U = U'에 따라 텍스쳐 래핑 연산에 대하여 상기 중간 텍스쳐 좌표와 동일한 최종 텍스쳐 좌표를 산출하는 연산을 더 포함하고, 여기서, U는 상기 최종 텍스쳐 좌표이고, U'는 상기 중간 텍스쳐 좌표인 컴퓨터 판독가능 저장매체.
  22. 삭제
  23. 텍스쳐 좌표를 산출하는 장치로서,
    부동점 텍스쳐 좌표의 정수 성분을 식별하는 수단;
    상기 부동점 텍스쳐 좌표의 소수점 이하 성분(이하 분수 성분)을 식별하는 수단; 및
    제산 연산이 아닌 산술 연산을 이용하여 상기 부동점 텍스쳐 좌표의 분수 성분에 기초하여 중간 텍스쳐 좌표를 산출하는 수단을 포함하고,
    I = int(Si)에 따라 상기 부동점 텍스쳐 좌표의 정수 성분을 고정점 정수 성분으로 변환하는 수단, 여기서 I는 상기 고정점 정수 성분을 가리키고, Si는 상기 부동점 텍스쳐 좌표의 정수 성분을 가리키고;
    상기 고정점 정수 성분의 LSB 값을 식별하는 수단; 및
    LSB = 0인 경우 U = U' 및 LSB = 1인 경우 U = width - U'에 따라 텍스쳐 미러링 연산에 대한 최종 텍스쳐 좌표를 산출하는 수단을 더 포함하고,
    여기서, U는 상기 최종 텍스쳐 좌표를 가리키고, LSB는 상기 고정점 정수 성분의 LSB 값을 가리키는 텍스쳐 좌표 산출 장치.
  24. 제 23 항에 있어서,
    U = U'에 따라 텍스쳐 래핑 연산에 대하여 상기 중간 텍스쳐 좌표와 동일한 최종 텍스쳐 좌표를 산출하는 수단을 더 포함하며, 여기서, U는 상기 최종 텍스쳐 좌표를 가리키고 U'는 상기 중간 텍스쳐 좌표를 가리키는 텍스쳐 좌표 산출 장치.
  25. 삭제
KR1020080040966A 2007-05-01 2008-05-01 2의 비멱 텍스쳐 맵을 위한 좌표 산출 KR101433951B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11/799,711 US8207980B2 (en) 2007-05-01 2007-05-01 Coordinate computations for non-power of 2 texture maps
US11/799,711 2007-05-01

Publications (2)

Publication Number Publication Date
KR20080097355A KR20080097355A (ko) 2008-11-05
KR101433951B1 true KR101433951B1 (ko) 2014-08-25

Family

ID=39577288

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020080040966A KR101433951B1 (ko) 2007-05-01 2008-05-01 2의 비멱 텍스쳐 맵을 위한 좌표 산출

Country Status (4)

Country Link
US (1) US8207980B2 (ko)
EP (1) EP1988510B1 (ko)
JP (1) JP5212702B2 (ko)
KR (1) KR101433951B1 (ko)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9659393B2 (en) * 2013-10-07 2017-05-23 Intel Corporation Selective rasterization
US20180005432A1 (en) * 2016-06-29 2018-01-04 AR You Ready LTD. Shading Using Multiple Texture Maps

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1083457A (ja) * 1996-04-23 1998-03-31 Hewlett Packard Co <Hp> テクスチャ・データ転送方法
JPH11339072A (ja) * 1998-04-01 1999-12-10 Real 3 D テクスチャレベルの詳細ディザリング用方法及び装置
JP3009732B2 (ja) 1992-11-13 2000-02-14 ザ・ユニヴァーシティ・オヴ・ノース・キャロライナ・アト・チャペル・ヒル 画像発生アーキテクチャおよび装置
JP2003157445A (ja) * 2001-11-21 2003-05-30 Sony Corp 画像処理装置および方法、記録媒体、並びにプログラム

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB9501832D0 (en) * 1995-01-31 1995-03-22 Videologic Ltd Texturing and shading of 3-d images
US6476813B1 (en) * 1999-11-30 2002-11-05 Silicon Graphics, Inc. Method and apparatus for preparing a perspective view of an approximately spherical surface portion
JP4660254B2 (ja) * 2005-04-08 2011-03-30 株式会社東芝 描画方法及び描画装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3009732B2 (ja) 1992-11-13 2000-02-14 ザ・ユニヴァーシティ・オヴ・ノース・キャロライナ・アト・チャペル・ヒル 画像発生アーキテクチャおよび装置
JPH1083457A (ja) * 1996-04-23 1998-03-31 Hewlett Packard Co <Hp> テクスチャ・データ転送方法
JPH11339072A (ja) * 1998-04-01 1999-12-10 Real 3 D テクスチャレベルの詳細ディザリング用方法及び装置
JP2003157445A (ja) * 2001-11-21 2003-05-30 Sony Corp 画像処理装置および方法、記録媒体、並びにプログラム

Also Published As

Publication number Publication date
EP1988510A2 (en) 2008-11-05
JP2008276782A (ja) 2008-11-13
KR20080097355A (ko) 2008-11-05
JP5212702B2 (ja) 2013-06-19
US20080273043A1 (en) 2008-11-06
EP1988510A3 (en) 2016-03-09
EP1988510B1 (en) 2021-03-31
US8207980B2 (en) 2012-06-26

Similar Documents

Publication Publication Date Title
KR101457216B1 (ko) 텍스쳐 상세 레벨을 산출하기 위한 장치 및 방법
US7999819B2 (en) Systems and methods for managing texture descriptors in a shared texture engine
KR100547258B1 (ko) 안티-에일리어싱 수퍼샘플링을 위한 방법 및 장치
WO2018222271A1 (en) Storage for foveated rendering
EP1994506B1 (en) Texture unit for multi processor environment
KR20080067840A (ko) 3차원 그래픽 가속기 및 그것의 픽셀 분배 방법
US20080094409A1 (en) Image Generation Device and Image Generation Method
CN106575442A (zh) 使用通过自适应着色的纹理查找的带宽缩减
CN109584140B (zh) 图形处理
JP2006244426A (ja) テクスチャ処理装置、描画処理装置、およびテクスチャ処理方法
KR20060116916A (ko) 텍스쳐 캐쉬 및 이를 구비한 3차원 그래픽 시스템, 그리고그것의 제어 방법
US10192348B2 (en) Method and apparatus for processing texture
JP5491498B2 (ja) 拡大縮小可能で且つ統合化されたコンピュータシステム
KR101433951B1 (ko) 2의 비멱 텍스쳐 맵을 위한 좌표 산출
KR100806345B1 (ko) 3차원 그래픽 가속기 그리고 텍스쳐 데이터 독출 방법
KR20220134848A (ko) 그래픽 처리 장치 및 그의 동작 방법
US7525551B1 (en) Anisotropic texture prefiltering
US20100302259A1 (en) Drawing data processing method, graphics drawing system and graphics drawing data generation program
US6590579B1 (en) System for low miss rate replacement of texture cache lines
JP2008502979A (ja) 逆テクスチャマッピング3dグラフィックスシステム
US12106418B2 (en) Sampling for partially resident textures
KR20080064528A (ko) 3차원 그래픽 가속기 그리고 텍스쳐 데이터 패치 방법
KR100427523B1 (ko) 3차원 컴퓨터 그래픽 시스템의 텍스쳐 메모리 억세스 장치
JP2003263650A (ja) 画像処理装置およびその方法
JP4419480B2 (ja) 画像処理装置およびその方法

Legal Events

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

Payment date: 20170623

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20180801

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20190725

Year of fee payment: 6