Version: 2021.3
Texture formats
Mipmaps

Recommended, default, and supported texture formats, by platform

이 페이지는 다음에 관한 정보를 제공합니다.

이 페이지에는 콘솔 플랫폼에 대한 정보는 포함되지 않습니다. 콘솔 플랫폼에 대한 정보는 플랫폼별 문서를 참조하십시오.

For an overview of texture formats, see Texture formats. For information about texture import settings and how to set per-texture platform-specific overrides, see Texture import settings. Some texture import settings can also be overridden globally in Build Settings, mostly to speed up iteration time during development.

용어

이 페이지에서는 다음 용어를 사용합니다.

  • 픽셀당 비트(bpp)는 단일 텍스처 픽셀에 필요한 스토리지 용량입니다. bpp 값이 더 낮은 텍스처는 디스크와 메모리를 더 적게 차지합니다. bpp 값이 낮으면 GPU가 캐시에 더 많은 픽셀을 저장할 수 있으므로 텍스처 액세스 속도가 향상됩니다.
  • LDR(Low Dynamic Range)은 컬러가 개념적으로 0.0(검정) 값과 1.0(흰색) 값 사이에 있는 가장 일반적인 이미지를 나타냅니다. 대부분의 이미지 파일(예: PNG, JPG)은 다이나믹 레인지가 낮습니다.
  • HDR(High Dynamic Range)은 컬러가 0–1보다 더 높은 범위를 가질 수 있는 특수한 이미지 및 텍스처 포맷을 의미합니다. .exr 또는 .hdr과 같은 이미지 파일 포맷이 HDR 이미지 데이터에 자주 사용됩니다. 런타임 시점과 GPU에서 정확도, 범위 및 메모리 사용량 간에 서로 장단점이 있는 여러 HDR 포맷을 사용할 수 있습니다.
  • RGB는 빨간색, 초록색, 파란색을 결합하여 컬러 배열을 재현하는 컬러 모델입니다.
  • RGBA는 블렌딩 및 불투명도 변경을 지원하는 알파 채널이 있는 RGB의 버전입니다.
  • VBR(Variable Bit Rate)은 픽셀당 비트가 고정 값이 아니고, 대신에 실제 콘텐츠에 기반한다는 의미입니다. VBR은 크런치 압축과 디스크의 텍스처 크기에만 적용됩니다. 메모리 크기는 기본 텍스처 포맷(예: RGB Crunched DXT1의 경우 RGB Compressed DXT1)을 사용할 때와 동일합니다.

Recommended texture formats, by platform

데스크톱

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가 선호됩니다.

See the Supported texture formats reference table for detailed information about all supported formats.

iOS 및 tvOS

For Apple devices that use the A8 chip (2014) or above, ATSC is the recommended texture format for RGB and RGBA textures. This format allows you to choose between texture quality and size on a granular level: all the way from eight bits/pixel (4x4 block size) down to 0.89 bits/pixel (12x12 block size). If support for older devices is needed, or you want additional Crunch compression, then Apple devices support ETC/ETC2 formats starting with A7 chip (2013). For even older devices, PVRTC is the format to use. On iOS you can configure the default texture format in the Player Settings. PVRTC gives you the broadest possible compatibility. ASTC is preferred, but is not supported on A7 devices (the very first Metal-enabled devices) and will be unpacked at runtime.

See the Supported texture formats reference table for detailed information about all supported formats.

Android

Texture format support on Android is complicated. You might need to build several application versions with different sub-targets.

You can select the default format in Player Settings. Your options are ASTC, ETC2 and ETC (ETC1 for RGB, ETC2 for RGBA). See Texture compression settings for more details on how the different settings interact.

For LDR RGB and RGBA textures, most modern Android GPUs that support OpenGL ES 3.1 or Vulkan also support ASTC format, including: Qualcomm GPUs since Adreno 4xx / Snapdragon 415 (2015), ARM GPUs since Mali T624 (2012), NVIDIA GPUs since Tegra K1 (2014), PowerVR GPUs since GX6250 (2014).

