언어:
페이지 정보
태그:
엔진 버전:
언리얼 엔진

6. HUD 와의 통신

언리얼 엔진

이번 단계에서는 캐릭터 블루프린트와 통신하여 거기 저장된 Pulls, Shots, Score 값을 구한 뒤 HUD 위젯 블루프린트에 표시되는 값을 업데이트하도록 하겠습니다. 그러기 위해서는, Cast 노드를 사용하여 플레이어의 캐릭터 블루프린트에 접근한 뒤 HUD 의 프로퍼티를 캐릭터 블루프린트의 값에 바인딩하여, 캐릭터 블루프린트의 값이 업데이트되면 같이 자동으로 업데이트되도록 만들겠습니다.

게임이 거의 완성되어가고 있으니, HUD 를 업데이트하여 마무리합시다.

  1. 앞서 만든 HUD 위젯 블루프린트를 엽니다.

  2. HUD 위젯 블루프린트 안에서 그래프 탭을 클릭합니다.

    GraphClick.png

  3. 그래프에 우클릭 한 다음 Event Construct 노드를 추가합니다.

    EventConstruct.png

    이 노드는 Event Begin Play 와 유사하며, 위젯 블루프린트가 생성될 때 호출됩니다.

  4. Get Player Character 노드를 추가한 다음 CastTo FirstPersonCharacter 합니다.

    CastToFirstPerson.png

  5. As First Person Character 핀을 끌어놓은 다음 변수로 승격 시키고 새로운 노드 이름을 MyCharacter 로 변경합니다.

    MyCharacter.png

    내 블루프린트 창에서 변수를 선택한 다음 F2 키를 눌러 이름을 변경할 수 있습니다.

  6. 디자이너 탭에서 Pulls 에 대한 값을 클릭한 다음 디테일 패널의 Text바인드 옵션을 클릭한 뒤 바인딩 생성 을 선택합니다.

    Bind1.png

    그러면 바인딩을 위한 새 그래프가 열립니다.

  7. Control 키를 누르고 MyCharacter 변수를 끌어놓은 다음, Get Pulls 를 추가시키고 Return NodeReturn Value 에 연결합니다.

    GetPulls.png

    To Text (Int) 변환 노드가 자동 생성됩니다. 이제 Pulls 값이 제대로 표시되도록 설정되었습니다.

  8. 디자이너 탭에서 Shots 에 대한 값을 클릭한 다음 디테일 패널에서 바인드 옵션을 클릭하고 아래 바인딩을 만들어 줍니다.

    GetShots.png

    그러면 풀 당 남은 발 수가 제대로 업데이트되어 표시됩니다.

  9. 디자이너 탭에서 Score 에 대한 값을 클릭한 다음 디테일 패널에서, 바인드 옵션을 클릭한 다음 아래 바인딩을 만들어 줍니다.

    GetScore.png

    마지막으로, 플레이어가 바위를 맞출 때 제대로 된 점수를 구하여 표시해 줍니다.

  10. 컴파일, 저장 을 클릭한 뒤 블루프린트를 닫습니다.

  11. 메인 에디터 뷰에서 플레이 버튼을 클릭하여 에디터에서 플레이합니다.

다 됐습니다. 간단한 슈팅 갤러리 게임이 완성되었습니다. 바위를 스폰하려면, 이전 섹션에서 그 이벤트를 실행하도록 바인딩한 F 키를 누르면 됩니다. 이 가이드 전반에 걸쳐 이벤트 디스패처, Cast 노드, 바인딩 을 사용하여 세 가지 각기 다른 유형의 블루프린트간의 통신 방법을 배웠습니다. 레벨에서 캐릭터 블루프린트로 정보를 전달하는 방법은 물론 캐릭터에서 HUD 로 변수를 통신하는 방법도 배웠습니다.

최종 단계에서는 몇 가지 예제를 통해 이 프로젝트를 확장시켜 자신만의 것으로 만드는 방법을 알아보겠습니다. 이 가이드에서 다룬 토픽에 대한 추가 문서 링크도 제공됩니다.

태그