본 포스팅은 패스트캠퍼스 환급 챌린지 참여를 위해 작성하였습니다.
https://fastcampus.info/4oKQD6b




오늘은 UGUI 강의를 들었다.
이미지 최적화
Draw call이라는 것에 대해 배웠다.
Draw call이란 이미지를 화면에 그리기 위해 소모되는 비용을 말한다.
하나의 이미지에서 스프라이트를 나눠서 거기서 몽땅 가져오면 Draw call이 한번만 발생하지만, 다른 여러 이미지에서 스프라이트를 가져왔다면 드로우 콜이 여러번 발생해서 성능저하가 일어날 수 있다.
- 성능 저하를 막으려면?
- Create > 2D > Sprite Atlas 하면 이미지를 묶을 수 있다.
- 묶고 나서 기존처럼 이미지 가져다가 사용하면 된다. 아틀라스가 빌드할때 줄여서 구워준다고 한다.
- Pack Preview 버튼 안보이는 경우: Project Setting > Editor > Sprite Atlas > Mode를 Alway Enable로 설정하면 보인다.
그리고 이미지 압축에 대해서도 배웠는데 뭔가 설명이 약간 부족한 것 같아서 추가로 조사해봤다.
- ETC1: 투명도를 지원하지 않는다. 투명도가 필요하면 별도의 아틀라스를 만들어야 한다. 압축률은 1/6 정도다.
- ETC2: 투명도를 지원한다. ETC1와 호환되고 압축률도 비슷하다.
- PVRTC: 투명도를 지원한다. 압축률은 1/4 ~ 8정도 된다. 압축시 약간 블러가 생기고 작은 텍스쳐에서 품질 저하가 심할 수 있다.
- ASTC: 투명도를 지원한다. 거의 모든 텍스처를 압축할 수 있다. 사용자가 선택한 픽셀 블록 단위로 압축한다. 따라서 선택한 블록에 따라 1/ 0.89~8 정도로 압축된다. 즉, 항상 압축되는 것은 아니다.
Text Mesh Pro
각 UI 컴포넌트에 대한 설명을 들었는데, 한글 폰트를 넣을때 좀 문제가 있었다.
강의에서 알려준대로 했는데 한글이 계속 네모로 나와서 구글 검색을 했다.
글자 구간을 '32-126,44032-55203,12593-12643,8200-9900' 으로 직접 지정해줘야 했다.
그리고 이렇게 하고나면 글자가 엄청 많아져서 Atlas Resolution도 같이 키워줘야 제대로 동작했다.

UGUI 해상도 대응
가로 비율을 일정하게 유지하는 방법을 배웠다.
컴포넌트의 앵커를 top-stretch로 설정하면 상단에 흰색 앵커가 생긴다.
그 앵커 위치를 이미지 사이즈에 맞춰주면 화면 크기가 변해도 컴포넌트가 차지하고 있는 가로 길이는 일정한 비율로 유지된다.
근데 세로 길이는 안변한다는 단점이 있었다...
뭔가 방법이 있을 것 같아서 찾아봤는데, Aspect Ratio Fitter 라는 컴포넌트가 있었다!

위 처럼 조절하면 width가 늘어남에 따라 height도 변경된다!
+) 그리고 해상도 비율 유지하는 코드를 따라서 쳤는데, 뭐가 문제인지 제대로 적용이 안됐다. 챗 지피티한테 물어봤는데도 해결 못해서 일단 홀드...ㅠ
이제 유니티 엔진 심화로 들어가는데, 이론 그만듣고 실습하고싶다...ㅠ
'유니티' 카테고리의 다른 글
| 패스트캠퍼스 환급챌린지 9일차 : 한 번에 끝내는 유니티&C# 게임 개발 초격차 패키지 강의 후기 (0) | 2025.11.20 |
|---|---|
| 패스트캠퍼스 환급챌린지 8일차 : 한 번에 끝내는 유니티&C# 게임 개발 초격차 패키지 강의 후기 (0) | 2025.11.19 |
| 패스트캠퍼스 환급챌린지 6일차 : 한 번에 끝내는 유니티&C# 게임 개발 초격차 패키지 강의 후기 (0) | 2025.11.17 |
| 패스트캠퍼스 환급챌린지 5일차 : 한 번에 끝내는 유니티&C# 게임 개발 초격차 패키지 강의 후기 (0) | 2025.11.16 |
| 패스트캠퍼스 환급챌린지 4일차 : 한 번에 끝내는 유니티&C# 게임 개발 초격차 패키지 강의 후기 (1) | 2025.11.15 |