> ## 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.

# Intégration du GSDK PlayFab dans Unity

> Intégrez le SDK du serveur de jeu PlayFab (GSDK) dans un projet de serveur dédié Unity pour héberger des builds sur PlayFab Multiplayer Servers avec la bibliothèque UnityGsdk.

La plateforme Multiplayer Servers fournit une bibliothèque GSDK que vous pouvez intégrer à votre serveur de jeu [Unity](https://unity.com/). La bibliothèque est open source et disponible dans le [référentiel GSDK sur GitHub](https://github.com/PlayFab/gsdk/tree/master/UnityGsdk).

## Installation

Vous pouvez copier le dossier [Assets/PlayFabSdk](https://github.com/PlayFab/gsdk/tree/master/UnityGsdk/Assets/PlayFabSdk) dans votre projet Unity. Vous devez ensuite activer la directive de script `ENABLE_PLAYFABSERVER_API` dans les paramètres de build Unity ([exemple](https://user-images.githubusercontent.com/8256138/81462605-a6d7ac80-9168-11ea-9748-110ed01095c2.png)).
Vous pouvez également utiliser le [fichier de package Unity](https://github.com/PlayFab/gsdk/blob/main/UnityGsdk/MpsGsdk.unitypackage) fourni.
Vous trouverez un exemple de code dans le projet [MultiplayerServerSample](https://github.com/PlayFab/gsdk/tree/main/UnityGsdk/Assets/PlayFabSdk).

## Utilisation

Vous devez au minimum implémenter la méthode `PlayFabMultiplayerAgentAPI.Start()` et démarrer une [coroutine](https://docs.unity3d.com/Manual/Coroutines.html) pour la méthode `PlayFabMultiplayerAgentAPI.ReadyForPlayers()`, comme dans le code ci-dessous

```csharp theme={null}
//...
StartCoroutine(ReadyForPlayers());
//...

private IEnumerator ReadyForPlayers()
{
    yield return new WaitForSeconds(.5f);
    PlayFabMultiplayerAgentAPI.ReadyForPlayers();
}
```

Vous voudrez également vous abonner à la transition du serveur de jeu vers l'état Active à l'aide de `PlayFabMultiplayerAgentAPI.OnServerActiveCallback`, comme dans l'exemple ci-dessous :

```csharp theme={null}
PlayFabMultiplayerAgentAPI.OnServerActiveCallback += OnServerActive;
// ...
private void OnServerActive()
{
    Debug.Log("Server Started From Agent Activation");
    // players can now connect to the server
}
```

<Note>
  Pour plus d'informations sur les états des serveurs de jeu, consultez la section Notions de base d'un serveur de jeu PlayFab [ici](/fr/services/playfab/multiplayer/servers/basics-of-a-playfab-game-server)
</Note>

En outre, vous pouvez implémenter les rappels suivants sur votre serveur de jeu :

* `PlayFabMultiplayerAgentAPI.OnMaintenanceCallback`, déclenché lorsqu'Azure doit effectuer une maintenance sur la machine virtuelle
* `PlayFabMultiplayerAgentAPI.OnShutDownCallback`, déclenché à la réception d'une notification d'arrêt
* `PlayFabMultiplayerAgentAPI.OnAgentErrorCallback`, déclenché en cas d'erreur de communication entre le serveur de jeu et l'agent de machine virtuelle PlayFab

<Note>
  Pour d'autres exemples du GSDK, vous pouvez consulter notre référentiel d'exemples MPS [ici](https://github.com/PlayFab/MpsSamples)
</Note>


## Related topics

- [Notions de base d'un serveur de jeu PlayFab](/fr/services/playfab/multiplayer/servers/basics-of-a-playfab-game-server.md)
- [Vue d'ensemble du plug-in PlayFab Unreal GSDK](/fr/services/playfab/multiplayer/servers/server-sdks/unreal-gsdk/index.md)
- [Vue d'ensemble du plug-in Unity PlayFab Multiplayer](/fr/services/playfab/multiplayer/lobby/lobby-matchmaking-sdks/multiplayer-unity-overview.md)
- [Intégration de PlayFab pour les titres utilisant les services XBOX](/fr/services/xbox-services/playfab-integration.md)
- [Configuration du GSDK dans le projet](/fr/services/playfab/multiplayer/servers/server-sdks/unreal-gsdk/third-person-mp-example-gsdk-project-setup.md)
