Ashley's Recent Forum Activity

  • Use a loader layout and then you have complete control over the loading style.

  • If the initial value is the only option, you can just do:

    new SDK.PluginProperty("color", "test-color", [1, 0, 0])[/code:2ybyl5ks]
  • AeponViroth - Polish is now available!

    — - I've added Greek too.

  • Syazanie Amirin - OK, I've added Malay!

  • So I updated Construct 3 and some object types and events are missing.

    Hard to add much more to that...

    Which, exactly?

  • I am worried the consequence of this thread is people telling each other "don't use families", which would be poor advice. As ever the most critical thing in performance is to make measurements. The only reason you should ever remove a family is if doing show measurably increases performance enough to warrant the increased complexity of events. It's also possible that you have thousands of instances in a family, but you run so many events on them that the overhead of the family is negligible; in this case removing the family doesn't bring any meaningful performance improvement but still causes people's events to get much more complicated and difficult to maintain.

    This is by far the most important point and the tutorial doesn't mention it. It instead says things like "families is something that you should be using quite sparsely". There is no reason to use them sparsely, if they don't measurably impact performance. Not everyone has 10,000 instances in a layout. This kind of advice could end up making beginners needlessly avoid useful features and end up making their events far messier.

    The same goes for behaviors and animations. There's a time and a place to say "have you tried everything else and do you have a project with thousands of instances? Well, you can try these advanced options..." But right now I think making simplistic statements like "behaviors have a 40% performance impact" does more harm than good, especially when it's not entirely accurate (e.g. behaviors which do actually need to tick, are doing useful work, so that 40% is useful work and not wasted).

  • It looks like the SDK doesn't support color properties yet - I'll add that to the todo list.

    Link properties work significantly different in C3, it's probably not easily possible to automatically convert them. In C2 they would call OnPropertyChanged() when clicked, but in C3 the property has a linkCallback option that is a JS function. In C2 the callback type defaults to (effectively) "for-each-instance", but you can specify a C2 option "firstonly" to only call on the first instance; in C3 this has been replaced by the "once-for-type" callback option, which instead passes an IObjectType to the callback rather than the first instance. I think the best you can do is create a stub function for the linkCallback, and put an instance parameter by default, or iObjectType parameter if the C2 plugin specifies "firstonly". Filling the function will just have to be a TODO comment, since it's probably too difficult to lift out the code from the property changed handler automatically, it's easier for the developer to do.

  • I just realised the Scirra forums have been running for 10 years now! Our first posts to this incarnation of the forum were in late 2007, where we were concerned with the latest release Construct 0.8, an early version of Construct Classic. We've come on a long way!

    In that time we've had over 100,000 topics, 630,000 posts, and 350,000 users signed up. This works out to an average of about 170 posts a day, for 10 years. Also, it looks like about 3.9% of all posts on the forum are mine ??

    Thanks to everyone who's been part of the forum over the years! ??

  • CKMartin - OK, I added Czech. You can request access here: https://poeditor.com/join/project/gM9NeJ7wtR

  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • Adding another frame to the "sprite" object seems to have a performance impact as well (about 25%) But it only happens if you set the speed to anything else than 0.

    Yeah, this is another deliberate optimisation which only applies some of the time. Animated sprites need to be ticked to advance the animation frame, but to avoid the ticking overhead for static sprites, if it has only 1 frame or an animation speed of 0 it doesn't tick it at all. This is so all your static scenery and background objects don't get the overhead of ticking if they're not animating. It will start ticking if you set the animation speed greater than 0 (and it has more than 1 frame), but one quirk is it never stops ticking that instance until it is destroyed, i.e. it assumes it will always be animating thereafter.

    I think this is pretty reasonable, the main goal is to remove overhead from static objects, and it does the job. However it's true that we could refine this a bit so as sprites stop playing animations they also stop ticking, and only start again when they start animating again. I've made a note to look in to doing that for the C3 runtime.

    Adding something to the quadissue test and measuring the impact seems to be a good way to measure the engine overhead of various features! I'd warn though that the overhead isn't necessarily always important - for example in the animated sprites case, I would guess for most projects sprites either animate or don't, so the ticking overhead issue probably isn't particularly significant.

  • We've added a number of new languages to the translation project! We expect many of these to be long-term projects and some may remain idle until enough contributors sign up. However there is no harm in making them available so anybody who wants to get started can do so. This thread has more information about how to get started.

    Here is a complete list of all languages we've now got translation projects for, and their status:

    • Belarusian [started]
    • Bengali [new]
    • Bosnian [in progress]
    • Chinese (simplified) [started]
    • Chinese (traditional) [new]
    • Czech [complete]
    • Dutch [complete]
    • English [complete]
    • Filipino [new]
    • French [complete]
    • German [in progress]
    • Greek [new]
    • Hindi [new]
    • Hungarian [in progress]
    • Indonesian [in progress]
    • Italian [complete, in review]
    • Japanese [started]
    • Korean [in progress]
    • Malay [started]
    • Punjabi [new]
    • Polish [in progress]
    • Portuguese (Brazilian) [complete]
    • Romanian [in progress]
    • Russian [complete]
    • Serbian [started]
    • Spanish [complete]
    • Swedish [in progress]
    • Thai [in progress]
    • Turkish [in progress]
    • Ukrainian [in progress]
    • Vietnamese [started]

    Languages are marked 'new' up to 2%, 'started' up to 10%, 'in progress' beyond that, at which point we start bundling it in Construct 3 available in developer mode, if it passes verification.

  • Hopefully I'll be able to post more news about the state of the C3 runtime by early next year. I just don't want to commit to too much yet. It'll be our main priority after the full launch of the C3 editor, though.

Ashley's avatar

Ashley

Early Adopter

Member since 21 May, 2007

Twitter
Ashley has 1,831,075 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
  • x6
    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
  • x44
    Great Comment One of your comments gets 3 upvotes
  • Email Verified

Progress

32/44
How to earn trophies

Blogs