Construct 3 - many questions (native exporterts)

  • .... usually something like trying to do collision detection with like 200 objects every tick or something that didn't seem obvious at the start....

    Same here.

    In most of the performance issues, I found that selecting the right objects, and not all of them, and not every tick, generally solves most performance issues for me. (like: Profiling group speeds going from ~10% to ~0.5%)

    Picking's, on layers, on screens, comparisons, booleans states, can all greatly enhance your performance if applied correctly in situations with lots of objects.

    I believe the amount of objects handled at one time is the main culprit when it comes to the processing bottleneck clogging up.

    After that lots of big images ...

    droxon You can make the same games in construct 2, perhaps some different approaches to get the same results.

  • But don't you notice that your frame rate drops every few seconds? even when your game it's running at 60 FPS it still drops a few frames and it's very noticeable, it looks awful.

    I've been that road, you said it your self... you are getting a lot of performance issues. I just hope that you don't hit a brick wall just like I did, I ended up wasting my time.(currently porting my game to another engine)

    I tried contacting the scirra team, but according to them C2 performance it's perfect. (it's always the user's fault) with other engines you don't have to worry about that as much.

    I mean, with every engine you will get performance issues... its inevitable, but with C2 you just get to a point where even some simple things start to cause performance issues. You have to focus more on performance, rather than the game creating.

    An html5 wrapper doesn't perform as well as a native .exe, it just does not.

    I encourage you to test your game in multiple computers, at least on my case the game didn't perform as well on other devices.

  • lennaert

    Yeah, very similar experience to me. This sort of thing is still vital even in something like MMF2 which runs natively, I managed to ruin my framerate due to bad programming and too many collisions per tick (which at the time, I thought I was doing just fine and blamed MMF2). Ironically, that's one of the reasons I ended up finding Construct 2, because I got fed up with MMF2, even though it wasn't MMF2's fault (except for the annoying workarounds in MMF2 of getting more Alterable Values, spreading a number so you can pick them, etc., C2 is a lot more straight forward and removes limitations which is awesome).

    droxon

    I know what you mean, the jolty look when a frame is dropped is very noticeable and unacceptable, I seem to get it with Chrome but not NW.JS. Not exactly sure why, considering NW.JS practically is Chrome...hmm...

    Yes, I get performance issues, but I mean it's not C2's fault, it was my own fault because I was an idiot and made some dumb choices in the way I chose to program that I seriously believed wouldn't impact performance. It's important to remember that if you are making a large game or a complicated game, then, in order to have this large complicated game stay smooth, you have to accept that you need to keep a close eye on performance and be very cautious, no matter what engine or software you use. (Personally, I find it fun to program and try and squeeze performance out of things, it's satisfying when you discover what causes the problem and then fix it. It's part of the whole "Game Creating" experience.)

    Perhaps, one engine might handle collisions much better whilst being worse at having more sprites on-screen, whereas another engine might handle object picking very well but struggle with collisions in comparison. Things can always be improved on by the software developers, though.

    Honestly, a handful of months back, I had tested on weaker systems, like an old laptop with an intergrated chip thingy, and a weak dualcore. It performed TERRIBLY, until I discovered that shrinking the window so it is tiny, made the FPS reach 60. Then realising you can shrink the canvas in events and then zoom into the layout to get the same performance boost. THEN eventually Ashley added that "Low quality" mode in the project properties, THAT was exactly what was needed. The dualcore wasn't the bottleneck even though there was a lot of CPU stuff to do, like iterating through tonnes of sprites and positioning + angling each of them, but it was the GPU that caused problems (mainly because it didn't exactly have a GPU lol)

  • ... Performance issues

    never mind... someone else answered u.. and for the game u showed,

    it is possible in c2 yes it is and runs even better, check for Penumbra Alpha v2 its similar....

  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • Jase00

    I'm glad you found a solution, to be honest I just got really frustrated and perhaps that's why I gave up on C2(for complex games). Like I said, C2 is awesome... I'm sure you can make a lot of great games with it, but it's a nightmare if you are trying to create something very complex.

    lennaert

    Are you sure? If you take a good look to the ghost song thread you will see that the developer is using a lot of layers, physics, particles, objects, he is not even using tiles at all. I'm sure there might be a work around or like you say a different approach but still I don't think C2 can handle that many assets.

    [quote:1cenk2tl]damn i sat here, wrote a 2 page comment, then deleted it and im just saying this .. NO ... hell noo... dont compare SCRATCH with C2 and if u saying u dident then u dont know stencyl.. and we should never have this conversation.

    Your post didn't make a lot of sense, i'm not sure what you are saying. But if you are trying to argue, well... i'm not interested

  • [quote:ggegbm2o]and for comparison ... Stencyl = Scratch

    oh, I get it now... well that's not true at all.

    That's like saying... Construct 2 = Clickteam fusion 2.5

    Just because they are similar, it doesn't mean they are the same.

    I don't know why you guys look at stencyl like if it was the worst thing ever.

    Perhaps you had some bad experiences in the past? but it seems fine now.

    I'm not a fan boy I just use what works, thats it.

  • droxon

    --- never mind...

    as for the stencyl=scratch read stencyl license and terms of conditions ul see its source code is from scratch ... from day 1, there for it has limitations. unless they redo it entirely in some new framework not using scratch mit source code anymore which limits the compatibilities with so many platforms, outside web content.

  • [quote:34154p92]its never going to be better in performance the the stage it is now, so c2 may be having performance issues now, but later on will be always open space for improvement.

    How do you know that? Performance can increase or decrease on either engine.

    The guys at stencyl implemented haxe and openfl in version 3, so I'm guessing anything can happen.

    Construct 1 exported .exe files only, and now it's Html5 only.

    It's a software, anything can change.

  • lennaert

    Are you sure? If you take a good look to the ghost song thread you will see that the developer is using a lot of layers, physics, particles, objects, he is not even using tiles at all. I'm sure there might be a work around or like you say a different approach but still I don't think C2 can handle that many assets.

    Quite sure.

    It does not really matter what is applied or used.

    It matters how it is applied and used.

    Construct 2 has the same functions and then some.

    If the amount of assets would become an issue, you would have to split up your layouts and objects more wisely.

  • Er..C2 would have no problem doing something like Ghost Song. Ghost Song keeps each room in a separate layout so there aren't very many objects at any given time. There are no physics. He doesn't use tiles because terrain 'stamps' are more versatile and the better option for this type of game.

    As for all the particle effects and such, Stencyl has "simple actors" for graphics and fx that have practically no overheard whatsoever. C2 might benefit from something similar, but I'm not sure a bunch of single-frame sprites will be that bad either.

  • I would think The Next Penelope is FAR more intensive than Ghost Song and I haven't seen many people complaining about performance on that..

    (sorry for double post. forums are screwed right now)

  • I'm always happy to investigate the performance of any .capx files if you think the C2 engine is the bottleneck. Usually however either people complain but don't send me anything so there's nothing I can do, or they send something and it is clearly bottlenecked on the hardware, e.g. hammering the GPU fillrate or ramming it full of WebGL shaders. In that case a native engine won't help since you'll just run in to the same hardware limitations. This is part of the reason I am very skeptical of claims to move to a native engine to solve performance issues - none of those hardware-bottlenecked games will get faster.

    Note that if it occasionally drops frames, that's not the same as a performance issues, that's more to do with the browser v-sync scheduling. Chrome has had some issues with that lately, but they're getting a lot better (Canary is already much improved for me). In these cases the engine/hardware are perfectly capable of hitting 60FPS, or possibly even much higher, but timing errors in the v-sync scheduler mean it occasionally fails to schedule a new frame even when it has the resources to do so. That should not be confused with performance issues where the engine or hardware do not have the necessary resources to reach 60 FPS.

    Note that single frame Sprites with no behaviors are specifically optimised to be zero overhead in the C2 engine.

  • Chrome has had some issues with that lately

    What if it never gets better? How can you rely on third party if that can make C2 look bad if they do something wrong?

    Just to be clear I'm not talking about browsers, it will be insane to create a new browser right? but what about Nw.js?

    Or any other of the third party wrappers you rely on. Is it that hard to create your own wrappers?(considering that native export is not an option anymore)

    At least this way you will have full control over it.

    I know that Nw.js is getting better and also the intel xdk is getting better, but what if they get worse?

    I might be talking crazy here, it's just an opinion. (i'm pretty sure I'm not the only one)

  • What if one day nobody uses Windows more and only Steam OS? What if one day computers will have 3 legs and run away if you click a mouse button? What if...

    We always depend on third party software and hardware! As a developer you never should depend on one solution. If one day C2 doesn't work more for you, then you need to learn another engine. That's it

  • We've now hit the inevitable "Why don't Scirra make their own wrapper?" point of the eternal "C2 doesn't work very well discussion", with a side portion of "C2 depends too much on 3rd parties".

    None of these points are bad or wrong. In an ideal world C2 would have a game focused, light weight, cutting edge HTML5 wrapper tailored for each platform. But Scirra's a small team making two products.

    They've recently expanded, and personally I hope some of the new resources go to finally ending these deployment debates - I'd love a C2 fork of nw.js, but I'll settle for a stable product.

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