Chowdren: Fast Construct runtime for consoles/desktop

  • That is good stuff :)

  • matpow2 I wrote you a mail in the email, please check it.

    Thank you!

  • Nice to see support for Construct 3!

  • alspal/Cryptwalker

    Thanks!

    BUGStudio

    Will continue the discussion with you in the email thread, thanks for getting in touch.

  • chadorireborn Thanks!

    I should also note that about 300 new ACES/etc. have been added since the last update.

    The new list can be found here: bpaste.net/show/e51bc5858af4

    404 :)

  • My bad! Here's an updated link.

  • Is the multiplayer-plugin not ported yet?

  • How faster Chowdren is compared to the new Construct 3 runtime? Thanks!

  • Try Construct 3

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

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

    The multiplayer plugin hasn't been ported yet, since none of the Construct games being worked on uses it. Multiplayer is also not straightforward if you're porting to consoles, since consoles have compliance requirements that you need to adhere to, so multiplayer games will need to be considered individually.

    Macbee

    (Long post ahead! This will apply to all users in general)

    Benchmarks and performance

    Chowdren is significantly faster than Construct, but in terms of specific numbers, that depends on your game and events.

    For Clickteam Fusion, the community did several Chowdren benchmarks that tested some specific feature (e.g. time taken for 100k loops, 100k 'set position of object', etc), and even though that gave very impressive results for Chowdren compared to Fusion, such benchmarks are synthetic and do not test larger systems. Even though I could do something similar for Construct, I'd like to be fair to the work Ashley & team are doing.

    In general, here are some pointers:

    • If you are creating a game where event performance is a bottleneck on some systems, it most likely won't be an issue on Chowdren.
    • If you are creating a game where you are otherwise CPU-bound on some systems, it might be better on Chowdren.
    • If you are creating a game where effect performance (especially stacked effects) is a bottleneck on some systems, it might be better on Chowdren.
    • If you are creating a game with few events and a lot of drawcalls, Construct and Chowdren are likely equivalent.

    Specialization

    Even though having good performance out-of-the-box is great, a big advantage of Chowdren is also the possibility of specializing the engine according to your game. For example, we are currently working on finishing the ports of Baba Is You, and we were generating some code like this:

    FrameObject * fixed_test; fixed_test = get_object_from_fixed(LuaObject::get_int(1));
    if (fixed_test == NULL) goto event_end;
    family_1.clear_selection();
    for (ObjectIterator it(family_1); !it.end(); ++it) {
     if (!((*it) == fixed_test)) it.deselect();
    }
    if (!family_1.has_selection()) goto event_end;
    

    If we can make no assumptions about the value of LuaObject::get_int(1), the family loop is necessary. This will slow down the game significantly if family_1 has a large number of objects. However, for Baba Is You, we always pass valid objects to functions, so we can specialize this to

    FrameObject * fixed_test; fixed_test = get_object_from_fixed(LuaObject::get_int(1));
    

    In Chowdren, we allow specialization like this using configuration scripts. Obviously, this requires quite a bit of knowledge in terms of the game and engine, but when you're porting to consoles and the like, having that sort of control is amazing.

    Hope this post didn't contain too much rambling, but explaining performance has been on my mind for a while :)

  • matpow2 One of my developer friends is interested, and they wrote an email.

  • Really awesome stuff. I may use your service in the near future, have to see how it goes on PC Steam first.

  • Porting showcase

    Today, I'd like to showcase a few examples of how Chowdren can be used to port Construct 2/3 games. If it wasn't clear, Chowdren now supports the following setups:

    • Construct 2
    • Construct 3 using the Construct 2 runtime
    • Construct 3 using the Construct 3 runtime

    Also, all major platforms are supported:

    • Windows, Mac, Linux
    • Nintendo Switch, PS4 and Xbox One
    • Android and (soon) iOS

    Today, we will showcase a few Construct sample applications on a handheld console platform as well as PC.

    All the samples shown have excellent support with Chowdren, both on desktop and consoles.

    Note that the following are NOT announcements of ports of any kind.

    KiwiStory

    This is one of the bundled Construct 3 samples, and uses the Construct 3 runtime. It uses a number of effects, some of which are stacked, e.g. ReplaceColor and Brightness. It is a fairly simple game, but exercises a number of plugins, e.g. Function, Platform, Sin, Bullet, Tiled Background, Sprite Font, Dictionary, Ninepatch, and several native events.

    Handheld console display

    PC video

    WebM

    Subscribe to Construct videos now

    Mighty Goose

    Thanks to Richard Lems, I was able to test a prototype engine of the game "Mighty Goose" on Chowdren. The game is made using the Construct 3 runtime. Make sure to follow Richard on Twitter as well as Patreon.

    The game makes use of layer-based effects with Outline, and uses Tween, Platform, Bullet, Ninepatch, and other plugins.

    Handheld console display

    PC video

    WebM

    Subscribe to Construct videos now

    Bunnymark

    This Construct 2 sample application is fairly simple, but exercises the Construct renderer/event system to a large degree.

    Handheld console display

    PC video

    WebM

    Subscribe to Construct videos now

    Conclusion

    Chowdren has good support for Construct 2/3, and has support for all major desktop and console platforms. I hope I've demonstrated that fact today :)

    If you'd like to see more of Chowdren on consoles, please get in touch. For licensed developers, I will be able to get into technical details and more elaborate demonstrations.

    Today, we only showcased small demonstrations, but we have much larger projects running on Chowdren. Behind the scenes, we are working on ports of several Construct games which haven't been announced yet. In any case, I hope this whet your appetite a bit for things to come, and I look forward to working with more Construct developers soon!

  • Incredible work, matpow2 I'm always excited to see new developments with Chowdren and that everything is going well.

    Chances of getting picked up by a publisher/producer without console exports are extremely low. Chowdren opens many doors for hobbyists and startups to bridge that gap. Keep it up!

  • Tokinsom

    Thanks! Happy our hard work is paying off :)

    Glad we could use KiwiStory as well for our showcase, I'm sure that's one of the sample games that people will recognize.

  • I'm kind of curious as to what the Ios, and Android exports will add over the regular methods.

    I mean obviously it's always better to have more options, especially since Cocoon is going away, but then again this wouldn't a simple process either.

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