Commit graph

406 commits

Author SHA1 Message Date
Thakee Nathees
a5a28239a6 Fix: Tween always return true for _get(), _set()
(cherry picked from commit 2811268231)
2020-05-06 23:29:45 +02:00
Rémi Verschelde
f629df647d Revert "Emit signal when animation ends by seek"
This reverts commit bf1cc116e1.

This needs more discussion to avoid breaking some users' expectations.
See #38086 for arguments.

(cherry picked from commit 69f36cea8c)
2020-05-04 16:10:32 +02:00
Sam
68b968ff6c Resets global pose of IK chain bones being solved, rather than the whole skeleton. Resolves #38026
(cherry picked from commit e321d38c0e)
2020-05-01 10:56:58 +02:00
volzhs
f670f6e351 Emit signal when animation ends by seek
(cherry picked from commit bf1cc116e1)
2020-04-23 11:11:13 +02:00
Andrea Catania
a51e78528f Fixed IK rotation issue
(cherry picked from commit 277696d6c5)
2020-04-16 11:42:07 +02:00
Andrea Catania
e30a0a30b6 Added new method to replace an already added node to the animation state machine
(cherry picked from commit 422926cfc6)
2020-03-25 11:38:54 +01:00
janglee
ffea9fc39f Added tween support for Rect2
Fixes #34575

(cherry picked from commit 4bbe87abb7)
2020-03-04 12:40:14 +01:00
muiroc
1b5996c95d pass missing args in AnimationNode script calls
(cherry picked from commit ed3a8cc83d)
2020-02-14 15:59:56 +01:00
Eric Rybicki
63daa19538 Use a new approach to fix bone pose override not being reset when IK animation is stopped.
This reverts PR #35460 & commit 551c37167b.

(cherry picked from commit bb0358dd8d)
2020-02-14 15:55:47 +01:00
Rémi Verschelde
efea348fe8
Merge pull request #35460 from ericrybick/35409-skeleton-does-not-return-to-original-pose-when-ik-playback-is-stopped
Fix bone pose override not being reset when IK animation is stopped
2020-01-23 14:38:04 +01:00
Rémi Verschelde
ba177ccaec doc: Misc updates for AnimationNode* and others
- Add some missing descriptions.
- Add links to tutorials for ARVR and AnimationTree.
- Style fixes.
- Engine changes:
  * Make `AnimationNodeTransition.input_<number>` properties internal
    so that they don't appear in the docs. They still appear in the
    inspector based on the actual number of inputs requested.
  * Drop unimplemented `CPUParticles.flatness`. It's only used for 3D
    particles in `ParticlesMaterial`, and thus only relevant for
    `CPUParticles3D`.
