Customizing login prompts
The authentication system may need to prompt the player in certain scenarios, to confirm how the player wants to log into their account.
There are two ways to customize the login system:
- Customizing the UMG widgets to change the appearance of the prompts.
- Binding to the "Add Widget to Viewport" and "Remove Widget from Viewport" events to customize where widgets are displayed. This is essential for VR games which will need to attach widgets to actors instead of the viewport.
Customizing the login appearance
The user interface prompts the plugin ships with are built in UMG, which makes them easy to replace and customize. You can replace the built-in UMG widgets by changing your project configuration.
Create your custom widgets
To create your replacement widgets, you should copy the existing .uasset
files from the plugin content into your own project. This will ensure they have the right interfaces implemented, and that they are a good starting point for you to start customizing how they look.
Update the configuration
Once you have got a copy of the widgets in your project, you can change which widgets are used in your game by changing Project Settings:
The following widget is used by most authentication graphs when a cross-platform account provider is enabled but not mandatory. You should customize them if you are using an optional cross-platform account system:
- On Sign In or Create Account
The following widget is used when Epic Games is used as the cross-platform account provider, and the game is shipping on console devices:
- On Enter Device PIN Code
Customizing how widgets are displayed
The plugin provides a global "EOS subsystem" with "Add Widget to Viewport" and "Remove Widget from Viewport" events.
When you bind to these events, you override how the plugin displays widgets on screen with your own behaviour.
The default behaviour is effectively as follows:
VR games will need to bind to these events, and attach the widgets to the actors in the scene. Otherwise, your players will not be able to interact with the login prompts.