Large Graphics.PresentAndSync Spikes on Android

I’ve been working on a simple 2D mobile game for a while, and since Unity 5 has come out I’ve been having a lot of trouble making rigidbodies move smoothly across the screen. Up until last night, I had unity 5.3.2 and I encountered MASSIVE spikes due to culling and physics.processing, even though I was using neither (I am using 2D physics, but my understanding is that physics.processing is only affected by 3D physics). These spikes were causing a very noticeable lag in the game, which made it basically unplayable. I just downloaded 5.3.3 last night and thankfully those two problems seemed to magically disappear. However, I’m now having a similar problem with Graphics.PresentAndSync. It spikes up to 90% sometimes for absolutely no reason and it’s still a totally game-breaking issue, which is a big problem because I am hoping to release my game this weekend.

Below are snapshots of the profiler running off of my Android device with an empty scene (nothing but the camera). As you can see, there is still a substantial amount of processing dedicated to Graphics.PresentAndSync even though there are no graphics at all…


I don’t understand how this problem can still exist even with an empty scene and I’m completely baffled. I haven’t been able to make a smooth game since I downloaded Unity 5 and this is getting incredibly frustrating. Does anybody have any idea why this is happening? Is my best option just to downgrade to an earlier version of Unity?

UPDATE: Tested on iOS and the same problem is there. I really need to know if someone has an idea why this is happening before I try an older version of Unity.

Hello, I am facing same problem. Any luck?

Most likely a bug when building a “fat” binary (ARM+ x86) or (ARM + ARM64(?)). Destroys framerates for some reason. Building for ARM only helped somewhat.