Ashley's Recent Forum Activity

  • Btw, there is no indication the image sequence is in PNG format until after you download and unzip the files.

    It's mentioned in the documentation. I didn't want to call it "PNG sequence" since we may well add support for other image formats like WebP or HEIC. But there doesn't seem much point adding a dropdown with no choices in it - or maybe we should add it anyway to make it clearer?

  • Apologies for the inconvenience, a problem with the build server caused it to run out of disk space. It should be working again now.

    Remember you can also always do offline builds with the Cordova CLI.

  • By default the runtime runs in a Web Worker, so some APIs are not available. See runtime scripts in the Addon SDK documentation.

    Just found a new simpler free option (although you do have to create an account):

    https://static.app/

    Nice find. Another similar service is Netlify Drop which also lets you drag and drop in a folder and start hosting it.

  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • Apologies for the inconvenience, a problem with the build server caused it to run out of disk space. It should be working again now.

  • not sure if someone already requested this but making a GIF export would be pretty helpful for socials...as its always a nice lightweight way to post some animation.

    This is kind of a tricky thing to explain, but GIF is pretty much dead as a format. Anywhere you upload an actual .gif file, it will likely be immediately converted to a modern video format, as it makes for a far smaller file size. Construct could let you export a GIF, but the first thing you do with it will likely convert it back to a video, so you may as well use a video to begin with.

    It's possible to add GIF export, but there doesn't seem to be much point, especially since I've been working on supporting exporting MP4 videos which is a more widely supported format - e.g. I've noticed Giphy supports uploading MP4 but not WebM. So I suspect using an MP4 video export will do everything a GIF export would have done but better.

  • The video export is an offline encode option, which is a key difference to Video Recorder, which does a real-time encode. If the system can't keep up with Video Recorder, the game performance suffers and that can affect the content recorded. However with video export, the engine renders a frame, encodes it to video, and then advances the time by one frame, and continues. So the performance has no effect on the video content: it will always export perfectly smooth motion regardless of how fast or slow encoding is. And if you have a powerful system, depending on the export parameters, offline encoding can run much faster than real-time.

  • You should already be able to fully customise the Platform behavior to do whatever you want by using the set vector X/Y actions.

    You can try making your own platform movement with events as a learning project. However the Platform behavior's main movement logic is over 1000 lines of some of the toughest JavaScript code I've written in my career. The whole point of Construct is to take these really complicated things and make them easy to use. As with many things in software, some things that seem simple are actually very complicated.

  • Construct is estimating that your project will use over 3GB of memory. That is exceptionally high. Many devices will not have enough memory for that. You should try to keep the memory usage well under 1GB.

  • The Animated SVG example demonstrates it's possible with the HTML Element object. Unfortunately for technical reasons it's very difficult to integrate further in to the engine.

  • Even if we supported that, you still have the question of what happens for the 5-10% of people who don't get WebGL 2. What should be rendered instead? Or should it fail?

    I think some of that can be done in WebGL 1 anyway. Perhaps we could enable the OES_standard_derivatives extension, which should let you do it in WebGL 1 code with better compatibility - I reckon most WebGL 1 devices probably support that extension too, although actual support numbers are hard to come by, especially since webglstats shut down.

  • I had a look at the project. I can't reproduce any significant performance difference between r295 and r297. In both cases the CPU is around 50-60% and it runs about equally smoothly. The GPU utilisation increased slightly in r297, probably due to a rendering change to improve how transparency is handled, but it didn't appear to affect the smoothness much.

    The events are pretty inefficient. In particular a great deal of CPU time goes on two actions that adjust the Z order of a couple of hundred "Billboard_Grass" objects with the "Move in front" action, which is done apparently redundantly every frame. The engine doesn't handle this efficiently at the moment, but it's a poor solution for Z ordering anyway - use layers, Z elevation, or if necessary, only run those actions when something actually changes, rather than all the time. If I delete those two events I don't actually see any obvious visual change and the CPU usage drops a lot.

    It also creates around 1000 objects which seems a lot for a relatively simple style of game like this - perhaps you're creating hundreds of unnecessary objects and running intensive events on them all?

    It's also difficult to test this reliably, as it seems to be based on randomised and procedurally generated content, which makes doing a fair comparison between two releases difficult. What if one time it generates a lot more content? It could be slower because of the content, not because you switched release. You have to be scientific about performance and make sure you're running exactly the same thing in each case and only vary one thing. It seems possible that there is no significant performance change in Construct and the content differences gave you a misleading impression of a performance change. From an engine point of view it is also much, much easier to investigate performance differences with a minimal project (as per our bug report guidelines).

    I'm afraid I don't have time to dig any deeper, but in short I can't see any evidence of a major performance difference between r295 and 297 here, and the most serious problems look like inefficient events or game design, which are up to you to change! As ever it's important to keep an eye on the performance numbers and watch out for any changes that cause a big change to the numbers, which is an indication you made a change that hit performance, so you would probably want to find a better way to do that. And if you want to track down something that might be slow, split events up in to smaller groups to get better numbers from the performance profiler, and try deleting chunks of events to see if performance improves when to remove specific events.

Ashley's avatar

Ashley

Early Adopter

Member since 21 May, 2007

Twitter
Ashley has 1,429,311 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
  • x108
    Coach One of your tutorials has over 1,000 readers
  • x62
    Educator One of your tutorials has over 10,000 readers
  • x3
    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
  • x36
    Great Comment One of your comments gets 3 upvotes
  • Email Verified

Progress

32/44
How to earn trophies

Blogs