Referência 5.x GameLift do Amazon Server SDK (C++): Ações - Amazon GameLift

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Referência 5.x GameLift do Amazon Server SDK (C++): Ações

Você pode usar essa referência do SDK do servidor Amazon GameLift C++ para ajudá-lo a preparar seu jogo multijogador para uso com a Amazon. GameLift Para obter detalhes sobre o processo de integração, consulte Adicione GameLift a Amazon ao seu servidor de jogos.

nota

Este tópico descreve a API do Amazon GameLift C++ que você pode usar ao criar com a C++ Standard Library ()std. Especificamente, essa documentação se aplica ao código que você compila com a opção -DDGAMELIFT_USE_STD=1.

GetSdkVersion()

Retorna o número da versão atual do SDK compilado no processo de servidor.

Sintaxe

Aws::GameLift::AwsStringOutcome Server::GetSdkVersion();

Valor de retorno

Se bem-sucedido, retornará a versão do SDK atual como um objeto AwsStringOutcome. O objeto retornada inclui apenas o número da versão (exemplo, 5.0.0). Se não for bem-sucedido, retornará uma mensagem de erro.

Exemplo

Aws::GameLift::AwsStringOutcome SdkVersionOutcome = Aws::GameLift::Server::GetSdkVersion();

InitSDK()

Inicializa o Amazon GameLift SDK. Chame esse método na inicialização, antes de qualquer outra etapa de inicialização relacionada à Amazon GameLift. Essa ação lê os parâmetros do servidor do ambiente host para configurar a comunicação entre o processo do servidor do jogo e o GameLift serviço da Amazon.

Se a versão do servidor do jogo for implantada sem o Amazon GameLift Agent em uma GameLift Anywhere frota ou frota de contêineres da Amazon, ligue InitSDK() e especifique um conjunto de parâmetros do servidor.

Sintaxe

Server::InitSDKOutcome Server::initSdkOutcome = InitSDK();

Valor de retorno

Retorna um objeto Eu nitSDKOutcome que indica se o processo do servidor está pronto para ser chamado ProcessReady().

Exemplo

//Call InitSDK to establish a local connection with the GameLift agent to enable further communication. Aws::GameLift::Server::InitSDKOutcome initSdkOutcome = Aws::GameLift::Server::InitSDK();

InitSDK()

Inicializa o Amazon GameLift SDK. Chame esse método na inicialização, antes de qualquer outra etapa de inicialização relacionada à Amazon GameLift. Essa ação requer um conjunto de parâmetros do servidor para configurar a comunicação entre o processo do servidor do jogo e o GameLift serviço da Amazon.

Se a versão do servidor do jogo for implantada em uma frota EC2 GameLift gerenciada pela Amazon ou em uma frota ou GameLift Anywhere frota de contêineres da Amazon com o Amazon GameLift Agent, ligue InitSDK() sem parâmetros de servidor.

Sintaxe

Server::InitSDKOutcome Server::initSdkOutcome = InitSDK(serverParameters);

Parâmetros

ServerParameters

Para inicializar um servidor de jogo em uma GameLift Anywhere frota da Amazon, construa um ServerParameters objeto com as seguintes informações:

  • O URL do WebSocket usado para se conectar ao seu servidor de jogo.

  • O ID do processo usado para hospedar o servidor de jogos.

  • O ID do computador que hospeda os processos do seu servidor de jogos.

  • O ID da GameLift frota da Amazon que contém sua GameLift Anywhere computação da Amazon.

  • O token de autorização gerado pela GameLift operação da Amazon.

Valor de retorno

Retorna um objeto Eu nitSDKOutcome que indica se o processo do servidor está pronto para ser chamado ProcessReady().

nota

Se as chamadas para InitSDK() estiverem falhando para compilações de jogos implantadas em frotas do Anywhere, verifique o parâmetro ServerSdkVersion usado ao criar o recurso de compilação. Você deve definir explicitamente esse valor para a versão do SDK do servidor em uso. O valor padrão desse parâmetro é 4.x, o que não é compatível. Para resolver esse problema, crie uma nova versão e implante-a em uma nova frota.

Exemplo

GameLift AnywhereExemplo da Amazon

