UE4 Login相關代碼

最近開始用UE4獨立的遊戲,希望可以有個登陸的功能(輸入賬號和密碼),作爲一個懶人並沒有打算自己寫, 所以先去找一下UE4現有和Login相關的功能代碼,發現如下:

UConnectionCallbackProxy //從UOnlineBlueprintCallProxyBase繼承而來, 應該只是一個連接服務器的藍圖節點,而且看接口ConnectToService也並沒有需要輸入賬號和密碼的功能,直接Pass。

UOnlineEngineInterfaceImpl::LoginPIEInstance // UOnlineEngineInterface(用來分離Engine和OnlineSubsystem的功能類)的接口,在PIE裏用的, 不符合遊戲使用規則

ShowLoginUI // 引擎推薦使用的流程,用來顯示登陸的界面, 不過仔細找了好多代碼,發現大多是用來顯示外部UI(比如Google,Amazon,FaceBook,IOS的GameCenter等),我想要做的是UMG一個登陸窗口,趕腳應該不屬於這個流程範疇

IOnlineIdentity 和 IOnlineIdentityPtr // 這個玩意很關鍵, 是用戶的唯一標識,裏面的大部分接口都需要一個類似LocalUserNum(理解了好一會, 應該本地玩家的索引,比如兩個玩家在一臺電腦上打街霸,每個玩家的索引是不同的)這樣的參數。找了所有創建這個類的實例的地方,基本上可以確定都是在FOnlineSubsystemImpl::Init()裏面實例化的。

FLoginFlowManager // 看名字嚇了一跳, 以爲終於翻到了真諦,結果。。。原來只是(OnlineSubsystemFacebook and OnlineSubsystemGoogle for Windows requires this)



評估下來,最後打算在開始的地圖裏直接顯示UMG的登陸界面,然後在登陸按鈕的事件處理用調用自己平臺的login代碼,最後還會去看一看IOnlineIdentity這塊,把相關數據和它整合起來。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章