Commit Graph

68 Commits

Author SHA1 Message Date
Silc Lizard (Tokage) Renew c640059ece Check blend weight for AnimNode error&remove _validate_animation_graph 2026-06-08 08:32:42 +09:00
Thaddeus Crews 2828be93cf Merge pull request #119069 from Ryan-000/fix-animation-9
Fix BlendSpace point insertion shift at a specific index
2026-05-12 12:25:43 -05:00
Thaddeus Crews d3a741d3f7 Merge pull request #119070 from Ryan-000/fix-animation-10
Blend space editor: Use correct name in events, and clean all states
2026-05-12 12:25:42 -05:00
uno1982 3ffd58063e Fix negative time scale regression in BlendSpace1D and BlendSpace2D
Replace -1 sentinel value in deltas array with NAN to distinguish
between "skip this blend point" and a legitimate negative delta from
a negative time scale node. std::signbit was incorrectly skipping
blend points with negative deltas, causing animation playback failure
and an out-of-bounds error when using negative time scale for reverse
animation.

Fixes #119060
2026-04-29 10:34:26 -05:00
Ryan 2470710a31 Fix BlendSpace point insertion shift at a specific index 2026-04-28 16:38:37 -04:00
Ryan fdc441f0c2 Use correct name in events, and clean all state
https://github.com/godotengine/godot/pull/110369 changed the names from itos(index), to custom names however the "animation_node_removed" signal was not updated to reflect that change.

Also its safer to clear all the state when removing, rather than just the name.
2026-04-28 16:22:08 -04:00
xuhuisheng 232d69e75c Prevent error message when try to get blend point name at first time 2026-04-25 23:30:38 +08:00
uno1982 7f7677f281 Add SyncMode enum to BlendSpace1D and BlendSpace2D 2026-04-09 21:19:14 -05:00
Thaddeus Crews df824815bc Merge pull request #117498 from vaner-org/blendspace-visual-consistency
Improve visual consistency of BlendSpace editors within AnimationTree
2026-04-09 17:41:07 -05:00
vaner-org 6c4aac33bd Make BlendSpace editors more consistent across AnimationTree 2026-04-09 04:14:49 +05:30
Thaddeus Crews bf6ec91417 Merge pull request #117508 from TokageItLab/fix-blend-space-setter
Fix blend point setter can't restore the name in deprecated=no
2026-03-19 15:39:11 -05:00
Rémi Verschelde 98868393cc Style: Enforce #include validation hook 2026-03-18 10:41:59 +01:00
Silc Lizard (Tokage) Renew 119c497c96 Fix blend point setter can't restore the name in deprecated=no 2026-03-17 21:09:59 +09:00
Rémi Verschelde 7795057e4b Misc includes or modernize fixes found via clangd-tidy 2026-03-16 21:38:26 +01:00
Ryan 1a5d818ea9 Optimize AnimationTree & Improve internals
Apply suggestions from code review

Co-Authored-By: A Thousand Ships <96648715+AThousandShips@users.noreply.github.com>
Co-Authored-By: Silc Lizard (Tokage) Renew <tokage.it.lab@gmail.com>
2026-03-14 02:24:21 -04:00
Thaddeus Crews e11d9eb8da Merge pull request #110369 from vaner-org/blendspace-edit-name-index
Display and allow setting name/index of BlendSpace points
2026-03-12 09:03:38 -05:00
vaner-org f873fa3c3a Display and allow setting name/index of BlendSpace points 2026-03-10 00:29:49 +05:30
Rémi Verschelde eabb9a63d4 Rename callable_method_pointer.h to callable_mp.h and include it explicitly
This allows removing it from `class_db.h`, significantly reducing the amount of files
that include it transitively.

