1. 빌드시 압축 방식
빌드 할 때 압축 방식을 아래 사진의 위치에서 선택 할 수 있다.
해당 옵션은 다음과 같이 3가지가 있다.
Default
기본 압축 포맷입니다. ZIP는 LZ4 및 LZ4HC보다 압축률은 조금 더 뛰어나지만 데이터의 압축을 푸는 속도가 느립니다.
LZ4
개발용 빌드에 적합한 고속 압축 포맷입니다. LZ4 압축을 사용하면 Unity에서 빌드된 게임과 앱의 로딩 시간이 크게 향상됩니다.
자세한 내용은 BuildOptions.CompressWithLz4를 참조하십시오.
LZ4HC
높은 압축률을 자랑하는 LZ4 변형 포맷입니다. LZ4HC는 빌드 속도가 느리지만 릴리스 빌드에서 더 뛰어난 결과를 제공합니다.
LZ4HC 압축을 사용하면 Unity에서 빌드된 게임과 앱의 로딩 시간이 크게 향상됩니다.
자세한 내용은 BuildOptions.CompressWithLz4HC를 참조하십시오.
정리를 하면, 개발 중이라면 LZ4를 사용해야하고 개발이 끝나고 최종적으로 빌드할 땐 LZ4HC를 사용하여 빌드 용량을 줄여보자
2. 빌드 후 APK 용량 분배 확인하기
빌드 파일의 용량을 줄이기 위해선 해당 파일이 어떻게 이루어졌는지 알 필요가 있다.
빌드 파일에 필요없는게 포함됬는지 혹은 비정상적으로 큰 용량을 가진 파일이 있는지 확인해서 줄여줘야한다.
빌드 파일의 용량 확인 방법은 다음과 같다.
빌드를 진행했으면 콘솔창에 여러가지 뜰 것이다. 이때 Console 탭을 우클릭한 뒤 Open Editor Lod를 클릭해보자.
그럼 다음과 같이 메모장이 뜨며 엄청난 내용이 입력되어 있을 것 이다.
여기서 밑 부분으로 내려간 뒤 스크롤을 이리저리 움직이며 앞에 kb, mb로 적힌 용량과 관련된 부분을 찾아주자.
내림차순으로 용량이 표시 된다. 이를 참고하여 빌드 용량을 줄여주면 된다.
3. TMP
유니티를 사용하면 기본 Text기능 보다 TMP를 많이 쓸 것인데, TMP를 최초 설치하면 Assets폴더에 TMP폴더가 생성된다.
이 폴더에 기본적으로 제공되는 폰트가 있으니 사용하지 않는다면 삭제를 하자. 빌드시 용량에 포함된다.
그리고 TMP Asset 파일을 생성 후 옵션에서 아래 사진과 같이 Clear Dynamic Data On Build를 꼭 체크하여 활성화 시켜주자.
개발을 진행 중에 TMP Asset파일에 캐시가 계속 쌓일 것인데 이것이 빌드에 같이 포함되기에 이 기능을 꼭 활성화 해서 빌드 용량을 줄여주자.
4. 오디오, 이미지 압축
게임에서 빠질수 없는 사운드 압축 관련이다
Compression Format
런타임 시 사운드에 사용되는 특정 포맷. 최근 선택했던 빌드 타겟에 따라 사용 가능한 옵션이 달라진다는 점을 유념해야 합니다.
PCM
품질은 높아지는 대신에 파일 크기가 커지며 매우 짧은 음향 효과에 가장 적합합니다.
ADPCM
발소리나, 충격음, 무기 소리와 같이 상당히 많은 노이즈를 포함하고 대용량으로 재생되어야 하는 사운드에 적합합니다. 압축비는 PCM보다 3.5배 작지만 CPU사용은 MP3/Vorbis 형식보다 작으며 앞서 언급한 사운드 카테고리에는 최적의 선택입니다.
Vorbis
압축하면 파일 크기는 작아지지만 PCM 오디오에 비해 품질이 낮아집니다. 압축량은 퀄리티 슬라이더를 통해 조절 가능합니다.
이 형식은 중간 길이 음향 효과 및 음악에 최적입니다.
예시로 Vorbis를 사용해서 기존 6MB -> 3.3MB로 압축된 것을 밑에서 알 수 있다.
오디오는 게임에 여러가지 많이 쓰이므로 압축이 필수다.
오디오와 마찬가지로 이미지 또한 압축을 진행해야 한다.
1. 텍스쳐 압축 기초 - 2D Sprite Texture는 기본적으로 UI 나 2D 게임의 캐릭터 스프라이트 등에 사...
m.blog.naver.com
5. 폰트 경량화
게임에서 텍스트를 쓰기 위해서 폰트가 필수로 있어야한다.
이 폰트가 또 용량을 좀 잡아먹는다. 그래서 폰트를 경량화를 시켜줘야한다.
폰트를 수정하는 프로그램을 다운 받아서 자신이 쓸 폰트를 열어보자.
예시로 FontLab 7 이라는 프로그램을 이용하여 폰트를 열어봤다.
폰트 파일에 글자를 넣고 텍스트를 적을 때 사용되는 폰트에서 해당 글자를 꺼내 와서 쓰는 것으로 대충 짐작할 수 있다.
우리가 글자 있는 칸에 간혹 ㅁ로 표현되는 것을 한번 쯤은 봤을 건데 이는 해당 글자가 폰트에서 아래 사진과 같이 빈공간으로 남아있기 떄문이다.
이 빈공간 또한 폰트의 용량을 키워주는 역할을 하기 때문에 지워줘야한다.
그리고 폰트 중에 우리가 안쓰는 글자, 예로 꼛, 벯, 걂 등 평소에 쓰지 않는 글자가 포함 되어있을 수 있다. 이는 쓰이지 않으므로 삭제해도 된다.
물론 사용자가 채팅을 치거나 하는 기능에는 그대로 두는 것이 맞다.
평소에 안쓰이는 글자 - 삭제 대상
정말 쓰는 글자만 남겨두고 경량화를 진행하면 폰트 파일의 용량이 아주 많이 줄어들 것이다.
'Unity > 정보' 카테고리의 다른 글
[Unity] 경량화된 notosans 폰트 (0) | 2023.05.09 |
---|---|
[Unity] 사용자 커스텀 마우스 커서 적용 (0) | 2023.04.25 |
[Unity] 아바타 마스크를 이용해서 부위별로 방향 분리 하는 방법 (0) | 2023.04.21 |
[Unity] UI 드래그 이동 (0) | 2023.04.20 |
[Unity] 스크롤바 UI Prefab (0) | 2023.04.20 |