구형 기기에 대한 지원이 필요하거나 크런치 압축을 추가하려는 경우 Vulkan 또는 OpenGL ES 3.0을 운영하는 모든 GPU는 ETC2 포맷을 지원합니다. 결과 이미지 품질이 상당히 높고 1–4 컴포넌트 텍스처 데이터를 지원합니다. OpenGL ES 2 기기는 ETC2 포맷을 지원하지 않기 때문에 Unity는 런타임 시 ETC2 폴백 지정 포맷으로 텍스처를 압축 해제합니다. 그 이전의 기기에 대해서는 일반적으로 ETC 포맷만 사용 가능합니다. 단점은 직접적인 알파 채널 지원이 없다는 점입니다. 스프라이트의 경우 Unity에서 하나의 텍스처를 하나는 RGB용, 다른 하나는 알파용으로 이렇게 두 개의 ETC1 텍스처로 분할하여 ETC1 압축을 사용하는 옵션을 제공합니다. 이를 활성화하려면 스프라이트 아틀라스 임포트 시 텍스처에 Android 전용 알파 채널 분할 옵션을 활성화합니다. 스프라이트 셰이더는 두 텍스처를 샘플링하고 최종 결과로 결합합니다.

HDR 텍스처의 경우 ASTC HDR이 Android 기기에서 사용할 수 있는 유일한 압축된 포맷입니다. ASTC HDR에는 Vulkan 또는 GL_KHR_texture_compression_astc_hdr 지원이 필요합니다. ASTC는 가장 유연한 포맷입니다. 기기가 ASTC HDR을 지원하지 않으면 텍스처는 런타임 시 알파 채널 용도에 따라 RGB9e5 또는 RGBA Half로 압축 해제됩니다.

ASTC HDR을 지원하지 않는 기기의 경우 Vulkan, Metal 또는 OpenGL ES 3.0을 실행하는 모든 기기는 알파 채널이 없는 텍스처에 적합한 RGB9e5를 지원합니다. 알파 채널 또는 더 광범위한 지원이 필요한 경우 RGBA Half를 사용하십시오. 이 포맷은 RGB9e5보다 두 배 더 많은 메모리를 사용합니다.

See the Supported texture formats reference table for detailed information about all supported formats.

Default texture formats, by platform

다음 표는 각 플랫폼에 사용된 디폴트 포맷을 보여줍니다.

플랫폼 컬러 모델 없음 보통 품질(기본값) 높은 품질 낮은 품질(더 높은 성능)
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 (설정 가능) RGB RGB 24비트 RGBA Compressed ASTC 6x6 블록
RGB Compressed ETC2
RGB Compressed ETC
RGBA Compressed ASTC 4x4 블록
RGB Compressed ETC2
RGB Compressed ETC
RGBA Compressed ASTC 8x8 블록
RGB Compressed ETC2
RGB Compressed ETC
RGBA RGBA 32비트 RGBA Compressed ASTC 6x6 블록
RGBA Compressed ETC2
RGBA Compressed ASTC 4x4 블록
RGBA Compressed ETC2
RGBA Compressed ASTC 8x8 블록
RGBA Compressed ETC2
iOS (설정 가능) RGB RGB 24비트 RGBA Compressed ASTC 6x6 블록
RGB Compressed PVRTC 4비트
RGBA Compressed ASTC 4x4 블록
RGB Compressed PVRTC 4비트
RGBA Compressed ASTC 8x8 블록
RGB Compressed PVRTC 2비트
RGBA RGBA 32비트 RGBA Compressed ASTC 6x6 블록
RGBA Compressed PVRTC 4비트
RGBA Compressed ASTC 4x4 블록
RGBA Compressed PVRTC 4비트
RGBA Compressed ASTC 8x8 블록
RGBA Compressed PVRTC 2비트
tvOS RGB RGB 24비트 RGBA Compressed ASTC 6x6 블록 RGBA Compressed ASTC 4x4 블록 RGBA 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비트

Texture formats, by quality

The table below shows each format available in Unity, and their quality details.

