질감 블록 압축
Direct3D 11에서 텍스처에 대한 블록 압축(BC) 지원 기능이 확장되면서 이제 BC6H 및 BC7 알고리즘도 지원합니다. BC6H는 High Dynamic Range 색 원본 데이터를 지원하고, BC7은 표준 RGB 원본 데이터에 대한 더 적은 아티팩트로 평균보다 나은 품질의 압축을 제공합니다.
BC1부터 BC5 형식에 대한 지원을 포함하여 Direct3D 11 이전의 블록 압축 알고리즘 지원에 대한 자세한 내용은 블록 압축(Direct3D 10)을 참조하세요.
**파일 형식에 대한 참고: ** BC6H 및 BC7 질감 압축 형식은 압축된 질감 데이터를 저장할 수 있는 DDS 파일 형식을 사용합니다. 자세한 내용은 DDS 프로그래밍 가이드를 참조하세요.
Direct3D 11에서 지원되는 블록 압축 형식
원본 데이터 | 필요한 최소 데이터 압축 해상도 | 권장 형식 | 지원되는 최소 특성 수준 |
---|---|---|---|
3채널 색(알파 채널 포함) | 3개 색 채널(5비트:6비트:5비트), 0 또는 1비트의 알파 포함 | BC1 | Direct3D 9.1 |
3채널 색(알파 채널 포함) | 3개 색 채널(5비트:6비트:5비트), 4비트의 알파 포함 | BC2 | Direct3D 9.1 |
3채널 색(알파 채널 포함) | 3개 색 채널(5비트:6비트:5비트), 8비트의 알파 포함 | BC3 | Direct3D 9.1 |
1채널 색 | 1개 색 채널(8비트) | BC4 | Direct3D 10 |
2채널 색 | 2개 색 채널(8비트:8비트) | BC5 | Direct3D 10 |
3채널 HDR(High Dynamic Range) 색 | "중간 정밀도"의 부동 소수점에서 3개 색 채널(16비트:16비트:16비트)* | BC6H | Direct3D 11 |
3채널 색(알파 채널은 옵션) | 0~8비트의 알파가 포함된 3개 색 채널(채널당 4~7비트) | BC7 | Direct3D 11 |
*"중간 정밀도"의 부동 소수점은 옵션인 사인 비트와 5비트 편향 지수, 그리고 10 또는 11비트 가수로 구성되는 16비트 값입니다.
BC1, BC2 및 B3 형식
BC1, BC2 및 BC3 형식은 Direct3D 9 DXTn 질감 압축 형식과 동등하며, 해당하는 Direct3D 10 BC1, BC2 및 BC3 형식과도 동일합니다. 이러한 형식에 대한 지원은 모든 기능 수준 || 특성 수준(D3D\_FEATURE\_LEVEL\_9\_1, D3D\_FEATURE\_LEVEL\_9\_2, D3D\_FEATURE\_LEVEL\_9\_3, D3D\_FEATURE\_LEVEL\_10\_0, D3D\_FEATURE\_LEVEL\_10\_1 및 D3D\_FEATURE\_LEVEL\_11\_0)에 필요합니다.
블록 압축 형식 | DXGI 형식 | Direct3D 9에 준하는 형식 | 4x4 픽셀 블록당 바이트 |
---|---|---|---|
BC1 | DXGI_FORMAT_BC1_UNORM, DXGI_FORMAT_BC1_UNORM_SRGB, DXGI_FORMAT_BC1_TYPELESS | D3DFMT_DXT1, FourCC="DXT1" | 8 |
BC2 | DXGI_FORMAT_BC2_UNORM, DXGI_FORMAT_BC2_UNORM_SRGB, DXGI_FORMAT_BC2_TYPELESS | D3DFMT_DXT2*, FourCC="DXT2", D3DFMT_DXT3, FourCC="DXT3" | 16 |
BC3 | DXGI_FORMAT_BC3_UNORM, DXGI_FORMAT_BC3_UNORM_SRGB, DXGI_FORMAT_BC3_TYPELESS | D3DFMT_DXT4*, FourCC="DXT4", D3DFMT_DXT5, FourCC="DXT5" | 16 |
*이러한 압축 방식(DXT2 및 DXT4)에서는 Direct3D 9의 사전 곱셈 알파 형식과 표준 알파 형식을 서로 구분하지 않습니다. 따라서 이러한 구분은 렌더링 시 프로그래밍이 가능한 셰이더를 이용해 처리해야 합니다.
BC4 및 BC5 형식
블록 압축 형식 | DXGI 형식 | Direct3D 9에 준하는 형식 | 4x4 픽셀 블록당 바이트 |
---|---|---|---|
BC4 | DXGI_FORMAT_BC4_UNORM, DXGI_FORMAT_BC4_SNORM, DXGI_FORMAT_BC4_TYPELESS | FourCC="ATI1" | 8 |
BC5 | DXGI_FORMAT_BC5_UNORM, DXGI_FORMAT_BC5_SNORM, DXGI_FORMAT_BC5_TYPELESS | FourCC="ATI2" | 16 |
BC6H 형식
이 형식에 대한 자세한 내용은 BC6H 형식 설명서를 참조하세요.
블록 압축 형식 | DXGI 형식 | Direct3D 9에 준하는 형식 | 4x4 픽셀 블록당 바이트 |
---|---|---|---|
BC6H | DXGI_FORMAT_BC6H_UF16, DXGI_FORMAT_BC6H_SF16, DXGI_FORMAT_BC6H_TYPELESS | 해당 없음 | 16 |
BC6H 형식은 4x4 픽셀 블록마다 다른 인코딩 모드를 선택할 수 있습니다. 총 14개의 인코딩 모드를 사용할 수 있으며, 각각 표시되는 질감의 시각적 품질이 약간씩 다릅니다. 이렇게 모드를 사용하면 원본 내용에 따라 품질 수준을 다르게 선택하거나 적용하여 하드웨어의 디코딩 속도를 빠르게 할 수 있지만 검색 공간의 복잡성이 매우 커지기도 합니다.
BC7 형식
이 형식에 대한 자세한 내용은 BC7 형식 설명서를 참조하세요.
블록 압축 형식 | DXGI 형식 | Direct3D 9에 준하는 형식 | 4x4 픽셀 블록당 바이트 |
---|---|---|---|
BC7 | DXGI_FORMAT_BC7_UNORM, DXGI_FORMAT_BC7_UNORM_SRGB, DXGI_FORMAT_BC7_TYPELESS | 해당 없음 | 16 |
BC7 형식은 4x4 픽셀 블록마다 다른 인코딩 모드를 선택할 수 있습니다. 총 8개의 인코딩 모드를 사용할 수 있으며, 각각 표시되는 질감의 시각적 품질이 약간씩 다릅니다. 이렇게 모드를 사용하면 원본 내용에 따라 품질 수준을 다르게 선택하거나 적용하여 하드웨어의 디코딩 속도를 빠르게 할 수 있지만 검색 공간의 복잡성이 매우 커지기도 합니다.
관련 항목