Also includes some include cleanup in `control.h` and `rich_text_label.h` done while
ensure they don't depend on `callable_mp`.
2026-03-04 16:23:23 +01:00
Thaddeus Crews e380a41752 Style: Add class_db.h includes explicitly 2026-02-26 15:50:28 -06:00
kobewi f7b9703cbd Use actual class names in resource type hints 2026-01-29 21:07:56 +01:00
Silc Lizard (Tokage) Renew 678fb63451 Fix ambiguous AnimationNode's parameter type in default value
Co-authored-by: Tomasz Chabora <kobewi4e@gmail.com>
2025-06-05 10:02:22 +09:00
Thaddeus Crews ad40939b6f Core: Replace C math headers with C++ equivalents
- Minor restructuring to ensure `math_funcs.h` is the central point for math functions
2025-04-16 15:49:02 -05:00
SaracenOne 250e69856e Fixes missing process_state error in blend spaces. 2025-03-12 11:46:38 +00:00
A Thousand Ships a1846b27ea Improve use of Ref.is_null/valid
Use `is_null` over `!is_valid` and vice versa.
2024-12-23 16:35:02 -05:00
Silc Lizard (Tokage) Renew d54229de8c Fix Sync in BlendSpace1D/2D with BlendModeDiscrete 2024-12-14 13:00:29 +09:00
Silc Lizard (Tokage) Renew 8a90c5317b Add blend point check to AnimationNodeBlendSpace2D::_process() 2024-06-01 19:06:32 +09:00
Silc Lizard (Tokage) Renew 6dd410854c Rework AnimationNode process for retrieving the semantic time info 2024-03-20 22:52:26 +09:00
A Thousand Ships 15369fdb1d Remove unnecessary this-> expressions 2024-01-29 09:59:18 +01:00
Silc Lizard (Tokage) Renew 1b95827d3e Implement AnimationManager the base class of AnimationPlayer/Tree 2023-09-29 08:23:57 +09:00
Yuri Sizov b351cffddf Fix theme access and improve UX in AnimationTree editor 2023-09-23 21:47:27 +02: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
Silc Renew fff3ae1d89 Fix NodeTransition initialization and AnimationNode remapping method 2023-02-05 06:24:14 +09:00
Silc Renew a0c4f849e0 Consistent with NodeBlendSpace1D option NodeBlendSpace2D
Co-authored-by: Skrapion <rick@firefang.com>
2023-01-31 02:14:55 +09: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
Silc Renew c1ec99f0e1 Refactor process of AnimationTree for end of animation 2022-11-22 18:12:45 +09:00
Silc Renew 17ce879a15 Optimize animation blend tree process 2022-11-16 02:52:04 +09:00
Yuri Sizov 1a24c9e14b Make _validate_property a multilevel method 2022-08-22 18:35:11 +03:00
Juan Linietsky d4433ae6d3 Remove Signal connect binds
Remove the optional argument p_binds from `Object::connect` since it was deprecated by Callable.bind().
Changed all uses of it to Callable.bind()
2022-07-29 16:26:13 +02:00
Silc Renew 9be288edf9 refactor sync in AnimationTree 2022-07-16 21:45:32 +09:00
Silc Renew ba8398f270 Fixed delta & Implement selection of whether or not to seek root 2022-05-09 08:28:32 +09:00
Silc 'Tokage' Renew 1c0b163df5 More time parameters change type float to double 2022-01-27 12:42:46 +09:00
Rémi Verschelde fe52458154 Update copyright statements to 2022
Happy new year to the wonderful Godot community!
2022-01-03 21:27:34 +01:00
Hugo Locurcio c012fbc8b2 Rename PROPERTY_USAGE_NOEDITOR to PROPERTY_USAGE_NO_EDITOR
This is consistent with other constants that include `NO`,
such as `PROPERTY_HINT_COLOR_NO_ALPHA`.
2021-11-03 23:06:17 +01:00
Aaron Franke 78d33a6e24 Use doubles for time in animation code 2021-08-09 14:04:25 -05:00
reduz 6631f66c2a Optimize StringName usage
* Added a new macro SNAME() that constructs and caches a local stringname.
* Subsequent usages use the cached version.
* Since these use a global static variable, a second refcounter of static usages need to be kept for cleanup time.
* Replaced all theme usages by this new macro.
* Replace all signal emission usages by this new macro.
* Replace all call_deferred usages by this new macro.

This is part of ongoing work to optimize GUI and the editor.
2021-07-18 21:20:02 -03:00
Aaron Franke 2508fd0533 Use PROPERTY_USAGE_NONE instead of 0 for no property usage
Also use const more often.
2021-07-01 14:13:27 -04:00
Rafał Mikrut 003bb8e1a8 Initialize class variables with default values in scene/ [1/2] 2021-02-07 22:29:31 +01:00
Rémi Verschelde b5334d14f7 Update copyright statements to 2021
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 🎆
2021-01-01 20:19:21 +01:00