This document describes how to set annotations, fidelity parameters, and quality levels in your Unity project.
Annotations
Annotations give contextual information about what your game is doing when a tick is recorded.
Default annotations
The plugin defines one default annotation for you:
- Scene: Contains the identifier of the current scene being played; useful in cases where most of your levels map to a single scene in your project
To see these annotations in UI, do the following:
- Select Google > Android Performance Tuner.
Select the Annotation parameters tab and then click Use custom parameters.
Figure 1. Annotation parameters tab in the plugin
Define and use a custom annotation
To create a custom annotation, do the following:
- On the Annotation parameters tab, click the + button to create a new annotation.
In the new row, click on the Type column and select Add or update enum. As an example, you can make an enumeration for the game difficulty.
Click the Add New Enum button after specifying the enum values.
Figure 2. Add a new enum
Select the new type in the Type column. Enter a name for the parameter in the Parameter name column.
Figure 3. Select the new enum
Click the Apply button to let the plugin regenerate the protocol buffer files and classes.
To set this annotation in your game, call
SetCurrentAnnotation()
:
tuner.SetCurrentAnnotation(new Annotation
{
Scene = Scene.AssetsScenesMainmenu,
Difficulty = Difficulty.Medium
});
Define fidelity parameters and quality levels
Fidelity parameters reflect the performance and graphical settings of your game. Quality levels are used to annotate sessions so that you can determine if devices are running on a quality level that is too high (resulting in lower performance) or too low (resulting in unnecessarily reduced fidelity).
Your game might already have different fidelity parameters such as the following:
- Shadow quality
- Texture resolution
- Particle effects quality
These parameters can be regrouped into quality levels (for example "low", "medium", and "high"). To have these parameters properly reported by Android Performance Tuner, and then analyzed and visualized in the Google Play Console, you must expose the parameters to the plugin. Add your fidelity parameters in the Fidelity parameters tab.
Figure 4. Fidelity parameters tab in the plugin
Select Use custom parameters, and then define a set of parameters. Each parameter has a type, like annotations.
Use the
SetFidelityParameters()
function to set the fidelity parameters as appropriate in your game:
tuner.SetFidelityParameters(new FidelityParams
{
ParticleDetails = 1.0f,
ShadowQuality = ShadowQuality.High,
TextureResolution = 2048,
});
Next, define different quality levels that will be used to group the data in the Google Play Console and give you better insights. Add your quality levels in the Quality levels tab.
Click the Add Level button to add your first level. Define multiple levels that follow a trend. For example, define levels for the lowest quality level to the highest.
Figure 5. Quality levels tab in the plugin