2020-01-23 12:37:33 +01:00
Eric Rybicki
551c37167b Fix bone pose override not being reset when IK animation is stopped
Fixes #35409
2020-01-23 08:48:08 +01:00
PouleyKetchoupp
6c04c824bd Fixed Tween::start() with pending updates
Start was canceled instead of deferred in case of an update in progress.
Fixes #35441
2020-01-22 22:27:37 +01:00
Rémi Verschelde
4faaf6089a Remove unused #if 0'ed code 2020-01-21 21:41:54 +01:00
Eric Rybicki
41efc08532 Fix SkeletonIK not playing animation if more than one IK-Bone is active 2020-01-16 20:22:15 +01:00
Rémi Verschelde
a7f49ac9a1 Update copyright statements to 2020
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.
2020-01-01 11:16:22 +01:00
Andrii Doroshenko (Xrayez)
81db0e9274 Provide default Tween values for transition and easing types
TRANS_LINEAR and EASE_IN_OUT are chosen as defaults for
interpolation and follow methods.
2019-12-12 02:15:15 +02:00
Rafał Mikrut
ed1c4bc77d Removed unused variables, add some constants numbers 2019-12-10 05:13:02 +01:00
PouleyKetchoupp
598d769804 Handle state machine travel before the start node is processed
This change allows travel() to be called on AnimationNodeStateMachinePlayback during _ready(), before the start node has been processed and the state machine is considered playing.
2019-11-30 02:41:40 +01:00
Rafał Mikrut
99d8626f4a Fix some overflows and unitialized variables 2019-11-20 16:22:16 +01:00
Rafał Mikrut
9ddb3265e1 Fix some crashes, overflows and using variables without values 2019-11-01 16:16:31 +01:00
Mark Riedesel
d0b528e4a8 Fix Tween follow_property finishing with null 2019-10-23 16:38:43 -04:00
Hugo Locurcio
aba157865a
Add missing semicolons to BIND_ENUM_CONSTANT macro uses 2019-10-02 09:57:12 +02:00
Rémi Verschelde
dec10dd776
Merge pull request #32051 from qarmin/some_error_explanation
Added some obvious errors explanations
2019-09-25 11:51:54 +02:00
qarmin
17732fe698 Added some obvious errors explanations 2019-09-25 10:28:50 +02:00
Rémi Verschelde
159470df08
Merge pull request #32275 from godotengine/skin_support
Added skin support and simplified APIs to override bone position + glTF 2.0 import fixes
2019-09-23 15:02:15 +02:00
luz.paz
91ecd7b6a6 Fix misc. source comment typos
Found using `codespell -q 3 -S ./thirdparty,*.po -L ang,ba,cas,dof,doubleclick,fave,hist,leapyear,lod,nd,numer,ois,paket,seeked,sinc,switchs,te,uint -D ~/Projects/codespell/codespell_lib/data/dictionary.txt `
2019-09-19 14:36:52 -04:00
Juan Linietsky
d81ddaf33e Added skin support and simplified APIs to override bone position. 2019-09-18 19:46:32 -03:00
shaderbeast
5e337b31eb Added is_inside_tree() check in both Timer and Tween
Tween now throws error and doesnt even execute.
2019-09-03 13:26:41 +02:00
Robin Hübner
4817595c0e
fix otherwise unitialized variables, found in #31694 2019-08-27 17:13:08 +02:00
Unknown
9d849c21cc fix animation freeze when playing animation from another AnimationPlayer
Donated by IMVU, Inc.

