Commit graph

4573 commits

Author SHA1 Message Date
Ricardo Buring
d9ce8b8996 Node3D editor: cast rays in NOTIFICATION_PHYSICS_PROCESS
Fixes crashes in the editor with threaded physics (when dragging a scene
into the viewport or when snapping a node to the floor).
2022-10-14 23:37:20 +02:00
kobewi
af0ee8b0a0 Reorganize script editor menu 2022-10-14 18:41:01 +02:00
kobewi
072f6feaba Make some Image methods static 2022-10-14 14:34:15 +02:00
kobewi
bee0b7e583 Redraw 2D viewport when scene changes 2022-10-14 00:22:46 +02:00
Juan Linietsky
71d2e38cb5 Optimize Convex Collision
Implements the Gauss Mapping optimization to SAT convex collision test.

* Described [here](https://ubm-twvideo01.s3.amazonaws.com/o1/vault/gdc2013/slides/822403Gregorius_Dirk_TheSeparatingAxisTest.pdf) by Dirk Gregorius.
* Requires adding of face information to edges in MeshData
* Took the chance to convert MeshData to LocalVector for performance.
2022-10-13 19:07:53 +02:00
Rémi Verschelde
2ffb609658 Merge pull request #66337 from EricEzaM/sprite-frames
Ensure control built-in shortcuts are matched exactly & add shortcuts for SpriteFrames editor
2022-10-13 15:24:39 +02:00
Eric M
b322b3d649 Add shortcuts for SpriteFrames editor. Small renaming changes for clarity & consistency. 2022-10-13 21:14:59 +10:00
Rémi Verschelde
86a836f9e3 Merge pull request #59468 from EricEzaM/fix-zoom-shortcuts
Fix zoom in/out keyboard shortcuts not working
2022-10-13 09:03:58 +02:00
kobewi
386382d796 Fix source sort not saving in TileMap editor 2022-10-11 22:40:39 +02:00
Pedro J. Estébanez
f82deaa5b3 Polish rendering driver refactor further (take 2) 2022-10-11 19:06:55 +02:00
Rémi Verschelde
e413d1c9c3 Merge pull request #67104 from Calinou/add-viewport-transparent-project-setting
Add a project setting to make the root viewport transparent
2022-10-11 09:28:43 +02:00
Rémi Verschelde
28f642097a Merge pull request #67183 from akien-mga/gcc-warnings-cleanup
SCons: Cleanup GCC warnings configuration
2022-10-10 17:42:36 +02:00
Rémi Verschelde
8017827144 SCons: Re-enable treating #warning as error with werror
Replace all TODO uses of `#warning` by proper TODO comments, and will open
matching bug reports to keep track of them.

We don't have a great track record fixing TODOs, but I'd wager we're even
worse for fixing these "TODO #warning" so we should prohibit this usage.
2022-10-10 16:12:26 +02:00
kobewi
983a5227fb Remove default shortcut for Preview Canvas Scale 2022-10-10 14:22:26 +02:00
Rémi Verschelde
8c24b35b76 Merge pull request #65942 from SaracenOne/animation_change_callback_fix
Fix animation change callbacks
2022-10-10 13:53:53 +02:00
Rémi Verschelde
b9d063170c Merge pull request #67178 from TokageItLab/add-signal-animation_selected-APEditer
Add `animation_selected` signal to AnimationPlayerEditor to subscribe changed animation
2022-10-10 13:52:48 +02:00
Silc Renew
847c783319 Add animation_selected signal to AnimationPlayerEditor 2022-10-10 16:52:49 +09:00
Kongfa Waroros
e81e81a56e Fix crashing when editing the TileSet field 2022-10-10 00:37:47 +07:00
Silc Renew
a2a3f8cd0a Remove unused func definition in BoneMapEditor 2022-10-09 12:13:22 +09:00
Hugo Locurcio
bab8497fa2
Add a project setting to make the root viewport transparent
This allows recording videos with a transparent background without
having to create a script.
2022-10-09 00:16:07 +02:00
Alessandro Famà
17d1555127 EditorNode3DGizmoPlugin: Add GDVIRTUAL_CALL for get_gizmo_name and get_priority 2022-10-07 13:55:51 +02:00
bruvzg
0103af1ddd
Fix MSVC warnings, rename shadowed variables, fix uninitialized values, change warnings=all to use /W4. 2022-10-07 11:32:33 +03:00
Rémi Verschelde
afb63944d0 Merge pull request #66930 from EricEzaM/66770-addendum-split-action-map-file
Split `action_map_editor` file into one file per class it contained.
2022-10-06 16:34:51 +02:00
Eric M
598ee4266c Split action_map_editor file into one file per class it contained.
* ActionMapEditor
* EventListenerLineEdit
* InputEventConfigurationDialog
2022-10-06 18:29:20 +10:00
Rémi Verschelde
f5903215d0 Merge pull request #61902 from Paulb23/multi-caret
Add Multi-caret support to TextEdit
2022-10-06 08:56:34 +02:00
Paulb23
0cbe176ce6 Add multi caret support to Editor 2022-10-05 17:19:26 +01:00
Rémi Verschelde
132a0e3242 Merge pull request #66770 from EricEzaM/search-by-event
Add searching by event in Editor Settings shortcuts and Project Settings input map.
2022-10-05 08:34:45 +02:00
Rémi Verschelde
b904789242 Merge pull request #66894 from KoBeWi/TileSetAtlasSourceEditor_on_vacation
Disconnect TileSet from source editor if no sources
2022-10-05 08:32:57 +02:00
Rémi Verschelde
121e1df55b Merge pull request #66300 from KoBeWi/📝🧭
Split script navigation state and edit state
2022-10-05 08:30:49 +02:00
kobewi
52435e6f90 Disconnect TileSet from source editor if no sources 2022-10-04 20:13:01 +02:00
Rémi Verschelde
8f7cb50c9a Merge pull request #65528 from Mickeon/rename-more-spatial-to-node-3d
Rename remaining "Spatial" in Plugins to "Node3D"
2022-10-04 16:47:08 +02:00
Rémi Verschelde
4e66b0c8a7 Merge pull request #66384 from schme/66165-fix-shader-list-not-marking-shaders-as-saved
Fix Shader Editor not marking files saved
2022-10-04 16:43:43 +02:00
Micky
ae5771e1b1 Rename remaining "Spatial" in Plugins to "Node3D"
For EditorNode3DGizmo:
- `get_spatial_node` -> `get_node_3d`
- `set_spatial_node` -> `set_node_3d`

For EditorPlugin:
- `add_spatial_gizmo_plugin` -> `add_node_3d_gizmo_plugin`
- `remove_spatial_gizmo_plugin` -> `remove_node_3d_gizmo_plugin`

Also renames some internal methods for consistency (`forward_3d_draw_over_viewport` & `forward_3d_force_draw_over_viewport` ...). Basically, Spatial has been completely eradicated.
2022-10-04 16:27:29 +02:00
Kasper Sauramo
bedbb2e893 add explicit editor save tagging when saving 2022-10-04 11:49:32 +03:00
Rémi Verschelde
f36dda3185 Merge pull request #66867 from Rindbee/implement-willSaveWaitUntil
Implement `GDScriptTextDocument::willSaveWaitUntil` to clean up outdated documents before saving
2022-10-04 10:33:03 +02:00
Rémi Verschelde
163582de58 Merge pull request #62188 from MaeIsBad/MaeIsBad/master
Move "Create Debug Tangents" on MeshInstance3D into an editor plugin
2022-10-04 10:29:11 +02:00
Rindbee
ab0314938e Implement GDScriptTextDocument::willSaveWaitUntil to clean up outdated documents before saving
Implement `GDScriptTextDocument::willSaveWaitUntil` to clean up outdated documents before saving,
then update the document in `GDScriptTextDocument::didSave`.
2022-10-04 15:38:57 +08:00
kobewi
1a9516f6a8 Prevent infinite confirmation in shader editor 2022-10-04 00:28:06 +02:00
bad
a052ebaa99 Move "Create Debug Tangents" into an editor plugin
Instead of exporting the "create_debug_tangents" function via
METHOD_FLAG_EDITOR it gets executed by an editor plugin.

This moves it from the "Manage object properties" menu into a mesh menu. It also adds undo/redo functionality to the create debug tangents option.
2022-10-03 23:34:01 +02:00
Rémi Verschelde
380fba6272 Merge pull request #66713 from KoBeWi/remembuh_me
Remember tile source sort between sessions
2022-10-03 14:52:56 +02:00
Rémi Verschelde
5b735d000e Merge pull request #66815 from Rindbee/fix-blinking-line-gutter-icon
Fix the flickering of the line gutter icon when saving
2022-10-03 14:52:21 +02:00
Rindbee
72a7d874b4 Fix the flickering of the line gutter icon when saving 2022-10-03 19:19:28 +08:00
Rindbee
67e126bad4 Fix the file newer dialog that keeps popping up
The focus is switching back and forth between the popup dialog and
the editor window, causing an infinite loop.

Fix #65824.
2022-10-03 18:48:58 +08:00
EricEzaM
cb6d7fd059 Add searching by event for Editor Settings shortcuts and Project Settings input map.
* Focus into the LineEdit, then perform input to search the list of events by the events assigned.
* New specialised editor-only control for this: EventListenerLineEdit. Line edit is a good candidate for such a control because you can focus it, override it's input handling, and show the event all in one control.
Update InputEventConfigurationDialog to use event listener line edit rather than the separate tabs.
* Cleaner look - no need for tabs.
* Simpler code.
2022-10-03 19:56:34 +10:00
Rémi Verschelde
498844f687 Merge pull request #65276 from aaronfranke/shader
Separate TextShaderEditor and ShaderEditorPlugin into different files
2022-10-03 09:24:51 +02:00
Rémi Verschelde
adee79d7b5 Merge pull request #66715 from YeldhamDev/script_hide_port
Remember scripts panel's visibility state
2022-10-03 09:22:58 +02:00
Rémi Verschelde
f3e7f275c2 Merge pull request #66668 from Anutrix/allow-open-files
Fixed shader editor not allowing open files when there is no files already open
2022-10-03 09:20:38 +02:00
Rémi Verschelde
88f70dfacd Merge pull request #66656 from magian1127/4.0DelAutotile
TileMap mouse right can delete autotile
2022-10-03 09:19:58 +02:00
kobewi
7247606f64 Remember tile source sort between sessions 2022-10-02 22:41:12 +02:00
Aaron Franke
252963166d
Separate TextShaderEditor and ShaderEditorPlugin into different files 2022-10-02 02:19:38 -05:00
Aaron Franke
38cb2f8afc
Rename ShaderEditor that edits text shaders to TextShaderEditor 2022-10-02 02:18:46 -05:00
Michael Alexsander
3f5086990a Remember scripts panel's visibility state 2022-10-01 14:23:13 -03:00
Anutrix
119e1a2937 Fixed shader editor when no files are currently in shader list 2022-10-01 00:33:13 +05:30
Rémi Verschelde
e69b7083d4 Merge pull request #65903 from groud/improve_terrain_painting
Right-click to erase TileSet terrains and bugfixes
2022-09-30 17:44:48 +02:00
Magian
7e30343a5c TileMap mouse right can delete autotile 2022-09-30 21:15:15 +08:00
Rémi Verschelde
166df0896c Fix typos with codespell
Using codespell 2.3-dev from current git.

And fix typo in `methods.py` for `vsproj=yes` option (still won't work
though).
2022-09-30 14:23:36 +02:00
Rémi Verschelde
4c73e8ba1a Merge pull request #66632 from RedMser/script-override-gutter-docs-fix
Fix wrong docs opening in script override gutter
2022-09-30 09:58:30 +02:00
Rémi Verschelde
7a0500d9a3 Merge pull request #66626 from danboo/fix-typo-run-debug-collisons
Fix typos - "collison" -> "collision"
2022-09-30 09:58:25 +02:00
RedMser
dc3990fea4 Fix wrong docs opening in script override gutter 2022-09-30 02:11:52 +02:00
danboo
eba8be6e45 Fix typo - "collison" -> "collision" 2022-09-29 13:56:26 -08:00
Rémi Verschelde
176da47ffd Merge pull request #66590 from akien-mga/animation-workaround-disable-onion-skinning
Animation editor: Disable onion skinning temporarily due to rendering bug
2022-09-29 15:34:02 +02:00
Rémi Verschelde
a593c45f1c Merge pull request #66575 from MewPurPur/indent-dedent-in-scriptedit
Rename Indent Left/Right options in the Script Editor to Indent/Unindent
2022-09-29 15:33:55 +02:00
VolTer
ded10214bf Rename Indent Left/Right to Indent/Dedent 2022-09-29 14:42:46 +02:00
Rémi Verschelde
6bbc3cbf04 Animation editor: Disable onion skinning temporarily due to rendering bug
Works around #53870.
2022-09-29 12:23:13 +02:00
Rémi Verschelde
315a71103e Merge pull request #66565 from clayjohn/canvas-lights
Clean up canvas light shader API.
2022-09-29 10:43:42 +02:00
MisterMX
b6c1a03d6c fix(tileset): Recreate custom data editor if type has changed
Signed-off-by: MisterMX <mbxd12@web.de>
2022-09-28 21:16:41 +02:00
clayjohn
1a0890122f Clean up canvas light shader API.
Expose LIGHT_ENERGY and LIGHT_IS_DIRECTIONAL.
Add LIGHT_DIRECTION
2022-09-28 11:46:58 -07:00
Rémi Verschelde
0e53dd642c Fix MSVC warning C4706: assignment within conditional expression
Part of #66537.
2022-09-28 16:05:07 +02:00
Guilherme Sousa
1ae1a02098 Fix mouse release leaving dock area 2022-09-27 13:35:01 +02:00
Yuri Rubinsky
84f2c68c84
Merge pull request #66440 from Chaosus/shader_completion_defines 2022-09-26 18:18:24 +03:00
Rémi Verschelde
1e14795f75 Merge pull request #66382 from MewPurPur/replace-in-files-forever
Make Replace in Files always visible in Search
2022-09-26 15:51:01 +02:00
Yuri Rubinsky
344aa610e3 Add defines to completion list in shaders 2022-09-26 16:04:19 +03:00
Rémi Verschelde
e406badafd Merge pull request #66405 from Rindbee/fix-gd-not-sync-via-lsp
Fix out of sync when the script is edited externally via lsp
2022-09-26 08:20:04 +02:00
kobewi
14435ebcee Split script navigation state and edit state 2022-09-25 23:06:39 +02:00
Rindbee
412e87349a Fix out of sync when the script is edited externally via lsp
Previously, external editing via lsp would modify the modified time of the script,
which caused the internal display of the script to not be refreshed when refocusing
the engine.

Now saving the script externally via lsp will automatically refresh the internal
display.
2022-09-25 23:30:35 +08:00
Rémi Verschelde
d456dce8af Merge pull request #65535 from RedMser/script-editor-inheritance-icon
Show override icon in script editor gutter
2022-09-25 17:08:45 +02:00
VolTer
882a226d12 Make Replace in Files always visible in Search 2022-09-25 02:49:53 +02:00
Eric M
16a3cec71e Fix zoom in/out keyboard shortcuts not working since the introduction of EditorZoomWidget. Add KP shortcuts to zoom in/out. 2022-09-24 18:24:59 +10:00
Rémi Verschelde
d1a155e3cd Fix various -Wmaybe-uninitialized warnings from GCC 12.2.1
Not sure why I didn't get those before, it may be due to upstream
changes (12.2.1 is a moving target, it's basically 12.3-dev), or simply
rebuilding Godot from scratch with different options.
2022-09-22 11:29:48 +02:00
bruvzg
4351af30c8
[Font Inspector Plugin] Hide "Add Feature" button if supported feature list is empty. 2022-09-22 08:20:40 +03:00
Rémi Verschelde
f3373e8311 Merge pull request #66212 from kleonc/script-text-editor-fix-check-if-script-used-within-scene
`ScriptTextEditor` Fix checking if script is attached to any node belonging to scene
2022-09-21 18:55:18 +02:00
kleonc
7f7966e10a Fix checking if script is attached to any node belonging to scene 2022-09-21 15:46:30 +02:00
Rémi Verschelde
53d2a9acdd Merge pull request #63576 from KoBeWi/list_clicker
Simplify script list click logic
2022-09-21 15:38:41 +02:00
Rémi Verschelde
74765691cb Merge pull request #66191 from MewPurPur/fix-dragndrop-crash-when-scene-closed
Fix possible crash when drag and dropping nodes
2022-09-21 13:26:16 +02:00
VolTer
bdff928f6d Fix crash with drag and dropping nodes 2022-09-21 03:08:54 +02:00
RedMser
a9b394d5bc Show method override icon in script editor gutter
Combines with the connection slot icon when both apply.
Can be clicked to jump to the method declaration (or documentation for
built-in classes).
2022-09-21 01:49:54 +02:00
Rémi Verschelde
658bfb0395 Merge pull request #66159 from MewPurPur/fix-animated-tiles-offset-unit
Remove px unit from animation_separation in TileSet atlas editor
2022-09-20 15:45:41 +02:00
VolTer
6a1d1f1f75 Remove px unit from animation_separation in TileSet atlas editor (as it's tile-based, not pixel-based) 2022-09-20 15:04:26 +02:00
Rémi Verschelde
7da532275b Merge pull request #65541 from clayjohn/renderer-setting
Split rendering driver project setting into renderer_name and rendering_driver
2022-09-20 09:43:59 +02:00
clayjohn
4a1c7de57c Split rendering driver project setting into renderer_name and rendering_driver. To differentiate between a driver (e.g. Vulkan or D3D12) and a renderer (e.g. clustered or mobile renderer). 2022-09-19 10:26:10 -07:00
Rémi Verschelde
aa42b4f0cb Merge pull request #65995 from MinusKube/tileset-size-bug
Fix atlas view drawing roots having zoom applied twice
2022-09-19 15:32:01 +02:00
Yuri Rubinsky
908795301b
Merge pull request #66040 from jeffres/fix-closing-shader-file-with-middle-mouse-click 2022-09-18 22:26:15 +03:00
jeffres
b9d9528c45 Close shader under cursor when middle mouse clicking in editor list
Previously middle mouse clicking resulted in the currently selected
file to be closed, which is not the behavior commonly expected.
2022-09-18 13:25:13 +02:00
Tomasz Chabora
882a4f8906 Port remaining connections to callable_mp 2022-09-18 13:08:54 +02:00
MinusKube
0ff2020bd4 Fix atlas view drawing roots having zoom applied twice 2022-09-17 19:07:56 +02:00
jeffres
1c98f03784 Fix selected shader file not being highlighted in shader editor list 2022-09-17 17:49:51 +02:00
SaracenOne
6a8fbf3d25 Fix animation change callbacks 2022-09-16 14:04:24 -07:00
Gilles Roudière
68ffa9a2a1 Right-click to erase TileSet terrains and bugfixes 2022-09-16 15:22:55 +02:00
clayjohn
969f20656a Free preview sun and environement on editor close.
Previously, they would only be freed if they were in the editor node tree.
2022-09-15 20:45:19 -07:00
Rémi Verschelde
80802d2718 Merge pull request #65196 from TokageItLab/fix-redraw-anim-tree
Fix redraw timing in `AnimationBlendTreeEditor`
2022-09-15 20:11:36 +02:00
Rémi Verschelde
50a6905f2d
Merge pull request #65421 from V-Sekai/spriteframes_read_only 2022-09-14 14:42:18 +02:00
Silc Renew
cff95e54e0 Fix redraw timing in AnimationBlendTreeEditor 2022-09-14 21:05:21 +09:00
Rémi Verschelde
abdaa6da3d Merge pull request #65621 from KoBeWi/eternal_pattern
Fix broken patterns on TileMap layer change
2022-09-13 10:58:29 +02:00
Rémi Verschelde
2ac8bcdd1a Merge pull request #65632 from YeldhamDev/thin_editors
Shrink shader editor's oversized borders
2022-09-13 10:58:09 +02:00
Rémi Verschelde
ed381078a4
Merge pull request #65651 from dzil123/animation_tree_node_rename 2022-09-13 10:42:49 +02:00
Rémi Verschelde
f9b4af4ba5
Merge pull request #65708 from akien-mga/vcs-plugin-ssh-key-HOME 2022-09-13 10:35:27 +02:00
Rémi Verschelde
2092858087
Merge pull request #65679 from Calinou/3d-editor-improve-preview-sun-sky-usability 2022-09-13 10:32:47 +02:00
Yuri Rubinsky
d2ba60b4b5 Fix category of view_index inputs in the visual shader editor 2022-09-13 10:06:34 +03:00
Rémi Verschelde
fc227ea919 VCS plugin: SSH key dialog defaults to HOME
Fixes #65691.
2022-09-12 17:03:20 +02:00
Hugo Locurcio
598b5b19ac
Improve 3D editor preview sun and sky usability
- Use grayscale icons to look better when pressed (with accent color
  modulation).
- Invert state to be more logical (pressed = preview is enabled, not disabled).
2022-09-12 03:58:29 +02:00
dzil123
f9bee90994 Ignore node rename if already exited blend tree 2022-09-11 02:33:59 -07:00
Michael Alexsander
c2553f530b Shrink shader editor's oversized borders 2022-09-10 17:58:31 -03:00
bruvzg
f6adf07ffa
Fix Ctrl/Cmd+F always processed by the asset library, instead of script editor / help. 2022-09-10 21:40:45 +02:00
Rémi Verschelde
b52305351d
Merge pull request #64465 from TokageItLab/bind-after-gui-input
Bind `AfterGUIInput` to GDScript and update document
2022-09-10 20:01:48 +02:00
kobewi
aafe72fcec Fix broken patterns on TileMap layer change 2022-09-10 16:45:51 +02:00
Michael Alexsander
c4c9e41073 Make Vector2i values paired with EDSCALE be just Vector2 2022-09-08 14:46:32 -03:00
Yuri Rubinsky
c50febf5ef
Merge pull request #65468 from Chaosus/vs_fix 2022-09-08 15:00:24 +03:00
Rémi Verschelde
47f889f89d
Merge pull request #65495 from V-Sekai/animation_editor_fixes 2022-09-08 13:56:46 +02:00
Silc Renew
3c7a5fd8ac bind AfterGUIInput 2022-09-08 20:02:48 +09:00
Rémi Verschelde
69233093d7 Merge pull request #65241 from bruvzg/no_keymap_ambiguity
Fix key mapping changes when moving from macOS to other platform.
2022-09-08 09:24:24 +02:00
Rémi Verschelde
7936b3cc4c Merge pull request #60108 from KoBeWi/arise_to_top
Rename raise() to move_to_front()
2022-09-08 09:23:31 +02:00
Rémi Verschelde
a51dc70dfb Merge pull request #65460 from Faless/net/4.x_ssl_to_tls_more
[Net] Rename "ssl" references to "tls" in methods and members.
2022-09-08 09:20:19 +02:00
Fabio Alessandrelli
a95d792420 [Net] Rename "ssl" references to "tls" in methods and members. 2022-09-08 03:24:23 +02:00
bruvzg
6f4d233062
Fix key mapping changes when moving from macOS to other platform
Removes separate `Command` key (use `Meta` instead).
Adds an event flag to automatically remap `Command` <-> `Control` (cannot be set alongside `Control` or `Meta`).
2022-09-07 18:45:35 +02:00
smix8
d7f75fab60 Remove / Replace old Navigation Debug Visualization
- removes / replaces leftovers from old navigation debug code
- cleanes SceneTree and ProjectSettings from old navigation debug
2022-09-07 18:30:35 +02:00
Rémi Verschelde
f7261e655f Merge pull request #49466 from AnilBK/rotate-previews
Add rotation ability to material editor preview.
2022-09-07 17:54:43 +02:00
Rémi Verschelde
0bd4a421bd Merge pull request #65471 from KoBeWi/s
Fix tile source selection from picking
2022-09-07 17:53:53 +02:00
FireForge
dd7ee37c8a Add set_default_margin_all/individual to StyleBox 2022-09-07 16:37:36 +03:00
kobewi
35cae71842 Fix tile source selection from picking 2022-09-07 15:02:49 +02:00
Yuri Rubinsky
bf3d981c60 Remove subcategory parameter from AddOption in visual shader editor 2022-09-07 15:10:43 +03:00
Micky
08c2aab169 Rename ProgressBar.percent_visible to show_percentage
`percent_visible` -> `show_percentage`
`set_percent_visible` -> `set_show_percentage`
`is_percent_visible` -> `is_percentage_shown`
2022-09-07 11:58:30 +02:00
SaracenOne
dc96b2834e Refactor to use internal foreign resource checking function.
Create unique duplicates of embedded animations when calling
'Make Unique' on AnimationLibrary.
2022-09-07 10:17:22 +01:00
Rémi Verschelde
61644f1dbe Merge pull request #65447 from Faless/net/4.x_ssl_to_tls
[Net] Rename StreamPeerSSL to StreamPeerTLS.
2022-09-07 09:19:46 +02:00
Rémi Verschelde
c1150428c6 Merge pull request #65449 from YuriSizov/editor-main-control-screen-container-node
Rename `EditorInterface.get_editor_main_control` to `get_editor_main_screen`
2022-09-07 08:59:37 +02:00
Rémi Verschelde
80dacac90c Merge pull request #65437 from YuriSizov/theme-gui-renames
Improve naming of theme properties throughout GUI code
2022-09-07 08:58:00 +02:00
Fabio Alessandrelli
528e791a5f [Net] Rename StreamPeerSSL to StreamPeerTLS.
SSL has been deprectated almost 10 years ago.
2022-09-07 07:38:50 +02:00
Anilforextra
d4ee903004 Enable material editor preview to be rotated. 2022-09-07 11:02:57 +05:45
Yuri Sizov
1459507ed2 Rename EditorInterface.get_editor_main_control to get_editor_main_screen 2022-09-07 03:01:58 +03:00
kobewi
b218727599 Rename raise() to move_to_front() 2022-09-06 22:13:06 +02:00
Yuri Sizov
43f03e2ce6 Improve naming of theme properties throughout GUI code
Rename ItemList's bg -> panel
Rename ItemList's bg_focus -> focus
Rename ProgressBar's bg -> background
Rename ProgressBar's fg -> fill
Rename Tree's bg -> panel
Rename Tree's bg_focus -> focus
Rename ScrollContainer's bg -> panel
Rename FileDialog's *_icon_modulate -> *_icon_color
Rename FileDialog's files_disabled -> file_disabled_color
Rename CheckButton's on/off -> checked/unchecked
Rename check_v_adjust -> check_v_offset
2022-09-06 22:53:17 +03:00
Micky
dd26ecdd31 Rename CONNECT_ONESHOT TO CONNECT_ONE_SHOT
For consistency. Every other exposed `one_shot` is spaced out like this.
2022-09-06 19:00:33 +02:00
Rémi Verschelde
5fb84e5702 Merge pull request #64661 from Mickeon/rename-tilemap-world
Rename TileMap/GridMap.`world_to_map` and opposite to `local_to_map`
2022-09-06 17:01:16 +02:00
Rémi Verschelde
5062aafc2d Merge pull request #64417 from aaronfranke/has-space
Replace AABB/Rect2/Rect2i has_no_* methods with has_* methods
2022-09-06 17:00:44 +02:00
Rémi Verschelde
f40755383e Merge pull request #65361 from Mickeon/rename-range-lerp
Rename `range_lerp` to `remap`
2022-09-06 17:00:37 +02:00
SaracenOne
15e2ddbbc0 Add read only mode to SpriteFrames editor. 2022-09-06 14:47:13 +01:00
Rémi Verschelde
7b5d1ea5b9 Fix various uninitialized member pointers
Using this command:
```
find -name "thirdparty" -prune -o -name "*.h" -exec sed -i {} -e '/return /! s/\t\([A-Za-z0-9_]* \*[A-Za-z0-9_]*\)\;/\t\1 = nullptr;/g' \;
```

And then reviewing the changes manually to discard the ones that don't
seem correct/safe/good (notably changes to `core` unions).
2022-09-06 11:20:27 +02:00
Rémi Verschelde
c36735ef97
Merge pull request #65402 from m4gr3d/disable_android_editor_auto_focus_main 2022-09-06 10:14:49 +02:00
Rémi Verschelde
017c4f5608
Merge pull request #65354 from V-Sekai/state_machine_freeze_new_transition 2022-09-06 10:13:43 +02:00
Fredia Huya-Kouadio
841b4dfeeb Disable logic that triggers automatic focus gain as the Godot Editor is loaded
For the Godot Android Editor, this is an inconvenience as it causes the soft keyboard to show and block half of the view
2022-09-05 22:33:01 -07:00
Micky
b6daad8d4b Rename range_lerp to remap 2022-09-06 07:19:20 +02:00
Micky
694190a354 Rename TileMap/GridMap.world_to_map and opposite to local_to_map
For both TileMap and GridMap:
- `world_to_map` -> `local_to_map`
- `map_to_world` -> `map_to_local`

Also changes any mention of "world" in this context to "local" to avoid future confusion.

Finally, updates the docs of both methods for consistency.
In particular, adding a note on how to convert the returned values from local to global coordinates and vice versa.
2022-09-05 18:08:39 +02:00
Rémi Verschelde
3e6c342995
Merge pull request #65306 from Rindbee/fix-Skeleton3DEditor-causing-crash-in-sanitizer-enabled-builds 2022-09-05 13:42:09 +02:00
SaracenOne
dae05fd249 Fix UndoRedo when creating new AnimationStateMachine transition and node. 2022-09-05 11:56:50 +01:00
SaracenOne
f4c7823a06 Freeze line when releasing mouse to create a new transition. 2022-09-05 10:39:15 +01:00
Aaron Franke
995b9f94e8
Replace Rect2(i) has_no_area with has_area 2022-09-04 23:03:36 -05:00
Rindbee
e73cac8999 Fix Skeleton3DEditor causing crash in sanitizer enabled builds
The life cycle of the `Skeleton3DEditor` singleton is too short, and when it is destroyed,
part of the logic needs to be called when its child nodes exist.
2022-09-04 09:20:06 +08:00
Rindbee
6c9726e7a7 Fix Skeleton3DEditor crash 2022-09-03 15:59:59 +08:00
Rémi Verschelde
fe2cf6e406 Merge pull request #65210 from YuriSizov/control-customizable-cache-p3 2022-09-02 13:51:52 +02:00
Rémi Verschelde
c82bbc38a5 Merge pull request #64952 from Chaosus/vs_rename_uniform_to_param 2022-09-02 13:49:53 +02:00
Yuri Sizov
fc7cef8dec Fix theme propagation in various parts of the editor 2022-09-02 13:18:31 +03:00
Jonathan Nicholl
15d057c521 Add is_zero_approx methods to Vector2, 3, and 4 2022-09-02 00:29:50 -04:00
Rémi Verschelde
5263fd5343 Merge pull request #64198 from Geometror/add-bitmap-tests 2022-09-01 23:46:38 +02:00
Rémi Verschelde
2e0cffdb6f Merge pull request #63479 from DarkKilauea/nav-link 2022-09-01 23:44:22 +02:00
Rémi Verschelde
181019cea5 Merge pull request #65135 from reduz/export-customization-plugins 2022-09-01 23:43:39 +02:00
Hendrik Brucker
ea0472fecf Refactor BitMap and add tests
Co-authored-by: Resul Çelik <resul_celik@hotmail.com>
2022-09-01 18:39:17 +02:00
Juan Linietsky
ef17c4668a Add support for scene/resource customization in export plugins
EditorExportPlugin adds a set of callbacks to allow customizing scenes, resources or subresources in all files exported:
* Can take scene files, resource files and subresources in all of them.
* Uses a cache for the converted files if nothing changes, so this work only happens if a file is modified.
* Uses hashing to differentiate export configuration caches.
* Removed the previous conversion code to binary, as this one uses existing stuff.

This API is useful in several scenarios:
* Needed by the "server" export platform to get rid of textures, meshes, audio, etc.
* Needed by text to binary converters.
* Needed by eventual optimizations such as shader precompiling on export, mesh merging and optimization, etc.

This is a draft, feedback is very welcome.
2022-09-01 11:16:00 +02:00
Yuri Rubinsky
8191b3c110 Rename uniform to parameter across the engine 2022-09-01 11:42:57 +03:00
Rémi Verschelde
0c221f0284
Merge pull request #65124 from zhehangd/fix_basis 2022-09-01 09:36:11 +02:00
Rémi Verschelde
d22f2612f9
Merge pull request #65162 from YuriSizov/editor-gradients-united
Unite `GradientEdit` and `GradientEditor` as editor-only widget
2022-09-01 08:30:16 +02:00
Zhehang Ding
69fe6336f1 Basis constructor: row vectors -> column vectors 2022-08-31 21:20:25 -07:00
Yuri Sizov
93078ea551 Unite GradientEdit and GradientEditor as editor-only widget 2022-08-31 23:45:04 +03:00
clayjohn
385ee5c70b Implement Physical Light Units as an optional setting.
This allows light sources to be specified in physical light units in addition to the regular energy multiplier. In order to avoid loss of precision at high values, brightness values are premultiplied by an exposure normalization value.

In support of Physical Light Units this PR also renames CameraEffects to CameraAttributes.
2022-08-31 12:14:46 -07:00
Rémi Verschelde
fbf8632556
Merge pull request #64247 from guilhermefelipecgs/fix_end_node
Re-add AnimationNodeStateMachine::end_node for root state machine
2022-08-31 17:40:38 +02:00
Rémi Verschelde
96b470b28e
Merge pull request #63394 from Calinou/curve-gradient-rename-interpolate
Rename Curve/Curve2D/Curve3D/Gradient `interpolate()` to `sample()`
2022-08-31 08:37:12 +02:00
Hugo Locurcio
ae18928748
Rename Curve/Curve2D/Curve3D/Gradient interpolate() to sample()
"sampling" is a more accurate term than "interpolating" for what's
happening when using that function.
2022-08-30 22:08:38 +02:00
Twarit Waikar
a62b0ec904 VCS: Improve VCS UI/UX by QoL changes
The editor will now use the project path i.e. the place where the root of
the repo is supposed to be according to the user. This project path is
also sent into the plugin and so out-of-directory asset folders can also be
maintained this way.
2022-08-31 00:27:08 +05:30
Twarit Waikar
1bb5e65798 VCS: Replace usage of varray() by using callable_mp::bind() 2022-08-31 00:01:42 +05:30
Twarit Waikar
c698e4f5f9 VCS: Fix empty metadata items being moved across stages 2022-08-31 00:01:42 +05:30
Twarit Waikar
ef9885f81a VCS: Load a GDExtension instead of Script + UI port from 3.5 2022-08-31 00:01:42 +05:30
Twarit Waikar
4656ea8977 VCS: Port Godot 3.5's VCS features to GDExtension 2022-08-31 00:01:42 +05:30
Rémi Verschelde
02d510bd07
Merge pull request #63003 from Geometror/msaa-2d 2022-08-30 14:54:20 +02:00
Rémi Verschelde
ae349d8227
Merge pull request #64377 from Mickeon/rename-canvas-redraw
Rename `CanvasItem.update()` to `queue_redraw()`
2022-08-30 14:47:41 +02:00
Rémi Verschelde
0bf3f79157
Merge pull request #63902 from dalexeev/string-cases 2022-08-30 14:06:28 +02:00
Rémi Verschelde
ebe4f8d3a4
Merge pull request #65039 from Mickeon/rename-treeitem-tooltip 2022-08-30 14:05:08 +02:00
kobewi
2855b591fb Simplify script list click logic 2022-08-30 13:38:03 +02:00
Danil Alexeev
d4555ef5fb
Add String.to_{camel,pascal,snake}_case methods 2022-08-30 12:36:24 +03:00
Micky
97f8c9b97c Rename TreeItem's set_tooltip to set_tooltip_text
`set_tooltip` -> `set_tooltip_text`
`get_tooltip` -> `get_tooltip_text`

For consistency:
`get_button_tooltip` -> `get_button_tooltip_text`
And the `tooltip` parameter in `add_button` was renamed to `tooltip_text`
2022-08-30 11:16:23 +02:00
Rémi Verschelde
432b25d364
Merge pull request #65066 from aaronfranke/str-path-join 2022-08-30 10:01:11 +02:00
Rémi Verschelde
21b218c9ea
Merge pull request #65053 from YuriSizov/editor-bones-but-no-meat
Properly handle theme changes in the Skeleton3DEditor
2022-08-30 08:45:07 +02:00
Rémi Verschelde
4d7628be85
Merge pull request #45764 from gongpha/update-animation-tree-editor-when-selected
Update all AnimationTree's editors when editing
2022-08-30 08:37:11 +02:00
Aaron Franke
10a56981dc
Rename String plus_file to path_join 2022-08-29 19:38:13 -05:00
Yuri Sizov
1839ec96a7 Properly handle theme changes in the Skeleton3DEditor 2022-08-29 21:39:56 +03:00
Kongfa Waroros
0f17fe642c Update all AnimationTree's editors when editing 2022-08-30 01:04:34 +07:00
Yuri Sizov
88ab58821d Fix some editor theme regressions 2022-08-29 18:01:41 +03:00
Micky
e31bb5ffeb Rename CanvasItem.update() to queue_redraw()
Affects a lot of classes. Very thoroughly checked signal connections and deferred calls to this method, add_do_method/add_undo_method calls, and so on.

Also renames the internal `_update_callback()` to `_redraw_callback()` for consistency.

Just a few comments have also been changed to say "redraw".

In CPUParticles2D, there was a private variable with the same name. It has been renamed to `do_redraw`.
2022-08-29 14:59:47 +02:00
Rémi Verschelde
e60086f98b
Merge pull request #64119 from YuriSizov/theme-init-database 2022-08-29 14:02:21 +02:00
Rémi Verschelde
322c812231
Merge pull request #65023 from Faless/js/4.x_is_web 2022-08-29 13:00:32 +02:00
Fabio Alessandrelli
d20b32186f [Web] Rename JavaScript platform to Web.
Also rename export name from "HTML5" to "Web".
2022-08-29 11:52:00 +02:00
Rémi Verschelde
fd6453c45e Revert "Remove NOTIFICATION_ENTER_TREE when paired with NOTIFICATION_THEME_CHANGED"
This reverts commit 4b817a565c.

Fixes #64988.
Fixes #64997.

This caused several regressions (#64988, #64997,
https://github.com/godotengine/godot/issues/64997#issuecomment-1229970605)
which point at a flaw in the current logic:

- `Control::NOTIFICATION_ENTER_TREE` triggers a *deferred* notification with
  `NOTIFCATION_THEME_CHANGED` as introduced in #62845.
- Some classes use their `THEME_CHANGED` to cache theme items in
  member variables (e.g. `style_normal`, etc.), and use those member
  variables in `ENTER_TREE`, `READY`, `DRAW`, etc. Since the `THEME_CHANGE`
  notification is now deferred, they end up accessing invalid state and this
  can lead to not applying theme properly (e.g. for EditorHelp) or crashing
  (e.g. for EditorLog or CodeEdit).

So we need to go back to the drawing board and see if `THEME_CHANGED` can be
called earlier so that the previous logic still works?

Or can we refactor all engine code to make sure that:
- `ENTER_TREE` and similar do not depend on theme properties cached in member
  variables.
- Or `THEME_CHANGE` does trigger a general UI update to make sure that any
  bad theme handling in `ENTER_TREE` and co. gets fixed when `THEME_CHANGE`
  does arrive for the first time. But that means having a temporary invalid
  (and possibly still crashing) state, and doing some computations twice
  which might be heavy (e.g. `EditorHelp::_update_doc()`).
2022-08-29 11:11:29 +02:00
Rémi Verschelde
1782557339
Merge pull request #64386 from timothyqiu/anim-disable
Fix crash when loading Animation Library after reloading a scene
2022-08-29 07:50:00 +02:00
Yuri Rubinsky
cb62d31938
Merge pull request #64981 from Chaosus/vs_fix 2022-08-28 22:37:54 +03:00
Rémi Verschelde
f7f8af232c
Merge pull request #64885 from Mickeon/rename-tooltip-hint
Rename `hint_tooltip` to `tooltip_text` & setter getter
2022-08-28 17:43:01 +02:00
Yuri Rubinsky
5ccc6e2ec8 Fix category of new added visual shader functions 2022-08-28 12:40:54 +03:00
Yuri Rubinsky
1f9b992d85
Merge pull request #64248 from paddy-exe/built-in-shader-functions 2022-08-28 09:04:52 +03:00
Patrick Exner
55bbcc54e7 Implement custom non-trivial shader functions 2022-08-27 22:59:12 +02:00
Rémi Verschelde
d3db8bbebd
Merge pull request #62846 from AaronRecord/remove_redundant_theme_updates_in_enter_tree
Remove `NOTIFICATION_ENTER_TREE` when paired with `NOTIFICATION_THEME_CHANGED`
2022-08-27 21:56:14 +02:00
Aaron Record
4b817a565c Remove NOTIFICATION_ENTER_TREE when paired with NOTIFICATION_THEME_CHANGED 2022-08-27 11:52:29 -06:00
Rémi Verschelde
f9998455ce
Merge pull request #63249 from V-Sekai/animation_tree_editor_read_only
Add read-only mode to AnimationTreeEditor plugins
2022-08-27 08:14:30 +02:00
Josh Jones
3dd59013f4 Added node for Navigation links 2022-08-26 22:05:15 -07:00
Micky
ef5b9a06a9 Rename hint_tooltip to tooltip_text & setget
`hint_tooltip` -> `tooltip_text`
`set_tooltip` -> `set_tooltip_text`
`_get_tooltip` -> `get_tooltip_text`

Updates documentation, too.
2022-08-27 01:35:01 +02:00
Rémi Verschelde
f9f2446972
Merge pull request #64367 from Mickeon/rename-var-to-str
Rename `str2var` to `str_to_var` and similar
2022-08-26 23:04:06 +02:00
Yuri Sizov
6320a0fc18 Add ThemeDB, expose previously static Theme methods 2022-08-26 19:23:05 +03:00
Micky
59e11934d8 Rename str2var to str_to_var and similar
Affects the Math class, a good chunk of the audio code, and a lot of other miscellaneous classes, too.

- `var2str` -> `var_to_str`
- `str2var` -> `str_to_var`
- `bytes2var` -> `bytes_to_var`
- `bytes2var_with_objects` -> `bytes_to_var_with_objects`
- `var2bytes` -> `var_to_bytes`
- `var2bytes_with_objects` -> `var_to_bytes_with_objects`
- `linear2db` -> `linear_to_db`
- `db2linear` -> `db_to_linear`
- `deg2rad` -> `deg_to_rad`
- `rad2deg` -> `rad_to_deg`

- `dict2inst` -> `dict_to_inst`
- `inst2dict` -> `inst_to_dict`
2022-08-26 14:58:22 +02:00
fabriceci
f8cc88fab3 Restore RigidBody2/3D, SoftBody names in physics 2022-08-26 12:26:25 +02:00
Rémi Verschelde
dadebb95aa
Merge pull request #64601 from MinusKube/alternative-tile-popup-bug
Fix alternative tile popup menu not being openable
2022-08-26 10:35:43 +02:00
Rémi Verschelde
d93d646723
Merge pull request #64570 from KoBeWi/node🧳ing
Unify node casing adjustment
2022-08-26 09:49:58 +02:00
Rémi Verschelde
cd661d400e
Merge pull request #64566 from Mickeon/rename-particle-material
Rename ParticlesMaterial to ParticleProcessMaterial
2022-08-26 07:48:23 +02:00
kobewi
d764278f37 Add drag and drop support to shader list 2022-08-26 03:19:01 +02:00
Micky
723bf85145 Rename ParticlesMaterial to ParticleProcessMaterial
Also affects their file names, related classes and documentation.
2022-08-26 02:53:08 +02:00
Rémi Verschelde
51fcc2927b
Merge pull request #64597 from MinusKube/tileset-disappear-bug 2022-08-25 22:58:34 +02:00
SaracenOne
75f1357ced Add read-only mode to AnimationTreeEditor plugins 2022-08-25 16:29:36 +01:00
MinusKube
2abccb018e Fix alternative tile popup menu not being openable 2022-08-25 16:20:56 +02:00
MinusKube
d71b02cd19 Fix tileset image and background sometimes disappearing 2022-08-25 16:18:39 +02:00
Yuri Rubinsky
d4a10e7e04 Allow using integer varyings with flat interpolation modifier 2022-08-25 13:21:02 +03:00
Rémi Verschelde
b1f392c25e Remove VisualScript module for 4.0
As announced in https://godotengine.org/article/godot-4-will-discontinue-visual-scripting,
Godot maintainers have agreed to discontinue the current implementation of
our VisualScript language.

The way it had been designed was not user-friendly enough and we did not
succeed in improving its usability to actually make it a good low-code
solution for users who need one.

So we prefer to remove it for Godot 4.0 and leave the door open for new,
innovative ideas around visual scripting, to be developed as plugins or
extensions now that Godot provides sufficient functionality for this
(notably via GDExtension and the godot-cpp C++ bindings).

The current module has been moved to a dedicated repository (with full Git
history extracted with `git filter-branch`):

https://github.com/godotengine/godot-visual-script

It can still be compiled as a C++ module (for now, but will likely require
work to be kept in sync with the engine repository), but our hope is that
contributors will port it to GDExtension (which is quite compatibile with
the existing C++ module code when using the godot-cpp C++ bindings).
2022-08-24 12:08:17 +02:00
Rémi Verschelde
7055200bb0
Merge pull request #64730 from AlexHCC/fix-ruler-drawing-order
Fix ruler lines rendering on top of text
2022-08-24 08:53:16 +02:00
Rémi Verschelde
b556d8c9a0
Merge pull request #64370 from Mickeon/rename-marker-node
Rename Position* nodes to Marker*
2022-08-24 08:52:13 +02:00
Rémi Verschelde
91e5f48ea7
Merge pull request #64009 from KoBeWi/arrayy_lmao
Replace Array return types with TypedArray (part 2)
2022-08-24 08:18:56 +02:00
kobewi
1abdffe7a0 Replace Array return types with TypedArray 2 2022-08-23 23:21:32 +02:00
AlexHCC
db227f85e8 Fix ruler lines rendering on top of text 2022-08-24 00:00:56 +03:00
Rémi Verschelde
fc0b6abe52
Merge pull request #64617 from Mickeon/editor-restore-mesh-drop 2022-08-23 20:49:30 +02:00
Micky
8bb305356e Rename Position* nodes to Marker*
- Position2D -> Marker2D
- Position3D -> Marker3D

Also changes their respective file names.
2022-08-23 19:49:50 +02:00
Rémi Verschelde
5c5bc21195
Merge pull request #63854 from TokageItLab/auto-bone-mapping 2022-08-23 18:16:15 +02:00
Yuri Sizov
fe0c216bc7
Merge pull request #64587 from Calinou/editor-environment-defaults-decrease-shadow-max-distance
Decrease editor shadow maximum distance to match DirectionalLight3D default
2022-08-23 15:36:35 +03:00
Yuri Sizov
249517f132
Merge pull request #61493 from Calinou/editor-align-transform-rotate-decal
Rotate Decal nodes when using Align Transform/Rotation With View
2022-08-23 15:34:04 +03:00
Silc Renew
c7e4eeb8a4 Add simple auto mapping to BoneMapper
Co-authored-by: K. S. Ernest (iFire) Lee <ernest.lee@chibifire.com>
2022-08-23 16:43:33 +09:00
kobewi
8be27dc59e Replace Array return types with TypedArray 2022-08-22 22:42:36 +02:00
kobewi
ece3df3938 Add per-scene UndoRedo 2022-08-22 18:05:10 +02:00
Rémi Verschelde
af76fb4567
Merge pull request #63486 from TokageItLab/init-poses 2022-08-22 17:32:02 +02:00
Micky
6aa4c9c77a Restore ability to drag 'n' drop Mesh to Viewport 2022-08-20 16:39:44 +02:00
Yuri Sizov
7895a66cf2
Merge pull request #64334 from YuriSizov/core-bind-property-revert-methods
Make `property_*_revert` methods multilevel and expose them for scripting
2022-08-19 20:41:41 +03:00
Max Hilbrunner
420a8c888e
Merge pull request #63950 from bruvzg/menu_bar3
Implement MenuBar control to wrap Popup menus or native menu, use native menu for editor.
2022-08-19 01:24:24 +02:00
Yuri Sizov
480586899a
Merge pull request #63358 from YuriSizov/control-simplify-enhance-toolbar
Improve editor toolbar for `Control` nodes
2022-08-19 00:46:46 +03:00
Hugo Locurcio
693b933b7f
Decrease editor shadow maximum distance to match DirectionalLight3D default
This improves shadow texel density, leading to improved visual quality
(and higher performance in large scenes, as fewer objects will be
included in the shadow map).
2022-08-18 21:58:55 +02:00
bruvzg
8c56a7416b
Implement MenuBar control to wrap PopupMenus or native menu, use native menu for editor. 2022-08-18 22:25:44 +03:00
kobewi
fdab23163f Unify node casing adjustment 2022-08-18 14:08:40 +02:00
Silc Renew
b27fe6452d add init bone poses 2022-08-18 18:41:37 +09:00
Yuri Sizov
980f5f32f4 Make property_*_revert methods multilevel and expose them for scripting 2022-08-18 00:03:53 +03:00
Yuri Sizov
7a60cc7737 Improve editor toolbar for Control nodes 2022-08-16 17:36:16 +03:00
Aaron Franke
4396f03b70
Rename EditorPropertyShaderMode to EditorPropertyVisualShaderMode 2022-08-15 14:39:53 -05:00