Get started
Before you begin using Authentication, you'll need to do the following:
- Sign up for for UGS.
- Link your dashboard to a Unity Editor project.
- Install the SDK in your game code.
- Initialize the SDK.
Sign up
To use Authentication, you need to sign up to Unity Gaming Services, as it’s part of UGS.
If you don't have a Unity account, [create one]https://docs.unity.com/ugs/manual/overview/manual/unity-gaming-services-home) and create a new project to sign up for Unity Gaming Services.
Important: Only Organization Owners can sign up for Authentication.
- Sign into the Unity Services Dashboard.
- Select Explore Services in the side panel.
- Select Sign Up in the top banner and follow the instructions.
Link your project
To use the Unity Authentication service, you’re required to link your project to a cloud project in the Unity Editor through a project ID. Follow these steps to get your project ID.
- In the Unity Editor menu at the top of the page, select Edit > Project Settings > Services tab.
- If you’re not already signed in with your Unity ID, either create a new Unity ID or sign in.
- If you want to create a new project, select your organization and click Create. If you want to link to an existing project, click I already have a Unity Project ID. Then, select your organization and project from the dropdown, and click Link.
Now you can find your project ID from the Settings tab in the Services window.
Install the SDK
To install the latest Authentication package for Unity:
- In the Unity Editor, open Window > Package Manager.
- In the Package Manager, select the Unity Registry list view.
- Search for Authentication, or locate it in the package list.
- Select the package, then select Install.
- (Optional) To install Unity Player Accounts:
- Add the
com.unity.services.playeraccounts
package:- In the Package Manager, select the plus icon with the down arrow next to it.
- For Unity Editor version 2021 or later, select Add package by name..., paste
com.unity.services.playeraccounts
, then select Add. - For Unity Editor version 2020.3 or later, select Add package from git URL, paste
com.unity.services.playeraccounts
, then select Add.
- Add the
See the Package Manager documentation for more information.
Initialize the Unity Services SDK
To implement Unity Authentication in your game, after installing the Authentication SDK, initialize all the Unity Services SDKs included in the project following this code snippet:
using Unity.Services.Core;
using UnityEngine;
public class InitializationExample : MonoBehaviour
{
async void Awake()
{
try
{
await UnityServices.InitializeAsync();
}
catch (Exception e)
{
Debug.LogException(e);
}
}
}
Register authentication events
To receive updates about the status of your player, register a function to the SignedIn
, SignInFailed
and SignedOut
event handlers.
// Setup authentication event handlers if desired
void SetupEvents() {
AuthenticationService.Instance.SignedIn += () => {
// Shows how to get a playerID
Debug.Log($"PlayerID: {AuthenticationService.Instance.PlayerId}");
// Shows how to get an access token
Debug.Log($"Access Token: {AuthenticationService.Instance.AccessToken}");
};
AuthenticationService.Instance.SignInFailed += (err) => {
Debug.LogError(err);
};
AuthenticationService.Instance.SignedOut += () => {
Debug.Log("Player signed out.");
};
AuthenticationService.Instance.Expired += () =>
{
Debug.Log("Player session could not be refreshed and expired.");
};
}