프로그래밍/유니티 (unity)
유니티 UI) layout 에서 특정 child sorting order 설정하는 법
DevIndie
2022. 9. 1. 00:28
특정 아이콘 등 선택된 자식을 앞으로 나오게 해야하는데 순서를 바꾸면 실제 레이아웃(grid ,horizontal 등) 내의 위치마저 바뀌는 문제가 생긴다.
이때는 자식에 Canvas 컴포넌트를 붙여주고 Override Sorting 을 체크해준 후 Order in Layer를 스크립트 등으로 sort를 컨트롤 해주면 된다. 즉, Canvas - layout 오브젝트 - 자식(Canvas)
Layout이 붙어있는 부모의 자식(icon이라고 가정)에 Canvas를 붙여주면 그 자식의 자식들도 자동으로 부모인 icon을 따라서 sort 된다.
** 버튼 등 상호작용을 위해 아래 그림과같이 Graphic Raycaster도 오브젝트에 붙여줘야한다.
https://www.reddit.com/r/Unity3D/comments/7psox8/ui_element_render_order_in_grid_layout/