Os plugins de serviços on-line ajudam a conectar vários serviços on-line line de back-end, como a Epic, Steam, Xbox Live, PSN, NLPN etc. ao seu projeto da Unreal Engine (UE). Este guia mostra como:
Configure os plugins de serviços on-line
Este guia usa a implementação os serviços on-line Null para fins ilustrativos. Essa implementação não se conecta a nenhum serviço on-line de back-end e é usada para fins de teste. Este é um bom ponto de partida, pois o plugin de serviços on-line Null não requer registro ou configuração externa para funcionar com a Unreal Engine. Para obter uma lista completa dos serviços compatíveis com o plugin de serviços on-line, confira a documentação Visão geral de serviços on-line.
Ative os plugins de serviços on-line
Vários plugins de serviços on-line estão disponíveis para uso no seu projeto. O plugin-base de serviços on-line está habilitado por padrão.
Para habilitar funcionalidades adicionais necessárias, siga estas etapas:
Crie ou abra um projeto em C++ da Unreal Engine.
Na barra de menus, vá até Editar > Plugins. Isso abre uma nova janela ou aba chamada Plugins.
Nesta nova janela, pesquise "Serviços on-line" ou selecione a categoria plataforma on-line na barra de navegação à esquerda.
Vários plugins devem aparecer. Um deles deve ser intitulado Online Services Null. Habilite o plugin de serviços on-line Null marcando a caixa.
Se quiser usar os Serviços Online da Epic para os serviços on-line de back-end, selecione Serviços Online da Epic (SOE) em vez de serviços on-line do Null. Para isso, pode ser necessário registrar o seu produto com a Epic Online e configurar o back-end de forma adequada para o plugin de serviços on-line funcionar como esperado.
Uma mensagem aparece informando que você deverá reiniciar o Unreal Editor para que as alterações entrem em vigor. Reinicie o Unreal Editor clicando em Reiniciar agora.
Você habilitou o plugin de serviços on-line Nulls no seu projeto.
Adicione os plugins de serviços on-line às dependências do projeto
Para usar os plugins de serviços on-line no código C++ do projeto, você deve adicionar os plugins ao módulo do projeto como dependências públicas.
Para adicionar os plugins às dependências públicas do módulo do projeto, siga estas etapas:
Abra seu projeto C++ do Unreal Engine no Unreal Editor.
Abra o Visual Studio selecionando Ferramentas > Abrir o Visual Studio. Isso abre os arquivos de origem C++ do seu projeto no Visual Studio.
Para usar o código C++ fornecido pelos plugins de serviços on-line, você deve adicionar o módulo
OnlineServicesInterfacecomo dependências públicas ao arquivo .Build.cs do projeto.Abra o arquivo .Build.cs do projeto no Explorador de Soluções. Vá até Jogos > [SEU_JOGO] > Fonte > [SEU_JOGO] > [SEU_JOGO].Build.cs.
Adicione
OnlineServicesInterfaceeCoreOnlineàs suas dependências públicas do.Build.cs. Seu arquivo.Build.csdeverá ficar assim: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[] {Salve as alterações no Visual Studio.
Gere arquivos de projeto
Como você alterou o arquivo .Build.cs do seu projeto, será necessário atualizar os arquivos do projeto no Visual Studio. Isso garante que as alterações feitas serão refletidas no Visual Studio IntelliSense e permite que você use a funcionalidade nos plugins que acabou de adicionar.
Para gerar arquivos de projeto, siga estas etapas:
Feche o Visual Studio.
Volte para o seu projeto aberto no Unreal Editor.
Gere novamente os arquivos de projeto do Visual Studio selecionando Ferramentas > Atualizar projeto do Visual Studio.
Uma barra de progresso é exibida com o status das atualizações do projeto de código e desaparece quando o processo é concluído.
Configure serviços de plataforma padrão
A última etapa é especificar os serviços de plataforma padrão para os plugins de serviços on-line. Os serviços de plataforma padrão especificam quais serviços de plataforma de back-end são retornados por uma chamada para UE::Online::GetServices. Confira a lista de identificadores de plataforma disponíveis na página da documentação Visão geral dos serviços on-line.
Para especificar os serviços on-line Null como os serviços padrão da plataforma, siga estas etapas:
Abra seu projeto no Visual Studio. Para isso, vá até Ferramentas > Abrir o Visual Studio no Unreal Editor.
Abra o arquivo DefaultEngine.ini do projeto no Explorador de Soluções do Visual Studio ao acessar Jogos > [SEU_JOGO] > Configurações > DefaultEngine.ini.
Adicione o seguinte ao arquivo DefaultEngine.ini do seu projeto:
C++[OnlineServices] DefaultServices=Null
Os serviços on-line Nulls é uma implementação de serviços on-line que não usa serviços on-line de back-end. Ele é usado para testar e depurar a implementação de serviços on-line sem um serviço de back-end. Se quiser usar um serviço on-line de back-end diferente como o serviço on-line padrão do projeto, você pode escolher um na lista fornecida na seção Configuração da Visão geral dos serviços on-line.
Acesse os serviços on-line no seu projeto
Agora os plugins de serviços on-line estão habilitados e configurados para uso no seu projeto. Para acessar o plugin de serviços on-line e suas diversas interfaces, siga estas etapas:
Adicione
#include "Online/OnlineServices.h"ao arquivo em que deseja acessar o plugin de serviços on-line.Obtenha um ponteiro para os serviços padrão da plataforma com
IOnlineServicesPtr OnlineServicesPtr = UE::Online::GetServices();.
Agora você pode acessar diferentes funcionalidades da interface do plugin de serviços on-line. Por exemplo, para acessar a interface de autenticação, siga estas etapas:
Obtenha um ponteiro para os serviços padrão da plataforma.
Adicione
#include "Online/Auth.h"ao arquivo em que deseja acessar a interface de autenticação.Obtenha um ponteiro para a interface Auth com
IAuthPtr AuthPtr = OnlineServicesPtr->GetAuthInterface();.
Agora você pode acessar a funcionalidade da interface de autenticação pelo ponteiro da interface de autenticação. A mesma lógica se aplica a todas as outras interfaces dos serviços on-line.