//Define the server parameters std::string websocketUrl = "wss://us-west-1.api.amazongamelift.com"; std::string processId = "PID1234"; std::string fleetId = "arn:aws:gamelift:us-west-1:111122223333:fleet/fleet-9999ffff-88ee-77dd-66cc-5555bbbb44aa"; std::string hostId = "HardwareAnywhere"; std::string authToken = "1111aaaa-22bb-33cc-44dd-5555eeee66ff"; Aws::GameLift::Server::Model::ServerParameters serverParameters = Aws::GameLift::Server::Model::ServerParameters(webSocketUrl, authToken, fleetId, hostId, processId); //Call InitSDK to establish a local connection with the GameLift agent to enable further communication. Aws::GameLift::Server::InitSDKOutcome initSdkOutcome = Aws::GameLift::Server::InitSDK(serverParameters);

ProcessReady()

Notifica a Amazon de GameLift que o processo do servidor está pronto para hospedar sessões de jogo. Chame esse método após invocar InitSDK(). Esse método deve ser chamado somente uma vez por processo.

Sintaxe

GenericOutcome ProcessReady(const Aws::GameLift::Server::ProcessParameters &processParameters);

Parâmetros

processParameters

Um objeto ProcessParameters que fornece as seguintes informações sobre o processo do servidor:

  • Nomes dos métodos de retorno de chamada implementados no código do servidor do jogo que o GameLift serviço da Amazon invoca para se comunicar com o processo do servidor.

  • Número da porta em que o processo de servidor está escutando.

  • Caminho para qualquer arquivo específico da sessão de jogo que você deseja que a Amazon capture e GameLift armazene.

Valor de retorno

Retorna um resultado genérico que consiste em sucesso ou falha com uma mensagem de erro.

Exemplo

Este exemplo ilustra as implementações das funções de chamada e delegação ProcessReady().

// Set parameters and call ProcessReady std::string serverLog("serverOut.log"); // Example of a log file written by the game server std::vector<std::string> logPaths; logPaths.push_back(serverLog); int listenPort = 9339; Aws::GameLift::Server::ProcessParameters processReadyParameter = Aws::GameLift::Server::ProcessParameters( std::bind(&Server::onStartGameSession, this, std::placeholders::_1), std::bind(&Server::onProcessTerminate, this), std::bind(&Server::OnHealthCheck, this), std::bind(&Server::OnUpdateGameSession, this), listenPort, Aws::GameLift::Server::LogParameters(logPaths) ); Aws::GameLift::GenericOutcome outcome = Aws::GameLift::Server::ProcessReady(processReadyParameter); // Implement callback functions void Server::onStartGameSession(Aws::GameLift::Model::GameSession myGameSession) { // game-specific tasks when starting a new game session, such as loading map GenericOutcome outcome = Aws::GameLift::Server::ActivateGameSession (maxPlayers); } void Server::onProcessTerminate() { // game-specific tasks required to gracefully shut down a game session, // such as notifying players, preserving game state data, and other cleanup GenericOutcome outcome = Aws::GameLift::Server::ProcessEnding(); } bool Server::onHealthCheck() { bool health; // complete health evaluation within 60 seconds and set health return health; }

ProcessReadyAsync()

Notifica o GameLift serviço da Amazon de que o processo do servidor está pronto para hospedar sessões de jogo. Este método deve ser chamado depois que o processo do servidor estiver pronto para hospedar uma sessão de jogo. Os parâmetros especificam os nomes das funções de retorno de chamada para GameLift a Amazon chamar em determinadas circunstâncias. O código do servidor de jogos deve implementar essas funções.

Essa chamada é assíncrona. Para fazer uma chamada síncrona, use ProcessReady(). Consulte Inicializar o processo do servidor para obter mais detalhes.

Sintaxe

GenericOutcomeCallable ProcessReadyAsync( const Aws::GameLift::Server::ProcessParameters &processParameters);

Parâmetros

processParameters

Um objeto ProcessParameters que fornece as seguintes informações sobre o processo do servidor:

  • Nomes dos métodos de retorno de chamada implementados no código do servidor do jogo que o GameLift serviço da Amazon invoca para se comunicar com o processo do servidor.

  • Número da porta em que o processo de servidor está escutando.

  • Caminho para qualquer arquivo específico da sessão de jogo que você deseja que a Amazon capture e GameLift armazene.

Obrigatório: Sim

Valor de retorno

Retorna um resultado genérico que consiste em sucesso ou falha com uma mensagem de erro.

Exemplo

