Online Subsystem외에도 어느 서버를 사용할 것인지에 따라 플러그인을 추가해주어야 한다.
공통으로 OnlineSubsystem으로 시작한다.
헤더파일
CPP파일
cmd에서 Ipconfig를 통해 Ipv4를 넣어주면 된다.
DefaultEngine.ini 수정
https://dev.epicgames.com/documentation/ko-kr/unreal-engine/online-subsystem-steam-interface-in-unreal-engine#%EC%99%84%EC%84%B1%EC%84%B8%ED%8C%85
[/Script/Engine.GameEngine]
+NetDriverDefinitions=(DefName="GameNetDriver",DriverClassName="OnlineSubsystemSteam.SteamNetDriver",DriverClassNameFallback="OnlineSubsystemUtils.IpNetDriver")
[OnlineSubsystem]
DefaultPlatformService=Steam
[OnlineSubsystemSteam]
bEnabled=true
SteamDevAppId=480
bInitServerOnclient=true
[/Script/OnlineSubsystemSteam.SteamNetDriver]
NetConnectionClassName="OnlineSubsystemSteam.SteamNetConnection"
전용 서버 없이 클라이언트가 서버를 만들 수 있게 함. 호스팅
Binaries와 Saved파일을 한번 제거해주고, Generate해주기
CreateSessionComplete, FindSessionsComplete, JoinSessionComplete
세션을 생성하고 존재하면 제거한다.
ServerTravel을 통해 호스트로서 이동.
세션을 검색한다.
세션검색이 성공. 세션의 ID, 호스트 네임을 가져와서 보여줌.
Address를 출력
ClientTravel를 이용해서 서버에 접속
참고
온라인 서브 시스템
https://dev.epicgames.com/documentation/ko-kr/unreal-engine/online-subsystem-steam-interface-in-unreal-engine#%EC%99%84%EC%84%B1%EC%84%B8%ED%8C%85
Travel
https://dev.epicgames.com/documentation/ko-kr/unreal-engine/travelling-in-multiplayer-in-unreal-engine