처음 등장하는 클래스

 

GameInstance

ㄴ 레벨의 변화와 관계없이 게임 시작 후 계속 살아있기 떄문에 네트워크 연결 관련 코드를 작성하기에 좋다.

 

프로젝트 세팅 -> 맵 모드에서 세팅해줄 수 있다.

 

온라인 서브시스템 모듈

[프로젝트명].build.cs에 OnlineSubsystem 모듈과 OnlineSubsystemSteam 모듈을 추가한다.

 

DefaultEngine.ini 파일에 아래의 내용을 추가해준다.

 

메인 메뉴 UI

이전에는 메인 메뉴 UI 위젯을 블루프린트와 C++로 분리하여 관리하였으나 이번에는 굳이 분리하지 않고 블루프린트에서 비주얼 스크립팅을 하여 모두 처리해 보았다. 관리할 버튼도 많고 계층 구조도 복잡하기 때문이다.

 

MainMenu_UI 위젯

 

 

MainMenu_UI는 생성될 때 GameInstance를 찾아서 멤버 변수로 갖고 있는다.

 

각각의 버튼이 눌릴 때 오른쪽의 Widget Switcher에 보이는 하위 위젯이 인덱스에 따라 다르게 변경된다.

 

레벨 블루프린트

레벨마다 레벨 블루프린트가 존재하는데, 아래의 그래프는 MainMenu 레벨에 대한 그래프이다.

MainMenu 레벨이 시작할 때, MainMenu_UI 위젯을 생성하여 Viewport에 등록하고, 플레이어 컨트롤러의 마우스를 게임 내에서 보이게 설정한다.

 

 

+ Recent posts