Fixes #31410
When we create an animation player with an animation from which we will start another AnimationPlayer's animation at the moment when that animation is already active - it will  be stopped.  When starting an animation with play() func all the 'outside' animations for animation player were removed (`_stop_playing_caches` func). This pr prevents this behaviour for the case when play is called for animation that's still active. This way the behaviour is the same between "Animation Playback track" and other tracks (tested with value track)
2019-08-19 13:51:08 +02:00
IAmActuallyCthulhu
82b9557803
Remove redundant author doc comments 2019-08-12 04:26:38 -05:00
Tomasz Chabora
af5e0fff66 Remove ERR_EXPLAIN from scene/* code 2019-08-09 13:54:52 +02:00
Rémi Verschelde
ba541bceca
Merge pull request #31077 from qarmin/coverity_bugs
Change some code proposed by Coverity and Cppcheck
2019-08-07 13:49:33 +02:00
qarmin
e0b5b21863 Add some code changes/fixes proposed by Coverity and Clang Tidy 2019-08-07 12:54:30 +02:00
PouleyKetchoupp
aaad50e4d9 Fixed AnimationTreeStateMachine transition priority (last transition was always chosen instead of least cost)
Fixes #31132
2019-08-06 23:27:25 +02:00
Hugo Locurcio
ff7184c5cb
Improve the node configuration warning display
- Refer to properties explicitly when possible
- When multiple warnings are returned, always separate them by one
  blank line to make them easier to distinguish
- Improve grammar and formatting
2019-07-09 00:18:00 +02:00
Bojidar Marinov
f7dad789e9
Fix various memory leaks and errors 2019-07-02 17:23:54 +03:00
qarmin
4e5310cc60 Some code changed with Clang-Tidy 2019-06-26 15:08:25 +02:00
Rémi Verschelde
8591691b9b
Merge pull request #24249 from zorbathut/zorbathut/animimmediate
Implement AnimationPlayer call modes as per #23498.
2019-06-20 13:04:34 +02:00
JohnJLight
38d3bfe971 Made use of semicolons more consitent, fixed formatting 2019-06-19 15:24:31 +02:00
Rémi Verschelde
66a854da78
Merge pull request #29878 from Dentrax/fixes
Added ERR_FAIL checks for `Animation::track_set_key_value` and `AnimationNodeStateMachine::remove_node`
2019-06-19 14:18:52 +02:00
Furkan Türkal
09907a28b3 added forgotten err_fail_index check 2019-06-19 13:07:18 +03:00
Rémi Verschelde
40f2480d0e
Merge pull request #29621 from DevinPentecost/feature/0_duration_tween
Implementing 0-duration tweens
2019-06-14 16:57:09 +02:00
Devin Pentecost
265eaf1a2c Implementing 0-duration tweens
Some light refactor
Adding comments in functions
2019-06-14 07:20:13 -07:00
Rémi Verschelde
971b5160c6
Merge pull request #29306 from qarmin/small_code_fixes
Small fixes to unrechable code, possibly overflows, using NULL pointers
2019-06-12 12:49:21 +02:00
Rémi Verschelde
6d16f2f053 Fix error macro calls not ending with semicolon
It's not necessary, but the vast majority of calls of error macros
do have an ending semicolon, so it's best to be consistent.
Most WARN_DEPRECATED calls did *not* have a semicolon, but there's
no reason for them to be treated differently.
2019-06-11 14:49:34 +02:00
qarmin
8245db869f Small fixes to unrechable code, possibly overflows, using NULL pointers 2019-06-03 21:52:50 +02:00
qarmin
66a36ba474 Fix some unincialised variables 2019-05-28 19:12:19 +02:00
Rémi Verschelde
c088386c5b
Merge pull request #29109 from RandomShaper/fix_onion_skinning
Fix onion skinning
2019-05-23 07:58:27 +02:00
Pedro J. Estébanez
88153fbb61 Fix 2D bones ignored by onion skinning
Fixes #27819.
2019-05-22 20:40:57 +02:00
Guilherme Felipe
4de6c94eb0 [StateMachine] Fix error message for travel method 2019-05-19 23:43:26 -03:00
Rémi Verschelde
e0574e1d98 Fix typos with codespell
Using codespell 1.15.0.

Method:
```
$ cat > ../godot-word-whitelist.txt << EOF
ang
curvelinear
doubleclick
leapyear
lod
merchantibility
nd
numer
ois
ony
que
seeked
synching
te
uint
unselect
webp
EOF

$ codespell -w -q 3 -I ../godot-word-whitelist.txt --skip="./thirdparty,*.po"
$ git diff // undo unwanted changes
```
2019-05-19 13:10:35 +02:00
Rémi Verschelde
9dc9434b1b
Merge pull request #24437 from mateusfccp/single_quotes_option
Add settings for single-quotes on completion
2019-04-30 14:58:33 +02:00
Rémi Verschelde
36a54ffebb
Merge pull request #27577 from guilhermefelipecgs/continuation_of_27562
Continuation of #27562
2019-04-21 13:16:35 +02:00
Max Hilbrunner
7a0c086e45
Merge pull request #27762 from rcorre/anim_docs
AnimationNode* docs
2019-04-16 15:47:47 +02:00
Rémi Verschelde
2feec990e7
Merge pull request #27887 from godotengine/AndreaCatania-patch-1
Added No bone set state in the IK
2019-04-11 09:42:56 +02:00
Rémi Verschelde
2d67eaf2c3
Merge pull request #27917 from volzhs/init_autorestart_random_delay
Set initial value for autorestart_random_delay of AnimationNodeOneShot
2019-04-11 09:35:23 +02:00
volzhs
eea3bddd1d Set initial value for autorestart_random_delay of AnimationNodeOneShot 2019-04-11 14:56:38 +09:00
PouleyKetchoupp
66e07a2ec6 Fixes caches_cleared signal discrepancies in AnimationTree (fixes #25460) 2019-04-10 16:25:18 +02:00
Andrea Catania
f65fde73da
Added No bone set state in the IK
The problem is that initially the root bone was not set, and you didn't know that because the "no set" state was missing. Now I've added it. https://github.com/godotengine/godot-docs/issues/2333
2019-04-10 07:50:09 +02:00
Rémi Verschelde
c8994b56f9 Style: Apply new changes from clang-format 8.0
It seems to stay compatible with formatting done by clang-format 6.0 and 7.0,
so contributors can keep using those versions for now (they will not undo those
changes).
2019-04-09 17:09:48 +02:00
Ryan Roden-Corrent
584288a32c
Fill out some of the AnimationNode docs.
The API docs for various animation nodes are pretty empty, yet the
tutorial at
https://docs.godotengine.org/en/latest/tutorials/animation/animation_tree.html
contains some details.

These details should be included in the API docs so looking up a
particular class actually provides some information rather than
requiring the user to hunt for a different tutorial.

This also links the AnimationTree tutorial and demo in the docs.
I've found the TPS demo to be the best resource so far for learning
how to use the AnimationTree. This should be easy to find if someone
looks up the AnimationTree API docs.

Finally, this fixes a param typo in AnimationNodeStateMachine.
2019-04-09 10:49:21 -04:00
PouleyKetchoupp
dafd7768ab Fixed uninitialized xfade in AnimationNodeTransition 2019-04-08 17:13:30 +02:00
Guilherme Felipe
dbda5b6700 Continuation of #27562
[AnimationTree] Fix scale interpolation
2019-04-05 15:41:37 -03:00
Rémi Verschelde
b2fcb40522
Merge pull request #27233 from Chaosus/tween_signal
Added signal for Tween emitted at full completion
2019-04-05 15:42:18 +02:00
Chaosus
a19e99aacb Added signal for Tween emitted at completion 2019-04-03 10:35:26 +03:00
Guilherme Felipe
45d97b9860 Fix wrong blend of animation tree
Interpolation cannot use zero values, must use the values from the
animation to be blended.
2019-03-31 17:12:24 -03:00
Guilherme Felipe
d35eae166c StateMachine: Fix sync mode 2019-03-17 10:12:27 -03:00
Juan Linietsky
c00429c33b Removed some prints 2019-03-02 12:15:48 -03:00
Rémi Verschelde
16934c7411
Merge pull request #26068 from luizcarlos1405/master
Fix AnimationPlayer jumping to the beggining after ending on editor.
2019-02-20 22:30:41 +01:00
Luiz
e27bbb075a Fix AnimationPlayer jumping to the beggining after ending on editor. 2019-02-20 14:58:53 -04:00
marxin
8d51618949 Add -Wshadow=local to warnings and fix reported issues.
Fixes #25316.
2019-02-20 19:44:12 +01:00
Luiz
5ec4f14a24 Fix AnimationPlayer bug where it wouldn't reset its position when finished 2019-02-14 15:32:29 -03:00
Juan Linietsky
4a24ba6e77 -Fixes to undo redo to avoid crash, closes #24251
-Changed Animation to have a special signal when tracks are changed, to avoid unnecesary track cache rebuilds in AnimationPlayer
-Added missing emit_changed whe modifying keys to Animation
-Changed AnimationPlayer to use the new refcounted connections instead of the previous hacky way to keep references
-Changed AnimationEditor to update the current track when keys are edited
-Fixed bug where undo/redo did not work with AnimationKeyEdit (was not being updated)
-Made sure UndoRedo does not mind deleted objects in undo/redo history, this would corrupt the history or clear it without need.
2019-02-14 10:22:34 -03:00
Luiz
06a0a29711 Fix some AnimationPlayer bugs and update documentation 2019-02-13 14:40:22 -03:00
Guilherme Felipe
67eda1d4dd Fix state machine priority for auto advance 2019-02-12 15:57:26 -02:00
Rémi Verschelde
13c50e8aa5
Merge pull request #25481 from hpvb/fix-ubsan-asan-reports
Fix many asan and ubsan reported issues
2019-02-12 12:21:01 +01:00
Hein-Pieter van Braam
37aa06bf8a When an animationplayer sets a property on itself recreate the caches
this fixes #25507
2019-02-01 16:15:39 +01:00
Hein-Pieter van Braam
d308eb091a Fix many asan and ubsan reported issues
This allows most demos to run without any ubsan or asan errors. There
are still some things in thirdpart/ and some things in AudioServer that
needs a look but this fixes a lot of issues. This should help debug less
obvious issues, hopefully.

This fixes #25217 and fixes #25218
2019-01-30 06:43:56 +01:00
Juan Linietsky
70d6d0fa69 Fix problem blending from state to state in statemachine node, closes #21944 2019-01-27 15:21:54 -03:00
Rémi Verschelde
c3b0ee5941 Fix code style issues 2019-01-26 22:35:31 +01:00
Juan Linietsky
b3335e943b Implement missing autorestart in oneshot node, closes #22238 2019-01-25 18:15:29 -03:00
Juan Linietsky
c743da100d Avoid crashing in #23302 2019-01-25 09:09:32 -03:00
Rémi Verschelde
769341e180 Cleanup after @reduz :)
Fixes #25172.
2019-01-21 11:12:55 +01:00
Rémi Verschelde
053d7f3765 Fix some errors found by static analysis
Fixes items 10, 16 and 19 from PVS-Studio blog post
in #24014.
2019-01-16 10:59:45 +01:00
Juan Linietsky
2cd15849f9 Fixes to auto triangle editing in BlendSpace2D 2019-01-10 21:40:46 -03:00
volzhs
153a3146d0 AnimationNodeTransition name begins from 0
and added "state" string for default name not to confuse it as number
2019-01-09 14:44:41 +09:00
Rémi Verschelde
b16c309f82 Update copyright statements to 2019
Happy new year to the wonderful Godot community!
2019-01-01 12:58:10 +01:00
Mateus Felipe C. C. Pinto
ca1935d6f7 Add settings for single-quotes on completion 2018-12-18 12:48:36 -02:00
Guilherme Felipe
4c5548e06e Fix sub-transitions not using end_node correctly
Fix #22389
2018-12-16 23:40:41 -02:00
Rémi Verschelde
de264a8199
Merge pull request #22739 from DualMatrix/autoplay_warn
Added warning when setting autoplay of AnimationPlayer that's inside the tree.
2018-12-12 16:10:59 +01:00
Ben Rog-Wilhelm
1180110b9e Implement AnimationPlayer call modes as per #23498. 2018-12-09 20:44:22 -08:00
Michael Alexsander Silva Dias
a491824ec0 Warn about AnimationTreePlayer's deprecation 2018-12-09 12:39:37 -02:00
DualMatrix
0cc8a3b9a6 Made it possible to read AnimationPlayer queue from GDscript 2018-11-28 01:43:34 +01:00
Rémi Verschelde
f30745bd85 Fixup to typo and indentation in 81c86e8 2018-11-26 11:21:06 +01:00
Juan Linietsky
81c86e8047 Improved bindings and added documentation for AnimationNode, closes #20720 2018-11-25 16:57:23 -03:00
Juan Linietsky
9018e8b132 Add Discrete and Carry blend modes for BlendSpace2D, allows to fix #20135 2018-11-21 16:07:24 -03:00
Andrea Catania
a837c33442 Added possibility to override or add target basis to tip bone 2018-11-20 13:57:16 +01:00
Rémi Verschelde
173b342ca7 Remove trailing whitespace
With `sed -i $(rg -l '[[:blank:]]*$' -g'!thirdparty') -e 's/[[:blank:]]*$//g'`
(+ manual revert of some thirdparty code under `platform/android`).
2018-11-20 11:15:02 +01:00