4.6.1 to 4.7 = 12+ fps drop on Android

DG_Gage
Wed, 25 Feb 2015 16:13:45 +0000
Mobile

Our game launches on iOS and Android in a few months. While 4.7 is not necessary, we are planning on adding lots of content updates for quite some time after release. We are head over heels in love with this engine, and really want to be able to stay with current versions for the sake of adding awesome new features later. As of now, we are stuck on 4.6.1 until this is fixed or we are told how to adjust whatever settings need to be adjusted. Our game runs great on 4.6.1, so please avoid feedback such as directly adjusting the game’s visual content.

I’m guessing there are some settings in 4.7 that need to be adjusted that got changed/are different than 4.6.1, so here’s some of the visual features we utilize, which are all pretty simple:

Uses bloom lighting from some emissive materials

Uses a single dynamic light in each level to cast dynamic shadows from only the characters

Has complex (74 bone, right under the mobile limit) skeletal meshes walkin around

Materials are all very simple and utilize efficient texture sizes. Everything has a .1 emissive based on the color map to give the game a more bright and saturated look. Otherwise, there are normal and opacity maps on the characters and nothing else

There’s also several static lights, only affecting a few meshes with light, as the static lights themselves do not cast/bake shadows. The ONLY meshes that ever cast shadows are the characters, for the sake of having a few dynamic shadows to add to the look. It hasn’t been a problem

There’s a good amount of drawcalls, in the range of 70-150 depending on your view, but it hasn’t harmed things. There are some combined meshes that utilize a single material to reduce the drawcalls. None of them have an insane amount of polys, as I discovered that there is a fine balance of drawcalls and polys that goes on with mobile hardware; sometimes reducing drawcalls leads to single meshes having too many vertices for the mobile hardware to handle

With 4.6.1, the game would run a solid ~20fps with several skeletal meshes on screen and 100+ environmental drawcalls. It easily goes to 30+ fps on good devices when the view doesn’t contain skeletal meshes. 20+ on lesser devices. Lesser devices would see 15fps with the skeletal meshes on screen, which still played just fine considering their older hardware.

4.7… you’re looking at 8-10, or LESS, with skeletal meshes on screen, and max ~18 with them out of view.

Any help is hugely appreciated. I will do some more testing with the settings and post anything that helps. If all does not go well, however, we are stuck with 4.6.1 (4.7 looks so awesome!!!)

8 posts - 1 participant