> ## Documentation Index
> Fetch the complete documentation index at: https://devdocs.xbox.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Démarrage rapide Unreal Engine

> Installez le plug-in PlayFab Unreal Marketplace et effectuez votre premier appel d'API PlayFab depuis un projet Unreal Engine en C++ ou avec les Blueprints.

# Démarrage rapide : bibliothèque cliente PlayFab pour Unreal Engine

Prenez en main le plug-in PlayFab pour Unreal Engine. Suivez ce démarrage rapide pour installer le plug-in PlayFab pour Unreal Engine et créer des exemples d'applications qui utilisent la bibliothèque cliente C++ et l'interface Blueprint.

Vous pouvez utiliser le plug-in PlayFab pour Unreal Engine afin de gérer le LiveOps de votre titre et d'effectuer des opérations d'administration, client et serveur, telles que :

* L'authentification des joueurs.
* La gestion des objets virtuels et de la monnaie.
* La création de fonctionnalités sociales, comme les listes d'amis.

  [Documentation de référence de l'API](/fr-CA/services/playfab/api-references) | [Code source de la bibliothèque](https://github.com/PlayFab/UnrealMarketplacePlugin) | [Unreal Marketplace](https://www.unrealengine.com/marketplace/playfab-sdk)

## Prérequis

* Un [compte de développeur PlayFab](https://developer.playfab.com).
* Une installation de [Visual Studio](https://visualstudio.microsoft.com/downloads/) configurée pour Unreal Engine. Pour plus d'informations sur la configuration de Visual Studio, consultez [Configuration de Visual Studio pour Unreal Engine](https://docs.unrealengine.com/en-US/Programming/Development/VisualStudioSetup/index.html).
* Une installation d'[Unreal Engine](https://www.unrealengine.com/download). Pour plus d'informations sur l'installation d'Unreal Engine, consultez le [guide d'installation d'Unreal Engine](https://docs.unrealengine.com/4.27/en-US/Basics/Projects/Browser/).
* Une installation du plug-in PlayFab pour Unreal. Vous pouvez installer le plug-in Unreal depuis la [marketplace Unreal Engine](https://www.unrealengine.com/marketplace/playfab-sdk).

## Créer un projet Unreal

Dans Unreal Engine, créez un nouveau projet Unreal. Pour obtenir des instructions détaillées, suivez le [guide de création d'un nouveau projet](https://docs.unrealengine.com/4.27/en-US/Basics/Projects/Browser/).

1. Pour **Project Category**, sélectionnez **Games**.
2. Dans **Select Template**, sélectionnez **Blank**.
3. Dans **Project Settings**, sélectionnez **C++** ou **Blueprint**.
4. Choisissez **No Starter Content**.
5. Choisissez un nom pour votre projet, par exemple **MyProject**.

## Activer le plug-in PlayFab dans votre projet Unreal

Pour activer le plug-in PlayFab :

1. Dans le menu **Settings**, sous **Game Specific Settings**, sélectionnez **Plugins**.
2. Activez le plug-in **PlayFab** et redémarrez Unreal Engine si nécessaire.

Si « PlayFab » n'apparaît pas dans **Plugins**, vérifiez que le plug-in est installé depuis l'Unreal Marketplace. Redémarrez l'éditeur Unreal. Ouvrez ensuite à nouveau **Plugins** et recherchez « PlayFab ».

### Ajouter PlayFab en tant que dépendance de module en C++

Dans Visual Studio, ajoutez PlayFab en tant que dépendance de module dans votre projet C++ :

1. Dans le menu **Affichage**, ouvrez l'**Explorateur de solutions**, qui affiche les fichiers de votre projet C++.

2. Dans l'Explorateur de solutions, accédez à **Solution\Games\YourProjectName\Source** et ouvrez **YourProjectName.Build.cs**.

3. Ajoutez la ligne suivante :

   ```cpp theme={null}
   PrivateDependencyModuleNames.AddRange(new string[] { "PlayFab", "PlayFabCpp", "PlayFabCommon" });
   ```

4. Enregistrez vos modifications.

## Générer les fichiers de projet Visual Studio nécessaires

Pour mettre à jour et générer les fichiers de projet Visual Studio nécessaires à l'utilisation du plug-in PlayFab :

1. Ouvrez une fenêtre de l'explorateur de fichiers et accédez au dossier où se trouvent les fichiers de votre projet.
2. Dans le dossier racine du projet, cliquez avec le bouton droit sur le fichier YourProjectName.uproject.
3. Dans le menu contextuel, sélectionnez **Generate Visual Studio project files**.

## Appeler PlayFab en C++

Les étapes suivantes vous guident dans la création d'un Tile qui se connecte à PlayFab à l'aide d'un ID personnalisé. Pour plus d'informations sur la connexion depuis un projet Blueprints, consultez « Appeler PlayFab depuis les Blueprints Unreal » plus loin dans cet article.

### Créer un nouvel Actor

Pour créer un nouvel Actor :

1. Dans le menu **File**, sélectionnez **New C++ Class**.
2. Pour **Parent Class**, sélectionnez **Actor**.
3. Nommez votre actor **LoginActor**. Une fois l'Actor créé, Unreal Engine ouvre automatiquement votre environnement de développement C++ et charge LoginActor.cpp et LoginActor.h.

<Info>
  Dans le cadre de ce démarrage rapide, vous devez nommer l'Actor **LoginActor**. Si vous lui donnez un autre nom, vous devez mettre à jour l'exemple de code fourni dans ce démarrage rapide pour qu'il corresponde au nouveau nom.
</Info>

4. Faites glisser votre nouvel Actor **LoginActor** depuis le Content Browser vers le panneau Viewport. Il apparaît maintenant dans le volet « World Outliner ».
   Si vous ne voyez pas votre **LoginActor**, sélectionnez l'icône **Show or hide the source panel**. Sélectionnez ensuite le nom de votre projet sous les classes C++.

   <img src="https://mintcdn.com/microsoft-4404708b/N3T1ucKV7zIMBudj/images/playfab/sdks/unreal/show-login-actor.png?fit=max&auto=format&n=N3T1ucKV7zIMBudj&q=85&s=86853f5d47d5ca2a44dc0e9612204080" alt="Content Browser affichant l'icône du panneau source." width="629" height="233" data-path="images/playfab/sdks/unreal/show-login-actor.png" />

<img src="https://mintcdn.com/microsoft-4404708b/N3T1ucKV7zIMBudj/images/playfab/sdks/unreal/login-actor-world.png?fit=max&auto=format&n=N3T1ucKV7zIMBudj&q=85&s=c46ab4ff0751332401e88629a8f058b3" alt="Login Actor dans le monde" width="1062" height="524" data-path="images/playfab/sdks/unreal/login-actor-world.png" />

### Ajouter des appels d'API PlayFab à votre LoginActor C++

Dans ce démarrage rapide, vous utilisez [LoginWithCustomID](xref:titleid.playfabapi.com.client.authentication.loginwithcustomid) pour effectuer la connexion. Bien que `LoginWithCustomId` soit simple à utiliser pour commencer, nous vous recommandons de passer à une méthode d'authentification des joueurs plus sécurisée pour la sortie de votre jeu. Consultez [Principes de base et pratiques exemplaires de connexion](/fr-CA/services/playfab/identity/player-identity/login/login-basics-best-practices) pour plus d'informations sur l'implémentation d'une fonctionnalité de connexion robuste.

L'appel `LoginWithCustomID` est effectué dans votre **LoginActor**. Pour ajouter le code propre à PlayFab à votre **LoginActor** :

1. Remplacez le contenu de LoginActor.h par le code ci-dessous :

```cpp theme={null}
#pragma once

#include "CoreMinimal.h"
#include "GameFramework/Actor.h"
#include "PlayFab.h"
#include "Core/PlayFabError.h"
#include "Core/PlayFabClientDataModels.h"
#include "LoginActor.generated.h"

UCLASS()
class ALoginActor : public AActor
{
    GENERATED_BODY()
public:
    ALoginActor();
    virtual void BeginPlay() override;
    void OnSuccess(const PlayFab::ClientModels::FLoginResult& Result) const;
    void OnError(const PlayFab::FPlayFabCppError& ErrorResult) const;

    virtual void Tick(float DeltaSeconds) override;
private:
    PlayFabClientPtr clientAPI = nullptr;
};
```

2. Remplacez le contenu de LoginActor.cpp par le code suivant.

```cpp theme={null}
#include "LoginActor.h"
#include "Core/PlayFabClientAPI.h"

ALoginActor::ALoginActor()
{
    PrimaryActorTick.bCanEverTick = true;
}

void ALoginActor::BeginPlay()
{
    Super::BeginPlay();
    
    GetMutableDefault<UPlayFabRuntimeSettings>()->TitleId = TEXT("144");
    
    clientAPI = IPlayFabModuleInterface::Get().GetClientAPI();

    PlayFab::ClientModels::FLoginWithCustomIDRequest request;
    request.CustomId = TEXT("GettingStartedGuide");
    request.CreateAccount = true;

    clientAPI->LoginWithCustomID(request,
        PlayFab::UPlayFabClientAPI::FLoginWithCustomIDDelegate::CreateUObject(this, &ALoginActor::OnSuccess),
        PlayFab::FPlayFabErrorDelegate::CreateUObject(this, &ALoginActor::OnError)
    );
}

void ALoginActor::OnSuccess(const PlayFab::ClientModels::FLoginResult& Result) const
{
    UE_LOG(LogTemp, Log, TEXT("Congratulations, you made your first successful API call!"));
}

void ALoginActor::OnError(const PlayFab::FPlayFabCppError& ErrorResult) const
{
    UE_LOG(LogTemp, Error, TEXT("Something went wrong with your first API call.\nHere's some debug information:\n%s"), *ErrorResult.GenerateErrorReport());
}

void ALoginActor::Tick(float DeltaTime)
{
    Super::Tick(DeltaTime);
}
```

<Tip>
  IntelliSense dans Visual Studio indiquera qu'il ne trouve pas les fichiers d'inclusion ni l'espace de noms PlayFab. Vous pouvez ignorer ces avertissements sans risque. Lorsque vous exécuterez votre projet, il sera généré et exécuté correctement.
</Tip>

### Terminer et exécuter en C++

Vous êtes maintenant prêt à tester un appel à PlayFab depuis Unreal Engine en C++. Les résultats de votre appel de test s'affichent dans l'**Output Log** d'Unreal Engine.

Dans Unreal Engine :

1. Affichez l'Output Log : dans le menu **Windows**, sélectionnez **Developer Tools** et activez **Output Log**.
2. Dans la barre d'outils, sélectionnez **Compile** et attendez qu'Unreal Engine termine la compilation. Pendant la compilation de votre code, Unreal affiche « Compiling C++ Code ».
3. Sélectionnez **Play**. Lors de l'exécution du code, Unreal affiche ce qui suit dans la fenêtre **Output Log** :

`LogTemp: Congratulations, you made your first successful API call!`

<img src="https://mintcdn.com/microsoft-4404708b/N3T1ucKV7zIMBudj/images/playfab/sdks/unreal/call-works.png?fit=max&auto=format&n=N3T1ucKV7zIMBudj&q=85&s=d87c28c4bd68f5b72bcb59366eacb795" alt="Appel réussi dans l'Output Log" width="1477" height="311" data-path="images/playfab/sdks/unreal/call-works.png" />

## Appeler PlayFab depuis les Blueprints Unreal

Cette section vous guide dans la création d'une structure Blueprint qui utilise l'API PlayFab pour appeler [LoginWithCustomID](https://learn.microsoft.com/en-us/rest/api/playfab/client/authentication/login-with-custom-id?view=playfab-rest\&preserve-view=true). Bien que `LoginWithCustomId` soit simple à utiliser pour commencer, nous vous recommandons de passer à une méthode d'authentification des joueurs plus sécurisée pour la sortie de votre jeu. Consultez [Principes de base et pratiques exemplaires de connexion](/fr-CA/services/playfab/identity/player-identity/login/login-basics-best-practices) pour plus d'informations sur l'implémentation d'une fonctionnalité de connexion robuste.

<Tip>
  Si vous partez d'un projet Blueprint, vous devez le convertir en projet C++ pour que les actions Blueprint PlayFab fonctionnent.
</Tip>

### Créer une structure Blueprint

Dans Unreal Engine, dans la barre d'outils, sélectionnez **Open Level Blueprint**.

<img src="https://mintcdn.com/microsoft-4404708b/N3T1ucKV7zIMBudj/images/playfab/sdks/unreal/uemk-open-lv-bp.jpg?fit=max&auto=format&n=N3T1ucKV7zIMBudj&q=85&s=d80f85c201032ab8d0394e7a1a89e28e" alt="Exemple d'ouverture du Level Blueprint" width="439" height="439" data-path="images/playfab/sdks/unreal/uemk-open-lv-bp.jpg" />

L'EventGraph s'ouvre et contient déjà deux actions : `Event BeginPlay` et `Event Tick`.

Actions utilisées dans ce démarrage rapide :

* `Set Play Fab Settings`
* `Login with Custom ID`
* `Make ClientLoginWithCustomIDRequest`
* `AddCustomEvent` x 2
* `Break PlayFabError`
* `Print String` x 2

Créez votre Blueprint comme suit :

* Sélectionnez la broche de sortie de `Event BeginPlay` et faites-la glisser vers un emplacement libre de l'**Event Graph**. Dans la boîte de dialogue **Executable Actions**, recherchez `Set Play Fab Settings` et sélectionnez-la pour l'ajouter à votre Blueprint. Dans `Set Play Fab Settings`, si **Game Title id** est vide, définissez-le sur le **Title ID** de votre jeu.

* Sélectionnez la broche de sortie de `Set Play Fab Settings` et faites-la glisser vers un emplacement libre. Dans la boîte de dialogue **Executable Actions**, recherchez `Login with Custom ID` et sélectionnez-la pour l'ajouter à votre Blueprint.

* Sélectionnez la broche **Request** de `Login with Custom ID` et faites-la glisser vers un emplacement vide. Dans **Actions providing a(n) Client Login With Custom ID Request Structure**, sélectionnez `Make ClientLoginWithCustomIDRequest`.

* Dans `Make ClientLoginWithCustomIDRequest` :

  * Sélectionnez **Create Account**.
  * Définissez **Custom Id** sur GettingStartedGuide.

* Dans `Login with Custom ID`, sélectionnez la broche **On Success** et faites-la glisser vers un emplacement vide. Dans **Actions providing a(n) Delegate**, recherchez `Add Custom Event` et sélectionnez-la pour l'ajouter à votre Blueprint.
  * Nommez-le `OnLogin`.

* Sélectionnez la broche **On Failure** et faites-la glisser vers un emplacement vide. Dans **Actions providing a(n) Delegate**, recherchez `Add Custom Event` et sélectionnez-la pour l'ajouter à votre Blueprint.
  * Nommez-le `OnFailure`.

* Sélectionnez la broche de sortie de `OnLogin` et faites-la glisser vers un emplacement vide. Dans la boîte de dialogue **Executable Actions**, recherchez `Print String` et sélectionnez-la pour l'ajouter au Blueprint.
  * Dans `Print String`, définissez la valeur **In String** sur « Congratulations, you made your first successful PlayFab API call using Blueprint! ».

* Sélectionnez la broche de sortie de `OnFailure` et faites-la glisser vers un emplacement vide. Dans la boîte de dialogue **Executable Actions**, recherchez `Print String` et sélectionnez-la pour l'ajouter au Blueprint.

* Sélectionnez la broche **Error** de `OnFailure` et faites-la glisser vers un emplacement vide. Dans la boîte de dialogue **Actions providing a(n) string**, recherchez **Break PlayFabError** et sélectionnez-la pour l'ajouter au Blueprint. Dans la boîte de dialogue **Actions taking a(n) PlayFab error structure**, recherchez **Break PlayFabError** et sélectionnez-la pour l'ajouter au Blueprint.

* Connectez la broche **Error Message** de `Break PlayFabError` à la broche **In String** de l'action `Print String` d'échec.

Une fois terminé, votre Blueprint devrait ressembler à ceci :

<img src="https://mintcdn.com/microsoft-4404708b/N3T1ucKV7zIMBudj/images/playfab/sdks/unreal/blueprint-structure.png?fit=max&auto=format&n=N3T1ucKV7zIMBudj&q=85&s=28dcddff9746a46c9f2719b2439d4b84" alt="Interface du Blueprint ouvert" width="1958" height="1502" data-path="images/playfab/sdks/unreal/blueprint-structure.png" />

**Enregistrez** le Blueprint et fermez la fenêtre de l'éditeur Blueprint.

### Exécuter un appel PlayFab avec Blueprint

1. Dans la barre d'outils, sélectionnez le bouton **Play**.

2. Lors de l'exécution du Blueprint, la sortie suivante s'affiche dans la fenêtre Viewport.

   <img src="https://mintcdn.com/microsoft-4404708b/N3T1ucKV7zIMBudj/images/playfab/sdks/unreal/uemk-log-success.png?fit=max&auto=format&n=N3T1ucKV7zIMBudj&q=85&s=190c17886fa54873449808f5bbab7fc3" alt="Journal de réussite du Blueprint" width="489" height="221" data-path="images/playfab/sdks/unreal/uemk-log-success.png" />

Félicitations, vous avez effectué votre premier appel d'API PlayFab réussi à l'aide de Blueprint!

## Ressources supplémentaires

* Documentation Unreal Engine sur le [Blueprints Visual Scripting](https://docs.unrealengine.com/en-US/Engine/Blueprints/index.html).
* [Documentation Unreal Engine](https://docs.unrealengine.com/).


## Related topics

- [Moteurs de jeu pris en charge par PlayFab](/fr-CA/services/playfab/sdks/game-engines/index.md)
- [Notes de publication PlayFab 2018](/fr-CA/services/playfab/release-notes/2018.md)
- [Intégrer le plugiciel PlayFab de la marketplace Unreal Engine](/fr-CA/services/playfab/multiplayer/networking/party-unreal-engine-oss-playfab-plugin-integration.md)
- [Démarrage rapide de Party](/fr-CA/services/playfab/multiplayer/networking/quickstart.md)
- [Démarrage rapide de PlayFab Online Subsystem (OSS)](/fr-CA/services/playfab/multiplayer/networking/party-unreal-engine-oss-quickstart.md)
