본문 바로가기
언리얼 최고/언리얼 멀티플레이

언리얼엔진(UE4) 멀티플레이/ 메인메뉴만들기/리슨서버

by Lee_story_.. 2022. 4. 22.
728x90

오늘 영상은 여기!

 

유튭으로 배우는 게 많네요 ㅎ

 

이번에는 리슨서버를 이용해 세션(메인 메뉴) 만들어 보았습니다.

 

데디 섭 영상도 있어서 아마 담주 안에 올려볼게요!

 

일단 항상 하던 대로 기본 3d 프로젝트를 이용했습니다.

 

먼저 메인메뉴레벨을 하나 디폴트로 만들어주고

 

메인 메뉴에 쓰일 게임폰, 게임 컨트롤러, 게임모드들을 만들어 줍시다. 

블루 프린트 선택 후 3개다 만들어줍시다!

 

 

그러고 나서 게임 인스턴스를 하나 만들어 주는데요 영상에서는 크게 쓰이진 않지만

게임 시작, 캐릭터 생성 시 중요한 역할을 한다고 합니다... 이 부분은 나중에 다시 정리해봐야겠네요

 

 

만들었으면 적용하러 가야죠!

 

메인메뉴 레벨에 게임모드 적용해주고

 

게임모드에서 컨트롤과 폰을 변경해줍시다.

 

그 후 프로젝트 세팅에 가서 시작 모드와 맵에 대해서 지정해줍시다.(여기서 인스턴스를 적용하네요)

 

그리고 여기선 맵 생성? 보실 분만 펼쳐보세요!

더보기

대기상태를 추가하고

 

디렉셔널 라이트도 추가

 

여기서 Directional light actor에 스포이트 클릭 후 디렉셔널 라이트 클릭하면

파란 하늘을 만들 수 있더라고요..? (신기신기)

 

그리고 바닥 생성 랜드스케이프로 하네요 ㄷㄷ(첨 써봤어요...)

 

여기까지가 맵 생성!

 

이제 다시 세션 만들기로 ㄱㄱ!

맵이 다 준비되었다면!

이제 한 번 실행해 보시죠! 엥 움직여 지지도 않고 마우스도 없네...

 

컨트롤과 게임모드, 폰에 아무런 기능이 없어서 그렇습니다!

 

 

그래도 메인 메뉴 만드는 거니까 마우스를 보이게 해 보죠!

show mouse cusor 함수라는 게 있네요 ㄷㄷ

 

이거 말고도

 

상단에 클래스 디폴트 -> 디테일 보시면 show mouse cusor가 있습니다 굳이 함수를 안 쓰셔도 돼요!

 

이제 마우스도 생겼으니 버튼들 만들러 가시죠

위젯을 하나 생성해주고

 

이제 그 안에서 버튼을 배치하고 조정할 수 있습니다!

 

어떻게 만드는지 궁금하다! 클릭!

이미 다 만드셨거나 필요가 없으시다면... 지나가시면 됩니다!

더보기

사이즈 박스 안에 버티컬 박스를 만들어 주고

버튼들을 넣어준 후 좌측에 채우기!

이런 식으로 spacer을 추가해서 공백도 만들 수 있어요!

이제 그 안에 택스트 까지 넣으면 디자인?? 은 끝!

허접한.. 메인 메뉴 완성..!

 

이제 버튼마다 기능을 만들어 주러 가볼게요!

위젯 블루프린트 상단에 그래프 클릭

이렇게 나올 거예요 옆에 변수에 버튼들 보이시나요? 

아무 버튼이나 눌러보면

밑에 이렇게 뜨고 이벤트를 추가할 수 있게 만들어 놨습니다. 여기서 on clicked 함수만 써볼게요

 

각각의 버튼의 이벤트를 생성해 보았습니다.

일단 첫 번째 호스트 게임 버튼으로 게임 시작 버튼입니다.

level name에 이동할 맵이름 입력, 그리고 옵션에는 리슨 서버기 때문에 리슨 입력!

 

두 번째는. join게임 버튼으로 위에 보시면 ip주소를 통해 서로 접속하도록 하는 버튼입니다!

저 ip택스트 박스에서 택스트를 끌어와서 level name에 넣어주시면 됩니다.

 

세 번째는 종료 버튼으로 종료 함수를 사용했습니다!

 

이제 끝!

이제 플레이 모드 수정후 실행해보시면 각각의 메인 메뉴창이 나오고

한 명이 게임을 호스트 하면 나머지가 조인할 수 있는 그런..!

 

 

 

 

메인 메뉴를 완성했습니다!

 

데디 섭 영상이 있긴 한데 정확 한지 몰라서 일단 담주 중에 한번 해보겠습니다!

 

 

 

 

틀린 점이 있다면 댓 달아주세요!

 

댓글