Texture format 설명 채널 Quality 픽셀당 비트 1024x1024 텍스처 크기(MB)
RGB(A) Compressed BC7 압축된 RGB 또는 RGBA RGB 또는 RGBA 높음 8 1
RGBA Crunched DXT5 압축된 RGBA, 추가 디스크 크런치 압축 포함 RGBA 낮음-중간 가변 가변
RGBA 64비트 압축되지 않은 RGBA, 정밀도가 매우 높음 RGBA 매우 높음 64 8
RGBA 32비트 압축되지 않은 RGBA RGBA 높음 32 4
RGBA 16비트 양자화된 RGBA RGBA 중간 16 2
RGB Compressed DXT1 압축된 RGB(BC1이라고도 불림) RGB 중간 4 0.5
RGB Crunched DXT1 압축된 RGB, 추가 디스크 크런치 압축 포함 RGB 낮음-중간 가변 가변
RGB 48비트 압축되지 않은 RGB, 정밀도가 매우 높음. GPU용 RGBA 64비트로 변환됩니다. RGB 매우 높음 48 디스크, 64 GPU 6 디스크, 8 GPU
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
R Compressed BC4 압축된 단일 채널(R) R 높음 4 0.5
R 8 압축되지 않은 단일 채널(R) R 높음 8 1
R 16비트 압축되지 않은 단일 채널(R), 정밀도가 매우 높음 R 매우 높음 16 2
알파8 압축되지 않은 단일 채널(A) A 높음 8 1
RGBA Half HDR, half-precision (FP16) RGBA, –64k에서 +64k 범위 RGBA 높음 64 8
RGB Comressed BC6H HDR, 압축된 RGB, 0 - +64k 범위 RGB 높음 8 1
RGB9e5 32비트 Shared Exponent Float HDR, 양자화된 RGB, 0 - +64k 범위 RGB 중간 32 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
RGBA Compressed ETC2 압축된 RGBA RGBA 중간 8 1
RGBA Crunched ETC2 압축된 RGBA, 추가 디스크 크런치 압축 포함 RGBA 낮음-중간 가변 가변
RGB + 1-비트 알파 Compressed ETC2 4비트 압축된 RGBA, 완전히 불투명하거나 완전히 투명한 알파 값 포함 RGBA 중간 4 0.5
RGBA Compressed PVRTC 4비트 압축된 RGBA, 텍스처가 사각형이어야 함 RGBA 중간 4 0.5
RGBA Compressed PVRTC 2비트 압축된 RGBA, 텍스처가 사각형이어야 함 RGBA 낮음 2 0.25
RGB Compressed ETC2 압축된 RGB RGB 중간 4 0.5
RGB Compressed ETC 압축된 RGB RGB 낮음 4 0.5
RGB Crunched ETC 압축된 RGB, 추가 디스크 크런치 압축 포함 RGB 낮음 가변 가변
RGB Compressed PVRTC 4비트 압축된 RGB, 텍스처가 사각형이어야 함 RGB 중간 4 0.5
RGB Compressed PVRTC 2비트 압축된 RGB, 텍스처가 사각형이어야 함 RGB 낮음 2 0.25
RG Compressed EAC 8비트 압축된 2채널(RG) RG 높음 8 1
R Compressed EAC 4비트 압축된 단일 채널(R) R 높음 4 0.5
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

Supported texture formats, by platform

The table below shows each texture format available in Unity, and the platforms that support them.