// Set parameters and call ProcessReady std::string serverLog("serverOut.log"); // This is an example of a log file written by the game server std::vector<std::string> logPaths; logPaths.push_back(serverLog); int listenPort = 9339; Aws::GameLift::Server::ProcessParameters processReadyParameter = Aws::GameLift::Server::ProcessParameters(std::bind(&Server::onStartGameSession, this, std::placeholders::_1), std::bind(&Server::onProcessTerminate, this), std::bind(&Server::OnHealthCheck, this), std::bind(&Server::OnUpdateGameSession, this), listenPort, Aws::GameLift::Server::LogParameters(logPaths)); Aws::GameLift::GenericOutcomeCallable outcome = Aws::GameLift::Server::ProcessReadyAsync(processReadyParameter); // Implement callback functions void onStartGameSession(Aws::GameLift::Model::GameSession myGameSession) { // game-specific tasks when starting a new game session, such as loading map GenericOutcome outcome = Aws::GameLift::Server::ActivateGameSession (maxPlayers); } void onProcessTerminate() { // game-specific tasks required to gracefully shut down a game session, // such as notifying players, preserving game state data, and other cleanup GenericOutcome outcome = Aws::GameLift::Server::ProcessEnding(); } bool onHealthCheck() { // perform health evaluation and complete within 60 seconds return health; }

ProcessEnding()

Notifica a Amazon de GameLift que o processo do servidor está sendo encerrado. Chame esse método depois de todas as outras tarefas de limpeza (incluindo o encerramento da sessão ativa do jogo) e antes de encerrar o processo. Dependendo do resultado ProcessEnding(), o processo sai com sucesso (0) ou erro (-1) e gera um evento de frota. Se o processo for encerrado com um erro, o evento de frota gerado seráSERVER_PROCESS_TERMINATED_UNHEALTHY.

Sintaxe

Aws::GameLift::GenericOutcome processEndingOutcome = Aws::GameLift::Server::ProcessEnding();

Valor de retorno

Retorna um resultado genérico que consiste em sucesso ou falha com uma mensagem de erro.

Exemplo

Este exemplo chama ProcessEnding() e Destroy() antes de encerrar o processo do servidor com um código de saída bem-sucedido ou de erro.

Aws::GameLift::GenericOutcome processEndingOutcome = Aws::GameLift::Server::ProcessEnding(); Aws::GameLift::Server::Destroy(); // Exit the process with success or failure if (processEndingOutcome.IsSuccess()) { exit(0); } else { cout << "ProcessEnding() failed. Error: " << processEndingOutcome.GetError().GetErrorMessage(); exit(-1); }

ActivateGameSession()

Notifica a Amazon de GameLift que o processo do servidor ativou uma sessão de jogo e agora está pronto para receber conexões de jogadores. Essa ação deve ser chamada como parte da função de retorno de chamada onStartGameSession(), após toda inicialização da sessão do jogo.​

Sintaxe

Aws::GameLift::GenericOutcome activateGameSessionOutcome = Aws::GameLift::Server::ActivateGameSession();

Valor de retorno

Retorna um resultado genérico que consiste em sucesso ou falha com uma mensagem de erro.

Exemplo

Este exemplo mostra chamado ActivateGameSession() como parte da função de delegação onStartGameSession().

