kobewi
dbecf8bd1a
Improve and clarify paused Tweens
2023-07-25 13:29:30 +02:00
Yuri Sizov
752b89dc36
Merge pull request #79403 from TokageItLab/fix-negative-timescale-transition
...
Fix `AnimationNodeTransition` with negative time scale
2023-07-24 19:32:37 +02:00
Yuri Sizov
6a30f64dc8
Merge pull request #79595 from TokageItLab/rbmap-animblendtree
...
Make `AnimationNodeBlendTree` use `RBMap` insteads `HashMap`
2023-07-21 17:15:42 +02:00
Silc Lizard (Tokage) Renew
a3cdacdc4e
Make AnimationNodeBlendTree use RBMap insteads HashMap
2023-07-18 17:57:53 +09:00
kobewi
de4a3fa151
Unify and streamline connecting to Resource changes
2023-07-17 19:35:57 +02:00
Silc Lizard (Tokage) Renew
1ac2bdd97b
Fix NodeTransition with negative time scale
2023-07-13 08:38:53 +09:00
Silc Lizard (Tokage) Renew
fc40ba21cd
Fix infinity loop state can't break
2023-07-07 16:12:37 +09:00
Ninni Pipping
0c16082e1e
Use get_node_or_null
when null checks are present
...
Avoids duplicate or unnecessary errors
2023-06-10 13:22:56 +02:00
Ninni Pipping
dcd2b883eb
Use NULL instead of COND checks when appropriate
...
Restricted to scene
2023-06-10 08:56:30 +02:00
lawnjelly
b69c8b4791
Single Compilation Unit build.
...
Adds support for simple SCU build (DEV_ENABLED only).
This speeds up compilation by compiling multiple cpp files within a single translation unit.
2023-06-06 15:36:51 +01:00
Silc Lizard (Tokage) Renew
c9c8205644
Implement NodeSub2 to AnimationTree & improve mathematical Nodes
2023-05-27 13:19:54 +09:00
kobewi
87a6145135
Fix AnimationPlayer cumulative speed_scale
2023-05-26 07:11:29 +02:00
Rémi Verschelde
7a176459b1
Merge pull request #76899 from rakkarage/spring-tween
...
Add TRANS_SPRING to Tween
2023-05-22 13:48:47 +02:00
SaracenOne
18c792fe42
Allocate unique track_blends vector for animation states.
...
Quick fix for a bug which occurs when blending the result of multiple instanced state machines outputting the same animation, but using filter tracks.
2023-05-18 20:02:43 +01:00
Rakka Rage
780e21bcac
Add TRANS_SPRING to Tween
2023-05-17 17:54:37 -04:00
Rémi Verschelde
437041a983
Merge pull request #77141 from TokageItLab/optimize-tween-division
...
Optimize Tween calculations by caching some divisions
2023-05-17 11:25:30 +02:00
Silc Lizard (Tokage) Renew
e09c3d8126
Optimize Tween calculations by caching some divisions
2023-05-17 07:03:45 +09:00
Rémi Verschelde
88f5b8d687
Merge pull request #74190 from TokageItLab/respect-fade-abort-oneshot
...
Fix NodeOneShot doesn't respect fade-out when aborting and improvement
2023-05-15 13:43:20 +02:00
Silc Lizard (Tokage) Renew
238bc9fe1f
Fix NodeOneShot doesn't respect fade-out when aborting and improvement
2023-05-15 18:51:45 +09:00
Rémi Verschelde
3e6a731904
Merge pull request #76418 from reduz/method-bind-validated-call
...
Add ValidatedCall to MethodBind
2023-05-08 13:52:42 +02:00
Juan Linietsky
1c93606e47
Add ValidatedCall to MethodBind
...
* This should optimize GDScript function calling _enormously_.
* It also should simplify the GDScript VM considerably.
NOTE: GDExtension calling performance has most likely been affected until going via ptrcall is fixed.
2023-04-30 20:01:26 +02:00
Yuri Sizov
0562decf34
Unexpose AnimationTrackEditPlugin as not implemented
2023-04-25 11:38:17 +02:00
Silc Renew
fac8a918f9
Expose interpolation methods for 3D track in Animation class
2023-04-25 01:45:14 +09:00
Rémi Verschelde
13544fb508
Merge pull request #75759 from TokageItLab/reimplement-grouped-statemachine
...
Rework for nested `AnimationNodeStateMachine`
2023-04-24 16:44:21 +02:00
Silc Renew
991e6e90ba
Rework StateMachine and nested StateMachine process
...
Breaking compatibility: If a StateMachineTransition is connected to a nested StateMachine prior to this, it is removed. Also, there was a feature to connect another StateMachine as the End of a StateMachine, which is also removed to avoid reference confusion. It was like a GoTo Statement, also further passing the same reference to the blending process, causing the blending calculation to break or causing some StateMachines to not work.
2023-04-18 19:06:51 +09:00
yedpodtrzitko
c01d2902d9
optimize blend position search
2023-04-08 18:49:06 +07:00
kobewi
20f03884f2
Various Tween code improvements
2023-04-03 15:40:02 +02:00
John Pennycook
4cb2085543
Add get_loops_left() function to Tween
...
Implements godotengine/godot-proposals#5141 .
Adds a new get_loops_left() function to Tween, allowing developers to
reason about how many times a tweening sequence will repeat and whether
to expect finished or loop_finished as the next signal.
Co-authored-by: Tomek <kobewi4e@gmail.com>
2023-03-20 20:49:31 -07:00
kobewi
45f4d59fa4
Check for type mismatch in PropertyTweener.from()
2023-02-28 17:16:56 +01:00
Silc Renew
ae5dadc8d1
Refactor NodeTransition/OneShot to handle seek/filter correctly
2023-02-13 10:04:51 +09:00
kobewi
17fe5c2b23
Fix tween_method() type validation
2023-02-12 22:08:25 +01:00
Rémi Verschelde
9075d5e932
Merge pull request #73120 from TokageItLab/fix-transition-reset-fade
...
Fix remaining fade doesn't clear when reset in AnimationNodeTransition
2023-02-11 22:03:35 +01:00
Silc Renew
7bf83a8603
Fix NodeOneShot fade-out doesn't blend animations correctly
2023-02-12 04:32:40 +09:00
Silc Renew
2a0beb1ef3
Fix remaining fade doesn't clear when reset in AnimationNodeTransition
2023-02-12 04:12:15 +09:00
Rémi Verschelde
cac4cda89b
Merge pull request #73024 from TokageItLab/fix-transtition-first-frame
...
Fix broken first frame of `NodeTransition`/`NodeOneShot` when xfade is 0
2023-02-10 15:08:34 +01:00
Haoyu Qiu
26581ca574
Add some missing translatable editor strings
2023-02-10 16:55:50 +08:00
Silc Renew
836d62f0c6
Fix broken first frame of NodeTransition/NodeOneShot when xfade is 0
2023-02-10 13:57:11 +09:00
Silc Renew
7b18ad7d98
Add root motion accumulator to fix broken RootMotionView
2023-02-10 01:22:00 +09:00
Markus Sauermann
826e54fa73
Some code simplifications
...
1. `number_width` isn't used later
2. `return_type` is used only once
3. AudioServer::get_singleton()->get_channel_count() always returns a channel_count of 1 or larger
4. negative `aa->backward` conditional
5. `current_canvas` == `find_world_2d()->get_canvas()`
6. identical if `render_shadows`
2023-02-07 14:30:16 +01:00
Rémi Verschelde
3f02cf7ced
Merge pull request #72722 from TokageItLab/animtree-map
...
Fix AnimationNodeTransition initialization and AnimationNode remapping method
2023-02-07 08:36:00 +01:00
Silc Renew
fff3ae1d89
Fix NodeTransition initialization and AnimationNode remapping method
2023-02-05 06:24:14 +09:00
Silc Renew
b9b8130432
Fixed animation audio to play considering time when seeking
2023-02-05 03:57:52 +09:00
Rémi Verschelde
1d61150f8f
Merge pull request #72509 from TokageItLab/seekcon
...
Consistent with NodeTimeSeek parameters OtherNodes
2023-02-02 16:27:19 +01:00
Silc Renew
2a39b5bcde
Remove meaningless rename_parameter
in AnimationTree
2023-02-01 23:14:36 +09:00
Silc Renew
6782edd5a4
Consistent with NodeTimeSeek parameters OtherNodes
2023-02-01 20:58:36 +09:00
Rémi Verschelde
d8e71dc51a
Merge pull request #72450 from TokageItLab/optional-restart
...
Make restart in NodeStateMachine / NodeTransition optional
2023-02-01 07:24:05 +01:00
Silc Renew
4525181c2d
Make restart in NodeStateMachine / NodeTransition optional
2023-02-01 03:57:11 +09:00
Rémi Verschelde
92a6586fb6
Merge pull request #72396 from TokageItLab/bs1dconsist
...
Consistent with NodeBlendSpace1D option NodeBlendSpace2D
2023-01-31 15:55:53 +01:00
SaracenOne
eff3828896
Force update AnimationTree player cache when AnimationPlayer changes.
2023-01-31 11:32:05 +00:00
Rémi Verschelde
73c1fa9826
Merge pull request #72383 from MewPurPur/correct-tween-errors
...
Fix error messages for {}Tweener.new()
2023-01-30 20:27:06 +01:00
Silc Renew
a0c4f849e0
Consistent with NodeBlendSpace1D option NodeBlendSpace2D
...
Co-authored-by: Skrapion <rick@firefang.com>
2023-01-31 02:14:55 +09:00
VolTer
5313bc90f6
Fix error messages of {}Tweener.new()
2023-01-30 17:58:20 +01:00
Rémi Verschelde
551f5191e5
Merge pull request #72388 from TokageItLab/transition-reset-each
...
Allow the Reset option of NodeTransition to be set for each Input
2023-01-30 17:35:00 +01:00
Silc Renew
2dd3abd0c5
Allow the Reset option of NodeTransition to be set for each Input
2023-01-31 00:40:45 +09:00
Silc Renew
f8d529a232
Allow seek() without assigned animation in AnimationPlayer
2023-01-30 23:54:20 +09:00
Rémi Verschelde
38f8411ed8
Merge pull request #71964 from bruvzg/mat_key
...
Fix unsafe murmur3 hash use for the default material keys, expose alpha hash transparency mode for default materials and Label3D and Sprite3D.
2023-01-30 10:03:49 +01:00
Silc Renew
d27005f80e
Remove the max input limit & cleanup AnimationNodeTransition API
2023-01-30 03:52:55 +09:00
Silc Renew
fa198c482e
Fix AnimatedSprite play() don't redraw immediately
2023-01-29 08:00:42 +09:00
Silc Renew
75330887d7
Implement blending audio feature to AnimationTree
2023-01-28 20:08:29 +09:00
Rémi Verschelde
91c0ed5e33
Merge pull request #71907 from TokageItLab/change-animated-sprite-api
...
Make `AnimatedSprite`'s playback API consistent with `AnimationPlayer`
2023-01-27 10:32:23 +01:00
Silc Renew
d33fdfcdad
Fix AnimationTree MethodTrack discards all process
2023-01-27 17:44:25 +09:00
Silc Renew
9ef2fb3cd4
Make AnimTree/Player processes adopt to GDVIRTUAL
2023-01-26 23:22:57 +09:00
Silc Renew
4e56c2b0b0
Fix spamming audio preview and cleanup process in AnimationPlayer/Tree
2023-01-26 14:09:25 +09:00
Silc Renew
17bf6238fc
Make AnimatedSprite's playback API consistent with AnimationPlayer
2023-01-26 12:40:19 +09:00
SaracenOne
02a82c9531
Add indicator for state machine transition fade progress and position of state transitioning from.
2023-01-25 10:17:55 +00:00
Aaron Franke
2bc0bcbd26
PropertyUsage: Rename "DO_NOT_SHARE_ON_DUPLICATE" to "ALWAYS_DUPLICATE"
2023-01-24 16:05:07 -06:00
bruvzg
1c774a6083
Fix unsafe murmur3 hash use for the default material keys, expose alpha hash transparency mode for default materials and Label3D and Sprite3D.
2023-01-24 12:24:53 +02:00
Rémi Verschelde
285e6ed9a5
Merge pull request #71840 from TokageItLab/fix-travel-reset
...
Fix weird behavior of teleporting to self-state when `reset_on_teleport` is `false` in StateMachine
2023-01-22 11:08:57 +01:00
Rémi Verschelde
c0f35a8db1
Merge pull request #71839 from TokageItLab/expose-fading-from-statemachine
...
Expose `fading_from` from StateMachine
2023-01-22 11:08:34 +01:00
Rémi Verschelde
813d7c417b
Merge pull request #71823 from TokageItLab/fix-bezier-init
...
Fix wrong BezierTrack init value
2023-01-22 11:08:09 +01:00
Silc Renew
a6d8afc90c
Fix weird behavior of teleporting to self-state when reset is false
2023-01-22 16:16:48 +09:00
Silc Renew
8b04f58604
Expose fading_from_node from StateMachine
2023-01-22 15:50:53 +09:00
Silc Renew
451cb5577d
Fix wrong BezierTrack init value
2023-01-22 06:52:40 +09:00
kobewi
615c517034
Use range iterators in LocalVector loops
2023-01-21 18:44:42 +01:00
Silc Renew
3bb298b78a
Fix max limit of AnimationNodeTransition input count in the inspector
2023-01-21 14:57:36 +09:00
Rémi Verschelde
d919d77367
Merge pull request #71418 from TokageItLab/restart-anim-tree
...
Allow AnimationStateMachine / AnimationNode to restart when transitioning to the same state
2023-01-19 21:52:35 +01:00
Rémi Verschelde
a202f5104f
Merge pull request #71264 from TokageItLab/improve-statemachine
...
Add next/reset function to `AnimationStateMachine`
2023-01-19 21:52:05 +01:00
Silc Renew
e480262c53
Allow AnimationNodes to restart when transitioning to the same state
2023-01-19 03:10:59 +09:00
Silc Renew
8bfaf098c7
Add next/reset function to AnimationStateMachine
2023-01-19 03:10:45 +09:00
Silc Renew
d16004f297
Add p_keep_state to AnimationPlayer::stop()
2023-01-19 01:05:46 +09:00
kobewi
1260cb0bfb
Improve empty Tween error message
2023-01-16 10:30:21 +01:00
kobewi
b58111588a
Add EditorUndoRedoManager singleton
2023-01-16 01:11:52 +01:00
Tomasz Chabora
4668a186db
Reset animation on playback stop
2023-01-13 13:41:37 +01:00
kobewi
f64dd732b8
Improve some Tween internals
2023-01-11 14:08:14 +01:00
kobewi
da9396881e
Split pause() from AnimationPlayer's stop()
2023-01-11 14:03:31 +01:00
Yuri Sizov
82c00c21e6
Simplify some editor plugin logic and remove dead code
2023-01-05 21:04:54 +03:00
Rémi Verschelde
d95794ec8a
One Copyright Update to rule them all
...
As many open source projects have started doing it, we're removing the
current year from the copyright notice, so that we don't need to bump
it every year.
It seems like only the first year of publication is technically
relevant for copyright notices, and even that seems to be something
that many companies stopped listing altogether (in a version controlled
codebase, the commits are a much better source of date of publication
than a hardcoded copyright statement).
We also now list Godot Engine contributors first as we're collectively
the current maintainers of the project, and we clarify that the
"exclusive" copyright of the co-founders covers the timespan before
opensourcing (their further contributions are included as part of Godot
Engine contributors).
Also fixed "cf." Frenchism - it's meant as "refer to / see".
2023-01-05 13:25:55 +01:00
Rémi Verschelde
d322c154a6
Merge pull request #70795 from KoBeWi/TweenCounted
...
Improve `RefCounted` support in `Tween`
2023-01-05 12:56:53 +01:00
kobewi
a6e02f149f
Improve RefCounted support in Tween
2023-01-01 18:45:17 +01:00
Silc Renew
74e0903bb8
Fix wrong AnimationStateMachine process for end of fading
2022-12-26 13:08:08 +09:00
Rémi Verschelde
ecd895a860
Merge pull request #70278 from TokageItLab/add-animation-started-finished-signal-to-tree
...
Add `animation_started/finished` signals to `AnimationTree` and fix time accuracy in StateMachine
2022-12-23 09:08:17 +01:00
Rémi Verschelde
8eec9f7d3c
Merge pull request #69797 from TokageItLab/time-edit-inspector-plugin
...
Animation: Add inspector plugin for key time edit & Change `track_find_key()` argument to find key with approximate
2022-12-23 09:07:15 +01:00
Rémi Verschelde
9b4888b7c9
Merge pull request #65312 from SaracenOne/auto_advance_behaviour
...
Make auto-advance flag a requirement for conditional/expression evaluation
2022-12-23 09:05:49 +01:00
Rémi Verschelde
d894fa8ba3
Merge pull request #37001 from jitspoe/master.anim_blend_fix
...
Fix for short animation blend taking too long when played during a long animation blend.
2022-12-22 08:51:06 +01:00
Silc Renew
060fb2d093
Add inspector plugin for key time edit & Change find key argument
2022-12-22 10:03:06 +09:00
jitspoe
7a7f5a2216
Fix animation blending bug where an animation with a short blend time played immediately after an animation with a long blend time would play with a long blend time or cause popping/incorrect animation positions.
2022-12-21 17:40:44 -05:00
Silc Renew
95abe32b76
Fix StateMachine cannot connect nodes bug
2022-12-21 06:30:33 +09:00
Silc Renew
4cd144d5fb
Add animation_started/finished signals to AnimationTree
2022-12-21 01:20:22 +09:00
Silc Renew
bd0541c25b
Fixed a bug where negative Blend values were being discarded
2022-12-20 03:41:57 +09:00
SaracenOne
092dbe52a9
Change auto_advance flag to advance_mode enum and unify with disabled flag.
...
Expressions and conditions now require auto mode to be set to auto.
Adds a toggle button to the state machine editor for whether new transitions
advance settings should default to auto mode or not.
2022-12-16 07:42:59 +00:00