Texture format Windows macOS Linux Android iOS & tvOS WebGL (데스크톱용 브라우저) WebGL (iOS 및 Android용 브라우저)
RGB(A) Compressed BC7 지원(1) 지원(1) 지원 지원 안 함 지원 안 함 지원(1) 지원 안 함
RGBA Compressed DXT5 지원 지원 지원 지원 안 함(3) 지원 안 함 부분적 지원(2) 지원 안 함
RGBA Crunched DXT5 지원 지원 지원 지원 안 함(3) 지원 안 함 부분적 지원(2) 지원 안 함
RGBA 64비트 지원 지원 지원 부분적 지원(6) 지원 지원 안 함 지원 안 함
RGBA 32비트 지원 지원 지원 지원 지원 지원 지원
RGBA 16비트 지원 지원 지원 지원 지원 지원 지원
RGB Compressed DXT1 지원 지원 지원 지원 안 함(3) 지원 안 함 부분적 지원(2) 지원 안 함
RGB Crunched DXT1 지원 지원 지원 지원 안 함(3) 지원 안 함 부분적 지원(2) 지원 안 함
RGB 48비트 지원 지원 지원 부분적 지원(6) 지원 지원 안 함 지원 안 함
RGB 24비트 지원 지원 지원 지원 지원 지원 지원
RGB 16비트 지원 지원 지원 지원 지원 지원 지원
RG Compressed BC5 지원 지원 지원 지원 안 함 지원 안 함 지원 지원 안 함
RG 32비트 지원 지원 지원 부분적 지원(6) 지원 지원 안 함 지원 안 함
R Compressed BC4 지원 지원 지원 지원 안 함 지원 안 함 지원 지원 안 함
R 8 지원 지원 지원 부분적 지원(5) 지원 부분적 지원(5) 부분적 지원(5)
R 16비트 지원 지원 지원 부분적 지원(6) 부분적 지원(6) 지원(14) 지원(14)
알파8 지원 지원 지원 지원 지원 지원 지원
RGBA Half 지원 지원 지원 부분적 지원(7) 지원 부분적 지원(7) 부분적 지원(7)
RGB Comressed BC6H 지원(1) 지원(1) 지원 지원 안 함 지원 안 함 지원(1) 지원 안 함
RGB9e5 32비트 Shared Exponent Float 지원 지원 지원 부분적 지원(4) 지원 부분적 지원(4) 부분적 지원(4)
RGB(A) Compressed ASTC 지원 안 함 지원 안 함 지원 안 함 부분적 지원(8) 지원(10) 지원 안 함 지원(13 & 10)
RGBA Compressed ETC2 지원 안 함 지원 안 함 지원 안 함 부분적 지원(9) 지원 지원 안 함 지원
RGBA Crunched ETC2 지원 안 함 지원 안 함 지원 안 함 부분적 지원(9) 지원 지원 안 함 지원
RGB + 1-비트 알파 Compressed ETC2 4비트 지원 안 함 지원 안 함 지원 안 함 부분적 지원(9) 지원 지원 안 함 지원
RGBA Compressed PVRTC 4비트 지원 안 함 지원 안 함 지원 안 함 지원 안 함(12) 지원 지원 안 함 지원 안 함
RGBA Compressed PVRTC 2비트 지원 안 함 지원 안 함 지원 안 함 지원 안 함(12) 지원 지원 안 함 지원 안 함
RGB Compressed ETC2 지원 안 함 지원 안 함 지원 안 함 부분적 지원(9) 지원 지원 안 함 지원
RGB Compressed ETC 지원 안 함 지원 안 함 지원 안 함 지원 지원 지원 안 함 지원
RGB Crunched ETC 지원 안 함 지원 안 함 지원 안 함 지원 지원 지원 안 함 지원
RGB Compressed PVRTC 4비트 지원 안 함 지원 안 함 지원 안 함 지원 안 함(12) 지원 지원 안 함 지원 안 함
RGB Compressed PVRTC 2비트 지원 안 함 지원 안 함 지원 안 함 지원 안 함(12) 지원 지원 안 함 지원 안 함
RG Compressed EAC 8비트 지원 안 함 지원 안 함 지원 안 함 부분적 지원(9) 지원 지원 안 함 지원
R Compressed EAC 4비트 지원 안 함 지원 안 함 지원 안 함 부분적 지원(9) 지원 지원 안 함 지원
RGB(A) Compressed ASTC HDR 지원 안 함 지원 안 함 지원 안 함 부분적 지원(11) 부분적 지원(11) 지원 안 함 부분적 지원(11)

참고:

  1. WebGL 또는 OpenGL 사용 시 사전 DX11 레벨 GPU 또는 macOS가 제외됩니다. 지원되지 않는 경우 BC6H 텍스처는 RGBA Half로 압축 해제되고 BC7는 로드 시 RGBA32로 압축 해제됩니다.
  2. sRGB DXT를 지원하지 않는 웹 브라우저에서 리니어 렌더링을 사용하면 로드 시 텍스처가 RGBA32로 압축 해제됩니다.
  3. NVIDIA Tegra GPU가 탑재된 Android 기기는 예외입니다. 이 기기는 DXT/BC 포맷을 지원합니다.
  4. OpenGL ES 2.0/WebGL 1에서는 예외입니다.
  5. OpenGL ES 2.0/WebGL 1에서는 GL_EXT_texture_rg 확장 지원이 필요합니다.
  6. Android에서는 GL_EXT_texture_norm16 또는 해당 Vulkan 기능이 필요합니다.
  7. OpenGL ES 2.0/WebGL 1에서는 OES_texture_half_float 확장 지원이 필요합니다.
  8. Vulkan 또는 GL_KHR_texture_compression_astc_ldr OpenGL ES 확장이 필요합니다.
  9. Except on OpenGL ES 2.0; there ETC2 textures are decompressed into the format ETC2 fallback specifies in the Android Build Settings or on the Android tab for the Platform-specific overrides.
  10. Apple A7 칩 탑재 기기(2013)에서는 예외입니다.
  11. Android: GL_KHR_texture_compression_astc_hdr 확장이 필요합니다. iOS: A13 이상 칩(2019)이 필요합니다.WebGL: WEBGL_compressed_texture_astc 확장과 HDR 프로파일이 필요합니다. 지원되지 않는 경우 텍스처는 RGB9E5 포맷으로 압축 해제되며 알파 채널이 손상됩니다.
  12. Imagination PowerVR GPU가 탑재된 Android 기기는 예외입니다. 이 기기는 PVRTC 포맷을 지원합니다.
  13. WEBGL_compressed_texture_astc 확장이 필요합니다.
  14. EXT_texture_norm16 확장과 WebGL 2가 필요합니다.
Texture formats
Mipmaps