getting back my fps

hi there!

so i am fighting with iphone framerate, which is going down to 4fps. i have reduced the set to 5 draw calls, but i have about 40 gameobjects floating around, with five different materials. most of the objects are capsules (which is the bottleneck, i think).

how could I get back more fps?


Model a lower-poly capsule. The stock one in Unity is not suitable for that number of capsules on an iPhone.

It's not just the draw calls that one has to take care of. If your objects are small enough, you can have smooth graphics performance, even with more than 100 draw calls (tested on iPad). Light sources are extremely slow, especially non-directional ones. But I guess you already got rid of them, since you have 5 materials and 5 draw calls.

More importantly, the iPad graphics appears to be severely fill-limited (so iPhone probably has a similar problem, although the resolution is much smaller). This means, rendering many layers of large or even fullscreen objects will slow down things considerably. For debugging, you can switch from "RGB" to "Overdraw" in the Scene tab. This shows how many layers of polygons you are rendering on top of each other in vain (since only the ones in the foreground are actually visible (unless you use transparency)). If you see many bright areas, you are wasting rendering performance (although depending on your scene, sometimes this can't be helped). Use Occlusion Culling.

I've found this to be very helpful My mobile game has many more objects than that and runs very smooth, thanks to tips here: