本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
遷移至 Amazon GameLift 伺服器 SDK 5.x
若要更新遊戲專案以使用伺服器 5.x SDK版,請進行下列變更:
-
為您的開發環境取得最新的 Amazon GameLift Server SDK套件 【下載網站
】。請遵循已下載套件和版本的 Readme
檔案中的安裝指示。請參閱這些將伺服器SDKs與遊戲專案搭配使用的指示。 -
更新您的伺服器程式碼,如下所示:
將伺服器程式碼回呼函數
onCreateGameSession()
變更為onStartGameSession()
。-
視需要更新
InitSDK()
輸入:-
如果您計劃將遊戲伺服器建置部署到 Amazon GameLift 受管EC2機群或 Anywhere 使用 Amazon GameLift Agent 的機群:
InitSDK()
無參數呼叫 (C++) (C#) (Unreal )。此呼叫會設定運算環境以及 Amazon GameLift 服務的 WebSocket 連線。 -
如果您計劃將遊戲伺服器建置部署到 Anywhere 沒有 Amazon GameLift Agent 的機群:
InitSDK()
使用伺服器參數 (C++) (C#) (Unreal ) 呼叫 。遊戲伺服器程序使用這些參數來建立與 Amazon GameLift 服務的連線。
-
-
如果您的遊戲伺服器建置或其他託管應用程式在執行時與其他 AWS 資源通訊,您將需要變更應用程式存取這些資源的方式。使用
AssumeRoleCredentials
新的 Amazon GameLift 伺服器SDK動作GetFleetRoleCredentials()
(適用於遊戲伺服器) 或使用共用憑證 (適用於其他應用程式) 取代 的使用。如需如何實作此變更的詳細資訊,請參閱 與機群中的其他 AWS 資源通訊。 -
如果您的專案呼叫伺服器SDK動作
GetInstanceCertificate()
來擷取TLS憑證,請修改程式碼以改用新的GetComputeCertificate()
(C++) (C#) (Unreal )。 -
將遊戲組建上傳至 Amazon 時 GameLift (例如使用 upload-build
或 CreateBuild()),請將 ServerSdkVersion
參數設定為您正在使用的 5.x 版本 (此參數目前預設為 4.0.2)。此參數必須與遊戲伺服器建置中的實際伺服器SDK程式庫相符。如果您為上傳的遊戲伺服器建置指定錯誤的版本,則使用該建置建立建立的任何機群都會失敗。請參閱 部署 Amazon GameLift 託管的自訂伺服器建置。下列範例說明如何指定伺服器SDK版本:
aws gamelift upload-build \ --operating-system AMAZON_LINUX_2023 \ --server-sdk-version "5.0.0" \ --build-root "~/mygame" \ --name "My Game Nightly Build" \ --build-version "build 255" \ --region us-west-2
-
如果您使用指令碼遠端連線至受管機群,請更新指令碼以使用新程序,如 中所述遠端連線至 Amazon GameLift 機群執行個體。