Die Online Services Plugins helfen dir, verschiedene Backend-Online-Services wie Epic, Steam, Xbox Live, PSN, NLPN und ähnliche mit deinem Unreal Engine (UE)-Projekt zu verbinden. Diese Anleitung zeigt dir Folgendes:
Online Services Plugins einrichten
Diese Anleitung verwendet zur Veranschaulichung die Null-Implementierung der Online Services. Diese Implementierung stellt keine Verbindung zu Online Services her und wird zu Testzwecken verwendet. Das ist ein guter Ausgangspunkt, da das Plugin „Online Services Null“ keine externe Registrierung oder Konfiguration erfordert, um mit Unreal Engine zu arbeiten. Eine vollständige Liste der vom Online Services Plugin unterstützten Services findest du in der Dokumentation Übersicht über Online Services.
Online Services Plugins aktivieren
Verschiedene Online Services Plugins stehen zur Verwendung in Deinem Projekt zur Verfügung. Das Basis-Plugin der Online Services ist standardmäßig aktiviert.
Um zusätzliche erforderliche Funktionen zu aktivieren, führe die folgenden Schritte aus:
Erstelle oder öffne ein Unreal Engine C++-Projekt.
Navigiere in der Menüleiste zu Edit > Plugins. Dies öffnet ein neues Fenster oder einen neuen Tab mit dem Namen Plugins.
Suche in diesem neuen Fenster nach „Online Services“ oder wähle die Kategorie Online Platform aus der Navigationsleiste auf der linken Seite.
Es sollten nun einige Plugins erscheinen. Eines davon sollte den Namen Online Services Null haben. Aktiviere das Plugin Online Services Null, indem du das Kästchen anklickst.
Wenn du Epic Online Services für deine Backend Online Services verwenden möchtest, wähle Online Services EOS anstelle von Online Services Null. Dafür musst du dein Produkt möglicherweise bei Epic Online Servcies registrieren und das Backend für das Online Services Plugin entsprechend konfigurieren, damit alles wie erwartet funktioniert.
Eine Meldung „You must restart Unreal Editor for changes to take effect.“ (Du musst den Unreal Editor neu starten, damit die Änderungen wirksam werden.) wird angezeigt. Starte den Unreal Editor neu, indem du auf Restart Now klickst.
Du hast nun das Plugin „Online Services Null“ in Deinem Projekt aktiviert.
Online Services Plugins zu den Projektabhängigkeiten hinzufügen
Um die Online Services Plugins im C++-Code deines Projekts zu verwenden, musst du die Plugins deinem Modul als öffentliche Abhängigkeiten hinzufügen.
Befolge diese Schritte, um die Plugins zu den öffentlichen Abhängigkeiten deines Projektmoduls hinzuzufügen:
Öffne dein Unreal Engine C++-Projekt im Unreal Editor.
Öffne Visual Studio, indem du Tools > Open Visual Studio auswählst. Dadurch werden die C++-Quelldateien Deines Projekts in Visual Studio geöffnet.
Um den von den Online Services Plugins bereitgestellten C++-Code zu verwenden, musst du das Modul
OnlineServicesInterfaceals öffentliche Abhängigkeiten zu der .Build.cs-Datei deines Projekts hinzufügen.Öffne die Datei Build.cs deines Projekts im Solution Explorer, indem du zu Games > [DEIN_SPIEL] > Source > [DEIN_SPIEL] > [DEIN_SPIEL].Build.cs navigierst.
Füge
OnlineServicesInterfaceundCoreOnlinezu den öffentlichen Abhängigkeiten von.Build.cshinzu. Deine.Build.cs-Datei sollte wie folgt aussehen:C++// Copyright Epic Games, Inc. All Rights Reserved. using UnrealBuildTool; public class MyProject : ModuleRules { public MyProject(ReadOnlyTargetRules Target) : base(Target) { PCHUsage = PCHUsageMode.UseExplicitOrSharedPCHs; PublicDependencyModuleNames.AddRange(new string[] {Speichere deine Änderungen in Visual Studio.
Projektdateien generieren
Da du eine Änderung an der .Build.cs-Datei deines Projekts vorgenommen hast, musst du deine Visual Studio-Projektdateien aktualisieren. Dies stellt sicher, dass deine vorgenommenen Änderungen in Visual Studio Intellisense widergespiegelt werden und ermöglicht dir die Nutzung der Funktionalität der Plugins, die du soeben hinzugefügt hast.
Um Projektdateien zu generieren, führe die folgenden Schritte aus:
Schließe Visual Studio.
Navigiere zurück zu deinem geöffneten Projekt im Unreal Editor.
Regeneriere deine Visual Studio-Projektdateien, indem du Tools > Refresh Visual Studio Project auswählst.
Ein Fortschrittsbalken erscheint, um den Status der Aktualisierungen deines Codeprojekts anzuzeigen, und wird ausgeblendet, sobald der Prozess abgeschlossen ist.
Konfigurieren der Standard-Plattformservices
Der letzte Schritt besteht darin, deine Standard-Plattformservices für die Online Services Plugins festzulegen. Die Standard-Plattformservices legen fest, welche Backend-Plattformservices von einem Aufruf an UE::Online::GetServices zurückgegeben werden. Eine Liste der verfügbaren Plattform-Identifikatoren findest du auf der Dokumentationsseite Überblick der Online Services.
Befolge diese Schritte, um Online Services Null als Standard-Plattformservices festzulegen:
Öffne dein Projekt in Visual Studio. Navigiere dazu im Unreal Editor zu Tools > Open Visual Studio navigierst.
Öffne die DefaultEngine.ini-Datei deines Projekts im Visual Studio Solution Explorer, indem du zu Games > [DEIN_SPIEL] > Config > DefaultEngine.ini navigierst.
Füge Folgendes zur Datei DefaultEngine.ini deines Projekts hinzu:
C++[OnlineServices] DefaultServices=Null
Online Services Null ist eine Online Services-Implementierung, die keine Backend-Online-Services verwendet. Das kann zum Testen und Debuggen deiner Online Services-Implementierung ohne Backend-Service verwendet werden. Wenn du einen anderen Backend-Online-Service als den Standard-Online-Service deines Projekts verwenden möchtest, kannst du einen aus der Liste im AbschnittKonfiguration in der Übersicht der Online Services auswählen.
Zugang zu Online Services in deinem Projekt
Die Online Services Plugins sind jetzt aktiviert und für die Verwendung in Deinem Projekt konfiguriert. Befolge diese Schritte, um Zugang zum Online Services Plugin und seinen verschiedenen Interfaces zu erhalten.
Füge
#include "Online/OnlineServices.h"zu der Datei hinzu, wo du auf das Online Services Plugin zugreifen möchtest.Erhalte einen Pointer auf die Standard-Plattform-Services mit
IOnlineServicesPtr OnlineServicesPtr = UE::Online::GetServices();.
Jetzt kannst du auf die verschiedenen Interface-Funktionalitäten des Online Services Plugins zugreifen. Um beispielsweise auf die Auth Interface zuzugreifen, führe folgende Schritte aus:
Stelle sicher, dass du zuerst einen Pointer auf die Standard-Plattform-Services erhalten hast.
Füge
#include "Online/Auth.h"zu der Datei hinzu, wo du auf das Auth-Interface zugreifen möchtest.Erhalte einen Pointer auf das Auth-Interface mit
IAuthPtr AuthPtr = OnlineServicesPtr->GetAuthInterface();.
Nun kannst du über den Auth-Interface-Pointer auf die Funktionalität des Auth-Interface Zugriff erhalten. Die gleiche Logik gilt für alle anderen Interfaces der Online Services.