Commit graph

858 commits

Author SHA1 Message Date
A Thousand Ships
92814bafb7
[Animation] Improvements to Tween memory management
Using `ObjectID` instead of manually breaking reference cycles.
2024-02-26 18:58:03 +01:00
Rémi Verschelde
3ce9ae71fc
Merge pull request #84906 from /fix-some-defvals 2024-02-23 11:29:22 +01:00
Raul Santos
5ba92e5a57
Fix some DEFVALs to use the right type
- Use `StringName()` in DEFVAL for StringNames.
- Use `Variant()` in DEFVAL for Variants.
2024-02-23 01:50:18 +01:00
Rémi Verschelde
9c626b6236
Merge pull request #88661 from TokageItLab/fix-dominant-conv
Force non-numeric ValueTrack to use Discrete with Dominant
2024-02-22 14:39:21 +01:00
Silc Lizard (Tokage) Renew
8423574a24 Force non-numeric ValueTrack use Discrete with Dominant 2024-02-22 21:43:35 +09:00
Rémi Verschelde
efa4d0aabf
Merge pull request #86321 from jsjtxietian/fix-blendnode-crash
Fix `blend_node` crash with invalid AnimationNode reference
2024-02-22 11:22:56 +01:00
jsjtxietian
65c8af53a1 Fix blend_node crash with invalid p_node 2024-02-22 12:56:21 +08:00
Travis Lange
ae97cf2ff0
Fix AnimationMixer breaking animations with redundant check
Also change `Node::get_node_and_resource` to prevent it from printing an
error from `Node::get_node`, and just returns nullptr. This is what the
redundant check was trying to prevent.

Fixes #88428.

