[Unity 최적화] UI SetActive 호출 타이밍
·
유니티(Unity)/최적화 기법
✍️ 개요      📌 UI SetActive 최적화 방법 /// Bad Case (총 3회의 dirty 플래그 처리)Image img = GetComponent();img.gameObject.SetActive(true); //dirty 플래그 처리img.fillAmount = 1f; //dirty 플래그 처리img.transform.position = Vector3.zero; //dirty 플래그 처리/// Good Case (총 1회의 dirty 플래그 처리)Image img = GetComponent();img.fillAmount = 1f;img.transform.position = Vector3.zero;img.gameObject.SetActive(true); //d..
[Unity 최적화] 오디오(사운드) 최적화
·
유니티(Unity)/최적화 기법
📌 개요    게임에서 오디오 리소스는 많은 메모리 사용량을 차지하는 에셋 중 하나입니다. 특히 3D 환경을 지원하는 기능을 2D에서 사용하도록 설정하여 메모리 혹은 성능 최적화에 실패하기도 합니다. 그래서 오늘은 Unity에서 오디오를 최적화하는 방법에 대해 살펴보겠습니다.     📌 Audio Import 세팅 최적화  Force To Mono오디오를 단일 채널 사운드로 다운 믹싱합니다.입체 음향이 사라지지만 비약적으로 용량을 줄일 수 있습니다.단, 모노 음원이라면 아무런 영향이 없음3D 게임이 아니라면 체크합니다.Normalize : 사운드 정규화 (일반적으로 체크)단, 이미 사전에 볼륨 작업을 했다면 체크 해제  Load In Background비동기 방식으로 백그라운드에서 로딩됩니다.천천히 ..
[Unity 최적화] UGUI 최적화
·
유니티(Unity)/최적화 기법
✍️ 개요 이번 글에서는 Unity UGUI와 관련하여 최적화하는 방법을 소개하도록 하겠습니다. 주로 현업에서 자주 사용하는 Text 또는 Image와 같은 컴포넌트 최적화에 대해 살펴보고, 어떤 컴포넌트는 지양해야 하는 지 등 컴포넌트 관련 최적화 방법을 살펴보겠습니다.    [ UI 시스템 설계 참고 ] [Unity 최적화] UI 시스템 설계📌 개요    Unity로 게임을 개발하면 UI 시스템은 반드시 필요한 요소 중 하나입니다. 하지만 많은 개발자 분들이 UI 시스템을 최적화하지 않고 설계하는 경우가 많습니다. 오늘은 Unity UI의 기gus6615.tistory.com UI 시스템 설계의 내용을 일부 포함하고 있습니다. 이번 포스터에서는 설계보다는 콘텐츠 개발 입장에서 최적화하는 법을 살펴보..
[Unity 최적화] UI 시스템 설계
·
유니티(Unity)/최적화 기법
📌 개요    Unity로 게임을 개발하면 UI 시스템은 반드시 필요한 요소 중 하나입니다. 하지만 많은 개발자 분들이 UI 시스템을 최적화하지 않고 설계하는 경우가 많습니다. 오늘은 Unity UI의 기본 동작 원리를 이해하고, UI 설계 최적화 결과를 분석하며 살펴보도록 하겠습니다.   📌 캔버스(Canvas) 분리  캔버스는 UI 요소를 나타내는 메시를 생성하고, UI 요소가 변경되면 메시를 재생성하며, 실제로 UI가 표시되도록 GPU에 드로우 콜(Draw Call)을 발행합니다. 여기서 문제점은 하나의 UI 요소가 변경되면 캔버스에 존재하는 모든 UI 요소의 메시를 재구축한다는 점입니다. 많은 개발자가 하나의 캔버스에 수천 개의 UI 요소를 배치하는데, 이 방법은 CPU 비용을 급증시킬 수 있..