Ultimate Performance Thread

  • Hi there, I'm pretty new to C2 and I'm here to ask a few questions and with a sole idea, create a thread where you can find anything about Performance... Since performance is the main issue with C2 when you try to export your games to mobile devices.

    I think I'm not the only one thats disappointed with the purchase of Construct 2 Personal, since I was expecting porting my games to mobile consoles with a few clicks, but noone told me about the wrappers and performance issues, so I started to read a lot about improving performance in mobile devices and I've just read tips...

    Well, you can found a lot of performance tips in the tutorials , but all of them (and all the performance complains are 1 year old at least) seems to be just tips and prays for a better future on mobile devices technology, so here's my question:

    Is there any plugin to improve the performance post wrapping? I mean, a plugin that will help with some things on the exporting process. For example, I read on a tip:

    "At least as much to make this change to your exported html file:



    canvas, canvas * {image-rendering: optimizeSpeed}


    this will work on some native mobile browsers and cause software rendering to switch to point resizing and rotation."

    So... why this is not native or at least optional in some option?

    I mean... is there any plugin designed for a better performance in mobile devices? Can we make a "compendium" in this thread as the ultimate source of performance questions/answers?


  • Try Construct 3


    Try Now Construct 3 users don't see these ads
  • Halt! You are under arrest for Orthographic Mistake in the title! (gasp) It's gonna be a 50$ fine, ma' boy ... now type safe, and don't forget, the grammar police is watching you!

    But seriously, there's many threads on this already, and there's no MAGIC button in game making, you gotta work hard to get it done, and even harder on mobile because hardware is limited, one tip is to count everything you do, for example, you update a text on start of layout, that shouldn't take much time, maybe 1 millisecond? (I'm probably overextending but eh, just for the suspense), now, then, you see another guy, updating 20 texts every tick, with some math, we can deduct that, he's updating 20 * 60 texts every seconds (fps is probably not the equal to the ticks per second, but just for the sake of consistency), that gives you, 1200 texts updated EVERY SECOND, do that for all your events then tell me how much events trigger every second ... you'll be wowed, there's where optimization comes in, you gotta cut down the Eps, by for example updating texts only when value goes up, or put a value you need multiple times in your calculation into a variable (1 + 5), stuff like that, and you'll see how your performance will skyrocket

  • We already documented everything important in Performance Tips.

  • I think its only something you get good at when you spend more time with it, optimize and always test your creations on mobiles first and foremost, ignore the performance on the PC preview, its meaningless when you actually have it on mobiles.

    Anytime you add features, code, whatever, test it on mobiles to make sure its not causing a big loss in performance. Then keep adding more and more.

    Dont make the mistake of building an awesome game with all the things you want first, then test it on mobiles and find it runs at 20 fps.

  • Whiteclaws: Sorry for the typo!!! And for the grammar, english is not my native languaje, I'm really sorry. (Fixed, btw).

    I know there's no "magic button" but I think we could share our tips, since what's already documented is not enough.

    Ashley: That's not enough, but it's a nice start.

    Silverforce: Been there, done that =/

    In my personal experience, I've just developed an awesome and funny game using C2 but I made the mistake of thinking that C2 was magical... so when I tested it on a mobile device I was really dissapointed and I think I'm not the only one. Maybe C2 should advertise about their "Export" method since it's just a third party wrapper and it's not compiling a real app, maybe. But well... I'm already here so I will make this thing work.

    Actually I will try eliminating some sprites (maybe using Tiled Bakcgrounds as sprites and making collision calculation vía position + overlapping... that will remove the moving sprites with physics that are currently draining the vital energy out of the processor), Totally remove the particle effects I'm currently using and leave a gap in the visual effect, destroy some elements instead of fade them out... I'm pretty sure I can manage to make it work on mobile, but I really hope I don't have to destroy my complete game or simply migrate to another framework.

    I'll let you know how is it going after making some changes.

Jump to:
Active Users