Construct 3 suggestions & ideas

Suggest and vote on ideas for Construct 3! Please note this is only one aspect of planning. We do not guarantee any features here will be implemented, even if they are top-voted ideas. The aim is just to collect feedback. Remember to search for existing submissions before adding an idea, describe your ideas as comprehensively as possible, and vote for plausible ideas that are well thought out. Please see our full guidelines on suggesting features.

122 VOTE

Tween/Easing IN/OUT Behavior

Basically the LiteTween (by Lunnaray) movement behavior.  Something like that to make built-in easing and movements smoother.  Other game engines like UE4 have this built in, I think C3 should as well.

  • jobel
  • Apr 5 2017
  • Wait for C3 runtime
  • Apr 6, 2017

    Admin Response

    This is a good idea and we'll probably make an official behavior later down the line. However we'd like to focus on completing the Construct 3 runtime first. In the mean time we will work on the SDK and help third-party developers port their addons to C3.

  • Attach files
  • shinkan commented
    April 5, 2017 15:01

    Tweening / easing or whatever we will call it would be the best built in the editor itself. So you could tween everything.   For example you can't tween easily "scrollX"  you have to create an object add tween behavior to it and then patch that tweening into a "scrollX" value.   But what if you could to it in events?  something like 
    ScrollX set to tween(start, end, duration, tween type....etc) 

  • Guest commented
    April 5, 2017 15:10

    This would be best in expression form like lerp.

  • Richard Lems commented
    April 5, 2017 15:14

    The current LiteTween behavior is very good. If Lunnaray is willing to build a C3 version I'd say this is a low priority. I do feel that tweens are very much a must in game development. There's only so much you can do with lerp.

    So I'm giving this a +1.

  • jobel commented
    April 5, 2017 15:36

    I like the way UE4 handles it with their Timeline node.  Create a movement behavior relative to wherever the object is currently. 

    And yes I agree with Newt I would separately like an Ease() function - but that might be a different idea.

  • oosyrag commented
    April 5, 2017 18:10

    This is a fair request for a useful behavior. Of course it can be done with events - all of Constructs behaviors can be remade with events. It is something that is commonly needed though: moving an object from point a to point b over a certain duration of time.

    The structure can be similar to the pathfinding behavior without the pathfinding.

    Key elements - Start Point (or trigger), end point, duration, speed, easing

  • oosyrag commented
    April 5, 2017 18:12

    Ack can't edit these posts.

    Bonus functionality - Applicable to rotations, size, opacity and other transformations.

  • Hoodloc commented
    April 5, 2017 18:17

    The lack of tweening was something that irritated me when I first tried out C2. Both other engines that I use have built in tweening with a few/lot of these easing variants http://easings.net and I'm constantly using that. E.g. for moving Ui elements fluidly or to tween the score variable up to make it more interesting than just increasing it. There are tons of things that I need easing for in my games.

  • Hoodloc commented
    April 5, 2017 18:23

    Like oosyrag pointed out best would be if you could basically tween everything... like opacity, rotation, size, position, variables.

  • Elliott Bear commented
    April 5, 2017 20:17

    If drag and drop has it's own behaviour, which is functionally easy to recreate with everyTick, Touch and setPosition; then tweening should as well.

     

    This gets the full +3 from me.

  • Jerbens Jarman commented
    April 5, 2017 22:46

    I use the javascript plugin for this on a regular basis. Definitely a +3 from me

  • Helena Hultén commented
    April 6, 2017 01:30

    I use Lunarray's plugin all the time!

  • Rablo Games commented
    April 6, 2017 09:17

    +3! I'm lost without LiteTween... ^^'

  • Ethan commented
    April 7, 2017 17:57

    Tweens should be functions of the "system object" like lerp(). They would then return a value which could be applied to anything. These should have been there from the start.

  • Massimo Fabbri commented
    April 11, 2017 12:07

    The current LiteTween is an absolute neccesity for me...

  • NaSTy commented
    April 20, 2017 14:52

    Please i need LiteTween for C3 ... 'cause i use in all my C2 projects!!

    Thanks

  • Guest commented
    July 12, 2017 12:57

    Maybe Scirra should consider buying some of the already developed 3rd party plugins and integrate them as built in addons....?

  • Ike Chu commented
    July 12, 2017 19:52

    Hi Guys

    After Searching i found this for liteTween. I hope it helps

    https://www.dropbox.com/s/5dy6rz2mj94hp7j/lunarray.litetween.c3addon?dl=0

     

    Also some other plugins and behaviors

    https://docs.google.com/spreadsheets/d/1TvRj9-ULQoCe2XkGGZmlZbYjTf9ldj9E-L284UUTt1E/edit#gid=862259506

     

    cheers

  • Mikael Thomsen commented
    October 5, 2017 20:10

    I would like something where you can do stuff like this:

    1. In your layout you add a timeline object.

    2. One or more sprites can be attached to the timeline object.

    3. For attached sprites, you can add key-frames for on the timeline.

    4. A key frame can contain sprite properties (e.g. position or opacity of sprite)

    5. A timeline have action like: Play, Pause, Rewind, Goto(seconds) and so on.

    6. When a timeline is playing it will change the properties of all attached sprites, according to key-frames value. It will calculate values between key-frames according to an easing (http://easings.net/en).

     

    I think that would be a really cool feature!

     

    See also https://construct3.ideas.aha.io/ideas/C3-I-76

     

     

     

  • Mikael Thomsen commented
    October 7, 2017 06:53

    Just something that might be useful when this (and hopeful a timeline thingy) is going to be implemented.

     

    http://pixijs.github.io/examples/#/spine/spineboy.js