UI요소 추가하기
UI:유저 인터페이스
논다이제틱: 게임메뉴, 총의 조준점
다이제틱: 방사선 수치를 확인
스파셜: 오브젝트로 가는 것을 알려주는 내비게이션
메타: 혈은, 금이가는 유리창
GUI:게임 유저 인터페이스 아이콘,시각 표시기(체력바)를 제공
HUD: heads up display 게임 플레이 동안 실시간 정보를 표시함
UMG: 프로그래밍 언어 사용하지 않고 UI요소를 만드는 언리얼 비주얼 툴
1. 논다이제틱(메뉴)

위젯 블루프린트를 이용하여 메뉴를 만든다
주의할 점은 Canvas Panel(배경)의 자식요소로 만들어야한다

위젯 생성노드로 아까 만든 위젯 대상으로 변경한다
Get Player Controller을 Owing Player에 연결하여 플레이어와 상호작용 하도록한다
Add to Viewport:
Construct 이벤트:
Game Paused Node: 상호작용 키를 누를 때 일시 정지 상태인지 아닌지 알수있다
위젯 생성노드의 return값인 set visibility를 Show mouse cursor와 연결하여 마우스 커서가 true일때 보이게 하고 false일때 안보이게한다

On click이벤트를 추가하여 키와 상호작용 할수있도록 만든다
2. 상호작용 E키 눌러 문열기

문같이 생긴 구조물을 원하는 위치에 설치한다

해당 구조물의 블루프린트 편집으로 들어가 Box Collision와 Text를 추가한다

On Compontent Begin Overlap와 On Compontent End Overlap 이벤트를 추가하여 추가한 Text가 플레이어가 Box Collision에 접촉하면 생기게 만든다

구조물의 초기 위치값을 알아내기 위해 변수 Starting Location을 저장한다

현재 구조물의 위치와 이동후 구조물의 위치를 vector+vector함수를 이용해 setworldlocation에 출력되도록한다

타임라인에서 이동시간을 3초 이동 값을 250로 설정한다

인터페이스에 OpenDoor함수(커스텀 이벤트)를 연결한다
이때 Interact함수는 E키와 상호작용중 이다

실행후 화면
커스텀 이벤트에 대한 문서: docs.unrealengine.com/ko/ProgrammingAndScripting/Blueprints/UserGuide/Events/Custom/index.html