Commit Graph

91 Commits

Author SHA1 Message Date
399bce02cf Fix 3D top_level resetting
There is no need to erase the top_level flag on EXIT_TREE.
During ENTER_TREE, `top_level = true` is not necessary, because it is
already set to true.
2023-06-22 18:58:29 +02:00
d63794d466 Merge pull request #77629 from GameDevLlama/bugifx/issue-50813
Fix non-functional Node3D `top_level` property
2023-06-18 16:30:42 +02:00
20e8189f5d Fix non functional Node3D op_level property
Fixes #50813.
2023-06-18 15:01:01 +02:00
dcd2b883eb Use NULL instead of COND checks when appropriate
Restricted to scene
2023-06-10 08:56:30 +02:00
5fdc1232ef Add the ability to look-at in model-space.
This is a much simpler attempt to solve the same problem as #76060, but without breaking any compatibility.

* Adds a description of what model space is in the Vector3 enums (MODEL_* constants). This has the proper axes laid out for imported 3D assets.
* Adds the option to `look_at` using model_space, which uses Vector3.MODEL_FRONT as forward vector.

The attempt of this PR is to still break the assumption that there is a single direction of forward (which is not the case in Godot)
and make it easier to understand where 3D models are facing, as well as orienting them via look_at.
2023-05-24 10:10:24 +09:00
50cf3d6966 Optimize threading-sensitive node data for single-threaded processing 2023-05-17 02:04:41 +02:00
0a9f72d5a8 Make more base nodes thread safe
Ongoing work to make more of the base nodes thread safe.
2023-05-15 16:54:10 +02:00
3579d7a9f7 Merge pull request #36301 from KoBeWi/daddy_node
Add reparent methods to Node
2023-01-07 13:20:56 +01:00
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
80b578b060 Restore 'rotation_degrees' properties.
By popular demand, restoring the helper properties to rotate objects in degrees.
Affected are local and global rotations for:

* Node2D
* Node3D
* Control
2022-12-19 10:59:47 +01:00
f6ae2f2fd5 Use ObjectID as argument when referred-calling _request_gizmo
Fixes crash on project launch.
2022-12-10 18:52:10 +08:00
9225eb461e Unify Node3D RotationOrder with global EulerOrder 2022-11-02 17:46:03 -05:00
8556fdd4bc Move EulerOrder enum to math_defs.h and global scope 2022-11-02 13:44:13 -05:00
7f9a8c99c9 Clean up Basis from Euler code 2022-10-21 17:54:49 -05:00
094e8db97c Fix hide_slider vs no_slider inconsistency in editor property code 2022-10-03 13:40:31 -05:00
c080b9dc05 Fail look_at() if not inside tree 2022-09-29 13:34:28 +02:00
c00c29a136 Expose NOTIFICATION_LOCAL_TRANSFORM_CHANGED 2022-09-19 13:43:46 +01:00
f7292dbeb3 Rename or_lesser range property hint to or_less
"less" should be used for quantity, rather than "lesser".

Existing scripts that use `or_lesser` in `_get_property_list()`
will need to be updated to account for this change.
2022-09-02 19:08:20 +02:00
15d057c521 Add is_zero_approx methods to Vector2, 3, and 4 2022-09-02 00:29:50 -04:00
2961651444 Merge pull request #64691 from TokageItLab/Quaternion-editor 2022-08-24 18:36:54 +02:00
673c649adb Implement Quaternion Editor 2022-08-24 22:04:49 +09:00
1abdffe7a0 Replace Array return types with TypedArray 2 2022-08-23 23:21:32 +02:00
1a24c9e14b Make _validate_property a multilevel method 2022-08-22 18:35:11 +03:00
980f5f32f4 Make property_*_revert methods multilevel and expose them for scripting 2022-08-18 00:03:53 +03:00
2bdd7e9ea0 Add methods for node reparenting 2022-08-16 19:44:41 +02:00
2bf9e6090c rename translate(d) to translate(d)_local in Transform 2D/3D 2022-07-16 11:47:54 +02:00
8b16a4131f Add global_position and global_rotation to Node3D 2022-07-01 10:27:07 -04:00
c79aad0257 Merge pull request #62396 from reduz/fix-local-vector-transitions-in-node3d
Fix VECTOR/LOCAL transitions in Node3D
2022-06-27 21:45:02 +02:00
7acf697479 Fix VECTOR/LOCAL transitions in Node3D
Fixes #62225, supersedes #62227
2022-06-27 13:45:35 +02:00
dd3de622d8 Merge pull request #62372 from MarcusElg/nosliderrename
Rename @export_range's noslider option to no_slider
2022-06-25 14:03:44 +02:00
14f9fbfed8 Revert "Refactored rotation_mode in Node3D" 2022-06-25 09:44:25 +02:00
4880b86f07 fix set_position() 2022-06-25 06:17:41 +09:00
6c1ac9f3be Rename export_range's noslider option to no_slider 2022-06-24 10:45:34 +02:00
51c884f7ac fix method when rotation_mode changed 2022-06-23 16:55:16 +09:00
5553e27fe8 Add vector value linking
Co-authored-by: redlamp <244062+redlamp@users.noreply.github.com>
2022-06-14 14:58:44 +02:00
5dc3bfb80e Use suffixes for units in nodes and resources 2022-05-19 14:34:27 -05:00
6b981bf12b Defer group calls in Node3D 2022-05-18 16:10:03 +02:00
f8cc2e054d Ensure gizmos are added to newly created Node3D-derivatives and silence error for attempting to create gizmos twice 2022-04-13 04:39:01 +01:00
0f5455230c Use switch consistently in _notification (scene folder) 2022-02-15 18:44:55 +01:00
8a0a3accee simplify formatting scripts, add a clang-tidy script, and run clang-tidy 2022-01-29 04:41:03 -06:00
80187b77a9 Node2D/Node3D: Fix Undraggable Position Property. 2022-01-25 00:52:11 +05:45
726fbb821b Fix incorrect default transform values on foreign 3D nodes 2022-01-06 15:52:22 +00:00
6af77c7b09 Merge pull request #53684 from TokageItLab/orthogonal-mode 2022-01-05 16:05:40 +01:00
805155e2f6 Minor code improvements in Node3D. Refactor Node3D::show/hide/set_visible to a shared implementation. 2022-01-04 23:22:49 +01:00
fe52458154 Update copyright statements to 2022
Happy new year to the wonderful Godot community!
2022-01-03 21:27:34 +01:00
61759da5b3 Fix some gizmo behavior to make more consistent 2021-12-25 03:24:04 +09:00
e078f970db Rename remove() to remove_at() when removing by index 2021-11-23 18:58:57 -07:00
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
0ae65472e7 clang-format: Enable BreakBeforeTernaryOperators
clang-format keeps breaking the way it handles break *after* ternary operators,
so I give up and go with the only style they seem to actually test.
2021-10-28 15:57:41 +02:00
3a6be64c12 clang-format: Various fixes to comments alignment from clang-format 13
All reviewed manually and occasionally rewritten to avoid bad auto formatting.
2021-10-28 15:43:36 +02:00