User Tag List

Page 1 of 4 1 2 3 ... LastLast
Results 1 to 10 of 38

Thread: Performance on Android - case study, conclusions and help needed

  1. #1
    Clicker Fusion 2.5 (Steam)Fusion 2.5 Developer (Steam)Fusion 2.5+ DLC (Steam)Android Export Module (Steam)

    Join Date
    Jul 2019
    Posts
    86
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    Performance on Android - case study, conclusions and help needed

    My game ShapeShifter is coming along great, will be out on Android and PC sometime 2021.

    I've been struggling quiet a lot with the performance on Android for it.
    Here's some information about my struggle:

    At first performance was horrible on Android, I optimized as following:

    * Enabling and disabling groups of events at run time
    * Tried reducing alpha channels in favor of more transparent color. Made no performance difference so I reverted back to alpha channels as they look nicer (and, all my graphic assets are originally created with alpha channels).
    * Nested events are used as often as possible
    * Fusion movement is used whenever possible, instead of x & y code repositioning.
    * Disabling movement, animation and collision testing wherever possible, via the Fusion options and sometimes by code. Every moving enemy on each level is tested for near-screen presence, and marked "Active" or "Non-Active". Complete code parts are ignored if the moving enemy is not on screen.
    * All sounds were degraded from mp3's to 96kbps ogg's. All level's background music was reduced in track time from 3:30 full melodies to 1-2 minutes cut melodies.
    * Every other way to optimize that is written somewhere on the internet, blogs and forum posts - you name it, I tried it.

    This *TRIPPLED* the performance on Android, but it's not enough.

    Current status:
    * It runs silky smooth on top notch flag ships and some mid-range devices that are 2-3 years old.
    * It stutters and suffer fps drops on mid-range devices that are older then 3 years old.
    * It slows down and suffer fps drops on almost every low-spec device, even current ones that was released lately.

    Here's a test I made, and a very weird result
    I've made a 60 > 30 fps option on the menu of the game, to allow mid-range devices to play at lower frame rate, with no slow downs. This resulted in a very very very weird outcome - a device that runs it 40-60 fps on the 60fps version of the game, runs it 20-30 fps on the 30fps version. The expected thing to happen is that a device that suffers frame drops that are higher then 30 on the 60fps version, will run the 30fps version on stable 30. If someone can explain this phenomena, I would greatly appriciate it.

    Second test that is very interesting
    I installed "Jungle Advantures 2" and "Jungle Advantures 3" on my oneplus 3t, a game that is VERY SIMILAR by nature and complexity to my game, it runs silky smooth. There's no fps counter but I can sense the phone breezes through it at ease on 60fps.
    *The same device* runs my game on 40-60fps on the 60fps version, and 20-30fps on the 30fps version.
    This test raises the questions:
    Is it my fault? Is there anything else I can do to match the performance of other games on Android to my game?

    Third test - no sounds = smooth performance
    I tested the game with no sounds at all, just deleted all actions with sounds playing, and it's now nearly completely smooth on 60fps on the oneplus 3t. I left one sound effect by mistake - a "boom" sound when you hit an enemy - and there's a minor stutter and fps drop whenever this sound is playing. Can this be fixed?! :-O

    This 2 minutes video summarizing and demonstrating everything I said, I'd like to hear what you think, thanks in advance!
    https://www.youtube.com/watch?v=nP-nyZqP3aA

  2. #2
    Clicker Fusion 2.5 DeveloperFusion 2.5+ DLCAndroid Export ModuleHTML5 Export ModuleiOS Export ModuleUniversal Windows Platform Export ModuleXNA Export Module
    Dobermann's Avatar
    Join Date
    Feb 2009
    Location
    France
    Posts
    802
    Mentioned
    37 Post(s)
    Tagged
    0 Thread(s)
    Try to change your 96kbps ogg to 192kbps; it helps a lot on devices where the sounds are the problem.
    Also, i've tried something in my case, i do the scrolling only when needed, like player don't move, no scrolling, he moves on X only, only X scrolling moves, same for Y axis.
    Last thing, reduce the number of object per frames, it seems to be the most important part when your events seems good and don't use a lot of memory, the display is the thing to improve.

  3. #3
    Clicker Fusion 2.5 (Steam)Fusion 2.5 Developer (Steam)Fusion 2.5+ DLC (Steam)Android Export Module (Steam)

    Join Date
    Jul 2019
    Posts
    86
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)
    Thanks Dobermann, it seems every time a sound should start, the oneplus 3t stutter (what causes both the 30fps version and the 60fps version to drop frames with every sound). I changed the sounds to 192kb ogg's and that didn't solve it :-( !
    How can I avoid those stutters? I have a sound in my game almost every 2 seconds...

    What about the slow downs? They occur mainly on busy frames, yes...
    Lowering objects count - I've done more then I could to lower object count. For example some of the platforms are quick drops streched, instead of 128 pixels tiles, it's a quick backdrop stretched to 256, 512, 768 pixels - how much I needed.
    I realize lowering objects count would improve performance, but I want to build levels at descent lengths, and have the freedom to have long levels - like Jungle advanture has. It runs fine, why wouldn't my game?

    About scrolling only when needed - wouldn't that solve issues related only when the player is stationary? When the player's jumping and going left or right, x & y scrolling is needed. That happens like 50% of the time in my game.

  4. #4
    Clicker Fusion 2.5 (Steam)Fusion 2.5 Developer (Steam)Fusion 2.5+ DLC (Steam)Android Export Module (Steam)

    Join Date
    Jul 2019
    Posts
    86
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)
    It also stutters whenever a new object is created, and with every sound fired... ochhh...
    Also it's slow on busy frames (levels) but that solves with the 30fps version (so it appears I'll lock every non recent flag ship to 30fps unfortunately, even though these phones run every other similar game on 60fps...)
    How do I make this thing run properly?! :-(

  5. #5
    Clicker Fusion 2.5 DeveloperFusion 2.5+ DLCAndroid Export ModuleHTML5 Export ModuleiOS Export ModuleUniversal Windows Platform Export ModuleXNA Export Module
    Dobermann's Avatar
    Join Date
    Feb 2009
    Location
    France
    Posts
    802
    Mentioned
    37 Post(s)
    Tagged
    0 Thread(s)
    I've made wto games so far released on Android, i'm always looking for improvements and they are hard to find.

    For example, i have a pause menu, i only create every objects of this menu on demande to lower the display capacities.

    You can look to my games here and see if they run fine on your device and if they fit your needs, so you can see if what you're looking for is possible.

    Spartan Runner (endless runner game, there is one very long level cut in stages for the whole game in only one frame): https://play.google.com/store/apps/d....spartanrunner
    Spartan Firefight (every level is a frame): https://play.google.com/store/apps/d...artanfirefight

  6. #6
    Clicker Fusion 2.5 (Steam)Fusion 2.5 Developer (Steam)Fusion 2.5+ DLC (Steam)Android Export Module (Steam)

    Join Date
    Jul 2019
    Posts
    86
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)
    Thanks for sharing.
    Unfortunately your games stutter and run badly on my oneplus 3t (which is a descent device that runs far more complexed games just fine).
    I have many stuttering, every foot click on the ground that fires a step sound - there's a stutter. In you case you better have a long footsteps track that you stop when jumping, instead of starting a footstep "click" every half second...
    Here is a video, it's pretty terrible:

    https://www.youtube.com/watch?v=0UdLwQeA1x4

    How can I start sounds effects that do not stutter the device on Fusion?
    Regarding "Firefighter", I couldn't pass the first level with the high jump after the weapon stash.

    I would also like to ask you some questions about your lovely download statistics, can I approach you on mail please?

  7. #7
    Clicker Fusion 2.5 DeveloperFusion 2.5+ DLCAndroid Export ModuleHTML5 Export ModuleiOS Export ModuleUniversal Windows Platform Export ModuleXNA Export Module
    Dobermann's Avatar
    Join Date
    Feb 2009
    Location
    France
    Posts
    802
    Mentioned
    37 Post(s)
    Tagged
    0 Thread(s)
    Effectively it's running really bad on your device... That's strange, it really seems to be a sounds playing issue, i don't know why it's so hard to play sounds with Fusion games.
    In my case i've tested the game on a Samsung J3 and a nokia 3. I've abandonned the older devices, it's near impossible to make a game compatible with every existing Android devices in the world. I have so much better results on iOS, everything is smooth and perfect even without special optimizations...

    It's not a high jump, just use a grenade after jump, you can also skip the tutorial and play a full game from the main menu.

    You can send me messages, use the DM of this forum, i'm here almost every days

  8. #8
    Clicker Fusion 2.5 (Steam)Fusion 2.5 Developer (Steam)Fusion 2.5+ DLC (Steam)Android Export Module (Steam)

    Join Date
    Jul 2019
    Posts
    86
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)
    It'll run really bad on any mid-ranger or less that is 3-4 years old or older, it's not just the sound, the number of events and number of objects play a big role. In my project, I have around 800 events, maximum of 60 are true and perform their actions at busy times each frame. The ones that are not needed are disabled.
    The numbers I just stated shouldn't run slow on old devices, but it does on Fusion exported ones :-(

  9. #9
    Clicker Fusion 2.5 (Steam)Fusion 2.5 Developer (Steam)Fusion 2.5+ DLC (Steam)Android Export Module (Steam)HTML5 Export Module (Steam)iOS Export Module (Steam)
    janpier's Avatar
    Join Date
    Dec 2014
    Posts
    218
    Mentioned
    3 Post(s)
    Tagged
    0 Thread(s)
    on my Wiko U Feel Prime it works well and is a low-end phone from 4 years ago

  10. #10
    Clicker Fusion 2.5 (Steam)Fusion 2.5 Developer (Steam)Fusion 2.5+ DLC (Steam)Android Export Module (Steam)

    Join Date
    Jul 2019
    Posts
    86
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)
    Try my optimized version of my game janpier...?

    https://www.dropbox.com/s/hdjl3nb2we...ifter.apk?dl=0

Page 1 of 4 1 2 3 ... LastLast

Similar Threads

  1. android bad string performance
    By Skyhunter in forum Android Export Module 2.5
    Replies: 3
    Last Post: 17th January 2015, 03:38 PM
  2. Performance problem on android
    By gnodab2 in forum Android Export Module Version 2.0
    Replies: 10
    Last Post: 2nd April 2014, 10:12 AM
  3. World Scale Engine - Performance improvement needed
    By Fanotherpg in forum Guides, Tutorials, Examples, Widgets
    Replies: 2
    Last Post: 25th March 2014, 12:45 PM
  4. [MMFIIDEV] Pathfinding Tactical RPG case par case
    By Falco in forum Multimedia Fusion 2 - Technical Support
    Replies: 4
    Last Post: 16th March 2010, 05:12 AM

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •