canvas 3

캔버스 내 특정 UI만 위로 오게하고 싶다면...? (Canvas - Override Sorting)

위의 사진에서 PAUSE라는 글씨위에 X와 체크 표시가 위에 올라가서 보기 좋지 않은 모습이다. PAUSE라는 글씨는 여러 복잡한 이유로 캔버스를 이동시킬 수는 없는 상황이였고 이럴 때 쓸 수 있는 것이 Canvas의 Override Sorting이다. 가장 위에 올라와야하는 저 글씨 PauseTxt 에 찾아가 Canvas 컴포넌트를 달아준다. 그냥 달아주기만 하면 안되고 Override Sorting을 체크하고 Order in Layer를 높게 설정해주자 여기선 20정도로 설정해주었다. 다른 UI요소들은 Order in Layer가 0~10 사이였기에 가장 높게 준 것이다.  이렇게하면 의도대로 PAUSE 이팩트가 맨 위로 올라가게 된다. Override를 해서 사용하기 때문에 캔버스를 아예 하나 더 ..

유니티 2024.08.23

유니티 UI의 Rect Transform

일반적인 Transform과 다르게 UI를 만들어보면 Rect Transform이라는 컴포넌트를 가지고 있다. 트랜스폼은 포지션, 로테이션, 스케일의 값을 가지고 있는 반면 렉트 트랜스폼은 로테이션, 스케일 말고도 다양한 값을 가지고 있다. 그중에서 가장 눈에 가는 것이 자주 쓰이는 앵커(anchors)를 모아둔 앵커 프리셋이다. 앵커 프리셋 설명에 앞서 앵커에 대해 알아보면 앵커는 UI 위치의 기준점이라 볼 수 있다. 이 기준점은 UI의 부모 오브젝트의 영역을 대상으로 하는데 부모가 Screen Space - Overlay로 렌더링된 캔버스일 경우 스크린 전체가 캔버스가 된다. 고로 이미지의 앵커가 middle center면 아래 사진과 같이 스크린의 정중앙에 네모 이미지가 위치하는 것을 알 수 있다...

유니티 2024.04.17

유니티 캔버스(Canvas)와 Render Mode

RectTransform 에 앞서 UI에 대해 얘기해보면 UI, 즉 유저 인터페이스는 유저가 소프트웨어를 편리하게 다룰 수 있도록 도움을 주는 역할을 하고 이러한 UI는 유니티에서는 캔버스(Canvas)라는 도화지 위에서 그려지게 된다. 캔버스는 Canvas 컴포넌트를 포함하고 있다. 캔버스의 경우 카메라로 찍는 것이 아니라 화면에 그려지기에 기본적으론 카메라의 위치와는 무관하다. 씬에 캔버스가 없다면 UI를 만들면 자동적으로 캔버스를 생성하며 생성한 UI는 캔버스의 자식으로 만들어지게 된다. 즉 모든 UI는 캔버스 안에 있어야 한다는 것이다. 캔버스 컴포넌트는 다음과 같이 생겼다. 이중에서 렌더 모드에 대해 알아보자 Render Mode 1. Screen Spcae - Overlay Render Mod..

유니티 2024.04.16