언리얼4 C++ 게임 진행 UI 추가하기

Intro

  • 게임 상태에 따른 UI 추가

게임 클리어, 실패 UI

위젯 블루프린트 추가

1

클리어 텍스트와 버튼 2개로 이루어진 위젯을 추가

2

버튼 클릭시 재시작과 종료를 할수있게 구현

위젯 함수 추가

UFUNCTION(BlueprintImplementableEvent, Category = "Victory")
void VictoryUI();
	
UFUNCTION(BlueprintImplementableEvent, Category = "Fail")
void FailUI();

BlueprintImplementableEvent로 선언해주고 블루프린트에서 구현해준다.

3

캐릭터 블루프린트에서 UI를 띄우는 함수 추가 SetInputModeUIOnly를 사용하여 UI의 입력만 허용하도록 하고 플레이어 컨트롤러에서 ShowMouseCursortrue로 만들어 커서를 보이도록함

그리고 게임모드의 Victory 델리게이트에 바인드해준다음 보스 좀비의 Death 함수 실행시 호출되도록 함

gameMode->Victory.AddUObject(this, &AFPSPlayer::VictoryUI);
void ABossZombie::Death()
{

	AFPSGameMode* gameMode = Cast<AFPSGameMode (UGameplayStatics::GetGameMode(GetWorld()));
	gameMode->Victory.Broadcast();

}

마찬가지로 실패 UI도 캐릭터의 Death가 실행시 호출되도록함

void AFPSPlayer::Death()
{
	FailUI();
}

메뉴 추가

4

게임중 ESC키를 통해 재시작과 종료를 할수있는 UI추가

5

새로만든 위젯 블루프린트를 뷰포트에 추가한다음 Hidden 시킨다

6

그리고 FlipFlop을 이용해 Menu(ESC)키를 누르면 메뉴위젯을 띄우고 숨기고를 토글시킨다.

실행결과

7

8

댓글남기기