Ashley's Recent Forum Activity

  • events:

    1,450,000 iterations at 29 fps

    python:

    550,000 iterations at 29 fps

    That's interesting, thanks for doing the measurement. Also, IIRC, Python doesn't evaluate the range(0,550000) statement every iteration in a for loop (otherwise it'd be even slower!), so a function call wouldn't even things up.

    I can explain why the For condition shows up as so fast: the per-iteration overheads of the loop conditions in Construct are actually incredibly low - comparable to the overheads of a C++ loop. The real work comes in the overhead of executing actions, conditions and expressions (each of which involve a for-each and execution of function pointers which are comparatively expensive for C++), as well as the list processing of conditions which pick from a list of instances. None of that is present in the events in your test.

    If it interests anybody, the For condition with no actions or subevents, in a release build, with a good branch-predicting CPU, effectively comes down to this:

    __int64 r = ...;
    
    // ...
    
    for ( ; r != end; r += step) {
    
        // (omitted some branches here which will be correctly guessed
        //  and have almost no performance impact)
    
        pCRuntime->pCurrentEvent = pThisEvent;
    
    }[/code:vc2hdvg8]
    
    As you can see it's simply a for loop with a 64 bit index that assigns a pointer every iteration.  This kind of thing takes literally a handful of cycles out of your 3 billion or whatever a second.  I'm kinda proud I got the overhead that low and it runs so fast 
    
    Adding an Always condition essentially adds a function call or two, and a call through a function pointer, which explains the reduction in performance.
    
    Making a fair test is tricky especially considering your framerate will largely depend on the rendering too.  I propose maybe doing some kind of processing on a bunch of say 1000 sprites, and write equivalents in Python and events and see which goes faster.
  • I'm not sure - Python isn't really famed for being a high performance language, and events are compiled C++ code but introduce the overhead of event processing. I don't think anyone's done realistic performance comparisons. What is it that you're trying to do? Is it fast enough?

  • OK, looking good so far, think I'll wait a customary day or two then push it out over auto update.

  • I think this should be pushed out as a stable... agree?

  • Here's my view:

    Hi everyone. I am considering whether not to install Construct.

    Well, right away, I'd say it wouldn't hurt just to install it and run through the Ghost Shooter tutorial, and see what you think!

    [quote:238e5hnh]1) Can it be installed on an external hard drive? I do not have my own PC and I switch between two.

    To run Construct you need DirectX up-to-date and the Visual C++ redistributable installed. As long as both machines have that you can run off an external drive. To be honest it would probably actually be easier just to install Construct on each machine locally.

    [quote:238e5hnh]2) Python is a very flexible language, correct? How much of the game can be hard-coded in Python?

    Python is very powerful, but Construct's Python features are designed to work side-by-side with the event system, which is also very powerful. So I wouldn't say Construct is designed to allow you to write a full game in Python - just use Python snippets where events wont do.

    [quote:238e5hnh]3) Is it easy to learn?

    I think so, but someone else can chime in on that, I'm one of the developers

    [quote:238e5hnh]4) Can you link me to a features list?

    The main site gives a pretty comprehensive overview.

    [quote:238e5hnh]5) How many licks does it take to get to the center of a Tootsie Pop?

    I initially read that as "how many clicks does it take"... aside from the fact I probably need to get away from the internet a bit more, would that change the answer?

  • Download Construct 0.99.95

    Link to previous build (0.99.94) changelog

    A few minor fixes to keep things ticking along towards a RC.

    22nd September: Marked stable.

    Changelog

    Array

    • [FIX] Crash in array object default expression

    Editor

    • [CHANGE] You can now run more than one preview in parallel.
    • [FIX] Hopefully the ghost process Construct.exe left behind using 100% cpu is fixed.

    Physics

    • [CHANGE] Rolled back to 0.99.83 version of Physics; hopefully will fix issues with hinges that were introduced recently.
  • We're nearly at Construct 1.0. In order to reach it, we need to fix the remaining 'showstopper' bugs and final critical issues. An example of that would have been the event sheet editor memory leak that was recently fixed.

    Construct is a huge, sprawling and ambitious project, with many plugins and behaviors, and remember us developers are volunteers working in our spare time - bugs are unfortunately going to be a given in any 1.0 release, and it's unlikely they'll ever all be fixed. So with this in mind - what are the important things left to do for a 1.0 release? We know everyone has their pet bug that frustrates them, but we need to target the main issues that affect the most users.

    So, with your help, we can make a decent 1.0 release in the coming months...!

  • Looks pretty cool. Not sure about having an online editor - I think performance and response time would be a problem. Also, you can use HTML5 canvas in IE8 using excanvas, but the performance is pretty poor since all the rendering is done by javascript VML calls.

  • I've installed Construct fine on a Windows 7 64-bit laptop, it must be an issue with the DirectX installer. And yes, DirectX 11 does not include the "optional" components of DirectX 9 which is what the installer is installing. Try just cancelling the DirectX installer and installing it from the Microsoft website maybe?

  • "Perfection is achieved, not when there is nothing more to add, but when there is nothing left to take away." - Antoine de Saint-Exuper

    In light of this, what shouldn't Construct 2 have that Construct 0.x has? I thought this would make an interesting question rather than "what features do you want?". What would you take away?

  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • Oh - I forgot about that. If you have an existing StackOverflow account or any account on the StackExchange system, you can link it to meta-StackOverflow for +100 rep. Alternatively you can just try hanging around and making a few posts to get some rep - most of the StackExchange sites are pretty interesting, and StackOverflow is great for programming Q&A.

  • Hey everyone,

    Congrats to The Bespectacled One for winning the vote!

    I've submitted the ad to StackOverflow here:

    http://meta.stackoverflow.com/questions ... st#tab-top

    We need at least 6 votes for it to enter the ad rotation though. You can sign in with OpenID to the site, so if you have one, it would be cool if you logged in and voted it up

    Thanks everyone!

Ashley's avatar

Ashley

Online Now
Early Adopter

Member since 21 May, 2007
Last online 30 Jun, 2026

Twitter
Ashley has 1,769,336 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