天天看點

UE4聯機多人遊戲基本設定

UE4自帶網絡聯機功能,但是似乎隻有藍圖接口,而真正寫功能的時候不能用C++,讓人感覺相當詭異

還是作一個簡單記錄

1.建一個第三人稱模闆,為什麼會用他呢,因為它自帶模闆的很多元件,直接支援聯機功能,相當友善,找到工程目錄下的Config/DefaultEngine.ini,在裡面添加OnlineSubsystem,開啟聯機功能(最好重新開機一下工程,他才會讀取這個檔案配置)

[OnlineSubsystem]
DefaultPlatformService=<Default Platform Identifier>
           

2.建立一個簡單的UI,三個按鈕,建立房間、搜尋房間、加入房間,功能嘛,顧名思義

UE4聯機多人遊戲基本設定

3.點選建立房間按鈕後,就執行Create Session,這裡就是UE4提供的接口,按着他來說這裡應該是建立會話,不過我喜歡用建立房間,感覺更好了解

當我們成功建立房間後,就打開一個新的場景,就是自帶的第三人稱模闆場景

UE4聯機多人遊戲基本設定

4.點選搜尋房間,就是搜尋目前已經建立的房間,并将第一個房間存儲下來,這就是我們後面需要加入的房間

UE4聯機多人遊戲基本設定

5.當我們點選搜尋房間後,看見我們擷取的房間名稱後,點選加入房間

UE4聯機多人遊戲基本設定

6.我們建立一個場景,去掉場景中的所有東西,在關卡藍圖中去建立我們開始的UI

UE4聯機多人遊戲基本設定

7.更改自帶模闆的GameMode,ThirdPersonGameMode設定Default Pawn Class為None,并添加一個功能,房間每加入一個人,就回調一個函數OnPostLogin,然後建立一個角色,用的第三人稱角色,并擷取目前場景中的Player Start(需要在場景中多設定幾個),并将位置賦給他們

UE4聯機多人遊戲基本設定

8.回到開始建立的空白場景,并設定Play,點選運作

UE4聯機多人遊戲基本設定

9.其中一個點選建立房間,另一個點選搜尋房間,等待搜尋成功後點選加入房間

UE4聯機多人遊戲基本設定

10.運作截圖,我這裡品質調得特别低,不過功能實作了,相當簡單對不對,主要也是利用了他自帶元件的一些便利性,後面需要看看複制actor,屬性同步,RPC函數等等。

UE4聯機多人遊戲基本設定

繼續閱讀