summaryrefslogtreecommitdiffstats
path: root/editor/plugins/node_3d_editor_plugin.h
Commit message (Collapse)AuthorAgeFilesLines
* Merge commit godotengine/godot@f128f383e892865379cb8b14e7bcc9858efe2973Spartan3222024-11-271-0/+2
|\
| * Merge pull request #90778 from timothyqiu/cam-previewThaddeus Crews2024-11-271-0/+2
| |\ | | | | | | | | | Add Camera3D preview in Inspector
| | * Add Camera3D preview in InspectorHaoyu Qiu2024-05-051-0/+2
| | |
* | | Merge commit godotengine/godot@c6c464cf9ae56e8b68620af65125dd980d0e8122Spartan3222024-11-021-6/+4
|\| |
| * | Add "Game" editor for better runtime debuggingMichael Alexsander2024-10-301-6/+4
| | |
* | | Fix copyright headers referring to GodotSpartan3222024-10-271-2/+2
| | |
* | | Merge commit godotengine/godot@af77100e394dcaca609b15bef815ed17475e51edSpartan3222024-10-151-2/+2
|\| |
| * | Use collision detection ray to reposition an object already in the sceneRobert Yevdokimov2024-10-041-2/+2
| | |
* | | Rebrand preambles to RedotDubhghlas McLaughlin2024-10-111-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Credits: Co-authored-by: Skogi <skogi.b@gmail.com> Co-authored-by: Spartan322 <Megacake1234@gmail.com> Co-authored-by: swashberry <swashdev@pm.me> Co-authored-by: Christoffer Sundbom <christoffer_karlsson@live.se> Co-authored-by: Dubhghlas McLaughlin <103212704+mcdubhghlas@users.noreply.github.com> Co-authored-by: McDubh <103212704+mcdubhghlas@users.noreply.github.com> Co-authored-by: Dubhghlas McLaughlin <103212704+mcdubhghlas@users.noreply.github.com> Co-authored-by: radenthefolf <radenthefolf@gmail.com> Co-authored-by: John Knight <80524176+Tekisasu-JohnK@users.noreply.github.com> Co-authored-by: Adam Vondersaar <adam.vondersaar@uphold.com> Co-authored-by: decryptedchaos <nixgod@gmail.com> Co-authored-by: zaftnotameni <122100803+zaftnotameni@users.noreply.github.com> Co-authored-by: Aaron Benjamin <lifeartstudios@gmail.com> Co-authored-by: wesam <108880473+wesamdev@users.noreply.github.com> Co-authored-by: Mister Puma <MisterPuma80@gmail.com> Co-authored-by: Aaron Benjamin <lifeartstudios@gmail.com> Co-authored-by: SingleError <isaaconeoneone@gmail.com> Co-authored-by: Bioblaze Payne <BioblazePayne@gmail.com>
* | | Rebrand Godot to RedotRandolph W. Aarseth II2024-10-111-0/+1
|/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add Linux Editor tests workflow matrix Add Windows Editor w/ Mono workflow matrix Add Generate Glue Code job to Windows workflow Add Build GodotSharp job to Windows workflow Add godot compatibility version references Add Godot author info Add Godot version compatibility info Add Godot donor info Add Godot authors and donors to editor_about.cpp Credits: Co-authored-by: Skogi <skogi.b@gmail.com> Co-authored-by: Spartan322 <Megacake1234@gmail.com> Co-authored-by: swashberry <swashdev@pm.me> Co-authored-by: Christoffer Sundbom <christoffer_karlsson@live.se> Co-authored-by: Dubhghlas McLaughlin <103212704+mcdubhghlas@users.noreply.github.com> Co-authored-by: McDubh <103212704+mcdubhghlas@users.noreply.github.com> Co-authored-by: Dubhghlas McLaughlin <103212704+mcdubhghlas@users.noreply.github.com> Co-authored-by: radenthefolf <radenthefolf@gmail.com> Co-authored-by: John Knight <80524176+Tekisasu-JohnK@users.noreply.github.com> Co-authored-by: Adam Vondersaar <adam.vondersaar@uphold.com> Co-authored-by: decryptedchaos <nixgod@gmail.com> Co-authored-by: zaftnotameni <122100803+zaftnotameni@users.noreply.github.com> Co-authored-by: Aaron Benjamin <lifeartstudios@gmail.com> Co-authored-by: wesam <108880473+wesamdev@users.noreply.github.com> Co-authored-by: Mister Puma <MisterPuma80@gmail.com> Co-authored-by: Aaron Benjamin <lifeartstudios@gmail.com> Co-authored-by: SingleError <isaaconeoneone@gmail.com> Co-authored-by: Bioblaze Payne <BioblazePayne@gmail.com>
* | Merge pull request #88511 from ryevdokimov/offset-drag-to-instantiate-sceneRémi Verschelde2024-10-041-1/+1
|\ \ | | | | | | | | | Offset drag instantiated scenes that result in a collision by its bounds to mitigate overlap
| * | Offset drag instantiated scenes that result in a collision by its bounds to ↵Robert Yevdokimov2024-05-251-1/+1
| | | | | | | | | | | | | | | | | | prevent overlap Co-Authored-By: Robbie Cooper <cooperra@users.noreply.github.com>
* | | Fix issue where editable children of 3D nodes would be selectedAdam Scott2024-09-091-1/+1
| | |
* | | Merge pull request #87793 from ryevdokimov/hide-transform-gizmoRémi Verschelde2024-08-281-0/+2
|\ \ \ | | | | | | | | | | | | Add ability to hide editor transform gizmo
| * | | Add ability to Hide Editor Transform GizmoRobert Yevdokimov2024-06-271-0/+2
| | | |
* | | | Merge pull request #85331 from RobProductions/customize-navigation-controlsRémi Verschelde2024-08-281-0/+33
|\ \ \ \ | | | | | | | | | | | | | | | Add full customization of 3D navigation controls
| * | | | Add customizable 3D navigation settingsMatt Enad2024-07-021-0/+33
| |/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
* | | | Fix gizmos without visible geometry not being selectableJuan Pablo Arce2024-07-211-0/+9
| | | | | | | | | | | | | | | | | | | | | | | | 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.
* | | | Make the frame time and info boxes have same marginspassivestar2024-06-291-0/+1
|/ / /
* | | Improve viewport rotation gizmo drawingpassivestar2024-06-261-1/+1
| | |
* | | Merge pull request #92188 from SaracenOne/ownerless_node_selectRémi Verschelde2024-05-281-2/+2
|\ \ \ | |/ / |/| | | | | Disallow selection of ownerless nodes
| * | Disallows selection of ownerless nodes:Saracen2024-05-281-2/+2
| | | | | | | | | | | | Attempts to select first node owned by the edited scene instead.
* | | Prevent label width from flickering rapidly in editor frametime panelHugo Locurcio2024-05-231-0/+2
| | | | | | | | | | | | | | | This also improves the background display by drawing a single background for all 3 labels. This avoids visible corners between each label.
* | | Create AudioStreamPlayer when dropping AudioStreamHaoyu Qiu2024-05-191-1/+2
| | | | | | | | | | | | | | | | | | - 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
* | | Merge pull request #88343 from Riteo/warped-mouse-floatRémi Verschelde2024-05-061-1/+1
|\ \ \ | |_|/ |/| | | | | Handle warped mouse motion as floating point
| * | Handle warped mouse motion as floating pointRiteo2024-02-141-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | Fixes certain issues where sub-pixel motions would get discarded while the mouse is captured, such as when free look is enabled in the editor (at least when turned on while holding right click). Very slightly compat breaking, as actual public APIs are changed, although with "compatible" types (Point2i->Point2).
* | | Organize existing code for editor pluginsAaron Franke2024-04-271-1/+1
| |/ |/|
* | Merge pull request #89847 from GreenCrowDev/missing-bezier-handlesRémi Verschelde2024-04-041-0/+1
|\ \ | | | | | | | | | UX and stability improvements for `Path3D` node
| * | UX and stability improvements for Path3D nodematricola7872024-03-251-0/+1
| | |
* | | Fix path3d's pick works incorrectly when viewport is in half resolutionjsjtxietian2024-03-261-3/+5
|/ /
* | Fix wrong undo-redo action when dropping files containing circular dependenciesDavid Luevano Alvarado2024-03-071-1/+1
| |
* | Add const lvalue ref to editor/* container parametersMuller-Castro2024-02-261-1/+1
| |
* | Merge pull request #88584 from ryevdokimov/hide_grid_per_viewportRémi Verschelde2024-02-231-0/+1
|\ \ | | | | | | | | | Add ability to hide grid per viewport
| * | Add ability to hide grid per viewportRobert Yevdokimov2024-02-231-0/+1
| |/
* / Use subgizmos instead of handles for Path3D curve pointspohy2024-02-221-1/+1
|/
* Fix bounding boxesRobbie Cooper2024-02-021-1/+1
| | | | | | | | | | Each time an AABB is rotated, it gets bigger. That means opposite rotations don't cancel out. The previous implementation repeatedly rotates children AABBs as it climbs up the tree. This often resulted in selection boxes looking bigger than their contents. This implementation calculates and applies a single final transformation to each AABB before it is merged with the others. After merging, there are no additional rotations, so AABBs remain accurate. Co-Authored-By: Robert Yevdokimov <105675984+ryevdokimov@users.noreply.github.com>
* Reorganize code related to editor themingYuri Sizov2024-01-161-1/+1
| | | | | | | | | | | | | This change introduces a new EditorThemeManager class to abstract theme generatio and its subroutines. Logic related to EditorTheme, EditorColorMap, and editor icons has been extracted into their respective files with includes cleaned up. All related files have been moved to a separate folder to better scope them in the project. This includes relevant generated files as well.
* Merge pull request #83895 from clayjohn/origin-linesRémi Verschelde2024-01-041-2/+3
|\ | | | | | | Use screen-aligned quads for origin lines to avoid issues on NVidia
| * Uses screen-aligned quads for origin lines to avoid issues on NVidiaclayjohn2023-10-241-2/+3
| | | | | | | | While we are add it, use alpha-antialised lines to make them look nice
* | Fix some Node3DEditor snapping issueskleonc2023-10-271-3/+3
|/
* Add FidelityFX Super Resolution 2.2 (FSR 2.2.1) support.Dario2023-09-251-0/+1
| | | | Introduces support for FSR2 as a new upscaler option available from the project settings. Also introduces an specific render list for surfaces that require motion and the ability to derive motion vectors from depth buffer and camera motion.
* Improve the looks of 2D/3D viewport contextual toolbarsYuri Sizov2023-09-131-3/+7
|
* Implement numeric blender-style transforms.Ryan Roden-Corrent2023-08-101-0/+11
| | | | | | | | | | | | | | | | | | | | | | This allows the user to input numbers during an "instant" (blender style) transform operation to specify exactly how far to transform the object. For example: g2.5xx: Translate 2.5 units along the local x-axis ry-45: Rotate -45 degrees around the y-axis s.25Z: Scale by a factor of .25 on the xy plane Some shared code between the traslate/rotate/scale branches of update_transform was refactored into apply_transform so numeric transforms could reuse it. This removes any "{X,Y,Z}-Axis Transform" messages. These prevented the "Transforming: (x,y,z)" messages from showing, and the latter are more useful, as they tell you the actual units. This also rearranges finish_transform to clear _edit before updating the axis rendering, so an axis doesn't remain highlighted. Co-authored-by: Rémi Verschelde <rverschelde@gmail.com>
* Wrap mouse for blender-style transforms.Ryan Roden-Corrent2023-07-081-1/+2
| | | | | | | | | | | | | | | | | | | When performing a blender-style translate or scale (but not rotate), wrap the mouse inside the bounds of the viewport. This allows moving the mouse indefinitely for large translate or scale operations, and is consistent with how blender works. This enables global input processing during blender-style transforms, so we can capture and wrap mouse events outside the bounds of the viewport. Other wrapping operations use _sinput, which I assume is possible because a mouse button is held, so the control receives input even when the mouse exits the control. This does not implement wrapping for regular (gizmo-driven) transforms, though this could be done if desired. Fixes godotengine/godot-proposals#4255.
* Merge pull request #76372 from sygi/dont_propagate_lock_viewRémi Verschelde2023-06-121-0/+2
|\ | | | | | | Store lock view rotation whether its on or off
| * Store lock view rotation whether its on or offJakub Sygnowski2023-04-231-0/+2
| |
* | Add missing initializations for Node3DEditor.Bram Stolk2023-05-111-4/+4
| | | | | | | | | | | | | | | | Do not try to format fields with garbage values in _snap_update() Initialize grid_enable[] before use. Initialize previewing_camera before use. These are all cases found live, with valgrind. Fixes #76925
* | Improve editor state persistenceHendrik Brucker2023-05-111-5/+10
|/
* Decouple EditorInterface from EditorPluginYuri Sizov2023-04-171-0/+1
| | | | | - Simplify some includes in the process. - Also exposes EditorInterface.movie_maker_enabled as a property.
* Merge pull request #73651 from hakro/editor-freelook-physical-shortcutsRémi Verschelde2023-03-031-1/+1
|\ | | | | | | Use physical shortcuts for freelook navigation in the editor