Integrieren Sie Amazon GameLift in ein Unreal Engine-Projekt - Amazon GameLift

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Integrieren Sie Amazon GameLift in ein Unreal Engine-Projekt

In diesem Thema wird erklärt, wie Sie das Amazon GameLift C++-Server-SDK-Plugin für Unreal Engine einrichten und in Ihre Spieleprojekte integrieren.

Zusätzliche Ressourcen:

Voraussetzungen

Bevor Sie fortfahren, stellen Sie sicher, dass Sie die folgenden Voraussetzungen überprüft haben:

Voraussetzungen
  • Ein Computer, auf dem Unreal Engine ausgeführt werden kann. Weitere Informationen zu den Anforderungen der Unreal Engine finden Sie in der Dokumentation zu den Hardware- und Softwarespezifikationen von Unreal Engine.

  • Microsoft Visual Studio 2019 oder neuere Version.

  • CMake Version 3.1 oder höher.

  • Python-Version 3.6 oder höher.

  • Ein Git-Client, der auf dem PATH verfügbar ist.

  • Ein Epic-Games-Konto. Eröffnen Sie ein Konto auf der offiziellen Unreal Engine-Website.

  • Ein GitHub Konto, das mit Ihrem Unreal Engine-Konto verknüpft ist. Weitere Informationen finden Sie unter Zugreifen auf den Unreal Engine-Quellcode GitHub auf der Unreal Engine-Website.

Anmerkung

Amazon unterstützt GameLift derzeit die folgenden Versionen von Unreal Engine:

  • 4.22

  • 4,23

  • 4,24

  • 4,25

  • 4,26

  • 4,27

  • 5.1.0

  • 5.1.1

  • 5.2

  • 5.3

Unreal Engine aus dem Quellcode erstellen

Standardversionen des Unreal Engine-Editors, die über den Epic Launcher heruntergeladen wurden, erlauben nur das Erstellen von Unreal-Client-Anwendungen. Um eine Unreal-Serveranwendung zu erstellen, müssen Sie die Unreal Engine mithilfe des Unreal Engine Github-Repos aus dem Quellcode herunterladen und erstellen. Weitere Informationen finden Sie im Tutorial Unreal Engine from Source erstellen auf der Unreal Engine-Dokumentationswebsite.

Anmerkung

Falls du das noch nicht getan hast, befolge die Anweisungen unter Zugriff auf den Unreal Engine-Quellcode unter, GitHub um dein Konto mit deinem Epic GitHub Games-Konto zu verknüpfen.

Um den Unreal Engine-Quellcode in deine Entwicklungsumgebung zu klonen
  1. Klonen Sie die Unreal Engine-Quelle in Ihre Entwicklungsumgebung in einem Zweig Ihrer Wahl.

    git clone https://github.com/EpicGames/UnrealEngine.git
  2. Sieh dir das Tag der Version an, die du zur Entwicklung deines Spiels verwendest. Im folgenden Beispiel wird beispielsweise die Unreal Engine-Version 5.1.1 ausgecheckt:

    git checkout tags/5.1.1-release -b 5.1.1-release
  3. Navigieren Sie zum Stammordner des lokalen Repositorys. Wenn Sie sich im Stammordner befinden, führen Sie die folgende Datei aus:Setup.bat.

  4. Führen Sie im Stammordner auch die Datei aus:GenerateProjectFiles.bat.

  5. Nachdem Sie die Dateien aus den vorherigen Schritten ausgeführt haben, wird eine Unreal Engine-Lösungsdatei,UE5.sln, erstellt. Öffnen Sie Visual Studio und öffnen Sie die UE5.sln Datei im Visual Studio-Editor.

  6. Öffnen Sie in Visual Studio das Menü Ansicht und wählen Sie die Option Solution Explorer. Dadurch wird das Kontextmenü des Unreal-Projektknotens geöffnet. Klicken Sie im Solution Explorer-Fenster mit der rechten Maustaste auf die UE5.sln Datei (sie kann auch als „Nur“ aufgeführt werdenUE5) und wählen Sie dann Build, um das Unreal-Projekt mit dem Win64-Ziel des Development Editors zu erstellen.

    Anmerkung

    Es kann über eine Stunde dauern, bis der Build abgeschlossen ist.

Sobald der Build abgeschlossen ist, können Sie den Unreal Development Editor öffnen und ein Projekt erstellen oder importieren.

Konfiguriere dein Unreal-Projekt für das Plugin

Folgen Sie diesen Schritten, um das Amazon GameLift Server-SDK-Plugin für Unreal Engine für Ihre Gameserver-Projekte vorzubereiten.

Um dein Projekt für das Plugin zu konfigurieren
  1. Navigieren Sie bei geöffnetem Visual Studio zum Solution Explorer-Bereich und wählen Sie die UE5 Datei aus, um das Kontextmenü für das Unreal-Projekt zu öffnen. Wählen Sie im Kontextmenü die Option Als Startprojekt festlegen.

  2. Wählen Sie oben in Ihrem Visual Studio-Fenster die Option Debugging starten (grüner Pfeil).

    Diese Aktion startet Ihre neue, im Quellcode erstellte Instanz von Unreal Editor. Weitere Informationen zur Verwendung des Unreal Editors finden Sie unter Unreal Editor Interface auf der Unreal Engine-Dokumentationswebsite.

  3. Schließen Sie das Visual Studio-Fenster, das Sie geöffnet haben, da der Unreal Editor ein weiteres Visual Studio-Fenster öffnet, das das Unreal-Projekt und Ihr Spielprojekt enthält.

  4. Führen Sie im Unreal-Editor einen der folgenden Schritte aus:

    • Wählen Sie ein vorhandenes Unreal-Projekt aus, das Sie in Amazon GameLift integrieren möchten.

    • Erstellt ein neues Projekt. Um mit dem GameLift Amazon-Plugin für Unreal zu experimentieren, versuchen Sie es mit der Third-Person-Vorlage der Unreal Engine. Weitere Informationen zu dieser Vorlage finden Sie unter Vorlage für Dritte auf der Unreal Engine-Dokumentationswebsite.

      Alternativ können Sie ein neues Projekt mit den folgenden Einstellungen konfigurieren:

      • C++

      • Mit Starter-Inhalten

      • Desktop

      • Ein Projektname. In den Beispielen zu diesem Thema haben wir unserem Projekt einen Namen gegebenGameLiftUnrealApp.

  5. Navigieren Sie im Solution Explorer von Visual Studio zum Speicherort Ihres Unreal-Projekts. Suchen Sie im Source Ordner Unreal nach einer Datei mit dem Namen. Your-application-name.Target.cs

    Zum Beispiel: GameLiftUnrealApp.Target.cs.

  6. Erstellen Sie eine Kopie dieser Datei und geben Sie der Kopie einen Namen:Your-application-nameServer.Target.cs.

  7. Öffnen Sie die neue Datei und nehmen Sie die folgenden Änderungen vor:

    • Ändern Sie das class und soconstructor, dass es dem Dateinamen entspricht.

    • Ändern Sie das Type von TargetType.Game zuTargetType.Server.

    • Die endgültige Datei wird wie das folgende Beispiel aussehen:

      public class GameLiftUnrealAppServerTarget : TargetRules { public GameLiftUnrealAppServerTarget(TargetInfo Target) : base(Target) { Type = TargetType.Server; DefaultBuildSettings = BuildSettingsVersion.V2; IncludeOrderVersion = EngineIncludeOrderVersion.Unreal5_1; ExtraModuleNames.Add("GameLiftUnrealApp"); } }

Ihr Projekt ist jetzt so konfiguriert, dass es das Amazon GameLift Server SDK-Plugin akzeptiert.

Die nächste Aufgabe besteht darin, die C++-Server-SDK-Bibliotheken für Unreal zu erstellen, damit Sie sie in Ihr Projekt importieren können.

Um die C++-Server-SDK-Bibliotheken für Unreal zu erstellen
  1. Laden Sie das Amazon GameLift C++-Server-SDK-Plugin für Unreal herunter.

    Anmerkung

    Das Speichern des SDK in das Standard-Download-Verzeichnis kann zu einem Build-Fehler führen, da der Pfad die Obergrenze von 260 Zeichen überschreitet. Beispiel: C:\Users\Administrator\Downloads\GameLift-SDK-Release-06_15_2023\GameLift-Cpp-ServerSDK-5.0.4

    Wir empfehlen, das SDK beispielsweise in ein anderes Verzeichnis zu verschiebenC:\GameLift-Cpp-ServerSDK-5.0.4.

  2. Laden Sie OpenSSL herunter und installieren Sie es. Weitere Informationen zum Herunterladen von OpenSSL finden Sie in der Github OpenSSL-Build- und Installationsdokumentation.

    Weitere Informationen finden Sie in der Dokumentation zu OpenSSL Notes für Windows-Plattformen.

    Anmerkung

    Die Version von OpenSSL, die Sie zum Erstellen des GameLift Amazon-Server-SDK verwenden, sollte mit der Version von OpenSSL übereinstimmen, die von Unreal zum Paketieren Ihres Spieleservers verwendet wird. Versionsinformationen finden Sie im Unreal-Installationsverzeichnis. ...Engine\Source\ThirdParty\OpenSSL

  3. Erstellen Sie mit den heruntergeladenen Bibliotheken die C++-Server-SDK-Bibliotheken für Unreal Engine.

    Kompilieren Sie im GameLift-Cpp-ServerSDK-<version> Verzeichnis im heruntergeladenen SDK mit dem -DBUILD_FOR_UNREAL=1 Parameter und erstellen Sie das Server-SDK. Die folgenden Beispiele zeigen, wie Sie mit kompilierencmake.

    Führen Sie die folgenden Befehle in Ihrem Terminal aus:

    mkdir cmake-build cmake.exe -G "Visual Studio 17 2022" -DCMAKE_BUILD_TYPE=Release -S . -B ./cmake-build -DBUILD_FOR_UNREAL=1 -A x64 cmake.exe --build ./cmake-build --target ALL_BUILD --config Release

    Der Windows-Build erstellt die folgenden Binärdateien in dem out\gamelift-server-sdk\Release Ordner:

    • cmake-build\prefix\bin\aws-cpp-sdk-gamelift-server.dll

    • cmake-build\prefix\bin\aws-cpp-sdk-gamelift-server.lib

    Kopieren Sie die beiden Bibliotheksdateien in den ThirdParty\GameLiftServerSDK\Win64 Ordner im Amazon GameLift Unreal Engine-Plugin-Paket.

Gehen Sie wie folgt vor, um das GameLift Amazon-Plugin in Ihr Beispielprojekt zu importieren.

Importieren Sie das GameLift Amazon-Plugin
  1. Suchen Sie den GameLiftServerSDK Ordner, den Sie im vorherigen Verfahren aus dem Plugin extrahiert haben.

  2. Suchen Sie den Stammordner Plugins in Ihrem Spielprojekt. (Falls der Ordner nicht existiert, erstelle ihn dort.)

  3. Kopieren Sie den GameLiftServerSDK Ordner in denPlugins.

    Dadurch kann das Unreal-Projekt das Plugin sehen.

  4. Füge das Amazon GameLift Server SDK Plugin zur .uproject Datei des Spiels hinzu.

    Im Beispiel wird die App aufgerufenGameLiftUnrealApp, also die DateiGameLiftUnrealApp.uproject.

  5. Bearbeiten Sie die .uproject Datei, um das Plugin zu Ihrem Spielprojekt hinzuzufügen.

    "Plugins": [ { "Name": "GameLiftServerSDK", "Enabled": true } ]
  6. Stellen Sie sicher, dass ModuleRules das Spiel vom Plugin abhängig ist. Öffnen Sie die .Build.cs Datei und fügen Sie die Amazon GameLiftServer SDK-Abhängigkeit hinzu. Diese Datei finden Sie unterYour-application-name/Source//Your-application-name/.

    Der Dateipfad für das Tutorial lautet beispielsweise. ../GameLiftUnrealApp/Source/GameLiftUnrealApp/GameLiftUnrealApp.Build.cs

  7. Am Ende der Liste von hinzufügen"GameLiftServerSDK". PublicDependencyModuleNames

    using UnrealBuildTool; using System.Collections.Generic; public class GameLiftUnrealApp : ModuleRules { public GameLiftUnrealApp(TargetInfo Target) { PublicDependencyModuleNames.AddRange(new string[] { "Core", "CoreUObject", "Engine", "InputCore", "GameLiftServerSDK" }); bEnableExceptions = true; } }

Das Plugin sollte jetzt für Ihre Anwendung funktionieren. Fahren Sie mit dem nächsten Abschnitt fort, um GameLift Amazon-Funktionen in Ihr Spiel zu integrieren.

Fügen Sie Ihrem Unreal-Projekt GameLift Amazon-Servercode hinzu

Sie haben Ihre Unreal Engine-Umgebung konfiguriert und eingerichtet und können jetzt einen Spieleserver in Amazon GameLift integrieren. Der in diesem Thema vorgestellte Code führt erforderliche Aufrufe an den GameLift Amazon-Service durch. Es implementiert auch eine Reihe von Rückruffunktionen, die auf Anfragen des GameLift Amazon-Service antworten. Weitere Informationen zu den einzelnen Funktionen und zur Funktionsweise des Codes finden Sie unter Serverprozess initialisieren. Weitere Informationen zu den in diesem Code verwendeten SDK-Aktionen und Datentypen finden Sie unter. Amazon GameLift Server-SDK-Referenz für Unreal Engine

Gehen Sie wie folgt vor GameLift, um einen Spieleserver mit Amazon zu initialisieren.

Anmerkung

Der GameLift Amazon-spezifische Code, der im folgenden Abschnitt bereitgestellt wird, hängt von der Verwendung eines WITH_GAMELIFT Präprozessor-Flags ab. Dieses Kennzeichen ist nur dann wahr, wenn diese beiden Bedingungen erfüllt sind:

  • Target.Type == TargetRules.TargetType.Server

  • Die Plugins haben die Amazon GameLift Server-SDK-Binärdateien gefunden.

Dadurch wird sichergestellt, dass nur Unreal Server-Builds die Backend-API GameLift von Amazon aufrufen. Außerdem können Sie damit Code schreiben, der für all die verschiedenen Unreal-Ziele, die Ihr Spiel möglicherweise erzeugt, ordnungsgemäß ausgeführt wird.

Integrieren Sie einen Spieleserver mit Amazon GameLift
  1. Öffnen Sie in Visual Studio die .sln Datei für Ihre Anwendung. In unserem Beispiel GameLiftUnrealApp.sln befindet sich die Datei im Stammordner.

  2. Suchen Sie bei geöffneter Lösung die Your-application-nameGameMode.h Datei Ihrer Anwendung. Beispiel: GameLiftUnrealAppGameMode.h.

  3. Ändern Sie die Header-Datei so, dass sie dem folgenden Beispielcode entspricht. Achten Sie darauf, "GameLiftUnrealApp" durch Ihren eigenen Anwendungsnamen zu ersetzen.

    #pragma once #include "CoreMinimal.h" #include "GameFramework/GameModeBase.h" #include "GameLiftServerSDK.h" #include "GameLiftUnrealAppGameMode.generated.h" DECLARE_LOG_CATEGORY_EXTERN(GameServerLog, Log, All); UCLASS(minimalapi) class AGameLiftUnrealAppGameMode : public AGameModeBase { GENERATED_BODY() public: AGameLiftUnrealAppGameMode(); protected: virtual void BeginPlay() override; private: // Process Parameters needs to remain in scope for the lifetime of the app FProcessParameters m_params; void InitGameLift(); };
  4. Öffnen Sie die zugehörige Your-application-nameGameMode.cpp Quelldatei. In unserem Beispiel:GameLiftUnrealAppGameMode.cpp. und ändern Sie den Code so, dass er dem folgenden Beispielcode entspricht. Achten Sie darauf, "GameLiftUnrealApp" durch Ihren eigenen Anwendungsnamen zu ersetzen.

    Dieses Beispiel zeigt, wie Sie alle erforderlichen Elemente für die Integration mit Amazon hinzufügen GameLift, wie unter Amazon GameLift zu Ihrem Spieleserver hinzufügen beschrieben. Dies umfasst:

    • Initialisierung eines Amazon GameLift API-Clients.

    • Implementierung von Rückruffunktionen zur Beantwortung von Anfragen des GameLift Amazon-Service, einschließlich OnStartGameSessionOnProcessTerminate, undonHealthCheck.

    • Rufen Sie ProcessReady () mit einem bestimmten Port an, um Amazon zu benachrichtigen, GameLiftservice wenn Sie bereit sind, Spielsitzungen zu veranstalten.

    #include "GameLiftUnrealAppGameMode.h" #include "GameLiftUnrealAppCharacter.h" #include "UObject/ConstructorHelpers.h" DEFINE_LOG_CATEGORY(GameServerLog); AGameLiftUnrealAppGameMode::AGameLiftUnrealAppGameMode() { // set default pawn class to our Blueprinted character static ConstructorHelpers::FClassFinder<APawn> PlayerPawnBPClass(TEXT("/Game/ThirdPerson/Blueprints/BP_ThirdPersonCharacter")); if (PlayerPawnBPClass.Class != NULL) { DefaultPawnClass = PlayerPawnBPClass.Class; } } void AGameLiftUnrealAppGameMode::BeginPlay() { #if WITH_GAMELIFT InitGameLift(); #endif } void AGameLiftUnrealAppGameMode::InitGameLift() { UE_LOG(GameServerLog, Log, TEXT("Initializing the GameLift Server")); //Getting the module first. FGameLiftServerSDKModule* gameLiftSdkModule = &FModuleManager::LoadModuleChecked<FGameLiftServerSDKModule>(FName("GameLiftServerSDK")); //Define the server parameters for a GameLift Anywhere fleet. These are not needed for a GameLift managed EC2 fleet. FServerParameters serverParameters; //AuthToken returned from the "aws gamelift get-compute-auth-token" API. Note this will expire and require a new call to the API after 15 minutes. if (FParse::Value(FCommandLine::Get(), TEXT("-authtoken="), serverParameters.m_authToken)) { UE_LOG(GameServerLog, Log, TEXT("AUTH_TOKEN: %s"), *serverParameters.m_authToken) } //The Host/compute-name of the GameLift Anywhere instance. if (FParse::Value(FCommandLine::Get(), TEXT("-hostid="), serverParameters.m_hostId)) { UE_LOG(GameServerLog, Log, TEXT("HOST_ID: %s"), *serverParameters.m_hostId) } //The Anywhere Fleet ID. if (FParse::Value(FCommandLine::Get(), TEXT("-fleetid="), serverParameters.m_fleetId)) { UE_LOG(GameServerLog, Log, TEXT("FLEET_ID: %s"), *serverParameters.m_fleetId) } //The WebSocket URL (GameLiftServiceSdkEndpoint). if (FParse::Value(FCommandLine::Get(), TEXT("-websocketurl="), serverParameters.m_webSocketUrl)) { UE_LOG(GameServerLog, Log, TEXT("WEBSOCKET_URL: %s"), *serverParameters.m_webSocketUrl) } //The PID of the running process serverParameters.m_processId = FString::Printf(TEXT("%d"), GetCurrentProcessId()); UE_LOG(GameServerLog, Log, TEXT("PID: %s"), *serverParameters.m_processId); //InitSDK establishes a local connection with GameLift's agent to enable further communication. //Use InitSDK(serverParameters) for a GameLift Anywhere fleet. //Use InitSDK() for a GameLift managed EC2 fleet. gameLiftSdkModule->InitSDK(serverParameters); //Implement callback function onStartGameSession //GameLift sends a game session activation request to the game server //and passes a game session object with game properties and other settings. //Here is where a game server takes action based on the game session object. //When the game server is ready to receive incoming player connections, //it invokes the server SDK call ActivateGameSession(). auto onGameSession = [=](Aws::GameLift::Server::Model::GameSession gameSession) { FString gameSessionId = FString(gameSession.GetGameSessionId()); UE_LOG(GameServerLog, Log, TEXT("GameSession Initializing: %s"), *gameSessionId); gameLiftSdkModule->ActivateGameSession(); }; m_params.OnStartGameSession.BindLambda(onGameSession); //Implement callback function OnProcessTerminate //GameLift invokes this callback before shutting down the instance hosting this game server. //It gives the game server a chance to save its state, communicate with services, etc., //and initiate shut down. When the game server is ready to shut down, it invokes the //server SDK call ProcessEnding() to tell GameLift it is shutting down. auto onProcessTerminate = [=]() { UE_LOG(GameServerLog, Log, TEXT("Game Server Process is terminating")); gameLiftSdkModule->ProcessEnding(); }; m_params.OnTerminate.BindLambda(onProcessTerminate); //Implement callback function OnHealthCheck //GameLift invokes this callback approximately every 60 seconds. //A game server might want to check the health of dependencies, etc. //Then it returns health status true if healthy, false otherwise. //The game server must respond within 60 seconds, or GameLift records 'false'. //In this example, the game server always reports healthy. auto onHealthCheck = []() { UE_LOG(GameServerLog, Log, TEXT("Performing Health Check")); return true; }; m_params.OnHealthCheck.BindLambda(onHealthCheck); //The game server gets ready to report that it is ready to host game sessions //and that it will listen on port 7777 for incoming player connections. m_params.port = 7777; //Here, the game server tells GameLift where to find game session log files. //At the end of a game session, GameLift uploads everything in the specified //location and stores it in the cloud for access later. TArray<FString> logfiles; logfiles.Add(TEXT("GameLift426Test/Saved/Logs/GameLift426Test.log")); m_params.logParameters = logfiles; //The game server calls ProcessReady() to tell GameLift it's ready to host game sessions. UE_LOG(GameServerLog, Log, TEXT("Calling Process Ready")); gameLiftSdkModule->ProcessReady(m_params); }
  5. Erstellen Sie ein Spielprojekt für die beiden folgenden Zieltypen: Entwicklungseditor und Entwicklungsserver.

    Anmerkung

    Sie müssen die Lösung nicht neu erstellen. Erstellen Sie stattdessen nur das Projekt unter dem Games Ordner, der dem Namen Ihrer App entspricht. Andernfalls erstellt Visual Studio das gesamte UE5-Projekt neu, was bis zu einer Stunde dauern kann.

  6. Sobald beide Builds abgeschlossen sind, schließen Sie Visual Studio und öffnen Sie die .uproject Datei Ihres Projekts, um sie im Unreal Editor zu öffnen.

  7. Packen Sie im Unreal Editor den Server-Build Ihres Spiels. Um ein Ziel auszuwählen, gehe zu Plattformen, Windows und wähle our-application-nameY-Server aus.

  8. Um mit der Erstellung der Serveranwendung zu beginnen, wechseln Sie zu Plattformen, Windows und wählen Sie Paketprojekt aus. Wenn der Build abgeschlossen ist, sollten Sie über eine ausführbare Datei verfügen. In unserem Beispiel lautet der DateinameGameLiftUnrealAppServer.exe.

  9. Beim Erstellen einer Serveranwendung in Unreal Editor werden zwei ausführbare Dateien erzeugt. Eine befindet sich im Stammverzeichnis des Build-Ordners des Spiels und dient als Wrapper für die eigentliche ausführbare Serverdatei.

    Wenn Sie eine GameLift Amazon-Flotte mit Ihrem Server-Build erstellen, empfehlen wir, dass Sie die eigentliche ausführbare Serverdatei als Startpfad für die Laufzeitkonfiguration angeben. Beispielsweise könnten Sie in Ihrem Spiele-Build-Ordner eine GameLiftFPS.exe Datei im Stammverzeichnis und eine weitere unter haben\GameLiftFPS\Binaries\Win64\GameLiftFPSServer.exe. Wenn Sie eine Flotte erstellen, empfehlen wir, den Startpfad für die Laufzeitkonfiguration zu verwendenC:\GameLiftFPS\Binaries\Win64\GameLiftFPSServer.exe.

  10. Stellen Sie sicher, dass Sie die erforderlichen UDP-Ports auf der GameLift Amazon-Flotte öffnen, damit der Spieleserver mit den Spieleclients kommunizieren kann. Standardmäßig verwendet Unreal Engine den Port7777. Weitere Informationen finden Sie UpdateFleetPortSettingsim Referenzhandbuch GameLift zur Amazon Service API.

  11. Erstellen Sie eine install.bat Datei für Ihren Spiel-Build. Dieses Installationsskript wird immer dann ausgeführt, wenn der Spiel-Build auf einer GameLift Amazon-Flotte bereitgestellt wird. Hier ist eine install.bat Beispieldatei:

    VC_redist.x64.exe /q UE5PrereqSetup_x64.exe /q

    Für einige Versionen von Unreal Engine install.bat sollte das stattdessen

    VC_redist.x64.exe /q UEPrereqSetup_x64.exe /q
    Anmerkung

    Der Dateipfad zur <>PrereqSetup_x64.exe Datei lautetEngine\Extras\Redist\en-us.

  12. Jetzt können Sie Ihren Spiel-Build verpacken und auf Amazon hochladen GameLift.

    Die Version von OpenSSL, die du mit deinem Spiel-Build packst, muss mit der Version übereinstimmen, die die Game-Engine beim Aufbau des Spielservers verwendet hat. Vergewissere dich, dass du die richtige OpenSSL-Version mit deinem Gameserver-Build packst. Für das Windows-Betriebssystem ist .dll das OpenSSL-Format.

    Anmerkung

    Package Sie die OpenSSL-DLLs in Ihren Gameserver-Build. Achte darauf, dieselbe Version von OpenSSL zu packen, die du beim Aufbau des Spielservers verwendet hast.

    • libssl-1_1-x64.dll

      libcrypto-1_1-x64.dll

    Package Sie Ihre Abhängigkeiten zusammen mit der ausführbaren Datei Ihres Spieleservers in das Stammverzeichnis einer Zip-Datei. Zum Beispiel sollten sich openssl-lib DLLs im selben Verzeichnis wie die .exe Datei befinden.

Nächste Schritte

Sie haben Ihre Unreal Engine-Umgebung konfiguriert und eingerichtet und können nun damit beginnen, Amazon GameLift in Ihr Spiel zu integrieren.

Weitere Informationen zum Hinzufügen von Amazon GameLift zu deinem Spiel findest du hier:

Anweisungen zum Testen Ihres Spiels finden Sie unter Richten Sie lokale Tests mit Amazon ein GameLift Anywhere.