슬롯

UMG 의 슬롯 사용법 개요입니다.

Choose your operating system:

Windows

macOS

Linux

Slot (슬롯)은 위젯끼리 붙여주는 보이지 않는 풀입니다. 슬레이트는 먼저 슬롯을 만든 다음 그 안에 넣을 컨트롤을 선택한다는 점에서 좀 더 명시적입니다. 하지만 UMG 의 경우, 자손 위젯을 추가할 때 올바른 종류의 슬롯 을 자동으로 사용하는 패널 위젯이 있습니다.

게다가 각 슬롯 은 각기 다릅니다. 예를 들어 그리드에 컨트롤을 배치하려는 경우, 행이나 열같은 것으로 설정할 수 있을 것입니다만, 이 프로퍼티에는 캔버스에 배치된 위젯상에 있는 것과는 무관합니다. 이럴 때 슬롯 이 쓰입니다. 그리드 슬롯 은 행과 열만 이해하는 반면, 캔버스 슬롯 은 앵커 등을 통해서 콘텐츠 레이아웃을 어떻게 할지 완벽하게 이해하는 것입니다.

슬롯 접근하기

관례상 모든 슬롯 관련 프로퍼티는 디테일 패널의 Layout 카테고리에 나타납니다 (아래 노랑 박스).

SlotLayout.png

위젯에 사용되는 슬롯 유형은 괄호속에 표시되는 것도 알 수 있습니다 (위의 초록 화살표).

레이아웃 프로퍼티 설정하기

실행시간에 Layout 아래 프로퍼티를 변경하기 위해서는, 블루프린트 나 C++ 에서 위젯의 슬롯 멤버에 접근한 다음 올바른 슬롯 유형 으로 Cast (형변환)해 주면 됩니다. 그렇게 하고 나면 프로퍼티를 변경할 수 있게 되는데, 그 예는 아래 나타나 있습니다.

SlotCast.png

위에서, Vertical Box 이름 GameTitleBox CanvasPanel 에 배치되었습니다. Vertical Box 에 연관된 슬롯 을 구하여 CanvasPanelSlot 유형으로 Cast (형변환)해 주면, "StartButton" 이 클릭되었을 때 박스의 위치를 설정할 수 있게 됩니다.

현재 블루프린트 에는 SETTER 노드만 노출됩니다. Layout 에서 프로퍼티를 GET 할 필요가 있는 경우, 프로퍼티를 저장할 변수를 만든 다음, Event Construct 시 그 변수를 통해 Layout 프로퍼티를 SET 해 줘야 참조되어 나중에 접근할 수 있게됩니다.

언리얼 엔진 문서의 미래를 함께 만들어주세요! 더 나은 서비스를 제공할 수 있도록 문서 사용에 대한 피드백을 주세요.
설문조사에 참여해 주세요
취소