성과 유닛 소환 시스템은 프로토타입때 했던 부분이므로 후딱 복사해서 집어넣었다(UI는 나중에 해당파트 할때 제대로 보수하기로 하고)
이전엔 성 체력 상태별 스프라이트 변화를 무식하게 스프라이트 3개 넣어서 햇는데,
본애니메이션 만들면서 알게된 스프라이트라이브러리 에셋을 이용해 이것도 예쁘게 정리햇다
근데 이것들 갖고놀다가 가격 0으로 만들고 이따구로 막 뽑아본적이 잇는데
한 10마리 정도만 생겨도 프레임드랍이 생기기 시작하는 것이엇다...
물론 지금 생각하는 게임 특성상 화면에 유닛이 몇십마리씩 차는 일은 거의 없을거같지만
누군가가 '2d는 어지간하면 최적화 걱정 괜히 미리 안해도돼' 해서 마음 놓고 잇엇는데
본애니메이션 캐릭 하나당 본 10개 넘게 쓰고잇기도 하고
그 악명높은 프로파일러를 열어보고 좀 살펴보는데
하나하나는 잘모르겟고 아무튼 우상단에 가장 눈에 띄는 하늘색의 '스크립트' 부분이 가장 큰 리소스를 잡아먹는 것 같앗다
스크립트는 수학함수같은거 도배하지 않는이상 생각보다 연산시간 안잡아먹을거같은데 의외엿다
오마에... 오마에가 문제인데스?
SpriteSkinUtility.Deform()이라는 분충이 시간을 꽤 많이 잡아먹는것같앗다
스프라이트스킨이라면...
아마 본애니메이션에 쓰이는 컴포넌트인데...?
자체적으로 이미 제공된 컴포넌트의 스크립트를 어케 건드리라는걸가...
일단은 유니티 최적화 방법을 구글링해서 지금 내가 할 수 잇는 것들부터 손보기로 햇다
사소할것같지만 하면좋고 안해도그만이지
Find류 함수를 자제하라는데 Update()에 for문을 넣어놓고 Find를 이따구로 중첩시켜놓은곳도 잇엇다
바로 정리
근데 딴거만 건들고잇엇고 잠시 생각해보니 결국은 저 SpriteSkinUtility.Deform()을 건들지 않으면 병목이 풀리지 않을 것이다
2D애니메이션 문서를 보니 Burst와 Collections 패키지를 깔면 개선이 된다고 한다
깔으라면 깔아야지
? 이왜진?
이따구로 뽑아도 렉이 안걸린다
야호~~~
믓지다
좆니티
이것저것 깔아야대는 유니띠는 참 어렵구마잉...
2D애니메이션이 생긴지 얼마 안된 패키지라 불안정한건지 모르겟네요
burst는 잡시스템 코딩에 영향을 주는 걸로 아는데, 잡시스템 안써도 burst를 포함시키면 성능이 향상됨?