Commit Graph

314 Commits

Author SHA1 Message Date
smix8 eb00a8546d Split Node3DEditorViewport into a dedicated file
Splits `Node3DEditorViewport` into a dedicated file.

The main `Node3DEditorPlugin` file was one if the biggest files of the entire engine. It was getting way too big to be viewed, parsed and displayed effectively (e.g. GitHub, certain IDEs). While still big after this PR it at least splits it more or less in half.

- Moves `Node3DEditorViewport` and related helper classes to its own file `node_3d_editor_viewport` file.
- Moves the (shared) constexpr to its own file `node_3d_editor_constants` file.
- Forward declares many more classes.
- Removes unnecessary includes.
- Fixes classes that needed the actual Node3DViewport class.
2026-06-19 17:30:50 +02:00
Thaddeus Crews bbeb4a2557 Merge pull request #119176 from ryevdokimov/lock-transform
Fix 3D transform gizmo visibility after node lock/unlock
2026-06-18 15:14:19 -05:00
Thaddeus Crews 32159caaf4 Merge pull request #117849 from WoodWood1299/nonresizable-confirmation-dialogue
Editor: Fix accept/confirmation dialogs being resizable
2026-06-18 15:14:02 -05:00
ryevdokimov d92a1acc36 Fix trackball when use local space is enabled 2026-06-07 11:32:31 -04:00
kobewi 98bb65ec8f Fix MeshLibrary editor typo 2026-05-29 23:10:05 +02:00
Thaddeus Crews 42f577b0c3 Merge pull request #119561 from ryevdokimov/finish-subgizmo
Call `finish_transform` on 3D subgizmo commit to reset rotation state
2026-05-19 11:18:20 -05:00
ryevdokimov 9e8268f181 Call finish_transform on 3D subgizmo commit to reset rotation state 2026-05-19 06:04:54 -04:00
Thaddeus Crews b077c20bf2 Merge pull request #118738 from EdwardChanCH/fix_3d_snap_precision
Fix 3D grid snap precision to use `default_float_step`
2026-05-18 11:06:28 -05:00
Thaddeus Crews 0d5268d9a4 Merge pull request #115911 from KoBeWi/can_commit_pls👉👈
Expose `_can_commit_handle_on_click()`
2026-05-14 09:06:49 -05:00
ryevdokimov fffd9e7ae9 Add undo/redo support for Pilot Mode camera movement 2026-05-11 05:02:44 -04:00
João Diniz 0046f29e63 Editor: Mark simple confirmation/accept dialogs as non-resizable
Adds set_flag(FLAG_RESIZE_DISABLED, true) to ConfirmationDialog and
AcceptDialog instances which only contain plain content. Dialogs
with content that could leave the borders of the dialog were kept
as resizable.

The flag is set explicitly at dialog creation time, instead of the
previous auto-detect approach. In cases of uncertainty, the dialog was
left as resizable.
2026-05-10 01:35:46 +01:00
Michael Alexsander 70b9574785 Fix some issues with 3D view manipulation 2026-05-06 17:09:14 -03:00
ryevdokimov 363c95ce13 Fix 3D transform gizmo visibility after node lock/unlock 2026-05-02 16:06:01 -04:00
Thaddeus Crews 4d5f164559 Merge pull request #118758 from ryevdokimov/fix-preview-camera
Fix `_forward_3d_gui_input` passing editor camera instead of previewed camera
2026-04-29 12:28:58 -05:00
Thaddeus Crews dec7cdb31b Merge pull request #118985 from migueldeicaza/skeleton-regression-fix-118663
Fix `ERROR: Camera is not inside scene` when closing/reloading the editor with a `Skeleton3D` node selected
2026-04-29 12:28:47 -05:00
Miguel de Icaza 2dc9fdf5d4 This fixes a regression in the Skeleton3D editor that was
introduced by previous fix for a crash in the editor in
https://github.com/godotengine/godot/pull/113631

