Session Interface in UE

김민오·2022년 9월 13일
0

Session

UE에서 세션이란 서버에서 실행되는 게임의 인스턴스로 유저들은 이 세션을 사용하여 게임에 참여할 수 있다.
세션의 LifeTime은 아래와 같다.

  • 세션 생성
  • 설정된 세션 정보에 따라서 플레이어를 기다림(몇명오면 시작할지 등)
  • 게임에 참가를 원하는 플레이어가 게임에 참여(Join)
  • 세션을 시작
  • 게임플레이를 시작
  • 게임이 끝났다면 세션을 종료
  • 플레이어들의 게임 등록 상태를 취소함

Session Interface

세션 인터페이스는 IOnlineSession으로 사용할 수 있다. 이 인터페이스는 게임 매치메이킹을 구현하는데에 있어서 필요한 요소들을 플랫폼별로 기능을 제공한다.


나는 IOnlineSessionPtr을 사용해서 구현했다.

세션 인터페이스는 플랫폼당 하나의 클래스를 가지며 새로운 플랫폼에 대한 지원을 추가하고싶다면 새로운 유형의 세션 인터페이스를 생성해야 한다.

Setting Session

세션의 설정은 FOnlineSessionSettings을 통해서 지정할 수 있다.

플레이어의 수, LAN Match인지 그리고 Dedicated로 실행할건지 등등.. 이런 설정들을 여기서 할 수있다.
설정을 모두 마치고나면 아래의 IOnlineSession::CreateSession() 함수를 통해서 세션을 생성할 수 있다.

profile
https://github.com/gimhema, https://gimhema.tistory.com/

0개의 댓글