User Tag List

Page 2 of 3 FirstFirst 1 2 3 LastLast
Results 11 to 20 of 21

Thread: Constant Frame Rate Struggles

  1. #11
    Clicker Fusion 2.5Fusion 2.5 Mac
    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)Universal Windows Platform Export Module (Steam)
    zip2kx's Avatar
    Join Date
    Jun 2015
    Posts
    787
    Mentioned
    17 Post(s)
    Tagged
    0 Thread(s)
    This is a good blog post about optimisation of fusion games. Lots of small things that atleast I didnt think about

    https://stuartspixelgames.com/2014/0...r-fusion-game/

  2. #12
    Clicker Fusion 2.5 DeveloperFusion 2.5+ DLCiOS Export ModuleInstall Creator Pro
    Julian82's Avatar
    Join Date
    May 2012
    Location
    outbuddies.com
    Posts
    945
    Mentioned
    47 Post(s)
    Tagged
    0 Thread(s)
    Thanks for sharing, a very good article!

  3. #13
    Clicker Fusion 2.5 (Steam)Fusion 2.5 Developer (Steam)Android Export Module (Steam)HTML5 Export Module (Steam)iOS Export Module (Steam)Universal Windows Platform Export Module (Steam)
    Zebedy's Avatar
    Join Date
    Jul 2016
    Location
    UK
    Posts
    46
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    We're currently dealing with this problem as well.

    If you're activating and deactivating event groups; you can afford to untick the boxes which says "Active when frame starts", which seems to help us a bit.

    Not sure if this actually changes anything but setting the active objects to invisible when out of view, and unticking the box "Visible at start" helps a little as well.

    No idea what the best way to activate and deactivate events based on proximity is though, we've got a massive invisible sensor which is making our game stutter a bit.

  4. #14
    Clicker Fusion 2.5 DeveloperFusion 2.5+ DLCiOS Export ModuleInstall Creator Pro
    Julian82's Avatar
    Join Date
    May 2012
    Location
    outbuddies.com
    Posts
    945
    Mentioned
    47 Post(s)
    Tagged
    0 Thread(s)
    As far as Iīm informed an object that is outside the visible frame area is auto neglected by the renderer, so it does not have to be set to be “invisible”. You have to take into account though, that every backdrop/picture/ animation frame that has actually been rendered at any time adds to your RAM usage. Iīm not sure if Fusion is very good at “releasing” RAM, when objects are not displayed anymore. To be sure all resources are liberated I would restart a frame when itīs possible in the games flow rather than running everything for infinity.

    If you use an invisible detector for proximity checks it should be set to “box collision”, otherwise this can be an expensive operation. In general I would prefer checking X/Y coordinates of your objects relative to your screen focus, as itīs more flexible and probably better in case of CPU load.

  5. #15
    Clicker Fusion 2.5 Developer

    Join Date
    Jun 2016
    Posts
    43
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Thanks a ton guys! Had no idea the debugger could cause that. Also I have spent the night applying several things mentioned here such as turning off fine detection where ever possible and redoing some events to cut down on loops. Our frame rate is pretty much perfect for the time being! You guys always save the day.

  6. #16
    Clicker Fusion 2.5Fusion 2.5 Mac
    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)Universal Windows Platform Export Module (Steam)
    zip2kx's Avatar
    Join Date
    Jun 2015
    Posts
    787
    Mentioned
    17 Post(s)
    Tagged
    0 Thread(s)
    Quote Originally Posted by Julian82 View Post
    As far as Iīm informed an object that is outside the visible frame area is auto neglected by the renderer, so it does not have to be set to be “invisible”. You have to take into account though, that every backdrop/picture/ animation frame that has actually been rendered at any time adds to your RAM usage. Iīm not sure if Fusion is very good at “releasing” RAM, when objects are not displayed anymore. To be sure all resources are liberated I would restart a frame when itīs possible in the games flow rather than running everything for infinity.

    If you use an invisible detector for proximity checks it should be set to “box collision”, otherwise this can be an expensive operation. In general I would prefer checking X/Y coordinates of your objects relative to your screen focus, as itīs more flexible and probably better in case of CPU load.
    How do you set to box collision? I have an enemy object that's the sprite itself, i was looking around to make the collision a box instead of the pixels but i couldnt find anything.

  7. #17
    Clicker Fusion 2.5 DeveloperAndroid Export ModuleHTML5 Export ModuleiOS Export ModuleUniversal Windows Platform Export ModuleSWF Export Module
    Fusion 2.5 (Steam)Fusion 2.5 Developer (Steam)Android Export Module (Steam)HTML5 Export Module (Steam)iOS Export Module (Steam)Universal Windows Platform Export Module (Steam)
    DaveC's Avatar
    Join Date
    Jun 2007
    Location
    Perth, Australia
    Posts
    2,117
    Mentioned
    13 Post(s)
    Tagged
    0 Thread(s)
    Uncheck "use fine detection" on everything you possibly can, it's in the object properties.. this gives a good boost to performance.

  8. #18
    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)Universal Windows Platform Export Module (Steam)
    Volnaiskra's Avatar
    Join Date
    Jan 2014
    Location
    www.sprykegame.com
    Posts
    2,301
    Mentioned
    94 Post(s)
    Tagged
    0 Thread(s)
    There's definitely a lot of good information there, but I don't entirely agree with all of it.

    The author says to avoid using "always", as they take up a lot of memory. First off, I'm not convinced that they would take up memory, but rather CPU cycles. Secondly, there are some cases where using "always" is actually faster than not using it. For example:

    Code:
    -always
        >change direction of fredFlinstone to left
    
    -lookLeft("fredFlinstone") = 0
        >change direction of fredFlinstone to right
    ...is likely to be faster than...

    Code:
    -lookLeft("fredFlinstone") = 1
        >change direction of fredFlinstone to left
    
    -lookLeft("fredFlinstone") = 0
        >change direction of fredFlinstone to right
    ...because the first version doesn't have to bother checking the value lookLeft(fredFlinstone's) twice, but only has to check it once. (Though realistically, neither option will give you any noticeable performance difference except in very extreme circumstances)


    The author also says to "Avoid overlap conditions because they use more memory than straight collision detection". Again, I'm not convinced that memory would be the issue here, but rather CPU burden (ie. it might hurt your framerate, but not your RAM). Though I could be wrong. But if CPU burden IS the issue, then according to tests I did with VACCiNE, there is absolutely no difference.

    VACCiNE (link in my sig) is quite useful to figure out stuff like this, because I built into a mechanism for easily testing the performance impact of two things at once. You can see in this post that I tested overlapping vs collisions (2000 loops per frame) and the results were identical.

    Another very good thing to know is which variable types are the most efficient. Most of the inbuilt ones (globals, alterable values, etc.) are very efficient, though some of the 3rd-party ones (eg. named variable object, list object) can be many, many times slower. Tompa published a really great list of results (and the tool to reproduce them), which you can see here.

  9. #19
    Clicker Fusion 2.5Fusion 2.5 Mac
    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)Universal Windows Platform Export Module (Steam)
    zip2kx's Avatar
    Join Date
    Jun 2015
    Posts
    787
    Mentioned
    17 Post(s)
    Tagged
    0 Thread(s)
    Maybe you are right. What i know for sure is that using always on iphone 5-6 gives it a good kick in the knees.

  10. #20
    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)Universal Windows Platform Export Module (Steam)
    Volnaiskra's Avatar
    Join Date
    Jan 2014
    Location
    www.sprykegame.com
    Posts
    2,301
    Mentioned
    94 Post(s)
    Tagged
    0 Thread(s)
    I think it depends on what actions are in the "always".

    If it's something super-cheap like "set Alterable Value to 1", then I can't imagine even a phone would be bothered. And in those cases, it might be cheaper to use always rather than to force a more complex condition. But if there' more than one action, or an action that involves complex math, graphics scaling, shaders, or whatever, then yes, you should probably do your best to limit how often it gets called as much as possible.

    I guess what I'm saying is that you have to take into account the conditions and the actions, because they both have a cost. And "always" is probably the cheapest of all 'conditions'.

Page 2 of 3 FirstFirst 1 2 3 LastLast

Similar Threads

  1. How can I fully speed up a frame? (Not just by frame rate...)
    By TheFieryPlumber in forum Fusion 2.5
    Replies: 4
    Last Post: 7th July 2016, 08:24 PM
  2. frame rate
    By TheCrimsonTaco in forum iOS Export Module Version 2.0
    Replies: 1
    Last Post: 1st December 2012, 01:58 PM
  3. Low Frame Rate at the beginning of the frame
    By LittleTinyBabyMan in forum Multimedia Fusion 2 - Technical Support
    Replies: 16
    Last Post: 6th June 2012, 12:54 PM
  4. frame rate
    By TheCrimsonTaco in forum iOS Export Module Version 2.0
    Replies: 2
    Last Post: 15th May 2012, 03:04 PM
  5. Frame Rate
    By Bruto in forum Multimedia Fusion 2 - Technical Support
    Replies: 33
    Last Post: 3rd July 2006, 03:38 PM

Posting Permissions

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