diff options
author | reduz <reduzio@gmail.com> | 2021-10-21 13:38:20 -0300 |
---|---|---|
committer | reduz <reduzio@gmail.com> | 2021-10-25 14:34:00 -0300 |
commit | d03b7fbe090dca1f9ea4190116ac0efbee37e929 (patch) | |
tree | 5d7db71d15925908cf87483526e6716cba0bef65 /scene/3d/sprite_3d.cpp | |
parent | 5ff0624a073fe580b7f26b94f6e242462b67bc2a (diff) | |
download | redot-engine-d03b7fbe090dca1f9ea4190116ac0efbee37e929.tar.gz |
Refactored Node3D rotation modes
* Made the Basis euler orders indexed via enum.
* Node3D has a new rotation_order property to choose Euler rotation order.
* Node3D has also a rotation_mode property to choose between Euler, Quaternion and Basis
Exposing these modes as well as the order makes Godot a lot friendlier for animators, which can choose the best way to interpolate rotations.
The new *Basis* mode makes the (exposed) transform property obsolete, so it was removed (can still be accessed by code of course).
Diffstat (limited to 'scene/3d/sprite_3d.cpp')
-rw-r--r-- | scene/3d/sprite_3d.cpp | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/scene/3d/sprite_3d.cpp b/scene/3d/sprite_3d.cpp index 349a534680..90af70e7c2 100644 --- a/scene/3d/sprite_3d.cpp +++ b/scene/3d/sprite_3d.cpp @@ -743,6 +743,8 @@ void Sprite3D::_validate_property(PropertyInfo &property) const { if (property.name == "frame_coords") { property.usage |= PROPERTY_USAGE_KEYING_INCREMENTS; } + + SpriteBase3D::_validate_property(property); } void Sprite3D::_bind_methods() { @@ -1015,6 +1017,8 @@ void AnimatedSprite3D::_validate_property(PropertyInfo &property) const { } property.usage |= PROPERTY_USAGE_KEYING_INCREMENTS; } + + SpriteBase3D::_validate_property(property); } void AnimatedSprite3D::_notification(int p_what) { |