Are C3 games locked at 30FPS on Mobile Devices?

  • Since I really optimized my game to be mobile friendly, I see it being locked at 30 FPS as you can see in the image down there. Why is that? Are mobile games in C3 locked at 30 FPS if they can't get to 60 or what is happening here? Even though at the steady 30 fps my phones CPU becomes burning hot after maybe 2 minutes. It usually doesn't get hot in games, just warm.

    Screenshot of my game from a Sony Xperia XA1 phone:

    https://imgur.com/a/atpNobo

    These are my phones CPU & GPU, they don't seem that weak:

    https://imgur.com/a/c4SIVDl

    Thanks in advance.

  • Try not to use any effects. Most effects are very slow on mobile..

    A simple effect (like "Set color") applied to a couple of small sprites can cause about 20% drop in performance.

  • Another trick I use to get the best performance possible on a mobile device is to turn off collision check check box on any sprites that don't require it. This eliminates a lot of checks that would be required otherwise. By default when you create a sprite it's collision check property is on.

    This also means that if something is off screen you can disable collision checks and then enable them when the item is visible.

    In my games this helps a lot to eliminate unnecessary collision checks.

  • rhg1968

    Collision checks are not performed if there are no events or behaviors that require them, so you don't need to disable collisions for all sprites.

    Say, if you place a hundred of sprites on the layout and run the project in debug mode, you'll see that the number of collision checks per second is zero.

  • Try Construct 3

    Develop games in your browser. Powerful, performant & highly capable.

    Try Now Construct 3 users don't see these ads
  • I read through all possible optimization tutorials before even attempting to start such a mobile intensive game and there's no unnecessary collision checks in my project of course. So that's not it.

    Might be that the RAM is bottlenecking since I assume the GPU doesn't have any VRAM, and if it does it's definitely bottlenecked. My animations got 100's of frames and that's just how it is, I made the best out of it, so I assume it has to keep getting the frames out of the RAM, which is slow, right?

    Anyway, since I see it's not limited to 30 FPS, which is great, I found some things that could optimize it for phones. I simulated real time shadows which was pretty heavy and put static shadows instead, removed the noise and voilà 55-61 FPS. Those were the effects that were a bit too heavy for a phone

    Thanks for all the tips guys!

  • dop2000

    Thanks for the tip. I did some testing to verify what you said. It will definitely save me some time not to disable collisions.

    Thank you

  • Keep in mind that it probably has less than 30 fps but the construct engine has a "min fps" action that slows down dt if games go below 30 fps by default to allow the game to run relatively smoothly but in slow motion instead

Jump to:
Active Users
There are 1 visitors browsing this topic (0 users and 1 guests)