ASTC 형식: 최고의 텍스처 압축 가이드
ASTC(Adaptive Scalable Texture Compression)는 현재 사용할 수 있는 가장 발전되고 유연한 텍스처 압축 형식입니다. ARM이 개발하고 공식 Khronos 표준으로 채택된 ASTC는 품질과 압축 비율에 대한 전례 없는 제어 기능을 제공하므로 최신 모바일 및 데스크톱 그래픽에 이상적인 선택입니다.
ASTC란 무엇인가요?
ASTC는 ETC, PVRTC 및 DXT/BCn과 같은 이전 형식을 대체하도록 설계된 손실이 있는 블록 기반 텍스처 압축 형식입니다. 모든 플랫폼에서 작동하고 광범위한 품질/크기 균형을 지원하는 단일 통합 형식을 제공하도록 특별히 설계되었습니다.
압축 비율이 고정된 이전 형식과 달리 ASTC를 사용하면 개발자는 14가지 2D 블록 크기(4×4 ~ 12×12)와 다양한 품질 수준 중에서 선택할 수 있어 시각적 품질과 메모리 소비 간의 균형을 세밀하게 제어할 수 있습니다.
ASTC는 LDR(Low Dynamic Range) 및 HDR(High Dynamic Range) 콘텐츠, 1~4개 색상 채널, 2D 및 3D 텍스처를 모두 지원합니다. 이러한 다양성 덕분에 현대 그래픽 응용 프로그램의 거의 모든 텍스처 유형에 적합합니다.
ASTC의 주요 특징
유연한 블록 크기
4×4(8bpp)부터 12×12(0.89bpp)까지 14가지 2D 블록 크기로 압축 비율과 품질을 정밀하게 제어할 수 있습니다.
조정 가능한 품질
인코딩 시간과 시각적 충실도의 균형을 맞추기 위한 다양한 인코딩 품질 수준(빠름, 중간, 철저, 철저)
HDR 지원
최신 PBR(물리 기반 렌더링) 워크플로우에 필수적인 High Dynamic Range 텍스처에 대한 기본 지원
하드웨어 효율성
최소한의 전력 소비와 메모리 대역폭 사용으로 효율적인 하드웨어 압축 해제를 위해 설계되었습니다.
ASTC 블록 크기 설명
ASTC의 블록 크기는 압축 비율과 품질을 결정합니다. 블록이 작을수록 더 많은 세부 정보가 유지되지만 압축률은 낮아집니다.
| 블록 크기 | 비트/픽셀 | 품질 | 최고의 사용 사례 |
|---|---|---|---|
| 4x4 | 8.00 | 제일 높은 | 상세한 텍스처, 노멀 맵 |
| 5x5 | 5.12 | 높은 | 고품질 컬러 텍스처 |
| 6x6 | 3.56 | 중간-높음 | 균형 잡힌 품질/크기(권장 기본값) |
| 8x8 | 2.00 | 중간 | 배경 질감, UI 요소 |
| 12x12 | 0.89 | 낮추다 | 대형 텍스처의 최대 압축 |
인코딩 품질 수준
ASTC 인코더는 인코딩 시간과 출력 품질에 영향을 미치는 여러 품질 사전 설정을 지원합니다.
빠른
~1-2초좋은 품질로 가장 빠른 인코딩. 개발 중 빠른 반복에 적합합니다.
중간
~5-10초균형 잡힌 품질과 속도. 대부분의 사용 사례 및 프로덕션 빌드에 권장됩니다.
철저한
~30-60초더욱 철저한 검색을 통한 고품질 압축. 영웅 자산 및 최종 빌드에 적합합니다.
철저한
~2~5분매우 느린 인코딩으로 최대 품질을 제공합니다. 품질이 가장 중요한 중요한 자산에 사용하세요.
ASTC의 장점
범용 플랫폼 지원
모든 최신 모바일 GPU(OpenGL ES 3.2+, Vulkan)에서 지원되며 여러 플랫폼별 형식을 단일 솔루션으로 대체합니다.
비교할 수 없는 유연성
14가지 블록 크기와 다양한 품질 수준은 다른 압축 형식보다 더 많은 제어 기능을 제공하여 각 텍스처 유형에 맞게 최적화됩니다.
우수한 품질
고급 압축 알고리즘은 비슷한 비트 전송률에서 ETC, PVRTC 또는 DXT보다 더 나은 시각적 품질을 생성합니다.
현대적인 기능
HDR 지원, 3D 텍스처 및 PBR 재료에 대한 최적의 인코딩을 통해 ASTC는 최신 렌더링 기술에 대한 미래 경쟁력을 확보할 수 있습니다.
ASTC와 기타 형식
ASTC가 기존 텍스처 압축 형식과 비교되는 방식:
대 ETC1/ETC2
ETC는 고정 4:1 압축(ETC1) 또는 8:1(ETC2 RGBA)을 사용하는 Android의 레거시 형식입니다.
ASTC 장점: ASTC는 동일한 비트 전송률에서 더 나은 품질을 제공하고 더 많은 압축 비율(0.89-8bpp 대 4-8bpp)을 지원합니다.
대 PVTC
PVRTC는 픽셀당 2비트 또는 4비트 압축을 사용하는 iOS의 레거시 형식입니다.
ASTC 장점: ASTC는 더 나은 품질과 더 많은 유연성을 제공하며 PVRTC의 블록 경계 아티팩트를 방지합니다.
대 DXT/BCn
DXT/BCn은 다양한 형식에 대해 픽셀당 4~8비트를 사용하는 데스크탑 표준입니다.
ASTC 장점: ASTC는 모바일에 더 낮은 비트 전송률(최저 0.89bpp)을 제공하면서 BCn 품질과 일치하거나 이를 초과합니다.
ASTC 형식을 사용하는 방법
당사의 온라인 도구를 사용하면 프로젝트에서 ASTC를 간단하게 사용할 수 있습니다.
ASTC로 인코딩
- 원본 이미지(PNG, JPG) 업로드 - 모든 크기에서 작동
- 품질/크기 요구 사항에 따라 블록 크기를 선택하십시오(대부분의 경우 6×6이 권장됨).
- 인코딩 품질 선택(개발의 경우 중간, 제작의 경우 철저/철저함)
- .astc 파일을 다운로드하고 프로젝트에 통합하세요.
ASTC 파일 디코딩
- .astc 파일을 업로드하여 내용을 검사하세요.
- 블록 크기 및 형식 정보가 포함된 압축 해제된 텍스처 보기
- 편집 또는 품질 확인을 위해 PNG로 내보내기
모범 사례
- 6×6 블록을 시작점으로 사용(3.56bpp) - 대부분의 텍스처에 탁월한 품질/크기 균형을 제공합니다.
- 노멀 맵이나 UI 텍스트와 같이 세부적으로 중요한 텍스처의 경우 더 작은 블록(4×4, 5×5)을 선택하세요.
- 멀리서 본 배경, 스카이박스 또는 텍스처에는 더 큰 블록(8×8, 10×10, 12×12)을 사용하세요.
- 다양한 품질 수준을 테스트하세요. '중간'이면 충분할 때가 많습니다. 영웅 자산에 대해서만 '완전' 또는 '완전'을 사용하세요.
- 메모리 사용량을 최적화하려면 동일한 애플리케이션에서 다양한 텍스처 유형에 대해 서로 다른 블록 크기를 사용하는 것이 좋습니다.
- 대상 장치에서 항상 압축된 텍스처를 미리 봅니다. 품질 인식은 콘텐츠 및 보기 조건에 따라 다릅니다.
결론
ASTC는 비교할 수 없는 유연성, 품질 및 플랫폼 지원을 제공하는 텍스처 압축 기술의 정점을 대표합니다. 적응형 특성을 통해 개발자는 각 자산에 대한 압축을 미세 조정하여 시각적 충실도와 메모리 소비 간의 균형을 최적화할 수 있습니다.
모바일, 데스크톱, 콘솔 플랫폼 중 어떤 플랫폼을 개발하든 ASTC는 저가형 장치에서 고급형 그래픽까지 확장할 수 있는 미래 지향적 솔루션을 제공합니다. 당사의 온라인 ASTC 도구를 사용하면 다양한 설정을 쉽게 실험하고 프로젝트 요구 사항에 맞는 완벽한 구성을 찾을 수 있습니다.
추가 자료 및 참고 자료
다음과 같은 권위 있는 리소스를 통해 ASTC에 대해 자세히 알아보세요.
- ASTC 사양(크로노스) - 공식 ASTC 형식 사양 및 기술 참조
- ARM ASTC 평가 코덱 - ARM의 참조 인코더 구현 및 문서
- 적응형 확장 가능 텍스처 압축(Wikipedia) - ASTC 기술 및 채택에 대한 종합적인 개요
- ASTC: 최고의 텍스처 압축 - ASTC 모범 사례에 대한 ARM 개발자 문서
- Unity ASTC 압축 가이드 - 게임 엔진에서 ASTC를 사용하기 위한 실용 가이드