본문 바로가기

전체 글

(42)
[Unity] Android에서의 고해상도 AppIcon 관련 현상 개발이 완료되고, 출시를 앞 둔 구글 서브미션에서 다음과 같은 답변이 왔다. "고밀도 디스플레이 단말기를 지원하기 위해 xxxhdpi(192x192) 실행 아이콘이 있어야 합니다. 실행 아이콘은 /res/mipmap-[density]/ 폴더에 위치해야 하며, manifest 파일 내 설정을 android:icon="@mipmap/app_icon"으로 변경해 주시기 바랍니다. 보다 자세한 내용을 위해 아래의 링크 페이지를 참조해 주시기 바랍니다. http://developer.android.com/guide/practices/screens_support.html#support" 오잉? 이게 무슨 소리야 하며... 지금까지 기본적으로 유니티의 android-PlayerSetting에서 아이콘을 설정해 ..
[Unity] iOS에서의 AppIcon 관련 Icon dirty 문제 AppIcon을 아트팀으로부터 받아 적용을 시켰는데, 특정 부분이 계속해서 지저분하게 나오는 문제를 겪었다. 원인이 되었던 것은 AppIcon 이미지가 true-color가 아닌, 압축된 상태였다는 것. 해당 아이콘을 Unity로 열어, True-color로 수정하였다. 이를 해결하려다 찾은 것이 하나 더 있는데, 바로 iOS-PlayerSetting의 Icon-Prerendered Icon이라는 항목이다. iOS-PlayerSetting의 Icon에는 2개의 옵션이 존재한다. Override for iOS : 이 옵션을 켜줘야 유니티에서 아이콘 할당이 가능 Pererendered icon : 이 옵션을 켜줘야 iOS 특유의 반짝이는 아이콘 효과가 입혀지지 않는다. 작업하는 김에..
[Unity] 각종 최적화 링크 모음 렌더링 http://www.slideshare.net/ozlael/unite-seoul-2016-60714130 모바일 게임 최적화의 정석 - 렌더링 편 메모리 관련 모바일 게임 최적화의 정석 - 메모리 편 모바일 게임 최적화의 정석 - 메모리 편 이전 글 모바일 게임 최적화의 정석 - 텍스처 압축 편 모바일 게임 최적화의 정석 - 렌더링 편 모바일 게임의 성공적인 출시를 위해서는 매우 한정된 자원 내에서 최대한의 앱 성능과 멀티태스킹 littles.egloos.com 모바일 게임 최적화의 정석 - 텍스쳐 압축 편 모바일 게임 최적화의 정석 - 텍스처 압축 편 모바일 디바이스들의 메모리 크기가 많이 커졌다고는 하나, 늘어난 해상도 대비 게임이 사용할 수 있는 메모리의 공간은 여전히 늘 부족하다. 또한 사..
[Unity] 유니티 메모리 관리 관련 링크들 http://la-stranger.blogspot.kr/2013/09/blog-post_25.html [Unity] 유니티의 메모리 관리 유니티 문서를 보면 언급되는 Managed Memory란 단서에서 흔히 추측하기로 유니티가 알아서 모든 메모리를 잘 관리하고 있을 것 처럼 생각되지만 사실은 그렇지 않다는 것이 함정. 사실은 유니티 시 la-stranger.blogspot.com UnityDocs : Understanding automatic memory management Unity - Manual: Memory in Unity Memory in Unity To ensure your application runs with no performance issues, it’s important to und..
[Exceptional C++ Style] 23. new와 예외, 2부 : 메모리 관리의 실질적인 문제들 이번 챕터에서는 new 할당 시도시 예외를 어떻게 보고하는 것이 바람직한가? 라는 질문과 new 할당 실패를 점검할 때에는 정말로 무엇을 점검해야 하는지, 그리고 과연 점검할 수 있느냐에 대한 이야기를 하고 있다. 책의 내용에 사실 새로울 만한 것이 없고, 평소 생각과 크게 다르지 않기에 요약만 정리하겠다. 메모리가 충분하지 않을 때 C++ 표준 new 함수들이 오류를 보고하는 주 된 형태 두 가지는? 1. std::bad_alloc을 던지는 방법 2. 예외를 던지지 않고, NULL을 리턴하는 방법 핵심 요약 1. nothrow new를 가급적 피할 것. : new 할당이 실패할 정도면 사실 시스템이 제대로 동작하고 있다고 보기 힘들다. : 최대한 gracefully-closing을 할 수 있도록 스택 ..
[Exceptional C++ Style] 22. new와 예외, 1부 : 여러 종류의 new 이번 챕터에서는 new 함수의 여러 종류에 대해 알아보고, 커스텀 할당자(operator new를 재정의하는)를 제작할 때 주의해야 할 점에 대해 기술하고 있다. 아울러, new 함수 중 예외를 던지지 않는 new 함수에 대한 경고도 함께 이야기하고 있다. 신참 질문 C++ 표준에 있는 new 함수는 어떠한 종류들이 있는가? C++ 표준은 다음과 같은 new 함수들을 제공하며, 추가적으로 그것들을 얼마든지 overload 할 수 있도록 허용한다. // 표준이 제공하는 operator new의 overloaded functions // 이외 배열에 해당하는 operator new [] 도 있지만, 규칙은 동일하므로 예시에선 제외... // 1. 보통의 평범한 new : 용법 new T void* ::ope..
[Exceptional C++ Style] 21. 컨테이너 메모리 사용 2부 : 얼마나 큰가? 이번 챕터에서는 우선 메모리 할당시 실제 할당되는 크기에 대해 간략하게 이야기한 뒤, vector, list, set(map)에 요소를 추가할 때 발생하는 비용과 바이트 정렬(alignment)을 곁들어 실제로 사용되는 메모리 크기에 대해 이야기한다. 신참 질문 new나 malloc으로 메모리 n 바이트 할당 요청시 실제로 할당되는 크기는 정확하게 크기 n과 일치하는가? 그렇지 않다면, 그 이유는 무엇인가? new나 malloc으로 n 바이트의 메모리를 요청했을 때, 실제로는 '적어도' n 바이트의 메모리를 할당하게 된다. 즉, n 바이트 이상의 메모리를 사용하게 될 수도 있는 것이다. 이는 메모리 관리자가 요청에 약간의 추가 비용을 부담하기 때문이다. 일반적으로 그러한 추가 부담에는 1) 관리를 위한 ..
[Exceptional C++ Style] 19. 파생된 클래스들에 대한 규칙 강제 이번 챕터에서는 C++ 클래스에 대해 컴파일러가 암묵적으로 생성하는 함수들에 대해 이야기하면서, 이러한 바탕 하에서 파생 클레스들에 대해 어떠한 규칙들을 강제할 수 있는지 설명하고 있다. 역시나 기본적인 내용이지만, 중요한 기본이기에 짚고 넘어가도록 하자. 신참 질문 하나의 클래스에 대해 암묵적으로 선언, 정의되는 함수들은 무엇이며, 선언과 정의되는 때는 언제인가? 그리고 그런 선언과 정의들은 어떠한 의미론을 가지는가? C++ 컴파일러는 클래스를 컴파일할 때 다음 네 가지 함수들이 존재하는지 체크해 존재하지 않으면, 컴파일러가 알아서 암묵적으로 이들을 선언한다. 이러한 암묵적은 생성은 1) 편의를 위한 것이자, 2) C와의 하위 호환성을 위한 것이다. C++에서 C 스타일의 struct는 오직 publi..