언리얼 엔진5 Basic - 헤드업 디스플레이의 구현

타입·2024년 4월 29일
0

언리얼 강의

목록 보기
20/47

헤드업 디스플레이의 구현 (Implementing Head Up Display)

헤드업 디스플레이의 생성 프로세스

  • 헤드업 디스플레이(HUD)의 생성 과정
    플레이어 컨트롤러에 의해 제작되고 관리되는 UI 객체
    HUD의 구현은 위젯을 생성하고 이를 플레이어 뷰포트에 띄우는 과정으로 생성됨
    이렇게 만들어진 위젯은 자신을 소유한 플레이어 컨트롤러에 접근할 수 있다.
    (GetOwningPlayerPawn()으로 빙의한 폰을 가져올 수도 있음)
  • HUD 구현
    HUD의 경우 모니터의 화면을 모두 사용하므로 WBP에서 CanvasPanel을 최상단으로 배치
    • CreateWidget<>() 함수로 위젯 생성
    • AddToViewport() 함수로 화면에 띄우기
  • 초기화 프로세스의 정리
    컴포넌트, 액터, UI 위젯의 초기화 과정

실습코드

https://github.com/dnjfs/ArenaBattle/commit/e0ef5196d0964b1736161ced995beb881ceb50bb

  • NativeConstruct()
    플레이어 컨트롤러에서 AddToViewport() 시 호출됨
    이때 위젯의 내용을 채우는 로직 실행
    참고로 Viewport에 추가될 때마다 호출되므로 자주 탈부착하는 위젯이면 주의해서 사용!

  • 스탯 업데이트
    인터페이스 추가하여 플레이어 캐릭터에 상속시키고 스탯의 변화가 있다면 델리게이트 실행하여 위젯 업데이트 하도록 구현

  • float -> FString
    FString::SanitizeFloat(float)

profile
주니어 언리얼 프로그래머

0개의 댓글