Does anyone know of Unity assets that optimize and/or improve the performance of the game made in Unity? I am fully aware of ways games can be optimized, but I am curious if there is an asset that does it?
That sounds similar to the asset which has a “Make MMO” button :).
About the only automatic asset I’m aware of is Asset Hunter.
https://www.assetstore.unity3d.com/en/#!/content/22983
There are plenty of manual assets though like pool managers.
As far as I know, this task requires sentient/intelligent being (that can interpret performance data from Profiler/Frame Debugger/etc) and an asset isn’t gonna cut it.
Real-time optimiser - Unity Asset Store - The Best Assets for Game Making - might be worth looking at.
You just going to add bloat unless you profile and figure out where performance is bad and why first.
If you’re doing a bunch of Instantiate / Destroy calls, that can be pretty terrible for performance, especially on mobile.
For us, even when not targeting mobile, the very first step in optimizing (indeed we always use it from the get-go) is to use a pooling plugin such as our own Pool Boss or PoolManager. It’s pretty easy to do and well worth the effort.
There’s also:
- Occlusion stuff which can help a ton
- Texture combining (to reduce draw calls)
- Making sure you’re not playing more than 1-2 compressed or streaming audio files at a time
- Polygon reduction.
- Using Dotween instead of ITween (slooooooooow).
There may be plugins that do the rest of these, I’m not sure. We do them the old fashioned way.
Optimizing a game isn’t really something that can be effectively automated. There are many, many techniques and approaches you can take for optimization. But almost all of them are very circumstantial. What works in one scenario won’t work in another one. So you’re probably never going to see an Asset that just blanket optimizes everything for you. The best you can hope for is an Asset that points out some of the areas that might be dragging your game down, and most of that can already be had with Unity’s built-in profiling and debugging tools.
A better course of action would be to look for Assets that have been pre-optimized for performance. This would include script Assets that have been properly designed to run efficiently, with no egregious memory holes. It would also include graphical Assets that are designed to scale properly for different performance profiles. Keep an eye out for 3D models that have proper level-of-detail support built in.