Poor Performance - Why?

I am having difficulty narrowing down why exactly my game is preforming sluggishly on various low to high end android devices.

I can run games like RiptideGP extremely smoothly on these devices, yet my very simple game with less than 10 objects on screen with very low quality struggles to stay above 40fps.

Here’s what it looks like running in the editor on my PC:

1542962--89873--$unity-performance.png

Here’s what it looks like running on an Android device in terms of ADB performance logs:

Android Unity internal profiler stats:
cpu-player>    min: 18.6   max: 67.1   avg: 37.3
cpu-ogles-drv> min:  1.4   max:  7.9   avg:  3.1
cpu-present>   min:  0.1   max:  0.5   avg:  0.1
frametime>     min: 22.0   max: 69.8   avg: 40.5
draw-call #>   min:  98    max: 105    avg: 101     | batched:     0
tris #>        min: 35824  max: 40196  avg: 38488   | batched:     0
verts #>       min: 34710  max: 38656  avg: 37049   | batched:     0
player-detail> physx:  0.7 animation:  0.6 culling  0.0 skinning:  0.1 batching:  0.0 render: 29.9 fixed-update-count: 0 .. 4
mono-scripts>  update:  0.5   fixedUpdate:  0.0 coroutines:  0.0 
mono-memory>   used heap: 512000 allocated heap: 0  max number of collections: 1073741824 collection total duration:  0.1

Is there any conclusion that can be drawn from this information?

I’m rendering a scene that contains a 500x500 terrain, 3 models with <1000 verts each, some built in trees and rocks, with a small pool of water.

Am I using too many textures? not enough? is everything scaled too large? too small? Too many tris? too many verts?

I should also say there is not alpha channel texturing happening on the terrain.

Cheers!

You just need to optimise it. Desktops are so much more powerful than mobiles. Search forums for the usual optimisations to apply. There’s a lot of information on this, and we’d just be repeating the same tune on this thread.

  • use fast mobile shaders like in Core Framework
  • less draw calls. Do batching, learn how batching works
  • less cpu time - do smarter shortcuts in code
  • less transparent objects
    etc etc…

You painted them on the terrain with the brush? Are you using version 4.3?

Cause they bring my monster desktop to its knees.

I only painted the textures. There are no billboards or anything painted using the built in foliage generator. Literally just 5 tree models from the standard asset package placed in the scene.

I just activated a 30 day trial of unity pro to enable static batching. Although I can see the batching occurring it didn’t help at all.

In addition, I’m presently using a toon shader. Is that not feasible?

There is very little code in the project, and where code does exist I like to think it is quite efficient.

I just read through the shadow gun optimization thread. I have a few adjustments to make.