Texture Format (플랫폼 별 효율적인 텍스처 압축 포맷)
Unity 문서에보면 플랫폼별 기본 텍스쳐 압축 포맷이 존재한다.
사용하는 플랫폼에 따라서 압축 포맷을 설정해주면 좀더 효율적인 리소스 관리가 가능하다.
내부에서는 텍스처의 압축에 진행되는 프로세스는 다음과 같다.
Image -> import -> Unity -> .png 복원 -> 알고리즘 압축 (PVRTC, ETC, ASTC) -> Compfile Build -> .apk or .ipa => GPU 압축풀어서 메모리 전송 => 화면 보여짐
모바일을 개발하면서 가장 많이 접하는 텍스처 압축 포맷은 다음과 같다.
적용하기전에 꼭 서비스하는 기기 목록에서 확인하고 진행하는것을 추천드린다.
형식 | 설명 |
RGBA | 무압축 방식 |
RGBA ETC1 | Android 압축형식 OpenGL 2.0 지원( Android 4.3 미만) |
RGBA ETC2 | Android 압축형식 OpenGL 3.0 (Android 4.3 이상) ※ 중국에서는 최신 디바이스도 지원안한다고함.. |
RGB Crunched ETC | 메모리 절약 < 디스크 절약하는 방식 (압축을 한번 더) |
PVRTC | iOS 기본 압축형식 (4bpp, 2bpp) |
ASTC | 이전 형식을 대체하도록 설계된 최신 형식입니다. 다양한 블록 크기를 지원하므로 이전 형식보다 더 유연합니다. 이 형식을 사용하는 것이 게임 크기를 최적화하는 좋은 방법입니다. |
추가로 Unity Korea에서 텍스처에 대한 자세한 설명이 있어서 추가로 첨부한다.
좀더 상세한 Unity 효율적인 텍스처 압축 이해하기 : [링크]
<ETC 방식>
<PVRTC 방식>
해당 적용 비율을 꼭 확인해야한다.
Android Texture Compression 설정값
Texture의 Inspector 의 하단에 Texture Format 을 변경하면 된다.
<텍스처의 포맷의 형식의 설정 값>
속성 | 내용 |
Max Size | 최대 텍스처 픽셀 사이즈 |
Resize Algorithm | 텍스처가 지정된 크기보다 클때 적용되는 알고리즘 |
Format | 플랫폼 형식에 따른 압축 방식 변경 |
Compression | 압축 방식 |
Use Crunch Compression | 크런치 압축 방식 사용 여부 |
Compressor Quality | 압축의 정도 (없음, 저품질, 보통품질,고품질) |
Split Alpha Channel |
알파 채널 분리 |
Override ETC2 fallback |
ETC2를 지원하지는 않는 경우에 재정의 |
Unity Texture Import Setting : [링크]
Unity 플랫폼별 권장, 기본 및 지원 텍스처 압축 포맷 : [링크]
Unity Crunch Compression of ETC Textures : [링크]
Android 텍스처 압축 형식 : [링크]
ETC 1과 ETC2에 대한 문서 : [링크]
★☆☆☆☆
'개발 > Unity' 카테고리의 다른 글
Unity)Android) 설치된 Android SDK 확인 방법 (0) | 2022.10.24 |
---|---|
Unity) UPM(Unity Pacakage Manager)특정 버전 선택하기(Git Dependencies) (0) | 2022.10.23 |
문제해결)Unity)Some objects were not cleaned up when closing the scene. (Did you spawn new GameObjects from OnDestroy?)The following scene GameObjects were found:~ (0) | 2022.10.13 |
Unity)NDK Version 확인방법 (0) | 2022.10.12 |
Unity) URL 이미지 다운 및 관리 코드 (0) | 2022.10.05 |
댓글