Co-authored-by: Rémi Verschelde <rverschelde@gmail.com>
2024-02-19 16:50:19 +01:00
Silc Lizard (Tokage) Renew
772a753960 Fix some animation state corruptions on activate and reset on save 2024-02-19 13:04:22 +09:00
Rémi Verschelde
da26ef2d3e
Merge pull request #88492 from TokageItLab/dominant-anim
Make `ANIMATION_CALLBACK_MODE_DISCRETE_DOMINANT` be default for AnimationPlayer
2024-02-19 01:25:10 +01:00
Silc Lizard (Tokage) Renew
3d6d5a6a36 Make CallbackModeDiscrete.Dominant be default for AnimationPlayer 2024-02-18 20:02:20 +09:00
Silc Lizard (Tokage) Renew
c9fc29ae86 Fix some condition for BezierTrack to distinguish between ValueTrack 2024-02-18 19:42:46 +09:00
Rémi Verschelde
21f0529aa9
Revert "Update Node::get_configuration_warnings signature"
This reverts commit d3852deaa4.
2024-02-17 19:03:21 +01:00
Silc Lizard (Tokage) Renew
4659090543 Make consistent the retrieval of audio tracks 2024-02-18 00:15:33 +09:00
Silc Lizard (Tokage) Renew
bc20fdf16f Add CallbackModeDiscrete to AnimationMixer 2024-02-17 18:25:56 +09:00
Rémi Verschelde
b6ef996eb7
Merge pull request #86608 from TokageItLab/add-warn-setting-anim
Add some options to Project Settings to silence warnings in AnimationMixer caching
2024-02-17 00:22:52 +01:00
Rémi Verschelde
e45cc1781b
Merge pull request #82306 from KoBeWi/tween_literally_anything
Add `set_custom_interpolator()` to PropertyTweener
2024-02-17 00:22:45 +01:00
Silc Lizard (Tokage) Renew
dc4b7bc364 Add option to silence some warnings in AnimationMixer caching 2024-02-14 14:48:02 +09:00
kobewi
154b4a51f2 Improve AnimationMixer warnings 2024-02-12 16:24:23 +01:00
Rémi Verschelde
2853b579a6
Merge pull request #86884 from Mickeon/autocompletion-AnimationNodeStateMachine
Add Autocompletion for AnimationNodeStateMachine & AnimationNodeBlendTree
2024-02-12 13:33:44 +01:00
Silc Lizard (Tokage) Renew
85d66cb4e8 Add capture() and play_with_capture() as substitute of update capture 2024-02-12 17:02:05 +09:00
Rémi Verschelde
4966b22fc5
Merge pull request #88110 from RedMser/fix-compat-bindings
Fix wrongly named compat binding
2024-02-09 12:36:16 +01:00
RedMser
d3852deaa4 Update Node::get_configuration_warnings signature 2024-02-08 23:05:20 +01:00
RedMser
1715f96434 Fix wrongly named compat binding 2024-02-08 20:05:05 +01:00
A Thousand Ships
15369fdb1d
Remove unnecessary this-> expressions 2024-01-29 09:59:18 +01:00
Rémi Verschelde
2a861ab5a2
Merge pull request #87459 from jsjtxietian/tween-from
Fix passing int to tween's `from` with float property will be forced to interpolate as int
2024-01-26 11:45:25 +01:00
Yuri Sizov
0eb11e52ea Merge pull request #86221 from TokageItLab/fix-blend-left
Make default `blend_left` consider current blend amount
2024-01-22 20:38:42 +01:00
jsjtxietian
3c596094ab Fix pass int to tween's from with float property will be forced to interpolate as int 2024-01-22 10:47:52 +08:00
kobewi
0e8f90f4c8 Update deferred calls to use Callables 2024-01-09 16:11:47 +01:00
Silc Lizard (Tokage) Renew
f8da9460c1 Make default blend_left consider current blend amount 2024-01-09 05:07:27 +09:00
Silc Lizard (Tokage) Renew
a51958a2a0 Remove Object pointer/solve types conflict in AnimationTrackCache
Co-authored-by: Rémi Verschelde <rverschelde@gmail.com>
2024-01-08 21:48:19 +09:00
Rémi Verschelde
6226388bac
Merge pull request #86874 from AThousandShips/no_3d_fix
Fix some build errors with `disable_3d=yes`
2024-01-08 11:59:31 +01:00
A Thousand Ships
c6a1ae7875
Fix some build errors with disable_3d=Yes
* Some tests were incorrectly included
* SCU builds with animation
* Animation `switch`
2024-01-07 00:44:33 +01:00
Micky
e5c1da1c61 Add Autocompletion for AnimationNodeStateMachine & BlendTree 2024-01-06 17:03:46 +01:00
Muller-Castro
96a95cb974 Add const lvalue ref to container parameters 2024-01-05 14:49:57 -03:00
Micky
787f61d70b Add autocompletion for AnimationLibrary's & AnimationMixer 2024-01-04 21:11:36 +01:00
Rémi Verschelde
4acfe4aa3c
Merge pull request #86729 from Mickeon/autocompletion-for-all
Fix missing autocompletion for inheriting classes
2024-01-03 10:14:37 +01:00
Micky
ca2f340384 Fix missing autocompletion for inheriting classes 2024-01-03 00:13:04 +01:00
Silc Lizard (Tokage) Renew
b438e28509 Fix discrete key retrieval method after start 2024-01-03 02:29:00 +09:00
Yuri Sizov
3fef8910c7 Merge pull request #85575 from TokageItLab/Make-unstore-library
Make unstore AnimationLibrary if AnimationTree is assigned AnimationPlayer
2023-12-16 17:49:43 +01:00
Haoyu Qiu
7946e84187 Make AnimationTree reference AnimationPlayer instead of AnimationMixer 2023-12-16 00:40:44 +08:00
Rémi Verschelde
e1d4b3cc07
Merge pull request #85794 from TokageItLab/stablemixer
Remove differences of the code between old AnimationTree and AnimationMixer
2023-12-12 00:33:01 +01:00
Alistair Leslie-Hughes
ea84effb84 Replace memory allocation point of ValueTrack correctly in AnimationMixer
When a animation track doesn't have an keys, it's possible that we leak memory due the ERR_CONTINUE_MSG macro usage.

By checking the error condition first, we avoid a allocation and thus the leak.
2023-12-12 07:33:35 +11:00
Silc Lizard (Tokage) Renew
5acf6b4ca6 Remove differences of the code between old AnimationTree and Mixer 2023-12-06 02:29:29 +09:00
Rémi Verschelde
1d520f5d11
Merge pull request #85681 from KoBeWi/continue_but_not_now
Fix Tween loop initial value
2023-12-04 23:21:34 +01:00
Rémi Verschelde
b8ba602e8c
Merge pull request #85569 from TokageItLab/fix-seek-diecrete
Fix AnimationPlayer seeking for Discrete keys
2023-12-04 23:19:58 +01:00
Rémi Verschelde
6b21a185e2
Merge pull request #85428 from jsjtxietian/prevent-nullptr-crash-in-AnimationMixer--restore
Prevent a crash when calling `AnimationMixer::restore` with an invalid resource
2023-12-04 23:14:29 +01:00
kobewi
20aecefd9b Fix Tween loop initial value 2023-12-02 20:20:50 +01:00
Silc Lizard (Tokage) Renew
7ed7ea53e6 Fix AnimationPlayer seeking for Discrete keys 2023-12-01 05:26:21 +09:00
Silc Lizard (Tokage) Renew
c380b1296a Make unstore AnimationLibrary if AnimationTree is assigned Player 2023-12-01 04:50:58 +09:00