The purpose of this sample is measuring FPS, memory consumption and how these values are changed depending on avatars number on the scene.
The following indicators are mesured:
- Avatar Count: number of avatars on the scene.
- FPS: FPS of the latest frame (1.0f / time_between_updates_in_seonds).
- Avg FPS: average FPS.
- Total Used Memory: memory used by an application right now. Available in Unity 2020.2 or above.
- System Used Memory: how much memory is taken from the system. Includes allocation pools, extra headers and memory required for code and data. Available in Unity 2020.2 or above.
- Texture Memory: memory is taken by textures. Available in Unity 2020.2 or above.
- Mesh Memory: memory is taken by meshes. Available in Unity 2020.2 or above.
If you need to reduce memory consumption and increase FPS in your application, we recommend modifying these parameters:
- Texture Size: you can specify texture size for body, outfits and haircuts.
- Using PBR textures: there are additional (PBR) textures for body and outfits. Try to disable them if textures take too much memory.
- LOD: there are several LODs for body mesh. Also you can use lowpoly outfits.
- Blendshapes: blendshapes increase mesh size. Don't generate them if they are not used in your application.
- Generated Haircut Parameters: it is possible to specify number of triangles for the generated haircut and its texture size.
Implementation
Implementation details of this sample can be found in the PerformanceTestSample.cs script.
Location: Assets/itseez3d/avatar_sdk/samples_local_compute/05_performance_test_sample_local_compute/scenes/05_performance_test_sample_local_compute.unity.