본문 바로가기

유니티/기타

(3)
라이브 게임 에셋 관리 개선기 - 1.어드레서블 에셋 도입 인트로게임에는 일반적으로 서비스 앱보다 훨씬 많은 리소스가 사용된다. 이는 게임이 사용자에게 지속해서 재미와 몰입감을 제공하기 위해 풍부한 컨텐츠와 동적인 경험이 필요하기. 만약 우리가 게임을 다운받았는데 게임 캐릭터는 다 똑같이 생긴 졸라맨 뿐이고 공격 커맨드가 하나뿐인 액션게임이었다고 생각해보자. (엥 이거 개꿀잼 게임 슈퍼액션히어로아닌가?) 이렇게 만들어도 게임이 재밌을 수는 있으나, 대부분은 대충 만든 디지털 쓰레기 게임이라고 생각하고 게이머들이 관심을 안 줄 것이다.게임에는 보통 대규모의 이미지와 3D모델들이 필요하며, 일반적인 서비스 애플리케이션보다 리소스가 집약적으로 사용된다. 현대의 컴퓨터와 모바일 기기가 성능이 개선되었음에도, 여전히 프로그램 최적화에 대한 필요성은 존재한다. 특히 모바일..
[Unity] 가비지 컬렉션, 베스트 프래틱스 이 글은 unity에서의 가비지 컬렉션에 대해 알아보기 위해 정리한 글입니다. 초반부에는 유니티 공식문서를 기반으로 내용을 정리하고, 후반에는 참고한 글들과 개인적 경험을 바탕으로 글을 작성하겠습니다. 공식문서(매뉴얼) 정리 내용 Unity는 응용 프로그램에서 메모리를 처리하기 위해 세 가지 메모리 관리 레이어를 사용합니다 - 관리되는 메모리: 관리되는 힙과 가비지 컬렉터를 사용하여 자동으로 메모리를 할당하는 제어되는 메모리 레이어 - 관리되지 않는 메모리: 가비지 컬렉터를 사용하지 않는 메모리 - 네이티브 메모리: Unity에서 엔진을 구동하는 데 사용하는 c++ 메모리. 가비지 컬렉터는 애플리케이션에서 메모리를 관리하는 가장 쉬운 방법이지만, 메모리 해제/할당 타이밍을 예측할 수 없기 때문에 불안정한..
[RenderTexture] 유니티 렌더텍스처 기본 렌더 텍스처는 런타임에 업데이트 되는 텍스처를 렌더링할 수 있는 텍스처입니다. 게임 내 TV 카메라 또는 미니 맵과 같은 많은 아이디어에 활용할 수 있습니다. 이번 글에서는 렌더 텍스처를 만드는 방법과 렌더 텍스처의 소스 카메라를 셋팅하는 방법을 다룹니다. 렌더 텍스처는 새 레벨 로드, 시스템 화면 보호기, 전체 화면 전환 등 특정 이벤트에서 손실 될 수 있음을 명심하세요. 그런 일이 발생하면 기존의 렌더 텍스처는 'not yet created'상태가 되며 'IsCreated' 함수로 확인할 수 있습니다. 다른 'native engine object' 유형과 마찬가지로 렌더 텍스처의 수명에 주의를 기울이고 릴리스(RenderTexture.Release' 기능과 함께 사용을 마치면 이를 해제하는 것이 중요..