언리얼 엔진5에서 물체의 좌표 실시간으로 나타내기
요번 시간에는 언리얼 엔진에서 뷰포트 공간 안에서 물체의 좌표축에 해당하는 값을 나타내 보기로 한다. 언리얼 엔진에서는 공간이라고 하면 크게 뷰포트 상에 보이는 공간이 있고 블루프린트에서 보이는 공간이 존재한다. 뷰포트 공간을 보통 'World'라고 표현하고 블루프린트 상 존재하는 공간은 'Relative'라고 표현한다. 물체의 좌표 표현은 월드를 기준으로 한다.
먼저 비어있는 맵 한 개를 만들고 블루프린트도 한 개 만든다. 그리고 월드에 만들어진 블루프린트를 놓는다. 그리고 블루프린트를 켜고 구체모양의 오브젝트를 한 개 만든다. 만드는 법은 왼쪽 패널에 Components에 있는 Add 버튼을 누르고 찾아보면 나온다. 구체랑 같이 Text Render라는 것도 찾아서 블루프린트에 나타낸다. 이것은 텍스트 메시지를 공간 상에서 보여줄 수 있다. 여기서는 이 기능을 통해 좌표 값을 보여준다. 한 가지 유념해야 할 것은 이 하얀 화살표가 가리키는 Mobility는 Movable로 해놓는다. 이 블루프린트 통째로 마우스로 움직여야 하기 때문이다. 그리고 혹시 나중에 오류 메시지가 나온다. 다른 Mobility도 찾아내어 Movable로 바꾸기 바란다.
블루프린트의 코드는 다음과 같다. 우선 Event Tick 노드를 통해 매 프래임마다 아주 빠르게 노드들을 실행시켜 블루프린트의 좌표 값을 실시간으로 잡아서 보여준다. 그리고 Print String 노드를 통해 월드 상 좌표를 지속적으로 보여준다. Get World Location 노드는 월드 상에 놓인 오브젝트의 위치 값을 얻게 도와준다. 이것을 Set Text에 연결해 TextRender에서 지속적으로 좌표 값이 보이게 된다.
아래 영상은 구체가 담긴 블루프린트가 월드 상에서 왔다 갔다 하면서 좌표 값이 변동되는 모습을 보여준다. 여기서 주의해야 할 것이 월드 상에 놓인 블루프린트를 직접 마우스로 끌고 다녀야 하기 때문에 Selected Viewport 가 아닌 Simulate를 클릭을 해야 한다.