스크롤 창을 구현해 주는 에셋으로 EnhancedScroller를 쓰고 있었는데
이 에셋은 최대한 유니티 기본 컴포넌트를 활용하면서 굴러가게 설계했는지 ScrollRect도 쓰고 LayoutGroup도 활용하고 있었다.
아무튼 완벽한 스크롤창을 만드는 능력도 없고 귀찮아서 에셋써서 적당히 굴리고 있었는데...
거지같게도 스크롤러 Reload를 하거나 새 슬롯이 배치(== 오브젝트 풀 재활용)되면 저런 느낌으로
transform.position 반영이 이상하게 되는 증상이 발생
LateUpdate에서 transform.positon을 변경하도록 했는데도 저 난리였다.
그러다가 약 2일 정도 삽질을 통해 에셋이 런타임 중에 생성하던 VerticalLayoutGroup이 범인임을 알아냈다.
그리고 필요한 부분에
//scrollerVLG.CalculateLayoutInputHorizontal();
scrollerVLG.CalculateLayoutInputVertical();
//scrollerVLG.SetLayoutHorizontal();
scrollerVLG.SetLayoutVertical();
를 추가해서 레이아웃 그룹이 바로 refresh 되도록 했다.
아.... 편안...
-며칠 후-
에셋 거지같아서 그냥 직접 처음부터 만들어서 다 해결했어요.