This preserves the nature of the original fix, and also stops receiving events
the moment that it is no longer needed (addressing the ONE_SHOT difference).
2026-04-26 16:46:35 -04:00
Michael Alexsander d78f6960cc Fix MeshLibrary editor not updating correctly on certain cases 2026-04-24 10:53:31 -03:00
ryevdokimov f5957cae4a Fix _forward_3d_gui_input passing editor camera instead of previewed camera 2026-04-19 13:58:49 -04:00
Edward Chan 6fbd5f4318 Fixed 3D snap precision to use default_float_step. 2026-04-19 10:58:29 -04:00
Thaddeus Crews e2355e8e0b Merge pull request #118648 from YeldhamDev/meshlib_editor_focus_fix
Fix `MeshLibrary` editor taking priority over `GridMap` when it shouldn't
2026-04-16 21:46:56 -05:00
Michael Alexsander a76a7d83b4 Fix MeshLibrary editor taking priority over GridMap when it shouldn't 2026-04-16 12:51:06 -03:00
ryevdokimov 9f4c35ab4d Fix 3D viewport drag-translate triggering without mouse button held 2026-04-15 07:40:45 -04:00
Thaddeus Crews 90113707f2 Merge pull request #117887 from ryevdokimov/collision-vertex-snap
Add vertex snap to collision shape vertices in 3D editor
2026-04-14 15:44:30 -05:00
Thaddeus Crews 7ce1853014 Merge pull request #108219 from CookieBadger/area-light-integration
Add Rectangular Area Light Source
2026-04-14 07:10:56 -05:00
ryevdokimov c375f0b6b3 Add vertex snap to collision shape vertices in 3D editor 2026-04-10 13:33:31 -04:00
Thaddeus Crews 5708ad13a6 Merge pull request #117923 from ryevdokimov/follow-subgizmo
Reset follow mode count on subgizmo point switch
2026-04-10 10:32:28 -05:00
Thaddeus Crews ee441aa00a Merge pull request #117922 from ryevdokimov/subgizmo-vertex-snap
Add vertex snap support for subgizmo points
2026-04-10 10:32:27 -05:00
Thaddeus Crews a66b9ec3f1 Merge pull request #116156 from ryevdokimov/view-axis-gizmo-no-restart
Make changing `view_plane_rotation_gizmo_scale` not require editor restart
2026-04-08 09:25:44 -05:00
Thaddeus Crews c3afd5b8e1 Merge pull request #116238 from ryevdokimov/restore-polyline-arc
Restore `canvas_item_add_polyline` useage for transform gizmo rotation arc
2026-04-08 09:25:43 -05:00
Thaddeus Crews d223178c48 Merge pull request #116194 from ryevdokimov/fix-rotation-line
Fix rotation line not showing during instant rotate
2026-04-08 09:25:41 -05:00
Thaddeus Crews 0afbee0099 Merge pull request #116159 from ryevdokimov/fix-gizmo-handle-highlight
Immediately update transform gizmo handle highlight when changing tool modes
2026-04-06 13:02:26 -05:00
CookieBadger 7b7bd1dcea Add AreaLight3D 2026-04-04 01:37:10 +02:00
ryevdokimov fd5332c8e9 Fix 3D zoom indicator not showing in editor 2026-04-01 21:11:17 -04:00
Thaddeus Crews 94485a31d7 Merge pull request #117760 from YeldhamDev/focus_me_bones
Allow to navigate the "Bones" tree of `Skeleton3D` with the keyboard
2026-03-31 10:46:54 -05:00
Thaddeus Crews 0e3479a483 Merge pull request #116670 from migueldeicaza/skeleton3d-fix-validation
Fix a crash in the wild with drag and drop in the Skeleton3D editor.
2026-03-31 10:46:53 -05:00
Thaddeus Crews c708da3a2d Merge pull request #106785 from ryevdokimov/measure-tool-components
Add vector components to 3D ruler tool
2026-03-31 10:46:47 -05:00
Miguel de Icaza a459aedac3 Fix a crash in the wild with drag and drop in the Skeleton3D editor 2026-03-31 09:37:24 -05:00
ryevdokimov 59e6ff8cc5 Reset follow mode count on subgizmo point switch 2026-03-27 22:54:21 -04:00
ryevdokimov 2a11b31b50 Add vertex snap support for subgizmo points 2026-03-27 22:38:21 -04:00
StarryWorm 4ae336740d Add missing resource_*.h includes
Add missing `resource_importer.h` includes
Add missing `resource_loader.h` includes
Add missing `resource_saver.h` includes
2026-03-27 07:03:39 -04:00
LanzaSchneider 3be92694f0 fix: compile error with deprecated=no option 2026-03-25 14:05:53 +08:00
Rémi Verschelde 7484a2e256 Merge pull request #117730 from KoBeWi/no_edit_only_read
Properly handle readonly resources in shapes editors
2026-03-23 22:36:11 +01:00
Rémi Verschelde 9af848159b Merge pull request #117606 from danbolt/daniel-savage/update-snap-on-transform
Dynamically check for 3D editor snapping state
2026-03-23 22:35:16 +01:00
Rémi Verschelde 34e02d031f Merge pull request #117376 from YeldhamDev/new_mesh_library_editor
Create a proper editor for `MeshLibrary`
2026-03-23 22:34:34 +01:00
Rémi Verschelde 987c77f02f Merge pull request #116019 from ryevdokimov/save-viewport-splitter-ratio
Persist editor viewport splitter ratios on editor restart
2026-03-23 22:34:06 +01:00
Michael Alexsander d578e60fe0 Allow to navigate the "Bones" tree of Skeleton3D with the keyboard 2026-03-23 16:42:53 -03:00
kobewi ce2f416e82 Properly handle readonly resources in shapes editors 2026-03-22 16:16:56 +01:00
Michael Alexsander c766fb1ce8 Create a proper editor for MeshLibrary 2026-03-21 11:16:26 -03:00
Daniel Savage 5baffba0fe Editor: Poll snapping state when updating a transform 2026-03-20 10:09:51 +09:00
Lukas Tenbrink 05c33acbb1 Make memnew(RefCounted) return Ref, to force callers to take ownership of it through a reference. 2026-03-18 20:34:08 +01:00