본문 바로가기
유니티

[유니티] 오브젝트의 부모가 바뀔 시 scale 조정 안하는법

728x90
반응형

🎲 발생한 문제

 

간단한 퍼즐게임을 만들던 도중에 Canvas의 렌더 모드를 변경하게 되었는데 그 이후로부터 퍼즐의 크기가 말도 안되게 커졌습니다.

 

 

 

 

🍳 발생 원인

World Space에서 Screen Space - Camera로 바꾸면서 캔버스의 스케일이 화면 픽셀값에 맞게 고정되었는데 이때 캔버스 아래에 프리팹을 생성해줄 때 프리팹의 scale이 부모 스케일의 영향을 받은 뒤에도 현재 스케일이 고정되도록 조정해주어서 그렇습니다. 예를 들어 부모의 scale이 0.1이고 프리팹의 scale이 1이라면 프리팹을 생성할때 local scale을 10으로 바꿔주어 world scale이 1이 되도록 해주는 방식입니다.

 

 

 

🎨 해결법

해결방법은 생각보다 간단합니다. 해당 프리팹을 생성하거나 부모 오브젝트를 변경해줄 때, bool worldPositionStays라는 매개변수 값을 false로 설정해주면 됩니다.

반응형