Commit Graph

677 Commits

Author SHA1 Message Date
Yuri Rubinsky 52889ab7ee [Scene] Add SceneStringName::toggled 2024-08-28 15:14:26 +03:00
Rémi Verschelde 35be8acf60
Merge pull request #96199 from SaracenOne/ownerless_node_crashfix
Fix crash when selecting ownerless 3D node.
2024-08-28 09:45:44 +02:00
Saracen 279ccd6d32 Fix crash when selecting ownerless 3D node. 2024-08-28 04:35:46 +01:00
Robert Yevdokimov 67dfbc0816 Save the state of view transform gizmo option 2024-08-27 19:16:43 -04:00
Rémi Verschelde 48645f3d70
Merge pull request #87793 from ryevdokimov/hide-transform-gizmo
Add ability to hide editor transform gizmo
2024-08-28 00:10:32 +02:00
Rémi Verschelde 109203d472
Merge pull request #85331 from RobProductions/customize-navigation-controls
Add full customization of 3D navigation controls
2024-08-28 00:10:19 +02:00
bruvzg fba7ad8c7b
Remove spaces and punctuation from the beginning of translatable strings. 2024-08-22 20:51:13 +03:00
tetrapod00 080acd7246 Remember "View Grid" (per-viewport) setting between editor sessions 2024-08-20 15:59:07 -07:00
Rémi Verschelde 93fe5c6598
Merge pull request #94553 from juanjp600/gizmo-bvh
Fix gizmos without visible geometry not being selectable
2024-08-19 16:05:11 +02:00
Rémi Verschelde 80933392f3
Merge pull request #87135 from ryevdokimov/do-not-apply-material-on-ui-cancel
Clear drag preview material on `NOTIFICATION_DRAG_END`
2024-08-19 16:04:28 +02:00
oeelis bf9fdc5b96
Ignore locked nodes when click selecting in 3d editor
When selecting 3d nodes with a single click, the node closest to the
camera is selected. If the closest node was locked, it would block the
selection, even when there was unlocked nodes behind the locked node.

This PR replaces the `_select_ray` method call used to find the closest
node with the similar `_find_items_at_pos` method, which can skip any
locked nodes.

Fixes #84764
2024-08-19 14:56:02 +02:00
Rémi Verschelde a7200cedbc
Merge pull request #95154 from jsjtxietian/quit-freelook
Fix Pressing Escape doesn't exit freelook in the 3D editor
2024-08-17 00:45:57 +02:00
Rémi Verschelde 45342d06a6
Merge pull request #95420 from TokisanGames/fix-crash-selecting-notdescendant
Fix crash by ensuring selected node is a descendant of the edited scene
2024-08-16 14:34:15 +02:00
Rémi Verschelde f02e89bd04
Merge pull request #93869 from MajorMcDoom/ortho-grids
Make viewport grid visible on all three planes in ortho camera view
2024-08-16 14:32:06 +02:00
Rémi Verschelde 3ba9f4304e
Merge pull request #95402 from MajorMcDoom/rotation-gizmo-fix
Correct rotation gizmo plane math for off-center perspective view
2024-08-16 10:35:51 +02:00
Rémi Verschelde 12eb1436f4
Merge pull request #92734 from lawnjelly/faster_editor_grid4
Optimize Editor `_init_grid()`
2024-08-16 10:33:53 +02:00
Cory Petkovsek b1a45d9487 Ensure selected node is a descendant of the edited scene 2024-08-13 12:08:47 +07:00
Zi Ye 1fc8255355 Corrected rotation gizmo plane math for off-center perspective view. 2024-08-11 14:19:23 -05:00
jsjtxietian 78dc310103 Fix Pressing Escape doesn't exit freelook in the 3D editor 2024-08-07 11:11:28 +08:00
Rémi Verschelde e2be29c2a9
Merge pull request #93404 from TokisanGames/fix-empty-scene-crash
Fix crash in Node3DEditorViewport selecting on empty scene
2024-07-31 16:13:12 +02:00
Juan Pablo Arce 45f6110e26 Fix gizmos without visible geometry not being selectable
The issue was that Node3DEditorViewport was using the render server's BVH to filter out nodes,
which is not correct for gizmos that have no renderable components,
or have collision triangles that exceed the bounds of their renderable components.
2024-07-21 13:56:13 -03:00
Mikael Hermansson c9e0532bc2 Fix "selectable nodes at position clicked" feature in 3D editor 2024-07-15 13:14:57 +02:00
Eric allen e03fb3043f fix: change esthetic -> aesthetic 2024-07-05 16:03:01 -04:00
Zi Ye 72a01816a4 Make viewport grid visible on all three planes in ortho camera view 2024-07-02 13:07:31 -05:00
Matt Enad 9d343ced58 Add customizable 3D navigation settings
This commit adds 3 new editor settings for orbit, pan, and zoom mouse buttons, and 6 new shortcuts which act as modifiers for the navigation controls. These new shortcuts replace the old orbit, pan, and zoom modifier settings.

