extreme lag on android device (Galaxy S9)


I am not sure if this question is related to the general android performance questions/discussions (at least I did not find the solution for the issue in the previous questions).

When I deploy the sample project on an S9 device, it is showing 30 fps. When moving around or jumping I can directly hear the sound but the view lags about 7 seconds (if the action is shown at all…). Modifications in settings (android models, android low - very high profiles; enablegmempath, …) have no effect, always the same behavior after any type of deployment.

What did I missed? Any hints?

Elementary**,** my dear @watson. Your project needs optimization. Which sample are you running? does it have UI/menus? Are you running it on profile?

You can try lowering resolution in system_android_es3.cfg to something like
r_MaxHeight=480 and forcing low graphics settings with r_GraphicsQuality = 1

Change graphic settings in editor->Edit->Editor Settings->Graphics Settings->Android

and turn off post processing, shadows, motion blur, lightning, AO and the likes. Turn r_enablegmempath to 2.

Optimize shaders in dev/engine/Shaders. You can gain big increase in frame rate by disabling some features in there.

Engine is open source so it’s possible to optimize the render by turning of the features you don’t need.

Use as little UI elements as possible, avoid images spanning whole screen.

Compress and optimize all UI and game textures, target low resolutions - 32x32. Same goes for meshes. Use smaller terrains, those even on low settings can be a hog.

Go easy on particles.

Don’t render more than a few meshes on screen at once.

If everything goes well you should have close to 60 frames per second on s9, hopefully.

Edit: in editor->Edit->Editor Settings->Graphics Settings->Android set sys_maxfps to 60 if you want 60 fps.


Thank you!
I am currently testing android only with Advanced_RinLocomotion and Release build (ARMv8).
I do not know why, but changing the r_GraphicsQuality to something else than auto seems to be not good. When I do this, I get a black screen. But in my first
tests also misc. other graphics setting combinations produced a black screen (with navigation buttons only).
I turned down the quality to showing plain cubes only, but the lagging is there, completely unimpressed. I tried assigning the S9 device to the config file “android_low.cfg” -> black screen.

I will try to turn down resp. optimize further, but I suspect it is something different.

edit: I think now I tupled nearly every setting. Also with very low resolutions (640*480) and zero details it is lagging like before (unplayable 5 - 10 sec.). I tried on Galaxy S8: same behaviour. I tried with misc. deployment variants (via lmbr_waf) and manually generated and copied shader pak files… Many things changed, except one thing: the brute graphics lagging. I give up.

Looks like the issue is solved with 1.20. At least my first test after returning looks promising. :slight_smile:
No build issues and appealing performance now.