Build Processing

What is PerformanceKit (in the SDK) and what does it do?

Pley does quite a bit of optimization, compression, and post-processing to increase game performance for you - automatically. Whenever you upload a build, it is processed (instantly) and then post-processed. Examples of what is done during this process are:

  • Application of optimal WebGL settings.
  • Custom bug fixes tailored to specific Unity versions compatible with WebGL.
  • Optimization of WebAssembly code.
  • Configuration adjustments to ensure seamless feature functionality on the web.
  • Enhanced audio control to address prevalent browser issues.
  • Expanded browser support.
  • Automatic rectification of common errors made during mobile-to-web transitions.
  • Integration of recent fixes developed by Pley for other games.
  • Application of optimal compression techniques for web assets and code.
  • Fix other issues games on Pley has experienced.



Build Processing

In the Pley Game Manager post-processing is automatically applied to your build (after uploading it through the SDK). This is not to be confused with Unity's post-processing stack. Pley's post-processing targets performance optimizations; it goes through the build and tries to optimize the game's code by applying a few patches providing an extra edge when running on WebGL. Once the post-processing is done, the build undergoes a compression process. One of the things this compression does is apply Brotli compression to the whole build - including your Asset Bundles if you're using them (Read about asset management here).

πŸ“˜

Unity Build Compression

We recommend that disabling build's compression in Unity's Publishing Settings. Pley handles compression for you. The SDK will automatically offer to disable compression for you when it analyzes your game.

But the main thing to note here is that we do all of this for you, automatically without you having to worry about it.

πŸ“˜

Post-processing and compression process

Both the post-processing and compression processes take time and how long they would take depends on the size of your game and how many assets it has. However, a player (including you) can run the game during this process. Note, however, when you do that, you're running the game without optimization and the performance you experience shouldn't be used as an indicator.