The `navigation_scheme` setting now acts as a preset which changes the new options added above, and the new settings are what drives 3D navigation instead. A new struct is used for ordering the navigation logic so that actions with fewer shortcuts are checked first. When the editor starts, the preset detection will run to automatically update user settings from old Godot versions. When the setting is changed, the hint values for the mouse buttons are dynamically updated to show the user the corresponding shortcut values.

The new doc fields have been generated and the description for the new settings are filled out. The `navigation_scheme` entry now has more consistent styling and added control descriptions that were missing before.
2024-07-02 12:37:57 -04:00
passivestar 4201c7d75f Make the frame time and info boxes have same margins 2024-06-29 16:34:08 +04:00
Robert Yevdokimov c9e9bd4a68 Add ability to Hide Editor Transform Gizmo 2024-06-27 21:01:15 -04:00
Hugo Locurcio 6932630c02
Add alternative shortcut for Align Transform to View in the 3D editor
The new shortcut is Ctrl + Alt + Numpad 0 and is the one listed
in the 3D viewport's Perspective menu (since PopupMenu accelerators
display the first shortcut only). This shortcut matches Blender
and avoids conflicts with the GeForce Experience overlay, which
defaults to Ctrl + Alt + M.

Ctrl + Alt + M is still defined as an alternative default,
so that existing workflows are not impacted.
2024-06-27 20:34:28 +02:00
passivestar a9ef6cd418 Improve viewport rotation gizmo drawing 2024-06-26 23:33:24 +04:00
passivestar 83078715ca Add missing style overrides for viewport overlay buttons 2024-06-20 22:28:45 +04:00
Cory Petkovsek 1780f28407 Fix crash when drawing a selection box on an empty scene with certain plugins 2024-06-21 00:18:34 +07:00
Rémi Verschelde 4949e96b0b
Merge pull request #91845 from ryevdokimov/disable-freelook-when-drag-and-drop
Disable viewports inputs when dragging and dropping into the viewport
2024-06-19 10:53:17 +02:00
A Thousand Ships fbb879debd
[Scene] Add `SceneStringNames::text/value_changed` 2024-06-19 09:44:38 +02:00
A Thousand Ships ca18a06ecb
[Scene] Add `SceneStringNames::confirmed` 2024-06-19 09:40:54 +02:00
A Thousand Ships d519715d94
[Scene] Add `SceneStringNames::font(_size/_color)` 2024-06-18 17:24:27 +02:00
rune-scape 6adcb1373a fix missing cleanup and null checks for various singletons 2024-06-18 01:05:30 -07:00
Rémi Verschelde bb8fe430fe
Merge pull request #90098 from viksl/fix-instant-rotation-and-return-wrapping
Allow wrapping for begin rotate transformation to bring it in line with Blender.
2024-06-17 10:57:57 +02:00
lawnjelly e71b3a75e4 Optimize Editor `_init_grid()`
Use static `LocalVectors` instead of `Vectors` for temporaries.
2024-06-13 11:51:32 +01:00
bruvzg 5168647530
Use current mouse button state instead of saved values. 2024-05-31 15:50:14 +03:00
Rémi Verschelde 9c87e8c7b4
Merge pull request #91953 from AThousandShips/use_normal_sname
Use `CoreStringNames::normal` in more places
2024-05-31 14:16:05 +02:00
A Thousand Ships cade5b88d9
Use `CoreStringNames::normal` in more places 2024-05-30 22:57:54 +02:00
A Thousand Ships 926afccbd8
[Scene] Add `SceneStringNames::panel` 2024-05-30 22:54:50 +02:00
A Thousand Ships 755a0efbb6
[Scene] Add `SceneStringNames::id_pressed` 2024-05-30 22:54:04 +02:00
Rémi Verschelde 25b17bd245
Merge pull request #92188 from SaracenOne/ownerless_node_select
Disallow selection of ownerless nodes
2024-05-28 15:48:54 +02:00
Saracen 596026a1ee Disallows selection of ownerless nodes:
Attempts to select first node owned by the edited scene instead.
2024-05-28 11:13:40 +01:00
Hugo Locurcio 60084dcc2c
Prevent label width from flickering rapidly in editor frametime panel
This also improves the background display by drawing a single background
for all 3 labels. This avoids visible corners between each label.
2024-05-23 20:50:25 +02:00
kobewi e065d7132a Remove duplicate shortcut definitions 2024-05-21 23:28:49 +02:00
Haoyu Qiu e5c321448e Create AudioStreamPlayer when dropping AudioStream
- Create AudioStreamPlayer if dropped in between nodes in the Scene dock
- Create AudioStreamPlayer2D if dropped into 2D editor
- Create AudioStreamPlayer3D if dropped into 3D editor
2024-05-19 20:26:04 +08:00
Rémi Verschelde b201c7fc13
Merge pull request #91874 from Nodragem/editor-scene-drag-and-drop-default
Change default parenting behavior when drag-and-dropping to 2d and 3d editor
2024-05-17 11:13:57 +02:00
Nodragem 8e0f0c6edb change default behaviour when drag-and-drop to 2d and 3d editor
correct formatting with clang-formatter

US English
2024-05-16 10:42:13 +01:00