이 설명서에는 BC7 텍스처 압축 형식 블록에 대한 8개 블록 모드 및 비트 할당 목록이 포함되어 있습니다.
블록 내의 각 하위 집합에 대한 색은 두 개의 명시적 엔드포인트 색과 둘 사이의 보간된 색 집합으로 표시됩니다. 블록의 인덱스 정밀도에 따라 각 하위 집합에는 4, 8 또는 16개의 가능한 색이 있을 수 있습니다.
모드 0
BC7 모드 0에는 다음과 같은 특징이 있습니다.
- 색 구성 요소만(알파 없음)
- 블록당 3개의 하위 집합
- 엔드포인트당 고유한 P비트가 있는 RGBP 4.4.4.1 엔드포인트
- 3비트 인덱스
- 파티션 16개
모드 1
BC7 모드 1에는 다음과 같은 특징이 있습니다.
- 색 구성 요소만(알파 없음)
- 블록당 2개의 하위 집합
- 하위 집합당 공유 P비트가 있는 RGBP 6.6.6.1 엔드포인트)
- 3비트 인덱스
- 파티션 64개
모드 2
BC7 모드 2에는 다음과 같은 특징이 있습니다.
- 색 구성 요소만(알파 없음)
- 블록당 3개의 하위 집합
- RGB 5.5.5 엔드포인트
- 2비트 인덱스
- 파티션 64개
모드 3
BC7 모드 3에는 다음과 같은 특징이 있습니다.
- 색 구성 요소만(알파 없음)
- 블록당 2개의 하위 집합
- 하위 집합당 고유한 P비트를 사용하는 RGBP 7.7.7.1 엔드포인트)
- 2비트 인덱스
- 파티션 64개
모드 4
BC7 모드 4에는 다음과 같은 특징이 있습니다.
- 별도의 알파 구성 요소가 있는 색 구성 요소
- 블록당 1 하위 집합
- RGB 5.5.5 색 엔드포인트
- 6비트 알파 엔드포인트
- 16 x 2비트 인덱스
- 16 x 3비트 인덱스
- 2비트 구성 요소 회전
- 1비트 인덱스 선택기(2비트 또는 3비트 인덱스 사용 여부)
모드 5
BC7 모드 5에는 다음과 같은 특징이 있습니다.
- 별도의 알파 구성 요소가 있는 색 구성 요소
- 블록당 1 하위 집합
- RGB 7.7.7 색 엔드포인트
- 8비트 알파 엔드포인트
- 16 x 2비트 색 인덱스
- 16 x 2비트 알파 인덱스
- 2비트 구성 요소 회전
모드 6
BC7 모드 6에는 다음과 같은 특징이 있습니다.
- 결합된 색 및 알파 구성 요소
- 블록당 하나의 하위 집합
- RGBAP 7.7.7.7.1 색(및 알파) 엔드포인트(엔드포인트당 고유한 P비트)
- 16 x 4비트 인덱스
모드 7
BC7 모드 7에는 다음과 같은 특징이 있습니다.
- 결합된 색 및 알파 구성 요소
- 블록당 2개의 하위 집합
- RGBAP 5.5.5.5.1 색(및 알파) 엔드포인트(엔드포인트당 고유한 P비트)
- 2비트 인덱스
- 파티션 64개
발언
모드 8(가장 유의하지 않은 바이트가 0x00 설정됨)은 예약되어 있습니다. 인코더에서 사용하지 마세요. 이 모드를 하드웨어에 전달하면 모든 0으로 초기화된 블록이 반환됩니다.
BC7에서는 다음 방법 중 하나로 알파 구성 요소를 인코딩할 수 있습니다.
명시적 알파 구성 요소 인코딩이 없는 블록 형식입니다. 이러한 블록에서 색 엔드포인트에는 RGB 전용 인코딩이 있으며 알파 구성 요소는 모든 텍셀에 대해 1.0으로 디코딩됩니다.
결합된 색 및 알파 구성 요소를 사용하여 형식을 차단합니다. 이러한 블록에서 엔드포인트 색 값은 RGBA 형식으로 지정되고 알파 구성 요소 값은 색 값과 함께 보간됩니다.
구분된 색 및 알파 구성 요소를 사용하여 형식을 차단합니다. 이러한 블록에서 색과 알파 값은 각각 고유한 인덱스 집합을 사용하여 개별적으로 지정됩니다. 결과적으로 유효 벡터와 스칼라 채널은 별도로 인코딩됩니다. 여기서 벡터는 일반적으로 색 채널 [R, G, B]를 지정하고 스칼라는 알파 채널 [A]를 지정합니다. 이 방법을 지원하기 위해 별도의 2비트 필드가 인코딩에 제공되므로 별도의 채널 인코딩을 스칼라 값으로 사양할 수 있습니다. 결과적으로 블록은 이 알파 인코딩의 다음 네 가지 표현 중 하나를 가질 수 있습니다(2비트 필드로 표시됨).
- RGB|A: 알파 채널 구분
- AGB|R: "빨강" 색 채널 구분
- RAB|G: "녹색" 색 채널 구분
- RGA|B: "파란색" 색 채널 구분
디코더는 디코딩 후 채널 순서를 다시 RGBA로 다시 정렬하므로 내부 블록 형식이 개발자에게 보이지 않습니다. 별도의 색 및 알파 구성 요소가 있는 블록에는 벡터화된 채널 집합과 스칼라 채널의 인덱스 데이터 집합이 있습니다. (모드 4의 경우 이러한 인덱스의 너비는 [2비트 또는 3비트]입니다. 모드 4에는 벡터 또는 스칼라 채널이 3비트 인덱스를 사용하는지 여부를 지정하는 1비트 선택기도 포함되어 있습니다.)
관련 항목