summaryrefslogtreecommitdiff
path: root/scene/animation/tween.h
AgeCommit message (Collapse)Author
2021-06-19Complete rewrite of TweensTomasz Chabora
* Tweens were changed from Node to RefCounted. New API is inspired by DOTween. * Tweens are created and managed by SceneTree, similar to SceneTreeTimer, which makes them ultra cheap to use a lot. * Animating with Tweens is done by creating sequences of Tweeners. You create them from code and they autostart by default (fire-and-forget). * There are 4 Tweeners that cover the former Tween functionality: PropertyTweener, IntervalTweener, CallbackTweener and MethodTweener. * The methods were simplified a lot. Long argument lists are replaced with chained calls on Tweens and Tweeners. * Tweeners by default execute in sequence, so it's easy to create complex chained animations. * You can bind a Tween to a node. Tween will be removed automatically when the bound node is freed.
2021-03-03fix no tween repeat after stop_all() and start() againjmb462
2021-02-07Initialize class variables with default values in scene/ [1/2]Rafał Mikrut
2021-01-01Update copyright statements to 2021Rémi Verschelde
Happy new year to the wonderful Godot community! 2020 has been a tough year for most of us personally, but a good year for Godot development nonetheless with a huge amount of work done towards Godot 4.0 and great improvements backported to the long-lived 3.2 branch. We've had close to 400 contributors to engine code this year, authoring near 7,000 commit! (And that's only for the `master` branch and for the engine code, there's a lot more when counting docs, demos and other first-party repos.) Here's to a great year 2021 for all Godot users 🎆
2020-11-16Remove empty lines around braces with the formatting scriptAaron Franke
2020-05-14Style: clang-format: Disable KeepEmptyLinesAtTheStartOfBlocksRémi Verschelde
Which means that reduz' beloved style which we all became used to will now be changed automatically to remove the first empty line. This makes us lean closer to 1TBS (the one true brace style) instead of hybridating it with some Allman-inspired spacing. There's still the case of braces around single-statement blocks that needs to be addressed (but clang-format can't help with that, but clang-tidy may if we agree about it). Part of #33027.
2020-03-06Removed boolean return type from majority of method in TweenYuri Roubinsky
2020-01-01Update copyright statements to 2020Rémi Verschelde
Happy new year to the wonderful Godot community! We're starting a new decade with a well-established, non-profit, free and open source game engine, and tons of further improvements in the pipeline from hundreds of contributors. Godot will keep getting better, and we're looking forward to all the games that the community will keep developing and releasing with it.
2019-12-12Provide default Tween values for transition and easing typesAndrii Doroshenko (Xrayez)
TRANS_LINEAR and EASE_IN_OUT are chosen as defaults for interpolation and follow methods.
2019-12-10Removed unused variables, add some constants numbersRafał Mikrut
2019-10-23Fix Tween follow_property finishing with nullMark Riedesel
2019-06-14Implementing 0-duration tweensDevin Pentecost
Some light refactor Adding comments in functions
2019-01-01Update copyright statements to 2019Rémi Verschelde
Happy new year to the wonderful Godot community!
2018-08-16Tween: Add a unique identifier to InterpolateData to be able to remove the ↵James
right one when finished
2018-06-26Fix and make Tween node less confusingRăzvan C. Rădulescu
I've made the following changes: - make `is_active` the main way of keeping track of tween processing/activity, meaning that `is_active` will now return `false` if all tween actions have finished or if it isn't started or if it was stopped via `set_active(false)` or any other mode - removed is_stopped because is redundand now The above meant that we don't have to keep track of yet another variable `available` since everything is based on `*processing_internal` so I removed it, likewise it's own local `processing` variable was removed, as well as the "double" `_set_process` which it feels more like a hack. What wasn't changed: - `tell()` still returns max value (i.e. `== get_runtime()` when all tweens `finish`) *More testing is needed*. So far I've tested repeat on/off, delay, `is_active()` working corretly, `set_active(true), set_active(false)`, but probably more tests are necessary, all the resets, stops, resume etc.
2018-06-07Adding is_stopped method to Tweensteincodes
2018-01-05Add missing copyright headers and fix formattingRémi Verschelde
Using `misc/scripts/fix_headers.py` on all Godot files. Some missing header guards were added, and the header inclusion order was fixed in the Bullet module.
2018-01-01Update copyright statements to 2018Rémi Verschelde
Happy new year to the wonderful Godot community!
2017-11-21Allow for getting/setting indexed properties of objects using get/set_indexedBojidar Marinov
Performance is around the same as using pure set() through GDScript.
2017-09-30Renamed fixed_process to physics_processAndreaCatania
2017-08-27Use HTTPS URL for Godot's website in the headersRémi Verschelde
2017-08-16Synchronize parameter names in definition and declarationTwistedTwigleg
Fixes #10244.
2017-04-08Add "Godot Engine contributors" copyright lineRémi Verschelde
2017-03-05A Whole New World (clang-format edition)Rémi Verschelde
I can show you the code Pretty, with proper whitespace Tell me, coder, now when did You last write readable code? I can open your eyes Make you see your bad indent Force you to respect the style The core devs agreed upon A whole new world A new fantastic code format A de facto standard With some sugar Enforced with clang-format A whole new world A dazzling style we all dreamed of And when we read it through It's crystal clear That now we're in a whole new world of code
2017-01-13renamed tween animationplayer scale functions to speed_scaleJuan Linietsky
2017-01-13Tween: Rename times_in_sec (sic) param to durationRémi Verschelde
2017-01-02ObjectTypeDB was renamed to ClassDB. Types are meant to be more generic to ↵Juan Linietsky
Variant. All usages of "type" to refer to classes were renamed to "class" ClassDB has been exposed to GDScript. OBJ_TYPE() macro is now GDCLASS()
2017-01-01Welcome in 2017, dear changelog reader!Rémi Verschelde
That year should bring the long-awaited OpenGL ES 3.0 compatible renderer with state-of-the-art rendering techniques tuned to work as low as middle end handheld devices - without compromising with the possibilities given for higher end desktop games of course. Great times ahead for the Godot community and the gamers that will play our games!
2016-10-26Fix regression #6864 caused by #6613Pawel Kowal
2016-03-09remove trailing whitespaceHubert Jarosz
2016-01-01Update copyright to 2016 in headersGeorge Marques
2015-05-05Spine: add feature to insert/remove interpolates while updatingsanikoyes
2015-04-18Updated copyright year in all headersJuan Linietsky
2015-01-07Add call deferred support for Tweensanikoyes
2014-12-191.Change interpolate_callback:p_times_in_sec argument before p_callback ↵sanikoyes
argument(more readable) 2.NodePath replace to instance_ID(can control object doe's not in scene tree) 3.Change interpolate types from Node to Object, can control more types(etc script class object) 4.Add pending_update counter, avoid insert/remove interpolates-list while traversal it
2014-09-17Small FixesJuan Linietsky
----------- -Added Ability for centering on top left for centercontainer -Added ability to bind more than 5 parameters (must include an extra file)
2014-08-25tween:sanikoyes
1、add follow/targeting support 2、update demo
2014-08-22Fix tween seek, add tell functionsanikoyes
2014-08-22Replace object to NodePathsanikoyes
Add time callback support Update demo
2014-08-21Add tween delay supportsanikoyes
Add tween get_runtime function Update demo for tween delay sample
2014-08-20Add tween seek/repeat supportsanikoyes
Add tween demo
2014-08-20Add remove/remove_all for tweensanikoyes
2014-08-20Add tween support for godotsanikoyes