유니티 엔진 (Unity Engine)

Unity 게임을 살리는 메모리 관리와 최적화 (G-CON X IGC 오지현 에반젤리스트)

원생계 2022. 11. 23. 11:24
 
 

유니티 코리아의 아이콘 꽃미남 오지현(오즈라엘 @ozlael)님이 G-CON X IGC 에서 게임 개발 시 메모리 최적화를 주제로 강연을 했군요.

크게 신경써야 할 부분, 메모리 프로파일러, 코딩 팁 등을 소개합니다.

 

주제 : 모바일 게임, 메모리 최적화도 안하면 어쩔티비

메모리 프로파일러 (Memory Profiler)

어드레서블 (Addressables)

중복된 에셋으로 메모리가 낭비되는 것을 관리하기 위해 어드레서블(Addressable) 시스템 활용을 권장합니다.

유니티 코리아 유튜브 공식 채널에서도 이 어드레서블을 소개한 영상이 있어 링크 남겨봅니다.

유나이트 서울 2020 - Addressables 사용 가이드 (초급) Track3-4

https://www.youtube.com/watch?v=EP3pvPAcHSo

 

워크플로 속도 향상을 위한 기능 소개#3 어드레서블(Addressables)
어드레서블 공식 유니티 문서

텍스쳐 포멧 (Texture Format)

텍스쳐 포멧에 대한 개념적인 이야기와 권장되는 포멧 이야기도 다루고요.

신형 모바일 기기가 많이 보급된 국가를 대상으로 서비스 한다면 ASTC 포멧을 권장한다고 합니다. 그렇지 않은 국가에서 서비스를 한다면 좀 보수적으로 접근 해야겠죠. (아이폰 PVRTC, 안드로이드 ETC)

씬 전환에 따른 로딩 테크닉

A씬에서 C씬으로 넘어갈 때, C씬의 로딩이 끝나면 A씬을 내리가 되는데, 이 때 한번에 A, C 두 개의 씬이 메모리에 올라가면서 문제가 생길 수 있습니다. 그래서 가벼운 B씬을 사이에 두고, A씬이 Unload 된 뒤에 C씬을 로딩하는 방식으로 로딩 브릿지 씬(제 맘대로 네이밍)을 두면 좀 더 안정적인 씬 로딩이 가능합니다.

가비지 컬렉터 (Garbage Collector) 이해와 유의사항들

유니티 프로그래밍에서 빠질 수 없는 게 가비지 컬렉터, 가비지 컬렉션의 이해라고 할 수 있습니다. 오브젝트 풀을 활용한다거나, 문자열 및 LINQ 등의 탐색, 비교 등의 여러 알고리즘 코드 작성 시 불필요한 가비지가 발생하지 않게 한다거나 하는 등 여러가지 알려진 유의사항 들이 있습니다.

기사를 읽고 내용을 제 방식대로 요약, 정리해봤습니다. 좋은 내용인 것은 물론이고 중요한 내용이기 때문에 주기적으로 컨퍼런스 강연을 통해서도 반복적으로 강조되는 내용도 있었습니다. 오랜 지인이자 연사로 고생해주신 오즈라엘님에게도 감사인사 드립니다.

 

기사 링크

https://www.inven.co.kr/webzine/news/?news=278863&vtype=pc

 

이거 안하면 게임 터짐, 메모리 관리

주제 : 모바일 게임, 메모리 최적화도 안하면 어쩔티비 강연자 : 오지현 - 유니티테크놀로지스코리아 에반젤리스트 분야 : 게임엔진, 개발 시간 : 2022.11.17(목) 17:00 ~ 17:50 요약 : 유니티 오지현 에

www.inven.co.kr

 

728x90
반응형