이 페이지는 다음에 관한 정보를 제공합니다.
이 페이지에는 콘솔 플랫폼에 대한 정보는 포함되지 않습니다. 콘솔 플랫폼에 대한 정보는 플랫폼별 문서를 참조하십시오.
텍스처 압축 포맷에 대한 개요는 텍스처 압축 포맷을 참조하십시오. 텍스처 임포트 설정과 플랫폼별 오버라이드 설정 방법에 대한 자세한 내용은 텍스처 임포트 설정을 참조하십시오.
이 페이지에서는 다음 용어를 사용합니다.
BC7 및 BC6H 포맷 지원이 보장되는 DirectX 11 이상 등급의 GPU가 탑재된 기기의 경우 권장되는 압축 포맷 선택은 다음과 같습니다. RGB 텍스처 - DXT1(4비트/픽셀). RGBA 텍스처 - BC7(품질이 높을수록 압축 속도가 느림) 또는 DXT5(압축 속도가 빠름), 둘 다(8비트/픽셀). HDR 텍스처 - BC6H(8비트/픽셀). PC에서 DirectX 10 등급의 GPU(2010년 이전의 NVIDIA GPU, 2009년 이전의 AMD, 2012년 이전의 Intel)를 지원해야 하는 경우 이러한 GPU는 BC7 또는 BC6H를 지원하지 않으므로 BC7 대신 DXT5가 선호됩니다.
모든 지원 포맷에 대한 자세한 내용은 지원 텍스처 압축 포맷 레퍼런스 표를 참조하십시오.
A8 칩(2014) 이상을 사용하는 Apple 기기의 경우 RGB 및 RGBA 텍스처에 권장되는 텍스처 압축 포맷은 ATSC입니다. 이 포맷을 사용하면 8비트/픽셀(4x4 블록 크기)에서 0.89비트/픽셀(12x12 블록 크기)에 이르기까지 세분화된 텍스처 품질과 크기를 선택할 수 있습니다. 구형 기기에 대한 지원이 필요하거나 추가 크런치 압축이 필요한 경우 Apple 기기는 A7 칩(2013)부터 ETC/ETC2 포맷을 지원합니다. 더 오래된 구형 기기의 경우 PVRTC 압축 포맷을 사용해야 합니다. iOS에서 Unity의 기본 텍스처 압축 포맷은 가능한 가장 광범위한 호환성을 제공하는 PVRTC입니다. ASTC가 선호되지만, A7 기기(최초의 Metal 지원 기기)에서는 지원되지 않으며 런타임 시점에 압축 해제됩니다.
모든 지원 포맷에 대한 자세한 내용은 지원 텍스처 압축 포맷 레퍼런스 표를 참조하십시오.
Android의 텍스처 압축 지원은 복잡하므로, 다양한 하위 타겟으로 여러 애플리케이션 버전을 빌드해야 할 수 있습니다.
앱이 제한된 범위의 텍스처 압축 포맷을 지원하는 특정 하드웨어를 대상으로 하는 경우를 제외하고 다양한 장단점을 지닌 여러 압축 및 비압축 포맷 중에서 선택할 수 있습니다.
LDR RGB 및 RGBA 텍스처의 경우 대부분의 최신 Android GPU는 다음과 같은 ASTC 압축 포맷을 지원합니다. Adreno 4xx/Snapdragon 415(2015) 이후 Qualcomm GPU Mali T624(2012) 이후 ARM GPU Tegra K1(2014) 이후 NVIDIA GPU GX6250(2014) 이후 PowerVR GPU 구형 기기에 대한 지원이 필요하거나 추가 크런치 압축이 필요한 경우 Vulkan 또는 Metal 또는 OpenGL ES 3.0을 실행하는 모든 GPU가 ETC2 포맷을 지원합니다. 결과 이미지 품질은 상당히 높으며 1–4개 컴포넌트 텍스처 데이터를 지원합니다. OpenGL ES 2 기기는 ETC2 포맷을 지원하지 않으므로 Unity는 런타임 시점에 ETC2 폴백이 지정하는 포맷으로 텍스처를 압축 해제합니다. 더 오래된 구형 기기의 경우 일반적으로 ETC 포맷만 사용할 수 있습니다. 이 경우 직접 알파 채널 지원이 없다는 단점이 있습니다. 스프라이트의 경우 Unity는 두 개의 ETC1 텍스처(RGB용 하나, 알파용 하나)로 텍스처를 분할하여 ETC1 압축을 사용하는 옵션을 제공합니다. 이를 활성화하려면 스프라이트 아틀라스를 임포트할 때 텍스처에 대한 Android별 분할 알파 채널 옵션을 활성화하십시오. 스프라이트 셰이더는 두 텍스처를 모두 샘플링하여 최종 결과로 결합합니다. HDR 텍스처의 경우 Android 기기에서 사용할 수 있는 유일한 압축 포맷은 ASTC HDR입니다. ASTC HDR에는 Vulkan 또는 GL_KHR_texture_compression_astc_hdr 지원이 필요합니다. ASTC가 가장 유연한 포맷입니다.
ASTC HDR을 지원하지 않는 기기의 경우 Vulkan, Metal 또는 OpenGL ES 3.0을 실행하는 모든 기기는 알파 채널이 없는 텍스처에 적합한 RGB9e5를 지원합니다. 알파 채널 또는 더 광범위한 지원이 필요한 경우 RGBA Half를 사용하십시오. 이 포맷은 RGB9e5보다 두 배 더 많은 메모리를 사용합니다.
모든 지원 포맷에 대한 자세한 내용은 지원 텍스처 압축 포맷 레퍼런스 표를 참조하십시오.
다음 표는 각 플랫폼에 사용된 디폴트 포맷을 보여줍니다.
플랫폼 | 컬러 모델 | 없음 | 보통 품질(기본값) | 높은 품질 | 낮은 품질(더 높은 성능) |
---|---|---|---|---|---|
Windows, Linux, macOS | RGB | RGB 24비트 | RGB Compressed DXT1 | RGB(A) Compressed BC7 | RGB Compressed DXT1 |
RGBA | RGBA 32비트 | RGBA Compressed DXT5 | RGB(A) Compressed BC7 | RGBA Compressed DXT5 | |
HDR | RGBA Half | RGB Compressed BC6H | RGB Compressed BC6H | RGB Compressed BC6H | |
WebGL | RGB | RGB 24비트 | RGB Compressed DXT1 | RGB Compressed DXT1 | RGB Compressed DXT1 |
RGBA | RGBA 32비트 | RGBA Compressed DXT5 | RGBA Compressed DXT5 | RGBA Compressed DXT5 | |
Android(빌드 설정에서 Don’t override를 활성화한 경우에만 해당) | RGB | RGB 24비트 | RGB Compressed ETC | RGB Compressed ETC | RGB Compressed ETC |
RGBA | RGBA 32비트 | RGBA Compressed ETC2 | RGBA Compressed ETC2 | RGBA Compressed ETC2 | |
iOS | RGB | RGB 24비트 | RGB Compressed PVRTC 4비트 | RGB Compressed PVRTC 4비트 | RGB Compressed PVRTC 2비트 |
RGBA | RGBA 32비트 | RGBA Compressed PVRTC 4비트 | RGBA Compressed PVRTC 4비트 | RGBA Compressed PVRTC 2비트 | |
tvOS | RGB | RGB 24비트 | RGB Compressed ASTC 6x6 블록 | RGB Compressed ASTC 4x4 블록 | RGB Compressed ASTC 8x8 블록 |
RGBA | RGBA 32비트 | RGBA Compressed ASTC 6x6 블록 | RGBA Compressed ASTC 4x4 블록 | RGBA Compressed ASTC 8x8 블록 | |
Default | RGBA | RGBA 32비트 | RGBA 16비트 | RGBA 16비트 | RGBA 16비트 |
아래 표에는 Unity에서 사용할 수 있는 각 압축 포맷과 해당 압축 포맷을 지원하는 플랫폼이 나와 있습니다.
텍스처 압축 포맷 | 설명 | 채널 | Quality | 픽셀당 비트 | 1024x1024 텍스처 크기(MB) | Windows | Mac | Linux | Android | iOS & tvOS | WebGL |
---|---|---|---|---|---|---|---|---|---|---|---|
RGB(A) Compressed BC7 | 압축된 RGB 또는 RGBA | RGB 또는 RGBA | 높음 | 8 | 1 | 예(1) | 예(1) | 지원 | 아니요 | 아니요 | 아니요 |
RGBA Compressed DXT5 | 압축된 RGBA(BC3라고도 불림) | RGBA | 중간 | 8 | 1 | 지원 | 지원 | 지원 | 아니요(3) | 아니요 | 부분적 지원(2) |
RGBA Crunched DXT5 | 압축된 RGBA, 추가 디스크 크런치 압축 포함 | RGBA | 낮음-중간 | 가변 | 가변 | 지원 | 지원 | 지원 | 아니요(3) | 아니요 | 부분적 지원(2) |
RGBA 64비트 | 압축되지 않은 RGBA, 정밀도가 매우 높음 | RGBA | 매우 높음 | 64 | 8 | 지원 | 지원 | 지원 | 부분적 지원(6) | 지원 | 아니요 |
RGBA 32비트 | 압축되지 않은 RGBA | RGBA | 높음 | 32 | 4 | 지원 | 지원 | 지원 | 지원 | 지원 | 지원 |
RGBA 16비트 | 양자화된 RGBA | RGBA | 중간 | 16 | 2 | 지원 | 지원 | 지원 | 지원 | 지원 | 지원 |
RGB Compressed DXT1 | 압축된 RGB(BC1이라고도 불림) | RGB | 중간 | 4 | 0.5 | 지원 | 지원 | 지원 | 아니요(3) | 아니요 | 부분적 지원(2) |
RGB Crunched DXT1 | 압축된 RGB, 추가 디스크 크런치 압축 포함 | RGB | 낮음-중간 | 가변 | 가변 | 지원 | 지원 | 지원 | 아니요(3) | 아니요 | 부분적 지원(2) |
RGB 48비트 | 압축되지 않은 RGB, 정밀도가 매우 높음. GPU용 RGBA 64비트로 변환됩니다. | RGB | 매우 높음 | 48 디스크, 64 GPU | 6 디스크, 8 GPU | 지원 | 지원 | 지원 | 부분적 지원(6) | 지원 | 아니요 |
RGB 24비트 | 압축되지 않은 RGB. GPU용 RGBA 32비트로 변환됩니다. | RGB | 높음 | 24 디스크, 32 GPU | 3 디스크, 4 GPU | 지원 | 지원 | 지원 | 지원 | 지원 | 지원 |
RGB 16비트 | 양자화된 RGB | RGB | 중간 | 16 | 2 | 지원 | 지원 | 지원 | 지원 | 지원 | 지원 |
RG Compressed BC5 | 압축된 2채널(RG) | RG | 높음 | 8 | 1 | 지원 | 지원 | 지원 | 아니요 | 아니요 | 아니요 |
RG 32비트 | 압축되지 않은 2채널(RG), 정밀도가 매우 높음 | RG | 매우 높음 | 32 | 4 | 지원 | 지원 | 지원 | 부분적 지원(6) | 지원 | 아니요 |
R Compressed BC4 | 압축된 단일 채널(R) | R | 높음 | 4 | 0.5 | 지원 | 지원 | 지원 | 아니요 | 아니요 | 아니요 |
R 8 | 압축되지 않은 단일 채널(R) | R | 높음 | 8 | 1 | 지원 | 지원 | 지원 | 부분적 지원(5) | 지원 | 부분적 지원(5) |
R 16비트 | 압축되지 않은 단일 채널(R), 정밀도가 매우 높음 | R | 매우 높음 | 16 | 2 | 지원 | 지원 | 지원 | 부분적 지원(6) | 부분적 지원(6) | 아니요 |
알파 8 | 압축되지 않은 단일 채널(A) | A | 높음 | 8 | 1 | 지원 | 지원 | 지원 | 지원 | 지원 | 지원 |
RGBA Half | HDR, 반정밀도(FP16) RGBA, –64k - +64k 범위 | RGBA | 높음 | 64 | 8 | 지원 | 지원 | 지원 | 부분적 지원(7) | 지원 | 부분적 지원(7) |
RGB Compressed BC6H | HDR, 압축된 RGB, 0 - +64k 범위 | RGB | 높음 | 8 | 1 | 예(1) | 예(1) | 지원 | 아니요 | 아니요 | 아니요 |
RGB9e5 32비트 Shared Exponent Float | HDR, 양자화된 RGB, 0 - +64k 범위 | RGB | 중간 | 32 | 4 | 지원 | 지원 | 지원 | 부분적 지원(4) | 지원 | 부분적 지원(4) |
RGB(A) Compressed ASTC | 압축된 RGB 또는 RGBA, 블록 크기에 따라 크기와 품질이 달라짐 | RGB 또는 RGBA | 낮음-높음 | 12x12: 0.89, 10x10: 1.28, 8x8: 2, 6x6: 3.56, 5x5: 5.12, 4x4: 8 | 12x12: 0.11, 10x10: 0.16, 8x8: 0.25, 6x6: 0.45, 5x5: 0.64, 4x4: 1.0 | 아니요 | 아니요 | 아니요 | 부분적 지원(8) | 예(10) | 아니요 |
RGBA Compressed ETC2 | 압축된 RGBA | RGBA | 중간 | 8 | 1 | 아니요 | 아니요 | 아니요 | 부분적 지원(9) | 지원 | 아니요 |
RGBA Crunched ETC2 | 압축된 RGBA, 추가 디스크 크런치 압축 포함 | RGBA | 낮음-중간 | 가변 | 가변 | 아니요 | 아니요 | 아니요 | 부분적 지원(9) | 지원 | 아니요 |
RGB + 1비트 Alpha Compressed ETC2 4비트 | 압축된 RGBA, 완전히 불투명하거나 완전히 투명한 알파 값 포함 | RGBA | 중간 | 4 | 0.5 | 아니요 | 아니요 | 아니요 | 부분적 지원(9) | 지원 | 아니요 |
RGBA Compressed PVRTC 4비트 | 압축된 RGBA, 텍스처가 사각형이어야 함 | RGBA | 중간 | 4 | 0.5 | 아니요 | 아니요 | 아니요 | 아니요(12) | 지원 | 아니요 |
RGBA Compressed PVRTC 2비트 | 압축된 RGBA, 텍스처가 사각형이어야 함 | RGBA | 낮음 | 2 | 0.25 | 아니요 | 아니요 | 아니요 | 아니요(12) | 지원 | 아니요 |
RGB Compressed ETC2 | 압축된 RGB | RGB | 중간 | 4 | 0.5 | 아니요 | 아니요 | 아니요 | 부분적 지원(9) | 지원 | 아니요 |
RGB Compressed ETC | 압축된 RGB | RGB | 낮음 | 4 | 0.5 | 아니요 | 아니요 | 아니요 | 지원 | 지원 | 아니요 |
RGB Crunched ETC | 압축된 RGB, 추가 디스크 크런치 압축 포함 | RGB | 낮음 | 가변 | 가변 | 아니요 | 아니요 | 아니요 | 지원 | 지원 | 아니요 |
RGB Compressed PVRTC 4비트 | 압축된 RGB, 텍스처가 사각형이어야 함 | RGB | 중간 | 4 | 0.5 | 아니요 | 아니요 | 아니요 | 아니요(12) | 지원 | 아니요 |
RGB Compressed PVRTC 2비트 | 압축된 RGB, 텍스처가 사각형이어야 함 | RGB | 낮음 | 2 | 0.25 | 아니요 | 아니요 | 아니요 | 아니요(12) | 지원 | 아니요 |
RG Compressed EAC 8비트 | 압축된 2채널(RG) | RG | 높음 | 8 | 1 | 아니요 | 아니요 | 아니요 | 부분적 지원(9) | 지원 | 아니요 |
R Compressed EAC 4비트 | 압축된 단일 채널(R) | R | 높음 | 4 | 0.5 | 아니요 | 아니요 | 아니요 | 부분적 지원(9) | 지원 | 아니요 |
RGB(A) Compressed ASTC HDR | HDR, 압축된 RGB 또는 RGBA, 블록 크기에 따라 크기와 품질이 달라짐 | RGB 또는 RGBA | 낮음-높음 | 12x12: 0.89, 10x10: 1.28, 8x8: 2, 6x6: 3.56, 5x5: 5.12, 4x4: 8 | 12x12: 0.11, 10x10: 0.16, 8x8: 0.25, 6x6: 0.45, 5x5: 0.64, 4x4: 1.0 | 아니요 | 아니요 | 아니요 | 부분적 지원(11) | 부분적 지원(11) | 아니요 |
참고: