Performance issue, see my profiler screenshot and please help me

This is my scene, on android device [Dell streak, fps only 15]-

Then i decided to check with an empty project on mobile device - Profiler screeshot of empty project -

FPS of empty project on device - 45

The script i am using to identify the fps on mobile is taken from here- http://wiki.unity3d.com/index.php?title=FramesPerSecond

I am really upset, what is wrong with it ??

I have done everything but on my dell streak the fps is not going above 20, just a camera is moving in straight line and nothing else on scene for now.

The processor of Dell Streak is showing ARMv7
Android version - 2.2.2
CPU ABI - armeabi-v7a

Things i have done-

  1. vsync in prject settings > quality > others changed to dont sync
  2. changed shader to mobile diffuse + 256 texture compression+ texture quality=quater res+ anisotropic=disabled+ android settings to fastest
  3. min api level to 2.1, Graphic level to 1.x,texture com = etc1 or rgba16
  4. Project settings → Time, change time from 0.02 to 0.22
  5. cubes gets instantiated every second in my scene,added rigidbody,enabled iskinematic on my cubes as i read it somewhere it is necessary
    reference for this is- http://docs.unity3d.com/Documentation/Manual/MobileOptimisation.html
    Its written - under Physics

I can play diversion on my phone, and i think if i can play it, i should be able to accerlate my scene fps to 30+ atleast. Am i missing something ??
These houses are just 66polys and occ culled aswell.

The actual fps script could make your fps to be lower because it is running. Remove it and see if there is a difference. If not keep it. For instantiating you need a pool of objects and reuse them if that is not the case. Too many rigidbodies can cause your fps to drop. There are so many things to take into consideration.

I would suggest to remove or disable things one by one (even occlusion) and see what makes the most difference.

Also your vert count seems very high for the very little that is displayed on the screen but I don’t think that is causing the slowdown.

yeah i am checking each and everything 1 by 1.

I am instantiating 1 or 2 cubes every second, should i add rigid bodies to them and tick Is kinematic [as mentioned in my second post above] ? or no need of doing it ?

If you talk about my requirement then i personally dont need it, i only did it because i read it for optimization purpose.

Thank you so much for your help

What they are saying in that reference is " if " you want to move a static collider you need to add a rigidbody and set kinematic to true. So yeah it should help in your case, otherwise moving static colliders will lower performance. You can verify in the profiler if that is the issue : check if you see this: Shows up in Profiler as �Static Collider.Move� but actual processing is in Physics.Simulate

Also here is a link for a reusable pool, it will make a difference when instantiating if you aren’t using one already: http://forum.unity3d.com/threads/76851-Simple-Reusable-Object-Pool-Help-limit-your-instantiations!