Ashley's Recent Forum Activity

  • Excellent! And when you're all done could you please box up your CPU and ship it to Iowa? My 8 core 4ghz machine with 32 gigs of ram still only managed 129k in r149. I want your toys.

    Heh, my office desktop has an i7-6700K 4 GHz with RAM running at 3 GHz, and I can get 344k with the latest release 😉 (that's on quadissueperf)

  • So I looked in to this, and it turned out to be a really interesting/difficult issue. Part of the problem is the engine is so well optimised! Benchmarks like quadissueperf are so efficient that they are not bottlenecked on executing instructions - instead they are limited only by memory bandwidth. Therefore they cannot be optimised - or made slower - by changing the code: only the memory layout will affect it.

    In r150 we simply added a small new class for the instance's script interface for the scripting feature. Despite being small it used a bit more memory per instance, therefore requiring more memory bandwidth, therefore reducing the benchmark score. In r152 we made the class a little bit bigger, which made the problem worse. We've already seen the same thing happen in the past if you add a behavior or family to the object in the performance test - it takes a bit more memory to store that family or behavior, and the benchmark score drops a little as a result. It's really hard to avoid this.

    The good news is there are things we can do: mainly just making sure features that are not used do not allocate memory. Simply lazy-loading the script interface seems to solve this, since it means it doesn't use any memory at all unless you actually access it from script. We can also go further and make sure things like instance variables, behaviors and effects do not allocate memory unless they are actually used.

    So this should now be resolved in the next release - and hopefully we can go a little further in the next release or two after that, as there are more internal details that can be tweaked the same way.

  • construct.net/en/forum/construct-3/general-discussion-7/eleanors-patreon-the-best-142183

    You've been repeatedly warned about self-promotional activity like this, and repeatedly ignored the warnings even after a temporary ban to show the seriousness of the situation, and yet you continue to do this. So, to my total dismay as I appear to be completely out of other options, I am going to follow through on my previous final warning and you are now banned.

  • Press F12 and look for any errors in the browser console.

  • Construct is not limited to 60 FPS. It matches the v-sync refresh rate of the display, which is most commonly 60 FPS, but not always.

    This is true of both Construct 2 and Construct 3.

  • Construct is not limited to 60 FPS. It matches the v-sync refresh rate of the display, which is most commonly 60 FPS, but not always.

  • I can reproduce a performance difference in quadissueperf:

    r148: 205k

    r149: 205k

    r150: 172k

    This points to a change in r150, not r152. I filed an issue to investigate.

    I cannot explain any performance difference in fillrateperf at all. That test is completely different and is solely bottlenecked on the GPU hardware's memory bandwidth. So it shouldn't change much no matter what we do to the engine. Somehow I could measure an improvement in r150 with fillrateperf:

    r149: 2480

    r150: 2792

    This still doesn't make any sense, so my best guess is that test is actually fairly high variance and so the results should not be considered accurate. Maybe it depends on the hardware temperature and power state or something.

  • IIRC it wasn't even fully supported in C2 - it wouldn't work in WebGL mode because it doesn't support an equivalent.

    It's a highly unusual blend mode and is not easily supported in WebGL so support for it was simply dropped.

  • You do not have permission to view this post

    • Post link icon

    This feature is now in a stable release and the documentation is now in the official manual (e.g. Timeline Bar), so unstickying and closing.

  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • Updated the original post with new downloads based on Chrome 75 (NW.js 0.39.0).

  • Construct is a game engine so uses WebGL (essentially OpenGL) for rendering. I suspect image editors have a different design using software renderers so they don't have to deal with this limit - or they do break up the images in to tiles.

    Given Construct is designed to be a game engine and not an image editor there aren't really any features for dealing with this. The expectation is that you are making a game with much smaller sized images.

Ashley's avatar

Ashley

Early Adopter

Member since 21 May, 2007

Twitter
Ashley has 1,771,450 followers

Connect with Ashley

Trophy Case

  • Jupiter Mission Supports Gordon's mission to Jupiter
  • Forum Contributor Made 100 posts in the forums
  • Forum Patron Made 500 posts in the forums
  • Forum Hero Made 1,000 posts in the forums
  • Forum Wizard Made 5,000 posts in the forums
  • Forum Unicorn Made 10,000 posts in the forums
  • Forum Mega Brain Made 20,000 posts in the forums
  • x126
    Coach One of your tutorials has over 1,000 readers
  • x74
    Educator One of your tutorials has over 10,000 readers
  • x5
    Teacher One of your tutorials has over 100,000 readers
  • Sensei One of your tutorials has over 1,000,000 readers
  • Regular Visitor Visited Construct.net 7 days in a row
  • Steady Visitor Visited Construct.net 30 days in a row
  • RTFM Read the fabulous manual
  • x42
    Great Comment One of your comments gets 3 upvotes
  • Email Verified

Progress

32/44
How to earn trophies

Blogs