void onStartGameSession(Aws::GameLift::Model::GameSession myGameSession) { // game-specific tasks when starting a new game session, such as loading map GenericOutcome outcome = Aws::GameLift::Server::ActivateGameSession(); }

UpdatePlayerSessionCreationPolicy()

Atualiza a capacidade da sessão do jogo atual para aceitar novas sessões de jogador. Atualiza a capacidade da sessão do jogo atual para aceitar novas sessões de jogador.

Sintaxe

GenericOutcome UpdatePlayerSessionCreationPolicy(Aws::GameLift::Model::PlayerSessionCreationPolicy newPlayerSessionPolicy);

Parâmetros

playerCreationSessionPolítica

Tipo: PlayerSessionCreationPolicy valor enum.

Obrigatório: Sim

Valor de retorno

Retorna um resultado genérico que consiste em sucesso ou falha com uma mensagem de erro.

Exemplo

Este exemplo define a política de ingresso da sessão do jogo atual para aceitar todos os jogadores.

Aws::GameLift::GenericOutcome outcome = Aws::GameLift::Server::UpdatePlayerSessionCreationPolicy(Aws::GameLift::Model::PlayerSessionCreationPolicy::ACCEPT_ALL);

GetGameSessionId()

Recupera o ID da sessão de jogo hospedada pelo processo do servidor ativo.

Para processos inativos que não são ativados com uma sessão de jogo, a chamada retorna um GameLiftError.

Sintaxe

AwsStringOutcome GetGameSessionId()

Parâmetros

Essa ação não tem um parâmetro.

Valor de retorno

Se bem-sucedido, retornará o ID da sessão de jogo como um objeto AwsStringOutcome. Se não for bem-sucedido, retornará uma mensagem de erro.

Para processos inativos que não são ativados com uma sessão de jogo, a chamada retorna Success=True e GameSessionId="".

Exemplo

Aws::GameLift::AwsStringOutcome sessionIdOutcome = Aws::GameLift::Server::GetGameSessionId();

GetTerminationTime()

Retorna a hora em que um processo do servidor está programado para ser desligado, se essa informação estiver disponível. Um processo do servidor entra em ação após receber um onProcessTerminate() retorno de chamada da Amazon GameLift. A Amazon GameLift liga onProcessTerminate() pelos seguintes motivos:

  • Quando o processo do servidor relatou problemas de saúde ou não respondeu à Amazon GameLift.

  • Ao encerrar a instância durante um evento de redução.

  • Quando uma instância é encerrada devido a uma interrupção na instância spot.

Sintaxe

AwsDateTimeOutcome GetTerminationTime()

Valor de retorno

Se for bem-sucedido, retornará o horário de término como um objeto AwsDateTimeOutcome. O valor é o tempo de rescisão, expresso em tiques decorridos desde então 0001 00:00:00. Por exemplo, o valor da data e hora 2020-09-13 12:26:40 -000Z é igual aos tiques 637355968000000000. Se nenhum horário de encerramento estiver disponível, o retornará uma mensagem de erro.

Se o processo não tiver recebido um ProcessParameters. OnProcessTerminate() callback, uma mensagem de erro é retornada. Para obter mais informações sobre como desligar um processo do servidor, consulte Responder a uma notificação de desligamento do processo do servidor.

Exemplo

Aws::GameLift::AwsLongOutcome TermTimeOutcome = Aws::GameLift::Server::GetTerminationTime();

AcceptPlayerSession()

Notifica a Amazon de GameLift que um jogador com o ID de sessão de jogador especificado se conectou ao processo do servidor e precisa de validação. A Amazon GameLift verifica se o ID da sessão do jogador é válido. Depois que a sessão do jogador é validada, a Amazon GameLift altera o status do slot do jogador de RESERVADO para ATIVO.

Sintaxe

GenericOutcome AcceptPlayerSession(String playerSessionId)

Parâmetros

playerSessionId

ID exclusivo emitido pela Amazon GameLift quando uma nova sessão de jogador é criada.

Valor de retorno

Retorna um resultado genérico que consiste em sucesso ou falha com uma mensagem de erro.

Exemplo

Este exemplo trata de uma solicitação de conexão que inclui a validação e a rejeição de IDs de sessão de jogadores inválidas.

void ReceiveConnectingPlayerSessionID (Connection& connection, const std::string& playerSessionId) { Aws::GameLift::GenericOutcome connectOutcome = Aws::GameLift::Server::AcceptPlayerSession(playerSessionId); if(connectOutcome.IsSuccess()) { connectionToSessionMap.emplace(connection, playerSessionId); connection.Accept(); } else { connection.Reject(connectOutcome.GetError().GetMessage(); } }

RemovePlayerSession()

Notifica a Amazon de GameLift que um jogador se desconectou do processo do servidor. Em resposta, a Amazon GameLift altera o slot do jogador para disponível.

Sintaxe

GenericOutcome RemovePlayerSession(String playerSessionId)

Parâmetros

playerSessionId

ID exclusivo emitido pela Amazon GameLift quando uma nova sessão de jogador é criada.

Valor de retorno

Retorna um resultado genérico que consiste em sucesso ou falha com uma mensagem de erro.

Exemplo

Aws::GameLift::GenericOutcome disconnectOutcome = Aws::GameLift::Server::RemovePlayerSession(playerSessionId);

DescribePlayerSessions()

Recupera dados da sessão do jogador, que incluem configurações, metadados da sessão e dados do jogador. Use esse método para obter informações sobre o seguinte:

  • Uma sessão para um jogador

  • Todas as sessões de jogador em uma sessão de jogo

  • Todas as sessões de jogadores associadas a um único ID de jogador

Sintaxe

DescribePlayerSessionsOutcome DescribePlayerSessions(DescribePlayerSessionsRequest describePlayerSessionsRequest)

Parâmetros

DescribePlayerSessionsRequest

Um objeto DescribePlayerSessionsRequest que descreve quais sessões de jogador recuperar.

Valor de retorno

Se bem-sucedido, retorna um objeto DescribePlayerSessionsOutcome que contém um conjunto de objetos de sessão do jogador que atendem aos parâmetros de solicitação.

Exemplo

Este exemplo solicita todas as sessões de jogador conectadas ativamente a uma sessão de jogo especificada. Ao omitir NextTokene definir o valor limite como 10, a Amazon GameLift retorna os primeiros registros de sessão de 10 jogadores correspondentes à solicitação.

// Set request parameters Aws::GameLift::Server::Model::DescribePlayerSessionsRequest request; request.SetPlayerSessionStatusFilter(Aws::GameLift::Server::Model::PlayerSessionStatusMapper::GetNameForPlayerSessionStatus(Aws::GameLift::Server::Model::PlayerSessionStatus::Active)); request.SetLimit(10); request.SetGameSessionId("the game session ID"); // can use GetGameSessionId() // Call DescribePlayerSessions Aws::GameLift::DescribePlayerSessionsOutcome playerSessionsOutcome = Aws::GameLift::Server::DescribePlayerSessions(request);

StartMatchBackfill()

Envia uma solicitação para encontrar novos jogadores para vagas abertas em uma sessão de jogo criada com FlexMatch. Para obter mais informações, consulte o recurso FlexMatch de preenchimento.

Esta ação é assíncrona. Se novos jogadores forem combinados, a Amazon GameLift fornece dados atualizados do matchmaker usando a função de retorno de chamada. OnUpdateGameSession()

Um processo de servidor pode ter apenas uma solicitação de alocação de correspondência ativa por vez. Para enviar uma nova solicitação, primeiro chame StopMatchBackfill() para cancelar a solicitação original.

Sintaxe

StartMatchBackfillOutcome StartMatchBackfill (StartMatchBackfillRequest startBackfillRequest);

Parâmetros

StartMatchBackfillRequest

Um StartMatchBackfillRequest objeto que comunica as seguintes informações:

  • ID do tíquete a ser atribuído à solicitação de alocação. Essas informações são opcionais; se nenhum ID for fornecido, a Amazon GameLift gerará um.

  • O marcador de jogos para o qual a solicitação é enviada. O ARN completo da configuração é necessário. Esse valor está nos dados do marcador de jogos da sessão de jogo.

  • O ID da sessão de jogo a ser preenchida.

  • Os dados disponíveis de marcação para os jogadores atuais da sessão do jogo.

Valor de retorno

Retorna um objeto StartMatchBackfillOutcome com o ID do tíquete de alocação de correspondência ou um falha com uma mensagem de erro.

Exemplo

// Build a backfill request std::vector<Player> players; Aws::GameLift::Server::Model::StartMatchBackfillRequest startBackfillRequest; startBackfillRequest.SetTicketId("1111aaaa-22bb-33cc-44dd-5555eeee66ff"); // optional, autogenerated if not provided startBackfillRequest.SetMatchmakingConfigurationArn("arn:aws:gamelift:us-west-2:111122223333:matchmakingconfiguration/MyMatchmakerConfig"); //from the game session matchmaker data startBackfillRequest.SetGameSessionArn("the game session ARN"); // can use GetGameSessionId() startBackfillRequest.SetPlayers(players); // from the game session matchmaker data // Send backfill request Aws::GameLift::StartMatchBackfillOutcome backfillOutcome = Aws::GameLift::Server::StartMatchBackfill(startBackfillRequest); // Implement callback function for backfill void Server::OnUpdateGameSession(Aws::GameLift::Server::Model::GameSession gameSession, Aws::GameLift::Server::Model::UpdateReason updateReason, std::string backfillTicketId) { // handle status messages // perform game-specific tasks to prep for newly matched players }

StopMatchBackfill()

Cancela uma solicitação de alocação de correspondência ativa. Para obter mais informações, consulte o recurso FlexMatch de preenchimento.

Sintaxe

GenericOutcome StopMatchBackfill (StopMatchBackfillRequest stopBackfillRequest);

Parâmetros

StopMatchBackfillRequest

Um StopMatchBackfillRequest objeto identificando o tíquete de matchmaking a ser cancelado:

  • O ID do ticket atribuído à solicitação de alocação.

  • O marcador de jogo que recebeu a solicitação de alocação.

  • A sessão do jogo associada à solicitação de alocação.

Valor de retorno

Retorna um resultado genérico que consiste em sucesso ou falha com uma mensagem de erro.

Exemplo

// Set backfill stop request parameters Aws::GameLift::Server::Model::StopMatchBackfillRequest stopBackfillRequest; stopBackfillRequest.SetTicketId("1111aaaa-22bb-33cc-44dd-5555eeee66ff"); stopBackfillRequest.SetGameSessionArn("the game session ARN"); // can use GetGameSessionId() stopBackfillRequest.SetMatchmakingConfigurationArn("arn:aws:gamelift:us-west-2:111122223333:matchmakingconfiguration/MyMatchmakerConfig"); // from the game session matchmaker data Aws::GameLift::GenericOutcome stopBackfillOutcome = Aws::GameLift::Server::StopMatchBackfill(stopBackfillRequest);

GetComputeCertificate()

Recupera o caminho para o certificado TLS usado para criptografar a conexão de rede entre seu GameLift Anywhere recurso computacional da Amazon e a Amazon. GameLift Você pode usar o caminho do certificado ao registrar seu dispositivo computacional em uma GameLift Anywhere frota da Amazon. Para obter mais informações, consulte, RegisterCompute.

Sintaxe

GetComputeCertificateOutcome Server::GetComputeCertificate()

Valor de retorno

Retorna um GetComputeCertificateOutcome.

Exemplo

Aws::GameLift::GetComputeCertificateOutcome certificate = Aws::GameLift::Server::GetComputeCertificate();

GetFleetRoleCredentials()

Recupera as credenciais da função do IAM que autorizam a GameLift Amazon a interagir com outras. AWS services Para ter mais informações, consulte Comunique-se com outros recursos AWS de suas frotas.

Sintaxe

GetFleetRoleCredentialsOutcome GetFleetRoleCredentials(GetFleetRoleCredentialsRequest request);

Parâmetros

GetFleetRoleCredentialsRequest

Valor de retorno

Informa um objeto GetFleetRoleCredentialsOutcome.

Exemplo

// form the fleet credentials request Aws::GameLift::Server::Model::GetFleetRoleCredentialsRequest getFleetRoleCredentialsRequest; getFleetRoleCredentialsRequest.SetRoleArn("arn:aws:iam::123456789012:role/service-role/exampleGameLiftAction"); Aws::GameLift::GetFleetRoleCredentialsOutcome credentials = Aws::GameLift::Server::GetFleetRoleCredentials(getFleetRoleCredentialsRequest);

Este exemplo mostra o uso do valor RoleSessionName opcional para atribuir um nome à sessão de credenciais para fins de auditoria. Se você não fornecer um nome de sessão de função, o valor padrão "[fleet-id]-[host-id]" será usado.

// form the fleet credentials request Aws::GameLift::Server::Model::GetFleetRoleCredentialsRequest getFleetRoleCredentialsRequest; getFleetRoleCredentialsRequest.SetRoleArn("arn:aws:iam::123456789012:role/service-role/exampleGameLiftAction"); getFleetRoleCredentialsRequest.SetRoleSessionName("MyFleetRoleSession"); Aws::GameLift::GetFleetRoleCredentialsOutcome credentials = Aws::GameLift::Server::GetFleetRoleCredentials(getFleetRoleCredentialsRequest);

Destroy()

Libera o SDK do servidor de GameLift jogos da Amazon da memória. Como melhor prática, chame esse método antes ProcessEnding() e depois de encerrar o processo. Se você estiver usando uma frota Anywhere e não estiver encerrando os processos do servidor após cada sessão de jogo, ligue Destroy() e reinicialize antes de notificar InitSDK() a Amazon de GameLift que o processo está pronto para hospedar uma sessão de jogo. ProcessReady()

Sintaxe

GenericOutcome Aws::GameLift::Server::Destroy();

Parâmetros

Não há parâmetros.

Valor de retorno

Retorna um resultado genérico que consiste em sucesso ou falha com uma mensagem de erro.

Exemplo

Aws::GameLift::GenericOutcome processEndingOutcome = Aws::GameLift::Server::ProcessEnding(); Aws::GameLift::Server::Destroy(); // Exit the process with success or failure if (processEndingOutcome.IsSuccess()) { exit(0); } else { cout << "ProcessEnding() failed. Error: " << processEndingOutcome.GetError().GetErrorMessage(); exit(-1); }