x

Search in
Sort by:

Question Status:

Search help

  • Simple searches use one or more words. Separate the words with spaces (cat dog) to search cat,dog or both. Separate the words with plus signs (cat +dog) to search for items that may contain cat but must contain dog.
  • You can further refine your search on the search results page, where you can search by keywords, author, topic. These can be combined with each other. Examples
    • cat dog --matches anything with cat,dog or both
    • cat +dog --searches for cat +dog where dog is a mandatory term
    • cat -dog -- searches for cat excluding any result containing dog
    • [cats] —will restrict your search to results with topic named "cats"
    • [cats] [dogs] —will restrict your search to results with both topics, "cats", and "dogs"

Very low FPS on Mali devices

Hello there!

I'm making a mobile game and almost done.. But before beta testing I decided to test it on other devides. It was good on Nexus 4, 5 e.t.c, Good on Galaxy S4, Xiaomi Redmi 4, and some other 12-13 year devices. Even my old 2011 year phone with 3.5 inch display runs it smoothly (Xperia Mini Pro).

But once I opened my game on Galaxy S3 and my old Texet tablet a ran into a problem with very low FPS. Later I realized it's all about Mali (especially Mali 400).

Did Epic test their games on old Mali devices?

And YES, I know Unreal is next-gen engine, and mostly for consoles.. But it good for old devices, the thing is just about Mali.

About project setup:

  • Mobile HDR off.

  • No PBR (Unlit only)

  • No translucency

  • Around 40k polys per frame

  • No lights at all

  • Around 100 drawcalls per view.

With all of those I get 15 - 20 fps. Adreno GPU's render with 60+ fps.

The problem is about Mali. Is there something I can do to optimize my game for old Mali devices?? Because many of mobiles uses Mali and I just do not want to get a lot of bad reviewes because of that.

Product Version: UE 4.15
Tags:
more ▼

asked Mar 11 '17 at 10:13 PM in Packaging & Deployment

avatar image

AlFlakky
418 23 30 47

avatar image AlFlakky Mar 14 '17 at 12:19 PM

Looks like my Mali phones unexpectedly started to give me 60 frames per second. I don't know why and what I did.

I'll try to find an answer and post it here.

(comments are locked)
10|2000 characters needed characters left
Viewable by all users

2 answers: sort voted first

That seems very low even on a Mali 400 device give how simple your scene sounds. Maybe it's CPU bound and so the changes you're making to reduce GPU overhead are not making any difference.

Can you run the STAT DUMPFRAME console command and then paste the relevant part of the adb logcat output here?

  • Jack

more ▼

answered Mar 13 '17 at 03:41 AM

avatar image

JackP STAFF
515 16 6 19

avatar image AlFlakky Mar 13 '17 at 02:21 PM

Hi. Can I do this on mobile? I'm trying, but do not see any Dumpframe profilings in log files..

Anything I should know?

avatar image ddvlost STAFF Mar 14 '17 at 03:56 AM

You can enable Device Output Log in the editor. Editor Preferences -> Experimental -> Device Output Log. Then open it from Main Menu -> Windows. In the Device Output Log you can select target device and see filtered log output from it, also from there you can execute console commands. The application has to be packaged in Development configuration for stats to work.

avatar image AlFlakky Mar 15 '17 at 01:24 PM

I've solved the problem. I post an answer below.

Here are some logs and profilings with Smooth framerate enabled on some old device.

https://yadi.sk/d/Vm_fsai43FssXR

avatar image AlFlakky Mar 16 '17 at 01:37 PM

Looks like I was wrong. My testers was reporting 60 fps with Fixed framerate not because of real 60 frames per sec, but because my counter was showing so..

I draw FPS on HUD by using 1 / Delta World Seconds. Looks like when you set fixed framerate, GetDeltaWorldSeconds() returns fixed delta of the frame, even if fps is different. That's why testers told me they had 60 fps.

They also told me that game became smoother, but slower (like slow motion). As soon as was able to get Galaxy S3 personally, I convinced that game actually gave me only 20 fps. So the problem with mali is not solved. Sorry I misguided you.

Could you check my profilings I post above again?

(comments are locked)
10|2000 characters needed characters left
Viewable by all users

It appears that problem is about Frame smoothing.

Disabling "Smooth Frame Rate" option in Project Settings > General Settings and set Use Fixed Framerate to 60, Mali400 (Tested on Galaxy S3 and Galaxy Ace2) will render the game with 60 fps.

I did not test it with other Mali devices yet, but I supose this method is the same for all.. I set it to whole project, so most of devices work as fast as they can.

more ▼

answered Mar 15 '17 at 01:08 PM

avatar image

AlFlakky
418 23 30 47

avatar image JackP STAFF Mar 15 '17 at 01:21 PM

Thanks for the report. I've entered ticket UE-42916 to look at why Smooth Frame Rate behaves like this.

avatar image AlFlakky Mar 15 '17 at 01:26 PM

I gave you the link with profiles above. Please, mark this answer as Answered if it's up to you :)

avatar image AlFlakky Mar 22 '17 at 08:38 AM

This is no longer valid answer. Could someone reopen the issue?

avatar image JackP STAFF Mar 24 '17 at 09:15 AM

Would you be able to share your content so we can see if we can see anything unusual about it that would explain the performance? If you can upload your content to a cloud drive somewhere, you can send a mail to jack.porter at epicgames.com.

Thanks Jack

(comments are locked)
10|2000 characters needed characters left
Viewable by all users
Your answer
toggle preview:

Up to 5 attachments (including images) can be used with a maximum of 5.2 MB each and 5.2 MB total.

Follow this question

Once you sign in you will be able to subscribe for any updates here

Answers to this question