전부 감상
EditorApplication.playModeStateChanged 호출 순서
EditorApplication.playModeStateChanged의 콜백 순서를 정리. Editor Play시 1. PlayModeStateChange.ExitingEditMode 2. PlayModeStateChange.EnteredPlayMode Editor Play 종료시 1. PlayModeStateChange.ExitingPlayMode 2. PlayModeStateChange.EnteredEditMode
Unity Profiler가 연결되지 않을 때
기본적으로 유니티 프로파일러를 사용하려면 Development Build Autoconnect Profiler Build And Run 이렇게하면 프로파일러 창에서 확인할 수 있다. 하지만 이렇게 해도 동작하지 않을 때 Autoconnect Profiler를 비활성화해보자. 나의 경우에는 프로파일러에서 확인할 수 있었다.
유니티 최적화(Unity Optimization) - UI
Text Rich Text는 필요하지 않다면 체크 해제 합니다. Best Fit은 필요없다면 사용하지 않습니다 FontSize별로 폰트 이미지 아틀라스를 생성합니다. 성능이 저하되고 메모리 단편화가 발생합니다. (메모리 사용량 증가와 빈번한 풀 GC 수행) Best Fit이 아닐경우 Hozizontal Overflow를 Wrap대신 Overflow 사용을 고려해보세요. RectTransform의 Width나 Height가 작다면 글자가 잘려보일 수 있습니다. Image Sprite를 None으로 두지마세요. None으로 비워두면 drawcall이 올라갑니다. None대신 주변 Image와 동일한 Atlas이미지를 넣어주세요. Raycast Target은 필요하지 않다면 체크 해제 합니다. Text와 같은..
[유니티 TIPS] .NET 완전 정복 (feat. 골드메탈)
유니티의 .NET 유니티에는 .NET Framework 와 .NET Standard 2.1가 존재함. .NET Framework / .NET Core / Xamarin등 각 용도별로 존재하던 것을 .NET Standard로 합침 .NET Standard가 모든 개발 모듈을 감싸고 있는 형태. 하지만 그렇게 됨으로써 점점 덩치가 커짐. 2002~2020의 로드맵 .NET Framework → .NET Core → .NET 으로 네이밍이 진화함 .NET Framework은 window에서만 실행가능한 라이브러리이므로 다른 플랫폼으로의 전환이 힘듦. .NET Core는 .NET Framework의 단점을 보완하여 여러 플랫폼에 배포할 수 있게 제공. .NET Core의 라이브러리들을 모듈화해서 필요한 라이브러..
[유니티 TIPS] 모바일 게임 성능 최적화 - 2편
[유니티 TIPS] 모바일 게임 성능 최적화 - 2편 Asset 이미지는 tga, jpg, png, psd, psb... 뭘 써도 전혀 상관이 없다. 어차피 유니티에서 TextureFormat을 변환해서 쓰기 때문이다 오히려 psd를 사용하는게 관리 측면에서 좋을 수 있다. 이미지 수정 후 다시 png같은걸로 짤라 쓸 필요가 없기 때문. (하지만 확인해보니 psd가 1개의 아틀라스가 되기 때문에 사용하지 않는 이미지도 아틀라스로 묶이므로 관리가 더 힘들어질 수 도 있을 것 같다) 사운드도 mp3, ogg... 뭘 쓰더라도 상관없다. 오히려 mp3같은걸 import하면 유니티가 압축을 풀었다가 다시 압축하므로 손실이 발생할 수 있으므로 wav를 쓰는게 좋다 기본 텍스쳐포맷보다는 각 플랫폼에서 overrid..
[유니티 TIPS] 모바일 게임 성능 최적화 - 1편
[유니티 TIPS] 모바일 게임 성능 최적화 - 1편 Profiling 최적화할때 프로파일링은 필수 최적화는 수시로 해야 한다. 프로토타입은 할 필요 없다. 어차피 바뀌는게 많으므로 맹목적으로 하지 말것 병목지점을 찾아서 최적화 지점을 알아야 한다 에디터가 아닌 모바일 타겟 디바이스에서 돌려봐야 한다. 성능이 다르기 때문에 병목지점이 다르다 Xcode intstruments를 이용하면 유니티 프로파일링보다 더 디테일하게 볼 수 있다. 프로파일링 툴/디바이스가 모두 애플것이므로. 아이폰 성능 프로파일링을 위한 최고의 툴! Xcode Instrument로 게임 성능 측정하기 안드로이드는 스냅드래곤이나 Android Studio등 다양하게 있으니 확인해보자. Profiler Analyzer를 이용하면 프로파일..
유니티 코드 커버리지
코드 커버리지란? 소프트웨어의 테스트를 논할 때 얼마나 테스트가 충분한가를 나타내는 지표중 하나다. 말 그대로 코드가 얼마나 커버되었는가이다. 소프트웨어 테스트를 진행했을 때 코드 자체가 얼마나 실행되었냐는 것이다. ( https://ko.wikipedia.org/wiki/%EC%BD%94%EB%93%9C_%EC%BB%A4%EB%B2%84%EB%A6%AC%EC%A7%80 ) 코드 커버리지 - 위키백과, 우리 모두의 백과사전 ko.wikipedia.org 유니티 코드 커버리지는 실행된 코드의 양을 측정하고 보고서를 백분율로 보여준다. 코드 확인 안된 부분이 코드 단위로 확인이 가능하다 튜토리얼은 패키지 페이지에 워낙 잘 되어 있어서 직접 확인해보면 좋다 https://docs.unity3d.com/Pack..