Commit Graph

5367 Commits

Author SHA1 Message Date
Rémi Verschelde be126d42d4
Merge pull request #67588 from KoBeWi/if(!GDVIRTUAL_CALL)don't
Simplify GDVIRTUAL_CALL calls
2022-10-31 11:55:56 +01:00
Rémi Verschelde 33c7c8020a
Merge pull request #67489 from timothyqiu/auto-select-all
Allow selecting SpinBox & LineEdit text when focus enters
2022-10-31 11:55:06 +01:00
Rémi Verschelde 49c53027a9
Merge pull request #67786 from EricEzaM/67743-script-editor-shortcuts
Set the shortcut context for the edit/search/goto menus to the ScriptEditor so that shortcuts continue to work when FindReplaceBar is focused.
2022-10-31 11:07:48 +01:00
Rémi Verschelde 869c2bd6de
Merge pull request #68064 from kleonc/sprite-frames-editor-fix-frame-index-calculation
`SpriteFramesEditor` Fix calculating frame index from mouse position
2022-10-31 11:00:19 +01:00
Rémi Verschelde 4845feb95d
Merge pull request #68003 from timothyqiu/camera-gizmo-select
Make Camera3D gizmo clickable
2022-10-31 10:56:39 +01:00
Rémi Verschelde 420eb1aa34
Merge pull request #67445 from Zylann/rename_queue_delete
Rename queue_delete => queue_free
2022-10-31 10:51:18 +01:00
Rémi Verschelde d0fbeec66a
Merge pull request #67580 from KoBeWi/little_things
Minor code improvements
2022-10-31 10:34:57 +01:00
Haoyu Qiu 3ded27c62d Make Marker3D gizmo resizable 2022-10-31 15:19:48 +08:00
kleonc d135957987 `SpriteFramesEditor` Fix calculating frame index from mouse position 2022-10-30 21:26:58 +01:00
Dave Palais 3d0a9b2bec Remove the usage of pointers in signal call, to fix #67941
The signal was emitted right as the node was being disposed of. Since
the connection was deferred, the receiving method received an already
freed pointer. Instead, we listen to the text_changed signal and keep
record of the edited text which we then use to update node name when
the LineEdit goes out of focus.
2022-10-30 12:50:27 -05:00
Haoyu Qiu 877cb1cbc0 Improve dragging scene into 3D viewport
* When there's nothing to collide with:
    * Place the new scene on XZ plane when possible.
    * When the camera does not point toward the XZ plane or the
      intersection is too far away, place the new scene on a plane that
      is in front of the camera and parallel to the frame.
* Fixes positioning when in orthogonal view.
    * Place on physical collision point or the XZ plane when possible.
    * Otherwise, place it on the plane in front of the camera as if the
      camera was perspective.
* Makes use of snap settings when placing the new scene.
2022-10-29 23:34:39 +08:00
Haoyu Qiu 03bbacfdca Hide axis gizmo after translating 3D nodes 2022-10-29 16:17:28 +08:00
Haoyu Qiu eb5bfe158e Fix type mismatch error when deselecting a 3D gizmo 2022-10-29 15:15:28 +08:00
Haoyu Qiu ca9063fe4e Make Camera3D gizmo clickable 2022-10-29 12:38:21 +08:00
Haoyu Qiu 3aed3edc06 Allow selecting SpinBox & LineEdit text when focus enters 2022-10-29 09:58:42 +08:00
Clay John d1cc93af89
Merge pull request #67832 from Sauermann/fix-remove-unnecessary-casts
Remove unnecessary casts
2022-10-27 09:47:34 -07:00
Clay John 682156e1f0
Merge pull request #66383 from aaronfranke/basis-from-euler
Clean up Basis from Euler code
2022-10-27 09:44:21 -07:00
Alfred Reinold Baudisch 46f2a1674d Add math operators to Visual Shader node names
This change makes it easy, in the "Create Shader Node" dialog, to search for VS nodes by just typing the operator. For example, instead of typing "multiply", you can just type "*" and multiply nodes will be listed.

This feature is inspired by Unreal Engine node graph editor's UX.

Implements and closes https://github.com/godotengine/godot-proposals/issues/5663
2022-10-26 17:36:19 +02:00
MrBlockers 92ebbf2c0a Fix multiple issues with region editor
Make the filter mode of the texture preview match the node/resource
being edited where applicable, and nearest neighbor with mipmaps as a
fallback.

Make the Edit Region button for Sprite3D only appear when region is
enabled, to match behavior of Sprite2D.

Fix the editor not correctly clearing reference to previously edited
resources, resulting in a visual bug displaying the incorrect texture.
2022-10-25 18:23:23 -04:00
Eric M d499071e5b Set the shortcut context for the edit/search/goto menus to the ScriptEditor so that shortcuts continue to work when FindReplaceBar is focused. 2022-10-25 19:52:42 +10:00
Marc Gilleron 7543a5e014 Rename queue_delete => queue_free
# Conflicts:
#	editor/plugins/tiles/tiles_editor_plugin.cpp
2022-10-24 22:07:02 +01:00
Markus Sauermann 5ee449efec Remove unnecessary casts
button_add_item and button_add are both Button

p_parent is a Node3D

CanvasItem can never be cast to Viewport
2022-10-24 15:59:18 +02:00
kobewi 1e14502f84 Add one-way indicator to tile collision editor 2022-10-24 12:03:39 +02:00
Clay John 040f49ed6e
Merge pull request #67390 from groud/more_conservative_terrain_painting
Make terrain painting not change neighbors centers bits
2022-10-23 17:11:06 -07:00
Clay John dd8702f13d
Merge pull request #67426 from MrBlockers/blurry-texture-preview
Make texture preview filter setting content aware
2022-10-21 17:25:38 -07:00
Aaron Franke 7f9a8c99c9
Clean up Basis from Euler code 2022-10-21 17:54:49 -05:00
Max Hilbrunner 8ebc8813d5
Merge pull request #67314 from anvilfolk/quote-fix
Fix single-quotes incorrectly escaped when dragging into script editor
2022-10-21 18:12:09 +02:00
MrBlockers 4bddec7003 Make texture preview and picker use mipmap filter 2022-10-20 18:36:09 -04:00
Gilles Roudière fe65d7aa7b Make terrain painting not change neighbors centers bits 2022-10-20 14:47:45 +02:00
Max Hilbrunner f066f2c0de
Merge pull request #66940 from aaronfranke/doc-get-tr-aabb
Remove the global space `get_transformed_aabb` helper method
2022-10-19 22:40:02 +02:00
Max Hilbrunner b209065e89
Merge pull request #67543 from clayjohn/PLU-default
Use CameraAttributesPractical in the editor default environment
2022-10-19 21:49:57 +02:00
kobewi d06a8320e5 Simplify GDVIRTUAL_CALL calls 2022-10-19 00:05:48 +02:00
clayjohn 15e14c5b59 Use CameraAttributesPractical in the editor default environment
This avoids forcing DoF in the editor when physical light units are enabled
2022-10-18 10:15:53 -07:00
kobewi e48c5daddf Unify usage of GLOBAL/EDITOR_GET 2022-10-18 19:01:48 +02:00
kobewi 4aaed4fee1 Minor code improvements 2022-10-18 16:44:57 +02:00
Aaron Franke 9ebd8c5bb5
Remove the global space `get_transformed_aabb` helper method 2022-10-18 07:30:31 -05:00
João Martins 97bada99ee Fix single-quotes incorrectly escaped when dragging into script editor 2022-10-17 16:05:53 -04:00
Rémi Verschelde 36d5f0d1cc Merge pull request #64277 from KoBeWi/script_editor🧹🧹
Reorganize script editor menu
2022-10-17 17:31:14 +02:00
Rémi Verschelde eb4711dafb Merge pull request #67411 from rburing/editor_cast_rays_in_physics_process
Node3D editor: cast rays in `NOTIFICATION_PHYSICS_PROCESS`
2022-10-17 17:31:07 +02:00
Marc Gilleron 9efb2e786e Fix case where mutex is never unlocked 2022-10-15 13:06:00 +01:00
Rémi Verschelde dc4b616596 Merge pull request #63332 from KoBeWi/static_images_aka_photos
Make some Image methods static
2022-10-15 12:56:57 +02:00
kobewi 985671012a Separate Line and CurveLinear icons 2022-10-15 02:00:39 +02:00
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
SaracenOne 15ccb319a9 Fix contextual visibility of tileset and tilemap editors 2022-09-05 16:34:09 +01: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 `PopupMenu`s 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
Yuri Rubinsky 22df2c527b Implement coloring for disabled branches in the shader editor 2022-08-14 13:57:26 +03:00
Haoyu Qiu d5a559abc2 Fix crash when loading Animation Library after reloading a scene 2022-08-14 18:50:42 +08:00
Hendrik Brucker e96b1a2c0c Implement MSAA for 2D [Vulkan only] 2022-08-13 01:09:48 +02:00
Clay John 368446de55
Merge pull request #63582 from KoBeWi/power_shader
Improvements to shader editor
2022-08-11 12:45:33 -06:00
kobewi e06cd2742f Add missing properties to default theme 2022-08-11 14:15:04 +02:00
Guilherme Felipe de C. G. da Silva 15b5bc88e2 Re-add AnimationNodeStateMachine::end_node for root state machine
Fix #63660
2022-08-10 19:29:53 -03:00
Rémi Verschelde 11abffbf12
Merge pull request #64215 from Calinou/editor-allow-numpad-zoom-shortcuts 2022-08-10 16:31:57 +02:00
Rémi Verschelde cf95056c91
Merge pull request #63245 from V-Sekai/animation_editor_read_only 2022-08-10 15:26:21 +02:00
Hugo Locurcio ccf088b40b
Allow using numpad for zoom shortcuts in the 2D/code editors
This behavior is consistent with GIMP.
2022-08-10 15:07:47 +02:00
Rémi Verschelde d9d5990c51
Merge pull request #64034 from DarkKilauea/fix-nav-region-gizmo 2022-08-08 22:37:00 +02:00
Rémi Verschelde 660828e771
Merge pull request #63253 from V-Sekai/disable_sprite_conversion_on_foreign_nodes 2022-08-08 16:27:38 +02:00
Rémi Verschelde 76391a091e
Merge pull request #64070 from Calinou/3d-editor-remove-alt-fov-adjustment 2022-08-08 11:59:17 +02:00
Rémi Verschelde bc81c02fe1
Merge pull request #62571 from Calinou/gpuparticlescollisionsdf3d-add-bake-mask 2022-08-08 10:18:11 +02:00
Rémi Verschelde 335b51be70
Merge pull request #64050 from pulawskig/master 2022-08-08 09:00:13 +02:00
kingoftheconnors 5042e077c2 Change import animation error to "animation nodes" 2022-08-07 17:32:59 -04:00
Hugo Locurcio 4f233300b6
Remove FOV adjustment with Alt + mouse wheel in the 3D editor
This shortcut got in the way when using the Maya navigation scheme,
and also when using the slow freelook modifier (regardless of
navigation scheme).
2022-08-07 19:45:54 +02:00
Rémi Verschelde f754dd20be
Merge pull request #62454 from Geometror/reflect-refract-vec2-vec4
Allow for vec2/vec4 to be used in reflect and refract
2022-08-07 19:16:05 +02:00
Hendrik Brucker b8d5f4bdd5 Allow vec2 and vec4 for reflect and refract 2022-08-07 18:03:16 +02:00
Grzegorz Puławski ba58491ca7 Fix axis snapping of CollisionPolygon2d's newly created vertex 2022-08-07 15:10:28 +02:00
Josh Jones 92c40bcf32 Fix NavigationRegion3D gizmo's odd visual behavior 2022-08-06 23:54:57 -07:00
Rémi Verschelde c80540f9a2
Merge pull request #63700 from YeldhamDev/no_methods_to_filter_pal
Hide method filter bar when selecting a doc in the Script editor
2022-08-06 00:39:30 +02:00
Rémi Verschelde d100c2d59f
Merge pull request #63776 from fire-forge/shapecast2d
Add ShapeCast2D editor handle and improve debug drawing
2022-08-06 00:27:41 +02:00
Hakim 60677c4e95 Remove rect_ prefix from control properties when keyframing 2022-08-05 16:04:51 +02:00
Hugo Locurcio db22b7ded0
Rename shader parameter uniform setter/getter methods for consistency
`shader_uniform` is now consistenly used across both per-shader
and per-instance shader uniform methods. This makes methods easier
to find in the class reference when looking for them.
2022-08-04 23:17:06 +02:00
Yuri Sizov ebcfd13c30 Add text overrun behavior for the theme type selector 2022-08-04 19:07:10 +03:00
Hugo Locurcio ecefb5505a
Rename visual shader editor setting category for proper capitalization 2022-08-03 11:38:29 +02:00
Patrick Exner fe5901310e Add spatial built-ins (camera-pos, object-pos, camera-eye etc.) 2022-08-02 17:30:41 +02:00
Rémi Verschelde 0f9e84feab
Merge pull request #50614 from foxydevloper/clarify-group-tooltip
Improve tooltips for grouping/ungrouping nodes
2022-08-02 15:56:27 +02:00
Yuri Sizov 86798d36db Remove `CustomPropertyEditor` completely 2022-08-01 22:57:05 +03:00
Yuri Sizov 1c9ba5ef3e Remove excessive `editor/property_editor.h` includes 2022-08-01 17:19:11 +03:00
FireForge 7cfa9ae539 Improve ShapeCast2D editor and debug drawing
- Rename RayCast2DEditorPlugin to Cast2DEditorPlugin and make it also support editing ShapeCast2D.
- Apply RayCast2D debug drawing improvements from #46675 to ShapeCast2D.
2022-07-31 17:47:36 -05:00
Rémi Verschelde 8ad80f0547
Merge pull request #63737 from YuriSizov/editorresourceconversionpluginactomy 2022-07-31 23:52:38 +02:00
MinusKube 7d9a5d79e6 Find a better solution for the script editor member list sometimes not being updated 2022-07-31 21:43:11 +02:00
Yuri Sizov 9f55bd971e Extract EditorResourceConversionPlugin into its own source files and clean up editor includes 2022-07-31 21:14:15 +03:00
foxydevloper 1ff9a09e2c Improve tooltips for grouping/ungrouping nodes 2022-07-31 10:56:32 -04:00
Rémi Verschelde 66d1bb84c3
Merge pull request #63697 from YeldhamDev/script_elements_fix
Fix elements not being shown on first selected script/doc
2022-07-31 01:14:57 +02:00
Michael Alexsander c86cceb423 Hide method filter bar when selecting a doc in the Script editor 2022-07-30 20:07:46 -03:00
Michael Alexsander c9fe780239 Fix elements not being shown on first selected script/doc 2022-07-30 19:33:58 -03:00
SnailRhymer 0ac971c0d3 Fix default values for rotation snapping in canvas_item_editor_plugin.cpp
Default values for snap_rotation_step and snap_rotation_offset were transposed. Swap them back.
2022-07-30 20:05:24 +01:00
Rémi Verschelde cca072aa86
Merge pull request #63679 from PrecisionRender/master
Fix `ShapeCast3D` creating runtime shape in editor
2022-07-30 18:22:52 +02:00
PrecisionRender 2f46749f4e Fix `ShapeCast3D` creating runtime shape in editor 2022-07-30 10:21:53 -05:00
bruvzg 18aad2807e
Fix font preview plugin not using editor scale. 2022-07-29 23:42:09 +03:00
Rémi Verschelde 15a02c49be
Merge pull request #61647 from KoBeWi/SaverResource 2022-07-29 22:30:51 +02:00
kobewi c3606cb5f3 Swap arguments of ResourceSaver.save() 2022-07-29 19:53:09 +02:00
Rémi Verschelde 6ba7dacf6b
Merge pull request #63415 from ajreckof/expose_tilemap_custom_data_methods
Expose TileMap methods related to the name of custom data layers
2022-07-29 19:43:55 +02:00
Rémi Verschelde ba3734e69a
Merge pull request #63603 from aaronfranke/editor-paths
Move editor paths into the EditorPaths class
2022-07-29 19:31:59 +02:00
Rémi Verschelde 7199314eb3
Merge pull request #63595 from reduz/remove-signal-connect-binds
Remove Signal connect binds
2022-07-29 18:10:39 +02:00
Aaron Franke ac870ab1c8
Move editor paths into the EditorPaths class 2022-07-29 11:07:30 -05:00
Juan Linietsky d4433ae6d3 Remove Signal connect binds
Remove the optional argument p_binds from `Object::connect` since it was deprecated by Callable.bind().
Changed all uses of it to Callable.bind()
2022-07-29 16:26:13 +02:00
ajreckof 8433ad5353 expose TileMap methods related to the name of custom data layers 2022-07-29 15:05:42 +02:00
Rémi Verschelde 8b454f8b41
Merge pull request #62601 from smix8/navigation_3d_debug_4.x 2022-07-29 12:29:32 +02:00
Rémi Verschelde 9869182e8a
Merge pull request #62629 from linkpy/master
Make the alternative tile control correctly handle right-click dragging.
2022-07-29 10:14:42 +02:00
smix8 c394ea518e Add more detailed Navigation Debug Visualization
- Adds more customization options to ProjectSettings.
- Displays navregion edge connections and navigation polygon edges in editor and at runtime.
- Majority of debug code moved from SceneTree to NavigationServer.
- Removes the irritating debug MeshInstance child node from NavigationRegion3D and replaces it with direct RenderingServer API.
2022-07-29 09:58:41 +02:00
Rémi Verschelde 7c93373008
Merge pull request #63161 from PrecisionRender/master
Add `ShapeCast3D` node
2022-07-29 08:07:13 +02:00
Estelle Linkpy Reid d5926b435e Make the alternative tile control correctly handle right-click dragging. 2022-07-29 03:11:08 +02:00
Rémi Verschelde 14d021287b
Merge pull request #63049 from Faless/mp/4.x_as_module 2022-07-28 20:46:31 +02:00
Rémi Verschelde 8e0f328a80
Merge pull request #59840 from Calinou/renderingserver-global-uniform-rename 2022-07-28 20:34:17 +02:00
PrecisionRender 8cbb9b8b0a Add ShapeCast3D node 2022-07-28 12:08:42 -05:00
Hugo Locurcio 4b42379c8f
Rename RenderingServer global shader uniform methods to be more explicit
The `global_shader_uniform` name is longer, but it makes it much
easier to find the methods when searching in the class reference.
2022-07-28 18:46:59 +02:00
kobewi beabbad390 Improvements to shader editor 2022-07-28 18:28:38 +02:00
Hugo Locurcio e24029edc3
Allow changing mipmap LOD bias when FSR 1.0 scaling is not used
Mipmap LOD bias can be useful to improve the appearance of distant
textures without increasing anisotropic filtering (or in situations
where anisotropic filtering is not effective).

`fsr_mipmap_bias` was renamed to `texture_mipmap_bias` accordingly.
The property hint now allows for greater precision as well.
2022-07-28 17:51:13 +02:00
Rémi Verschelde 2e05cc3314
Merge pull request #58361 from V-Sekai/tileset_editor_selection
Fix tileset editor visiblity and selection context
2022-07-28 17:31:21 +02:00
Rémi Verschelde 7281f0f238
Merge pull request #62350 from Valeryn4/fix_animation_state_machine
Validate AnimationNode name in AnimationStateMachine
2022-07-28 10:39:58 +02:00
Valerii c28efd6c95 Validate AnimationNode name in AnimationStateMachine
Fixes #60959.
2022-07-28 10:16:45 +02:00
Rémi Verschelde 199ea349f5
Merge pull request #57698 from bluenote10/feature/rename_translated_to_translated_local 2022-07-28 10:03:07 +02:00
Rémi Verschelde 72e9122514
Merge pull request #63558 from TokageItLab/skel-validator 2022-07-28 09:25:45 +02:00
Rémi Verschelde 422725cffc
Merge pull request #56597 from V-Sekai/material_drag_and_drop
Add drag-and-drop support for materials in 3D Instances
2022-07-28 09:22:38 +02:00
Silc 'Tokage' Renew 3b89bf901a Make BoneMapper validation stricter 2022-07-28 07:27:41 +09:00
Rémi Verschelde ed61fb2a8b
Merge pull request #63138 from TokageItLab/normalize-position-track
Add position track normalization to importer retarget
2022-07-27 16:49:18 +02:00
Rémi Verschelde cc5135959b
Merge pull request #62973 from bruvzg/sysfont_support 2022-07-27 13:38:30 +02:00
Rémi Verschelde f3fbb157ca
Merge pull request #63121 from aaronfranke/editor-export-split 2022-07-27 11:19:40 +02:00
Hugo Locurcio ad9a8e70f4
Merge pull request #62888 from Calinou/editor-material-preview-improve-appearance
Improve appearance of the material editor preview
2022-07-27 00:25:12 +02:00
Rémi Verschelde 222e489dfd
Merge pull request #63496 from groud/fix_tile_set_not_saving
Fix TileSet not loading correctly when embedded in a scene
2022-07-26 18:27:05 +02:00
Gilles Roudière 8da2710911 Fix TileSet not loading correctly when embedded in a scene 2022-07-26 17:39:35 +02:00
Aaron Franke e53ae13178
Split up editor export code into multiple files 2022-07-26 08:28:19 -05:00
Silc Renew dde235ad82 add position track normalization & post process key value for retarget 2022-07-26 18:48:08 +09:00
Fabio Alessandrelli ca7d572908 [Net] Modularize multiplayer, expose MultiplayerAPI to extensions.
- RPC configurations are now dictionaries.
- Script.get_rpc_methods renamed to Script.get_rpc_config.
- Node.rpc[_id] and Callable.rpc now return an Error.
- Refactor MultiplayerAPI to allow extension.
- New MultiplayerAPI.rpc method with Array argument (for scripts).
- Move the default MultiplayerAPI implementation to a module.
2022-07-26 09:31:12 +02:00
bruvzg 36ef8f29dc
Implement support for loading system fonts on Linux, macOS / iOS and Windows. 2022-07-26 08:38:05 +03:00
Rémi Verschelde 49b0aa93e3
Merge pull request #63424 from Chaosus/shader_preprocessor_inc_fix 2022-07-25 14:56:06 +02:00
Yuri Rubinsky be3fb7a216 Fix errors when using built-ins in shaderinc 2022-07-25 12:33:04 +03:00
Rémi Verschelde 90019676b0 Code quality: Fix header guards consistency
Adds `header_guards.sh` bash script, used in CI to validate future
changes. Can be run locally to fix invalid header guards.
2022-07-25 11:17:40 +02:00
Rémi Verschelde 3084a48ace
Merge pull request #63219 from reduz/implement-vector4-projection 2022-07-25 11:13:27 +02:00
reduz 455c06ecd4 Implement Vector4, Vector4i, Projection
Implement built-in classes Vector4, Vector4i and Projection.

* Two versions of Vector4 (float and integer).
* A Projection class, which is a 4x4 matrix specialized in projection types.

These types have been requested for a long time, but given they were very corner case they were not added before.
Because in Godot 4, reimplementing parts of the rendering engine is now possible, access to these types (heavily used by the rendering code) becomes a necessity.

**Q**: Why Projection and not Matrix4?
**A**: Godot does not use Matrix2, Matrix3, Matrix4x3, etc. naming convention because, within the engine, these types always have a *purpose*. As such, Godot names them: Transform2D, Transform3D or Basis. In this case, this 4x4 matrix is _always_ used as a _Projection_, hence the naming.
2022-07-23 14:00:01 +02:00
Rémi Verschelde a5bc65bbad
Merge pull request #63265 from reduz/stream-bpm-support
Implement BPM support in AudioStream files.
2022-07-23 11:21:14 +02:00
Yuri Rubinsky 5705825d55 Fix clearing errors indication in the shader editor 2022-07-23 11:32:04 +03:00
Yuri Rubinsky 6d992abb54 Fix some errors after shader preprocessor PR 2022-07-23 09:38:59 +03:00
reduz d1ddee2258 Implement BPM support
Based on #62896, only implements the BPM support part.

* Implements BPM support in the AudioStreamOGG/MP3 importers.
* Can select BPM/Bar Size and total beats in a song file, as well as edit looping points.
* Looping is now BPM aware
* Added a special importer UI for configuring this.
* Added a special preview showing the audio waveform as well as the playback position in the resource picker.
* Renamed `AudioStream::instance` to `instantiate` for correctness.
2022-07-23 07:31:17 +02:00
Rémi Verschelde fe929d4787
Merge pull request #62513 from reduz/shader_preprocessor_remake 2022-07-23 00:02:33 +02:00
Rémi Verschelde e5df1e65f9
Merge pull request #62581 from Guh-Feng/Color-Picker-Update 2022-07-22 23:46:27 +02:00
reduz f649678402 Clean up Shader Preprocessor
* Moved preprocessor to Shader and ShaderInclude
* Clean up RenderingServer side
* Preprocessor is separate from parser now, but it emits tokens with include location hints.
* Improved ShaderEditor validation code
* Added include file code completion
* Added notification for all files affected by a broken include.
2022-07-22 22:53:03 +02:00
Yuri Roubinsky 7b94603baa Adding shader preprocessor support
Co-authored-by: TheOrangeDay <6472143+TheOrangeDay@users.noreply.github.com>
2022-07-22 22:51:57 +02:00
Guh-Feng 1b8652e86a Color Pickers Respect Settings
Updated editor_node with function that sets up color pickers throughout Godot to respect editor's settings.
2022-07-21 18:11:09 -04:00
Rémi Verschelde f40aafeb39
Merge pull request #63244 from KoBeWi/canvas_picker 2022-07-21 16:34:16 +02:00
SaracenOne bd0819d4a0 Disable plugin for conversion of foreign Sprite2D to different types 2022-07-21 15:04:29 +01:00
SaracenOne 7776b47489 Add read-only mode to AnimationEditor for foreign resources. 2022-07-21 14:46:58 +01:00
luz paz 38aaaa3cf9 Fix various typos not caught by codespell
Revert upstream `core/input/gamecontrollerdb.txt`. Upstream fix: https://github.com/gabomdq/SDL_GameControllerDB/pull/600
2022-07-21 07:38:23 -04:00
kobewi dabe021f19 Fix selection list in 2D editor 2022-07-21 12:24:02 +02:00
Rémi Verschelde 4ba6c9a19f
Merge pull request #63229 from Chaosus/vs_fix_icons 2022-07-20 22:25:04 +02:00
Rémi Verschelde e1901008a5
Merge pull request #63247 from YuriSizov/toolbars-go-with-the-flow 2022-07-20 21:38:56 +02:00
Rémi Verschelde e1c50152a0
Merge pull request #63232 from nathanfranke/simplify-editor-anchors
Simplify alignment preset, fixing icon for full rect
2022-07-20 21:15:14 +02:00
Rémi Verschelde 9a941ea35e
Merge pull request #61347 from fire-forge/theme-icons
Add type icons to Theme editor Import Items tab
2022-07-20 21:05:34 +02:00
Yuri Sizov dcd64799ef Use FlowContainer to handle toolbar overflow more gracefully 2022-07-20 20:43:45 +03:00
Nathan Franke f3d43a384d
simplify alignment preset, fixing icon for full rect 2022-07-20 12:18:33 -05:00
Yuri Rubinsky 702b6a00d8 Fix icons not loaded correctly in the visual shader editor 2022-07-20 19:24:42 +03:00
SaracenOne 86aa2a8578 Add drag-and-drop support for materials in 3D
Add mesh surface picking for material drag & drop, show drag info label
2022-07-19 12:49:09 -07:00
Rémi Verschelde 8351d75b7f
Merge pull request #63195 from Rindbee/fix-wrong-clear-edit-menu 2022-07-19 13:49:43 +02:00
Rindbee 8972dd8492 Fix incorrectly clearing edit menu
Delete only if `editor_enabled` is true, otherwise destructor may delete it repeatedly.
2022-07-19 19:09:27 +08:00
Rémi Verschelde 7fd29b5464
Merge pull request #59301 from fire-forge/layout-preset-full-rect 2022-07-19 12:06:00 +02:00
Rémi Verschelde 00c0fbb8cf
Merge pull request #62871 from fire-forge/vector2i 2022-07-19 08:45:49 +02:00
FireForge 468157bfe0 Capitalize the SpriteFrames search bar placeholder
Follow-up to https://github.com/godotengine/godot/pull/49488
2022-07-18 20:15:50 -05:00
FireForge 97dfbea6ad Rename Control PRESET_WIDE to PRESET_FULL_RECT 2022-07-18 20:08:11 -05:00
FireForge 84431bd782 Use integer types in Image and ImageTexture methods
- Image.blit_rect()
- Image.blit_rect_mask()
- Image.blend_rect()
- Image.blend_rect_mask()
- Image.fill_rect()
- Image.get_used_rect()
- Image.get_rect()
- ImageTexture.set_size_override()
2022-07-18 19:43:32 -05:00
kleonc a4d8c78e48 SpriteFramesEditor Add animation searchbox 2022-07-18 15:47:12 +02:00
Rémi Verschelde 1c6148aa86
Merge pull request #63062 from Chaosus/vs_fix 2022-07-18 12:05:36 +02:00
Rémi Verschelde 5a6b13b8bb
Merge pull request #62939 from TokageItLab/implement-rest-fixer
Add Rest Fixer to importer retarget
2022-07-16 16:54:20 +02:00
Yuri Rubinsky f05fce405e Fix visual shader graph not correctly updating when multiple tabs opened 2022-07-16 16:43:06 +03:00
Silc Renew 9be288edf9 refactor sync in AnimationTree 2022-07-16 21:45:32 +09:00
Silc Renew f3af3aedfe add rest fixer to importer retarget 2022-07-16 19:53:11 +09:00
Fabian Keller 2bf9e6090c rename translate(d) to translate(d)_local in Transform 2D/3D 2022-07-16 11:47:54 +02:00
kobewi 87fb95f1ff Clear drag_selection when drag ends 2022-07-14 14:51:47 +02:00
kobewi 38d8cb4782 Fix drag_selection crash on scene close 2022-07-14 02:31:52 +02:00
Hugo Locurcio 23dcc3345b
Tweak the name for new animations in the editor
- Use snake_case to "suggest" the naming that fits the Godot style guide.
- Fully spell out "new_animation" since both editors can fit it in full.
- Don't internationalize the new animation name to have consistent
  behavior between both editors.
  - Since the recommendation is to follow snake_case, special characters
    should also be avoided in the name to make animations easier to refer
    to in code.
2022-07-13 19:57:48 +02:00
Hugo Locurcio 21ea1c3835
Rename soft shadow quality project settings for easier searching
`rendering/quality/shadows` is now `rendering/quality/positional_shadow`
to explicitly denote that the settings only affect positional light shadows,
not directional light shadows.

Shadow atlas settings now contain the word "atlas" for easier searching.

Soft shadow quality settings were renamed to contain the word "filter".
This makes the settings appear when searching for "filter" in the
project settings dialog, like in Godot 3.x.
2022-07-13 19:56:02 +02:00
Rémi Verschelde 200009cd48
Merge pull request #62282 from fire-forge/gradient2d-editor-fix
Fix GradientTexture2D editor height
2022-07-13 14:11:11 +02:00
Rémi Verschelde b942c1ffe3
Merge pull request #62827 from fire-forge/ok-cancel
Add `ok_button_text` to AcceptDialog and `cancel_button_text` to ConfirmationDialog
2022-07-13 14:10:38 +02:00
Hugo Locurcio 99ac090233
Improve appearance of the material editor preview
- Use lower camera FOV to show more of the sphere/box, while still
  fully displaying the meshes in question.
2022-07-10 18:47:09 +02:00
FireForge af19501cc7 Seperate filter and description in FileDialog.add_filter() 2022-07-09 10:51:45 -05:00
FireForge e4067064ce Add ok_button_text to AcceptDialog and cancel_button_text to ConfirmationDialog 2022-07-09 10:47:08 -05:00
kobewi d2900429e8 Add static methods for creating Image and ImageTexture 2022-07-08 13:40:47 +02:00
Rémi Verschelde 0e3ac839b4
Merge pull request #62638 from Calinou/animationtree-editor-use-antialiasing 2022-07-08 10:17:40 +02:00
Rémi Verschelde 7d3ff927de
Merge pull request #62075 from Vitika9/gsoc-colorpicker 2022-07-08 09:06:47 +02:00
bruvzg a319e6e623
Fix regressions from Font refactor
Fixes `p_font.is_null()` errors due to incorrect resource type used.
Fixes code editor font not set correctly, and OpenType features applied to the wrong font.
2022-07-07 15:11:08 +03:00
Rémi Verschelde 1e553e34fb
Merge pull request #62108 from bruvzg/font_config_v3 2022-07-07 12:22:49 +02:00
Vitika9 0011d93c81 ColorPicker Refactor 2022-07-06 22:11:43 +05:30
Rémi Verschelde 635d447a69
Merge pull request #62713 from YuriSizov/docs-scripting-annotations 2022-07-06 15:31:19 +02:00
bruvzg 344ba0ffaf
Refactor Font configuration and import UI, and Font resources. 2022-07-06 14:12:36 +03:00
Guilherme Felipe 51aa57328a [Node3DEditorViewport] Add correct margin for rotation control and fps label. 2022-07-05 17:32:16 -03:00
kobewi 072e2ff659 Show the transform operation numbers in 2D 2022-07-05 13:19:32 +02:00
Yuri Sizov a9098e6147 Add support for documenting built-in annotations 2022-07-04 20:21:39 +03:00
bruvzg e3d5bc2098
Use autowrap in the curve editor. 2022-07-04 10:13:11 +03:00
Rémi Verschelde 5cc830892a
Merge pull request #62681 from Jummit/keep-perspective-menu
Keep Perspective menu open after selecting an option
2022-07-04 08:21:57 +02:00
Jummit e3ab344af9 Keep Perspective menu open on selection
Makes the Perspective menu consistent with the View menu in the 3D
viewport. This allows for quicker inspection of the scene, and makes
missclicks more forgiving.
2022-07-03 17:23:41 +02:00
Rémi Verschelde b2a4cac9f4
Merge pull request #62649 from Calinou/3d-editor-gizmos-fix-gi 2022-07-03 15:30:08 +02:00
Hugo Locurcio de976eb82f
Fix 3D editor gizmos appearing in GI following default GI mode change 2022-07-02 23:19:01 +02:00
python273 d65eb592b0 Make asset library's column count dynamic 2022-07-02 23:42:09 +03:00
Hugo Locurcio feac27476c
Use antialiasing for line drawing in the AnimationTree editor
- Use EDSCALE where relevant to improve scaling on hiDPI displays.
2022-07-02 18:26:41 +02:00
Rémi Verschelde a2459c7d35
Merge pull request #61610 from TokageItLab/importer-retarget-registered-gdhumanoid 2022-07-02 00:17:21 +02:00
Kirill 924658a849
Stretch image on resize in asset description dialog 2022-07-01 17:17:40 +03:00
Hugo Locurcio 32973094f5
Add a Bake Mask property to GPUParticlesCollisionSDF3D
This allows not accounting for certain visible meshes during baking
(such as foliage and thin fixtures).

This also adds a clarification about transparent materials always
being excluded in the OccluderInstance3D documentation.
2022-06-30 23:12:40 +02:00
Silc Renew dc43cfc830 implement bone renamer in importer 2022-07-01 03:55:28 +09:00
Rémi Verschelde 1e082914e2
Merge pull request #62299 from Calinou/texture-preview-add-mipmap-memory-usage
Mention mipmap and memory usage in the texture editor preview
2022-06-30 13:12:09 +02:00
Rémi Verschelde fd3970f762
Merge pull request #62531 from Faless/fix/4.x_assetlib_is_available 2022-06-30 10:06:17 +02:00
Fabio Alessandrelli 0e504e4191 [AssetLib] Fix crash in Web editor.
Add EditorAssetLibrary::is_available which always returns false in the
Web editor and use it in EditorNode for detection.
2022-06-30 01:26:08 +02:00
Rémi Verschelde a7e589df38
Merge pull request #62084 from smix8/path_debug_options_4.x
Add Path2D/3D debug options
2022-06-29 20:36:43 +02:00
Hugo Locurcio 87c989f98d
Mention mipmap and memory usage in the texture editor preview
This is important to quickly determine if a texture is using
unexpectedly high amounts of memory, or to troubleshoot
why mipmap sampling modes have no effect on it.

- Improve readability by increasing outline size and reducing
  font size to match the rest of the editor UI.
2022-06-29 17:38:50 +02:00
K. S. Ernest (iFire) Lee 9ddebc0c22 Add a const call mode to Object, Variant and Script.
For this to work safely (user not call queue_free or something in the expression), a const call mode was added to Object and Variant (and optionally Script).

This mode ensures only const functions can be called, making it safe to use from the editor.

Co-Authored-By: reduz <reduzio@gmail.com>
2022-06-27 13:33:06 -07:00
Rémi Verschelde b192073001
Merge pull request #62309 from reduz/remake-resource-thread-safety
Remake ResourceCache thread safety code and API
2022-06-25 14:09:28 +02:00
kobewi 2ccef6616e Fix crash when drawing invalid tiles 2022-06-23 14:34:23 +02:00
Rémi Verschelde 21b51fdf7e
Merge pull request #61826 from guilhermefelipecgs/fix_leak
Fix ObjectDB instances leaked on state machine when editor closes
2022-06-23 09:58:51 +02:00
Haoyu Qiu 084fdee4a2 Add missing TTR in dialog title 2022-06-23 13:13:42 +08:00
reduz e772b65d92 Remake resource thread safety and API
* Ensures thread safety when resources are destroyed.
* Simplified API by always forcing `ResourceCache::get_ref`, which needs less hacks and is fully thread safe.
* Removed RWLock for resources because its not possible to use for the new logic. Should not be a problem.

Supersedes #57533
2022-06-22 13:46:46 +02:00
Rémi Verschelde f3bf0334bb
Merge pull request #62262 from fire-forge/suffix2 2022-06-21 16:05:35 +02:00
FireForge 743a48da2a Fix GradientTexture2D editor height 2022-06-20 22:21:18 -05:00
FireForge 88589c091b Improve TileSet editor and add more suffixes 2022-06-20 15:28:19 -05:00
smix8 e12e239ab4 Add Path2D/3D debug options
Add Path2D/3D debug options.
2022-06-20 17:32:05 +02:00
Rémi Verschelde b4804a2d3f
Merge pull request #61459 from reduz/new-shader-editor 2022-06-20 15:27:16 +02:00
reduz 141c375581 Clean up Hash Functions
Clean up and do fixes to hash functions and newly introduced murmur3 hashes in #61934
* Clean up usage of murmur3
* Fixed usages of binary murmur3 on floats (this is invalid)
* Changed DJB2 to use xor (which seems to be better)
2022-06-20 12:54:19 +02:00
Hugo Locurcio 2651e88b05
Automatically update the editor viewport when 3D scaling options are changed
This allows for previewing the effects of the various 3D scaling
project settings without having to restart the editor.
2022-06-19 01:05:17 +02:00
Trevor Davenport e3fc0fd118 Add missing new function parameter. 2022-06-17 10:13:10 -06:00
Rémi Verschelde 1767507e69
Merge pull request #61888 from Chaosus/vs_remove_engine_version
Remove engine version from visual shader
2022-06-16 18:19:03 +02:00
bruvzg b5c96df277
Move duplicate AutoWrap, Overrun and VisibleChar behavior enums to the TextServer. 2022-06-16 16:49:37 +03:00
FireForge f72c1ac2a3 Use new inspector button style in InputEvent editor 2022-06-15 01:44:16 -05:00
FireForge b8720500b0 Improve TileMap editor layer selection button 2022-06-14 14:14:19 -05:00
bruvzg 0d6de213b4
[macOS] Fix high-precision scrolling direction in the canvas editor zoom. 2022-06-14 10:52:58 +03:00
Rémi Verschelde d4f31e201d
Merge pull request #61809 from groud/terrain_center_bit 2022-06-13 17:06:34 +02:00
Andreas Raddau 9d9a50b7ee Fixed missing call to AnimationTrackEditor::make_insert_queue 2022-06-12 16:02:09 +02:00
Gilles Roudière 62d2549e9e Add terrain center bit 2022-06-10 14:37:39 +02:00
Yuri Rubinsky d6622330d7 Remove engine version from visual shader 2022-06-10 13:17:16 +03:00
Rémi Verschelde ab2fd4a671
Merge pull request #59776 from fire-forge/more-round 2022-06-10 10:52:44 +02:00
Yuri Rubinsky e02aadba95 Distinguish Length function name to Length2D/3D/4D in visual shaders 2022-06-10 11:08:08 +03:00
Danny Chung 09658f7e3b Increase AnimationPlayer position SpinBox to fit more decimals
Fixed UI bug where it appeared that pushing the up or down incrementing
arrows did not increment the SpinBox value appropriately. Just needed
to increase the size of the box horizontally, to display four decimal
points consistently.
2022-06-09 09:59:26 +02:00
Guilherme Felipe de C. G. da Silva 7fc3aa43ce Fix ObjectDB instances leaked on state machine when editor closes 2022-06-08 17:08:48 -03:00
Rémi Verschelde c8ce7e34e2 i18n: Misc fixes translation strings
Adds some translator comments to solve some questions raised on Weblate.
2022-06-08 12:57:54 +02:00
Rémi Verschelde b33660228b
Merge pull request #61784 from Geometror/visualeditors_editorsettings_propagation
Fix visual editor settings change propagation
2022-06-07 21:03:13 +02:00
Rémi Verschelde 5ebdfc31b2
Merge pull request #61319 from JFonS/taa_wip
Initial TAA implementation
2022-06-07 20:53:55 +02:00
Rémi Verschelde 28cf97746f
Merge pull request #61779 from RechieKho/zoom_100_percent_error
Define zoom shortcut before using it
2022-06-07 20:52:09 +02:00
Hendrik Brucker e4ba3b64f0 Fix visual editor settings change propagation 2022-06-07 19:17:47 +02:00
RechieKho ea9aaab293 Define zoom shortcut before using it 2022-06-07 21:27:38 +08:00
Rémi Verschelde 7f5c10b588
Merge pull request #61737 from LightningAA/fix-frac-typo
Fix typo "Frac" instead of "Fract"
2022-06-07 14:10:56 +02:00
jfons ba832d83b2 Initial TAA implementation
Initial TAA support based on the implementation in Spartan Engine.

Motion vectors are correctly generated for camera and mesh movement, but there is no support for other things like particles or skeleton deformations.
2022-06-07 13:14:44 +02:00
Rémi Verschelde 36bd26dc75
Merge pull request #61767 from KoBeWi/tiling_speedrun
Add shortcuts to GenericTilePolygonEditor
2022-06-07 11:36:57 +02:00
Rémi Verschelde 54d43efbd8
Merge pull request #61651 from Haydoggo/path-editor-handle-swap
Fix end handles being reversed in Path3DGizmo
2022-06-07 07:52:32 +02:00
kobewi cf2287a2b4 Add shortcuts to GenericTilePolygonEditor 2022-06-07 02:03:04 +02:00
Aaron Record 14df02b21f Fix typo "Frac" instead of "Fract" 2022-06-05 19:20:32 -06:00
kobewi 6ac85ccc3d Enable nearest filtering in shrunk 3D viewport 2022-06-05 18:24:05 +02:00
Andy Gainey 9172ab37bf Fix inverted mouse wheel zoom in CanvasItemEditor #61716
Bug introduced in bb07c6a7d0 while fixing symmetry of zooming in and out.
2022-06-05 16:29:59 +02:00
Rémi Verschelde 25908c17c9
Merge pull request #61696 from guilhermefelipecgs/fix_menus
Removes start/end states from menus
2022-06-05 13:59:31 +02:00
Guilherme Felipe de C. G. da Silva e363fdeed9 Removes start/end states from menus 2022-06-04 15:13:07 -03:00
Andy Gainey bb07c6a7d0 Fix zoom in callback for CanvasItemEditor to use correct numeric sign 2022-06-04 18:14:19 +02:00
Rémi Verschelde 7a5eba16d8
Merge pull request #61679 from fire-forge/tilemap-grid
Update viewport when toggling TileMap grid
2022-06-04 15:45:43 +02:00
Hayden Leete f6123e00e7 fix end handles being reversed in Path3DGizmo 2022-06-04 10:58:52 +12:00
FireForge 87cfe90f6e Update viewport when toggling TileMap grid 2022-06-03 13:52:53 -05:00
Guilherme Felipe de C. G. da Silva 4bf5047fb0 Fix state machine style 2022-06-03 14:59:00 -03:00
kobewi 489ac77cbc Update half resolution immediately 2022-06-03 02:12:41 +02:00
Rémi Verschelde 1baee2189c
Merge pull request #61626 from Haydoggo/path-editor-handle-swap
Swap Path3DGizmo control points order
2022-06-02 18:51:36 +02:00
JFonS 8e3084cc91
Merge pull request #61292 from KoBeWi/hack_your_way_to_fix_the_bug 2022-06-02 13:02:48 +02:00
JFonS 8abace0f79
Merge pull request #60517 from Calinou/3d-editor-audiostreamplayer3d-add-gizmo 2022-06-02 12:11:06 +02:00
Hayden Leete 90b39f95da swap path_3d_editor_plugin control points order 2022-06-02 21:15:15 +12:00
Rémi Verschelde 532e253a7c
Merge pull request #61455 from fire-forge/tab
Add color contrast to TabContainer backgrounds in the editor
2022-05-31 12:52:03 +02:00
Rémi Verschelde 68bf4eb100
Merge pull request #61440 from vnen/gdscript-scene-unique-nodes
GDScript: Support `%` in shorthand for `get_node`
2022-05-31 12:36:37 +02:00
Hendrik Brucker 70c234f3e3 Improve Graphedit connection lines 2022-05-30 17:33:01 +02:00
Rémi Verschelde 6bfea24695
Merge pull request #61505 from ArneStenkrona/script-drop-focus
Ensure focus when dropping to script editor
2022-05-30 02:04:55 +02:00
Rémi Verschelde 26bfaf34dd
Merge pull request #61488 from fire-forge/filter 2022-05-30 02:03:45 +02:00
FireForge 7f7244f04a Use consistent casing in editor filter/search bars 2022-05-28 18:43:16 -05:00
Arne Stenkrona 6cd4d5f061 Ensure focus when dropping to script editor
This improves usability by making sure actions subsequent to drop
are performed within the script editor. For example, dropping a
node from the scene tree to the script editor and attempting undo
will now undo the drop instead of performing an undo in the scene
tree.

Fixes issue #61465
2022-05-28 19:58:46 +02:00
Hugo Locurcio 3541200f2b
Rotate Decal nodes when using Align Transform/Rotation With View
This matches the expected orientation with decal nodes "looking"
in the same direction as the editor camera.
2022-05-28 13:14:10 +02:00
reduz 73c102f272 Redo the shader editor
* Shader editor is permanent (no longer transient).
* Can edit multiple files at the same time.

Likely fixes many usability issues (please lend me a hand Bugsquad team to identify them).
2022-05-28 11:03:16 +02:00
Rémi Verschelde 1f690f197a
Merge pull request #61264 from KoBeWi/zoom_reset_begone
Remove zoom_reset shortcut in 2D editor
2022-05-27 22:45:55 +02:00
George Marques eba3e0a9fc
GDScript: Support `%` in shorthand for `get_node`
The `%` is used in scene unique nodes. Now `%` can also be used instead
of `$` for the shorthand, besides being allowed generally anywhere in
the path as the prefix for a node name.
2022-05-27 13:46:18 -03:00
FireForge 198f70c4c8 Use type icons in Theme editor import tab
- Use + icon for "Add" button
- Replace "One" with "1" in data type counts
2022-05-26 23:05:17 -05:00
FireForge eb573da2b5 Use "odd" style for TabContainers on base BG color
- Use the "odd" style for TabContainers that are on a background with the same color as the default TabContainer background color to add contrast
2022-05-26 21:19:15 -05:00
kobewi e748fc1a11 Improve TextureRegionEditor 2022-05-26 20:54:45 +02:00
Hugo Locurcio 93933e4085
Add a gizmo to visualize AudioStreamPlayer3D's audible radius
The ring's color changes depending on the attenuation model chosen,
and whether Max Distance is capping the distance the sound can be
heard at.

Cold colors are used when the volume cap is a "soft" cap (the sound
can still be heard past the distance, but only faintly).

Warm colors are used when the volume cap is a "hard" cap (the sound
can't be heard past the distance at all).

White is used for linear fade performed when the attenuation model
is Disabled and Max Distance is greater than 0.

No ring is drawn when the attenuation model is Disabled and Max Distance
is equal to 0 (since the sound can be heard from anywhere).
2022-05-26 20:53:07 +02:00
Rémi Verschelde 69b30eae29
Merge pull request #61337 from reduz/improve-stylebox-preview
Improve StyleBox preview
2022-05-26 13:28:36 +02:00
reduz b4c6900123 Improve StyleBox preview
* Show checkerboard on background.
* Add margins.
* Show Ninepatch lines (toggleable).
* Move the region to its own section so it does not pollute.
2022-05-26 11:57:56 +02:00
kobewi e7b0e7e35a Improve style of inspector buttons 2022-05-25 22:54:47 +02:00
FireForge 42d1a96904 Add rounded corners to the contextual toolbar
- Move contextual toolbar stylebox to the editor theme because it's the same in the 2D and 3D editors
2022-05-25 15:43:40 -05:00
Rémi Verschelde 360119ffbf
Merge pull request #61352 from Faless/ext/linux_export
[Editor] Fix GDExtension GNU/Linux export.
2022-05-25 01:17:59 +02:00
Rémi Verschelde 12ddaa36a6
Merge pull request #60641 from clayjohn/Sky-ign
Use IGN instead of white noise for sky dithering
2022-05-24 23:34:41 +02:00
clayjohn 4f82b1bd20 Use IGN instead of white noise for sky dithering 2022-05-24 10:57:07 -07:00
SnailRhymer b0e31eeb4a Remove configuration warning from AnimationPlayer
Remove warning about animations in different libraries having the same name, since shared names are fine.

Also fix missing vformat argument when setting the name of an animation to one that does conflict with an animation in the same library.
2022-05-24 13:22:16 +01:00
Juan Linietsky 4dd6f56c82
Merge pull request #61342 from reduz/reorganize-region-rect-editor
Reorganize Region Rect Editor
2022-05-24 12:25:12 +02:00
Fabio Alessandrelli cf39f36685 [Editor] Report GDExtension export errors and missing libraries. 2022-05-24 12:01:30 +02:00
Rémi Verschelde bd8d91254c
Merge pull request #61106 from snailrhymer/animation-library-fixes
Fix errors and improve UX relating to new animation libraries
2022-05-24 10:51:31 +02:00
Rémi Verschelde 65dd1bf023
Merge pull request #47665 from trollodel/tree_more_buttons_signals 2022-05-24 10:50:55 +02:00
reduz 4044cc7d57 Reorganize Region Rect Editor
Problem:

* Region rect was pretty much a hidden editor. Because it was annoying for it to pop up automatically, it did not.
* Because it did not, most users have no idea it even exists.
* But because it is a transient editor, it would steal focus of other editor and annoy users.

Solution:

* Editor has been moved to a window.
* Regions that can be edited add a button below the region which can be pressed to open the editor.

This required a slight change in EditorInspectorPlugin to allow custom editors to be below others.
2022-05-24 09:42:49 +02:00
Rémi Verschelde 1314e6cbcc
Merge pull request #60803 from Chaosus/shader_hint_rename
Rename `hint_albedo`, `hint_white/black` in shaders
2022-05-24 08:15:33 +02:00
Rémi Verschelde 9923851370 Fix typos with codespell
Using codespell 2.2-dev from current git.
2022-05-23 21:32:19 +02:00
reduz 12474fd87a Improve MultiplayerSynchronizer editor usability
* Add a button to add properties (which lets you select node and property)
* Add ability to drag properties and drop them to the editor.
* Made the editor transient (not always visible on the bottom) since its not needed most of the time.
* Added the ability to pin the editor, in case dragging properties from other nodes is desired.
2022-05-23 13:14:59 +02:00
kobewi c2bf9c2802 Remove zoom_reset shortcut in 2D editor 2022-05-22 21:39:53 +02:00
kobewi 5d413eaa96 Redraw selected 3D gizmo on deselect 2022-05-22 21:28:47 +02:00
trollodel 307427af89 Add the button pressed to some signals in Tree 2022-05-21 17:16:52 +02:00
reduz 45af29da80 Add a new HashSet template
* Intended to replace RBSet in most cases.
* Optimized for iteration speed
2022-05-20 22:40:38 +02:00
Aaron Franke a53b7f0a9d
Tweaks to improve the Project Manager display at small sizes 2022-05-19 23:57:48 -05:00
kobewi 9a1054d942 Tweak minsize of editor ColorPickerButtons 2022-05-19 15:20:46 +02:00
Aaron Record 900c676b02 Use range iterators for RBSet in most cases 2022-05-19 12:09:16 +02:00
Rémi Verschelde e7868626fa
Merge pull request #61148 from Jummit/drop-unique-nodes 2022-05-18 16:13:54 +02:00
Rémi Verschelde 5b3d596285
Merge pull request #60774 from TokageItLab/root-seek-mode
Fixed broken root motion calculation in internal process of `AnimationBlendTree` such as `NodeOneShot`
2022-05-18 15:24:21 +02:00
Jummit 1101f6c660 Use % when dropping unique scene nodes into script
This expands uppon #60708, using `get_node("%NodeName")` for nodes that
have a unique scene name to avoid having to change the onready
statements when the paths of the nodes change.
2022-05-18 15:21:31 +02:00
Rémi Verschelde d5c1de784c
Merge pull request #61115 from KoBeWi/don't_quote_me_on_that 2022-05-17 21:24:47 +02:00
kobewi 995bcd6218 Include quotes conditionally for dropped paths 2022-05-17 16:30:23 +02:00
Rémi Verschelde 5b02415fd0
Merge pull request #55134 from KoBeWi/script_pillow_or_something
Always soft-reload scripts
2022-05-17 15:09:09 +02:00
Rémi Verschelde 1d5e662766
Merge pull request #60708 from timothyqiu/drop-onready 2022-05-17 13:58:51 +02:00
Yuri Rubinsky c84d050980 Add node list param to `GraphEdit::delete_nodes_request` signal 2022-05-17 13:28:21 +03:00
Rémi Verschelde 743fce6834
Merge pull request #59242 from Sauermann/fix-editor-select-toplevel
Fix that Top Level CanvasItems are unselectable in editor
2022-05-17 08:22:12 +02:00
Haoyu Qiu 3094e739f5 Create onready variables when dropping nodes and holding Ctrl 2022-05-17 11:51:22 +08:00
Markus Sauermann 4cb74a5270 Fix that Top Level CanvasItems are unselectable in editor
Previously the parent Transform2D was included in the calculation
2022-05-17 01:36:28 +02:00
SnailRhymer d79818acb6 Fix errors and improve UX relating to new animation libraries
- Fix a bug causing an error message when a scene containing an AnimationPlayer with a reset track is saved, by correctly referencing the temporary "default" library.
- Make library dropdown in new animation window assign correct library when creating an animation.
- Similarly allow choice of library when duplicating animation.
- Make library dropdown default to library of currently selected animation.
- Make library dropdown show when exactly one library exists, and it isn't [Global]. Include [Global] on the dropdown in this case (will be newly created if dialog is confirmed).
- When appending (x) to avoid New Anim name collisions, correctly check target library instead of [Global].
- Add parentheses when appending x when duplicating animations in the library editor, for consistency.
- Change titles and prompts to be distinct in name/rename/duplicate dialiogs.
- Fix bug in OprionButton.get_selectable_item(true) when last is not selectable.
- Fix issues where animation wasn't found on deletion/rename by correctly prepending library name.
- Remove an extraneous print_line from animation_track_editor.
- Add messages to errors when an animation isn't found.
2022-05-17 00:02:51 +01:00
Rémi Verschelde b154f445d5
Merge pull request #60507 from bruvzg/textmesh
Implement TextMesh.
2022-05-16 13:52:57 +02:00
Rémi Verschelde df2de05c5f
Merge pull request #60463 from Geometror/improve-vs-1 2022-05-16 13:50:42 +02:00
Rémi Verschelde 388988d341
Merge pull request #61068 from Calinou/editor-gpuparticles3d-tweak-attractor-gizmo 2022-05-16 13:48:54 +02:00
Rémi Verschelde 75e4d24ace
Merge pull request #61071 from timothyqiu/leading-stylebox 2022-05-16 13:47:39 +02:00
Haoyu Qiu 4b013a9c96 Fix crash when editing pinned StyleBox 2022-05-16 17:33:24 +08:00
reduz 746dddc067 Replace most uses of Map by HashMap
* Map is unnecessary and inefficient in almost every case.
* Replaced by the new HashMap.
* Renamed Map to RBMap and Set to RBSet for cases that still make sense
  (order matters) but use is discouraged.

There were very few cases where replacing by HashMap was undesired because
keeping the key order was intended.
I tried to keep those (as RBMap) as much as possible, but might have missed
some. Review appreciated!
2022-05-16 10:37:48 +02:00
Hugo Locurcio d329229ad6
Use a different color for GPUParticlesAttractor3D editor gizmos
This makes attractor gizmos (orange) distinguishable from
collision gizmos (blue).
2022-05-16 01:45:12 +02:00
Yuri Rubinsky eb80a9f325
Merge pull request #60978 from fire-forge/shader-caps
Capitalize AO, AA, UV, and UV2 in visual shader output ports
2022-05-13 09:31:56 +03:00
FireForge 584a646f50 Capitalize output port names in visual shader 2022-05-13 00:53:09 -05:00
bruvzg 05963674a7
Implement TextMesh resource.
Apply simulated slant and embolden to the TextServer `gont_get_glyph_contours` results.
2022-05-13 08:20:22 +03:00
Rémi Verschelde f263e3ac81
Merge pull request #60954 from V-Sekai/fix_ownership_of_created_nodes 2022-05-12 23:11:00 +02:00
Yuri Rubinsky a439832035 Fix signal completion in GDScript editor 2022-05-12 16:10:48 +03:00
reduz 8b7c7f5a75 Add a new HashMap implementation
Adds a new, cleaned up, HashMap implementation.

* Uses Robin Hood Hashing (https://en.wikipedia.org/wiki/Hash_table#Robin_Hood_hashing).
* Keeps elements in a double linked list for simpler, ordered, iteration.
* Allows keeping iterators for later use in removal (Unlike Map<>, it does not do much
  for performance vs keeping the key, but helps replace old code).
* Uses a more modern C++ iterator API, deprecates the old one.
* Supports custom allocator (in case there is a wish to use a paged one).

This class aims to unify all the associative template usage and replace it by this one:
* Map<> (whereas key order does not matter, which is 99% of cases)
* HashMap<>
* OrderedHashMap<>
* OAHashMap<>
2022-05-12 11:21:29 +02:00
SaracenOne ce99de32b8 Fix ownership of nodes created by the MeshInstance3DEditorPlugin
and Skeleton3DEditorPlugin when used on foreign nodes.
Make gizmos visible upon creation rather than having to select
them first.
Make UV2 unwrapping and PhysicalBone creation properly subject
to UndoRedo.
2022-05-11 22:03:07 +01:00
Rémi Verschelde a12fe31e1f
Merge pull request #60873 from KoBeWi/ded 2022-05-09 22:47:44 +02:00
Yuri Roubinsky a8bbe570ca Rename `hint_albedo`, `hint_white/black` in shaders 2022-05-09 22:50:18 +03:00
Yuri Rubinsky 033e211724
Merge pull request #60845 from Chaosus/vs_color_func 2022-05-09 21:34:34 +03:00
Silc Renew ba8398f270 Fixed delta & Implement selection of whether or not to seek root 2022-05-09 08:28:32 +09:00
kobewi 8177a8d358 Remove unused code 2022-05-08 02:49:20 +02:00
Yuri Roubinsky ee1b7a033d Push `HSV2RGB/RGB2HSV` to `ColorFunc` (from `VecFunc`) in visual shaders 2022-05-07 09:49:12 +03:00
Yuri Roubinsky edd3b1274e Change output port of `VisualShaderNodeColorUniform` to vec4 2022-05-07 08:40:19 +03:00
Vitika9 aef3b5681d Changed signals of ItemList 2022-05-06 13:09:04 +05:30
kobewi 1dc7bcc83c Cleanup metadata usage 2022-05-06 00:27:10 +02:00
Rémi Verschelde 90da6ad9b4
Merge pull request #58024 from geowarin/master
use physical keys for numpad emulation in the editor
2022-05-05 08:35:11 +02:00
Haoyu Qiu b3162e270e Fix global AnimationLibrary name validation 2022-05-05 11:19:54 +08:00
Hugo Locurcio 016cca1740
Merge pull request #54606 from Calinou/mesh-editor-plugin-tweak-msaa
Use 4× MSAA for the Advanced Import Options 3D preview
2022-05-04 23:18:08 +02:00
Haoyu Qiu c0516c2312 Handle AssetLib repository config error 2022-05-04 22:18:41 +08:00
Rémi Verschelde 1b2992799b
Merge pull request #60727 from aaronfranke/basis-axis-column 2022-05-03 19:36:07 +02:00
Guilherme Felipe de C. G. da Silva e72b86b499 Fix state machine box selection 2022-05-03 12:42:51 -03:00
Aaron Franke fa7a7795f0
Rename Basis get_axis to get_column, remove redundant methods 2022-05-03 09:37:47 -05:00
Rémi Verschelde 931838b330
Merge pull request #60627 from aaronfranke/rename-elements
Rename Transform2D and Basis `elements` to `columns` and `rows` respectively
2022-05-03 14:40:01 +02:00
Rémi Verschelde 297241f368
Merge pull request #60714 from Calinou/typedef-remove-ref
Remove `RES` and `REF` typedefs in favor of spelled out `Ref<>`
2022-05-03 14:28:18 +02:00
Hugo Locurcio 180e5d3028
Remove `RES` and `REF` typedefs in favor of spelled out `Ref<>`
These typedefs don't save much typing compared to the full `Ref<Resource>`
and `Ref<RefCounted>`, yet they sometimes introduce confusion among
new contributors.
2022-05-03 01:43:50 +02:00
Guilherme Felipe e7056c195d Improvements of state machine
- Open the menu to add new animation nodes by dragging the transitions to
empty areas and automatically connecting them.
- Adds box selection to the state machine.
- Add feature to group/ungroup selected nodes in a "sub" state machine.
- Add start/end node by default. In addition, add new color to these
nodes to differentiate then.
- Add tooltip for transitions to show the connection "from -> to".
- Add new "type" of transition line when multiple transitions are
grouped.
- Add popup to connect nodes in sub state machine.
- Add dialog to select which nodes can be deleted when they are grouped.
- Add classes:
	AnimationNodeStartState
	AnimationNodeEndState
	EditorAnimationMultiTransitionEdit
- Implements disabled transition

API Changes:
- Now it's posible to add transitions between state machines,
`AnimationNodeStateMachine::add_transition` will works with relative path,
this means you can use it like this `add_transition("Idle", "Walk", tr)`
or `add_transition("Idle", "StateMachine/Shoot)`.
2022-05-02 13:06:36 -03:00
Rémi Verschelde c273ddc3ee Style: Partially apply clang-tidy's `cppcoreguidelines-pro-type-member-init`
Didn't commit all the changes where it wants to initialize a struct
with `{}`. Should be reviewed in a separate PR.

Option `IgnoreArrays` enabled for now to be conservative, can be
disabled to see if it proposes more useful changes.

Also fixed manually a handful of other missing initializations / moved
some from constructors.
2022-05-02 16:28:25 +02:00
kobewi 142d0e7d75 Change Place Random Tiles to an icon 2022-05-01 22:13:30 +02:00
Hendrik Brucker 6d876baf60 Improve the VisualShader/VisualScript editor UI 2022-04-30 03:56:57 +02:00
Aaron Franke b831fb0a54
Rename Transform2D "elements" to "columns" 2022-04-29 08:02:39 -05:00
Rémi Verschelde 12f25ce574
Merge pull request #60521 from IgorKordiukiewicz/warning-ignore-annotations
Added button to add warning ignore annotations
2022-04-29 14:52:34 +02:00
Markus Sauermann a793960a10 Fix cppcheck const parameters
Convert method signature parameters to const where it is possible

# Conflicts:
#	drivers/gles3/rasterizer_canvas_gles3.cpp
#	drivers/gles3/rasterizer_canvas_gles3.h
#	editor/plugins/animation_state_machine_editor.cpp
#	editor/plugins/animation_state_machine_editor.h
2022-04-28 11:35:39 +02:00
Igor Kordiukiewicz 8462647871 Added button to add warning ignore annotations 2022-04-28 02:46:05 +02:00
Rémi Verschelde 2890ac7100
Merge pull request #60319 from TokageItLab/implement-global-rest 2022-04-27 11:06:42 +02:00
Rémi Verschelde 8dfa12cae7
Merge pull request #59979 from bruvzg/cpp_check2 2022-04-27 10:08:26 +02:00
FireForge fb1d4be7bd Add RayCast2D target_position editor handle 2022-04-26 15:14:35 -05:00
Rémi Verschelde e8cca501fe
Merge pull request #60395 from Geometror/editor-gradient-preview-plugin 2022-04-26 12:22:07 +02:00
Rémi Verschelde 948f4e3fbd
Merge pull request #60008 from fire-forge/bitmap-preview 2022-04-26 12:20:07 +02:00
Rémi Verschelde e77a7c2976
Merge pull request #60369 from timothyqiu/al-validate
Fix AnimationLibrary name validation
2022-04-26 08:17:41 +02:00
Igor Kordiukiewicz fa3d53ab4e Fixed issue where panels in sprite frames editor couldn't be resized 2022-04-26 02:34:18 +02:00
Rémi Verschelde 3ff0cc5c1c
Merge pull request #60401 from fire-forge/gradient-undoredo 2022-04-25 16:58:30 +02:00
Rémi Verschelde 02bb8e948f
Merge pull request #60261 from fire-forge/theme-prop-renames 2022-04-25 16:20:19 +02:00
Rémi Verschelde bfc727d970
Merge pull request #60493 from Calinou/editor-add-external-link-icon 2022-04-25 16:04:15 +02:00
Rémi Verschelde 63a052d96b
Merge pull request #60386 from bruvzg/label3d 2022-04-25 15:51:31 +02:00
Yuri Rubinsky d9d871dfbf
Merge pull request #60439 from Chaosus/vs_vec4 2022-04-25 07:20:44 +03:00
Hugo Locurcio 5626d026d8
Add an external link editor icon
This replaces the existing "chainlink" instance icon that was
used for external links. That icon is still used for scene instancing.

The icon was designed by redlamp.

Co-authored-by: Taylor Wright <taylor@redlamp.org>
2022-04-24 17:26:29 +02:00
Aaron Franke 80aaca42ec
Fix "Vector4DDecompose" typo in VisualShaderEditorPlugin 2022-04-24 01:31:53 -05:00
FireForge 3073b85de9 Rename theme properties to include underscores
- check_vadjust -> check_v_adjust
- close_h_ofs -> close_h_offset
- close_v_ofs -> close_v_offset
- commentfocus -> comment_focus
- hseparation -> h_separation
- ofs -> offset
- selectedframe -> selected_frame
- state_machine_selectedframe -> state_machine_selected_frame
- table_hseparation -> table_h_separation
- table_vseparation -> table_v_separation
- vseparation -> v_separation
2022-04-23 11:16:18 -05:00
Yuri Roubinsky 8bf632240d Continue to improve vector4 type in visual shaders 2022-04-22 22:29:26 +03:00
bruvzg be611c1c05
Implement Label3D node.
Add "generate_mipmap" font import option.
Add some missing features to the Sprite3D.
Move BiDi override code from Control to TextServer.
Add functions to access TextServer font cache textures.
Add MSDF related flags and shader to the standard material.
Change standard material cache to use HashMap instead of Vector.
2022-04-22 12:08:46 +03:00
FireForge 1f60584970 Add an inspector preview for BitMap 2022-04-20 22:20:31 -05:00
Hendrik Brucker a93834c819 Add gradient resource preview generator 2022-04-21 00:08:35 +02:00
FireForge a384031326 Fix UndoRedo in Gradient editor 2022-04-20 15:41:30 -05:00
bruvzg de4c97758a
Fix more issues found by cppcheck. 2022-04-20 10:34:00 +03:00
Yuri Rubinsky f4b0c7a1ea
Merge pull request #60175 from Geometror/visual-shader-vector4 2022-04-20 08:33:42 +03:00
Haoyu Qiu d8fed8fb69 Fix AnimationLibrary name validation 2022-04-19 17:15:43 +08:00
Silc 'Tokage' Renew 4d4ffa3a2c Implement global rest 2022-04-18 02:11:19 +09:00
Rémi Verschelde 668c498659
Merge pull request #60030 from KoBeWi/pewport 2022-04-13 12:57:21 +02:00
SaracenOne 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
Rémi Verschelde 895f2a21f4
Merge pull request #60081 from fire-forge/input-event-editor-fix
Redesign InputEvent editor and fix `Window.popup_centered()` rect calculation.
2022-04-12 23:46:56 +02:00
Hendrik Brucker cf58d23a72 Add Vector4 to VisualShader 2022-04-12 19:09:29 +02:00
Rémi Verschelde c896ba8c8c
Merge pull request #60163 from fire-forge/texture-size-x 2022-04-12 16:34:08 +02:00
FireForge 0b0a74e135 Redesign InputEvent editor plugin
- Use vertical layout and add text wrapping
- Fix Window.popup_centered() rect calculation
2022-04-12 08:30:24 -05:00
Rémi Verschelde 43f94c95aa
Merge pull request #60057 from timothyqiu/select-frames 2022-04-12 14:43:37 +02:00
bruvzg 59e0a55c9c
Fix OpenType property editor signal connection. 2022-04-12 13:15:10 +03:00
Rémi Verschelde f586e06f7b
Merge pull request #60166 from bruvzg/narrow_file_access 2022-04-12 10:39:54 +02:00
bruvzg 4bf99f4af2 Narrow FileAccess scope to prevent deadlocks. 2022-04-12 10:54:39 +03:00
Haoyu Qiu 2b97020543 Disable Open in Inspector when there is no animation 2022-04-12 13:10:42 +08:00
FireForge d879d6016a Use multiplication symbol in Texture size label 2022-04-11 23:02:39 -05:00
Rémi Verschelde 4ab86c6731
Merge pull request #59980 from reduz/animation-libraries 2022-04-11 14:18:35 +02:00
reduz 6f401439f8 Implement Animation Libraries
* Instead of containing single animations, AnimationPlayer now contains libraries.
* Libraries, in turn, contain the animations.

This paves the way for implementing the possibility of importing scenes as animation libraries, finally allowing to import animations separate from the 3D models.

Missing (will be done on separate PRs):

* Make it possible to import scenes (dae/fbx/gltf) as animation libraries.
* Make it possible for AnimationTree to import animation libraries on its own, so it does not rely on AnimationPlayer for everything.
2022-04-11 12:51:54 +02:00
bruvzg 9381acb6a4
Make FileAccess and DirAccess classes reference counted. 2022-04-11 13:28:51 +03:00
Haoyu Qiu 90782a18b7 Improve Select Frames dialog of SpriteFrames editor 2022-04-09 17:30:00 +08:00
kobewi 216fe8f8d9 Fix 2D editor menu position 2022-04-08 17:09:40 +02:00
bruvzg f851c4aa33
Fix some issues found by cppcheck. 2022-04-06 14:34:37 +03:00
Rémi Verschelde f00803b8a5
Merge pull request #56695 from bruvzg/mod_unicode_input 2022-04-05 14:03:39 +02:00
bruvzg d1207a0504
[Input] Add extra `shortcut_input` input processing step to process Unicode character input with Alt / Ctrl modifiers, after processing of shortcuts. 2022-04-05 13:46:45 +03:00
Yuri Roubinsky 5db47c5521 Fix lookup symbol in scripts which doesn't open a tab at first attempt 2022-04-05 10:18:45 +03:00
Rémi Verschelde b78aa4fe19 Style: Apply clang-tidy to current code, add `readability-redundant-member-init` 2022-04-04 21:49:51 +02:00
Rémi Verschelde f8ab79e68a Zero initialize all pointer class and struct members
This prevents the pitfall of UB when checking if they have been
assigned something valid by comparing to nullptr.
2022-04-04 19:49:50 +02:00
Michael Alexsander 1062bc9884 Fix creation and reopening of built-in scripts 2022-04-03 15:34:21 -03:00
Rémi Verschelde c630c2001d
Merge pull request #59633 from EricEzaM/better-code-complete-update
Improve sorting of Code Completion options.
2022-04-03 12:34:00 +02:00
Eric M 4ab605d14d Improve sorting of Code Completion options.
Done by ordering options by their location in the code - e.g. local, parent class, global, etc.
2022-04-01 20:39:09 +10:00
kobewi 004ced89aa Fix name of the created static trimesh body 2022-03-31 18:02:18 +02:00
Hendrik Brucker 314430b868 Cleanup EditorNode and EditorData
Co-authored-by: Eric M <itsjusteza@gmail.com>
2022-03-30 20:12:26 +02:00
Rémi Verschelde 01a3b84545
Merge pull request #59558 from V-Sekai/primitive-indicies 2022-03-29 14:43:26 +02:00
Yuri Roubinsky 509598e8c0 Remove `SHADOW_ATTENUATION` spatial light shader built-in 2022-03-29 08:43:31 +03:00
Yuri Roubinsky 9edbdc4f36 Add refs to shading language to the desciption of input nodes in vshader 2022-03-28 22:01:10 +03:00
Rémi Verschelde 143d13717b
Merge pull request #59553 from reduz/script-extension-support 2022-03-28 13:35:21 +02:00
Rémi Verschelde 00e9170812
Merge pull request #59574 from Sauermann/proposal-rename-warp-mouse
Rename warp mouse functions to warp_mouse
2022-03-28 08:52:02 +02:00
Michael Alexsander c331a3a614 Fix errors when locking nodes 2022-03-27 16:10:57 -03:00
reduz 360dea5348 Add GDExtension support to Script
* Ability to create script languages from GDExtension
* Some additions to gdnative_extension.h to make this happen
* Moved the GDExtension binder to core

This now allows creating scripting languages from GDExtension, with the same ease as if it was a module. It replaces the old PluginScript from Godot 3.x.
Warning: GodotCPP will need to be updated to support this (it may be a bit of work as ScriptInstance needs to be created over there again).
2022-03-27 16:13:00 +02:00
Markus Sauermann 0494e024d8 Rename warp mouse functions to warp_mouse 2022-03-27 14:12:01 +02:00
K. S. Ernest (iFire) Lee ee954914d9 Clarify what primitives means. 2022-03-26 10:25:13 -07:00
Rémi Verschelde d3064400c5
Merge pull request #59500 from fire-forge/opentype-button 2022-03-25 18:14:58 +01:00
FireForge 15f4b283bb Make the OpenType "Add Feature..." button full width 2022-03-25 11:18:09 -05:00
FireForge c0f2825f8b Remove space in MeshLibrary editor button 2022-03-24 15:28:19 -05:00
Haoyu Qiu 81c21ebf39 Add TTR context for pagination button texts 2022-03-24 13:48:07 +08:00
Rémi Verschelde 600ff3a221
Merge pull request #48310 from Blackiris/fix-create-skeleton-physical-bones-4.0 2022-03-21 11:25:41 +01:00
kobewi 3bd7f82162 Reduce the size of Controls editor toolbar 2022-03-20 17:04:23 +01:00
Yuri Roubinsky 0d9aecd967 Rename several transform built-ins in shaders 2022-03-18 12:10:55 +03:00
Yuri Roubinsky 99e26b6e63 Fix editor crash when renaming visual shader port 2022-03-18 09:52:12 +03:00
Michael Alexsander deb1342036 Make `TabBar/Container` default their alignments to the left instead of center 2022-03-17 18:12:23 -03:00
Rémi Verschelde c0b472dfe2
Merge pull request #58967 from fire-forge/gradient2d_editor 2022-03-17 19:43:29 +01:00
FireForge 9c0261ff85 Add GradientTexture2D editor plugin 2022-03-17 10:32:54 -05:00
Rémi Verschelde 178961a6dc
Merge pull request #59183 from YeldhamDev/assetlib_less_borders
Remove extra borders from the AssetLib plugin
2022-03-16 23:50:18 +01:00
Priyansh Rathi edbf757208
fix axis handle gizmo letters at wrong positions on varying editor scale 2022-03-17 02:20:57 +05:30
bruvzg 98d0af7d5c
Implement GDExtension export plugin. 2022-03-16 11:16:19 +02:00
Michael Alexsander fc0e657e8f Remove extra borders from the AssetLib plugin 2022-03-15 20:40:46 -03:00
taigi100 6c4dbf92ac
Update to only use select tool on button press
It used to run the code twice, probably once on button press, once on button release.
2022-03-15 20:04:59 +02:00
Haoyu Qiu 0ac6e6acbe More icon updates on theme change 2022-03-15 23:05:41 +08:00
Rémi Verschelde 51bbcbdec2
Merge pull request #45263 from KoBeWi/😕 2022-03-15 13:18:27 +01:00
Rémi Verschelde cf834db44c
Merge pull request #59137 from timothyqiu/sprite-frames-editor 2022-03-15 09:10:48 +01:00
Haoyu Qiu 7cabf49e67 Improves SpriteFrames editor 2022-03-15 14:39:40 +08:00
Haoyu Qiu d07fd739ca Separate 2D grid visibility and grid snap 2022-03-15 08:54:07 +08:00
Rémi Verschelde 4f40a71e03
Merge pull request #57436 from AnilBK/change-scopes
Scope Changes for some variables.
2022-03-13 22:10:16 +01:00
Hugo Locurcio 6f76aaec82
Improve display of freelook/zoom speed indicator bars in the 3D editor
- Use a different color for freelook and zoom speed bars.
- Use an outline for the text to make it readable on any background.
2022-03-13 18:57:28 +01:00
Ricardo Buring ac32535d6e Fix out of bounds crash in particle collision gizmo 2022-03-12 23:57:12 +01:00
Rémi Verschelde 38122b8d85
Merge pull request #59050 from KoBeWi/tsal_eht_morf_ssecca 2022-03-12 14:50:56 +01:00
Rémi Verschelde 51505519c1
Merge pull request #59040 from Sauermann/fix-cursorshape-animationnodestatemachineeditor 2022-03-12 14:49:13 +01:00
Haoyu Qiu b255efba7c Hide smart snapping line when guideline dragging ends 2022-03-12 14:37:20 +08:00
kobewi 42078dec9f Allow negative indexes in ItemList and PopupMenu 2022-03-12 01:14:03 +01:00
Markus Sauermann 0d96dbcb2a Use get_cursor_shape for identifying the cursor shape in AnimationNodeStateMachineEditor
get_cursor_shape() is used in cases where a Control displays different cursors in different areas.
There is no need to set the default cursor shape on every mouse move event.

Fix minor issue with selection order.
2022-03-11 19:10:45 +01:00
Haoyu Qiu 6a1e3380f8 Remove unused code in `AnimationPlayerEditor::_update_animation_list_icons()` 2022-03-11 07:51:15 +08:00
reduz 6f51eca1e3 Discern between virtual and abstract class bindings
* Previous "virtual" classes (which can't be instantiated) are not corretly named "abstract".
* Added a new "virtual" category for classes, they can't be instantiated from the editor, but can be inherited from script and extensions.
* Converted a large amount of classes from "abstract" to "virtual" where it makes sense.

Most classes that make sense have been converted. Missing:

* Physics servers
* VideoStream
* Script* classes.

which will go in a separate PR due to the complexity involved.
2022-03-10 12:28:11 +01:00
Rémi Verschelde 83f2942a04
Merge pull request #58969 from timothyqiu/ani-editor-theme
Fix some Animation panel icons not updating after theme change
2022-03-10 08:59:39 +01:00
Haoyu Qiu 83828c7d1b Fix some Animation panel icons not updating after theme change 2022-03-10 14:46:03 +08:00
Haoyu Qiu af16e099ea Fix TextureRegion editor grid color for light themes 2022-03-10 10:59:01 +08:00
Rémi Verschelde 97cb90aa3a
Merge pull request #58907 from novaplusplus/gutter_spam_fix 2022-03-09 21:13:24 +01:00
Rémi Verschelde f17c5501eb
Merge pull request #58865 from timothyqiu/more-i18n
Add missing i18n to various strings
2022-03-09 20:38:19 +01:00
kobewi 39d429e497 Change some math macros to constexpr
Changes `MAX`, `MIN`, `ABS`, `CLAMP` and `SIGN`.
2022-03-09 16:24:32 +01:00
nova++ ce66f8a7a0 Add check to prevent "p_gutter = -1" error spam 2022-03-08 20:23:46 -05:00
Yuri Roubinsky 4d6790e9df Add `_get_func_code/_is_available` virtual functions to custom nodes 2022-03-08 16:23:44 +03:00
Rémi Verschelde f470979732
Merge pull request #58896 from timothyqiu/locks-n-groups 2022-03-08 12:54:59 +01:00
Haoyu Qiu fb999ebe22 Don't show Lock & Group buttons for nodes hidden by CanvasLayer 2022-03-08 19:43:34 +08:00
Silc 'Tokage' Renew 40f2eefe78 fix deselect behavior for Skeleton gizmo 2022-03-08 19:26:27 +09:00
K. S. Ernest (iFire) Lee fd411e580a Avoid gizmo crashes in cases where the points are null.
fix for pose editor
2022-03-08 06:21:04 +09:00
Haoyu Qiu 25d93200c8 Add missing i18n to various strings 2022-03-07 21:50:49 +08:00
Yuri Roubinsky c20860a1f4
Merge pull request #58854 from Chaosus/vs_varying_fix 2022-03-07 12:14:24 +03:00
Rémi Verschelde 53cf5eff9a
Merge pull request #58847 from KoBeWi/editor_settings_mess 2022-03-07 08:38:15 +01:00
Yuri Roubinsky 87c7fe69f2 Fix _update_varyings call in visual shader 2022-03-07 10:26:09 +03:00
Rémi Verschelde eb8ce0ce68
Merge pull request #58750 from Chaosus/vs_varyings
Add varying support to visual shaders
2022-03-07 07:41:11 +01:00
Rémi Verschelde bb5d71f6cc
Merge pull request #58719 from Chaosus/vs_builtins
Adds few more input/output built-ins to visual shader
2022-03-07 07:39:51 +01:00
kobewi 2057ea2883 Remove duplicate editor settings definitions 2022-03-06 22:05:49 +01:00
Rémi Verschelde 52b6088c1d
Merge pull request #58800 from rcorre/blender-nav
Disable blender-style transforms in freelook.
2022-03-06 10:19:41 +01:00
kobewi 7d44bb8f06 Remove set_as_minsize() 2022-03-06 00:57:42 +01:00
Rémi Verschelde d37e8586be
Merge pull request #58788 from reduz/rename-streamtexture
Rename StreamTexture* to CompressedTexture*
2022-03-06 00:19:55 +01:00
kobewi bc3aff9b46 Various code and documentation improvements 2022-03-05 22:00:35 +01:00
Ryan Roden-Corrent 34b87772b4
Disable blender-style tranforms in freelook.
It's common to bind instant_scale to s, which conflicts with WASD
bindings in freelook mode.

Fixes #58502.
2022-03-05 15:00:11 -05:00
reduz ccd4cdfd8b Rename StreamTexture* to CompressedTexture*
* Its not and will not be used for streaming.
* Streaming will be implemented in 4.1 and it will work different.
* It makes more sense to be called CompressedTexture since it imports and compresses texture files.
2022-03-05 16:43:38 +01:00
Haoyu Qiu 8dc12135cd Fix animation resource name after duplication 2022-03-05 21:00:34 +08:00
Haoyu Qiu 86c76dca12 Make name of editor file dialog filters translatable 2022-03-05 12:32:38 +08:00
Rémi Verschelde c9d0523302
Merge pull request #58770 from YeldhamDev/some_crumbles_left
Replace some bits of code left to work with the new `TabContainer`
2022-03-04 23:39:25 +01:00
Rémi Verschelde 27377170d2
Merge pull request #58727 from fire-forge/EditorSpinSlider_label_color
Make EditorSpinSlider label color a theme property
2022-03-04 23:38:55 +01:00
Michael Alexsander 917dac78e7 Replace some bits of code left to work with the new `TabContainer` 2022-03-04 19:16:33 -03:00
FireForge 6a4d3859cf Make EditorSpinSlider label color a theme property 2022-03-04 15:27:50 -06:00
Yuri Roubinsky 15a87f8e92 Add varying support to visual shaders 2022-03-04 23:30:47 +03:00
Rémi Verschelde 9d5d20ae6d
Merge pull request #58687 from YeldhamDev/the_beast_has_been_slain 2022-03-04 12:18:55 +01:00
FireForge 1e7108938c Add node icons to the Sprite2D menu 2022-03-04 01:17:35 -06:00
Michael Alexsander a811ebf699 Make `TabContainer` use `TabBar` internally 2022-03-03 21:49:58 -03:00
Yuri Roubinsky 2f8cb76899 Adds few more input/output built-ins to visual shader 2022-03-03 21:28:23 +03:00
Igor Kordiukiewicz ed0da06958 Added property hint to id property in tile set atlas source editor 2022-03-02 20:33:03 +01:00
Rémi Verschelde 3f9a6011fe
Merge pull request #58632 from IgorKordiukiewicz/camera-preview-toggle-crash
Fixes camera preview toggle in additional editor viewports not disappearing corectly causing a crash
2022-03-01 19:59:17 +01:00
kobewi f653107764 Fix scripts not saving when closing 2022-03-01 01:23:26 +01:00
Igor Kordiukiewicz ffa4a02808 Fixes camera preview toggle in additional editor viewports not disappearing corectly causing a crash 2022-02-28 15:47:35 +01:00
Yuri Roubinsky a4a8de3874 Fix crash on creation of `HSV2RGB/RGB2HSV` functions in visual shader 2022-02-27 17:51:31 +03:00
bruvzg 74ff5921d6 Improve popup window handling.
Add window FLAG_POPUP and a platform specific routines to control popup auto-hiding and event forwarding.
2022-02-25 09:33:27 +02:00
kobewi b727b81468 Fix source picking with sort 2022-02-24 01:20:21 +01:00
Haoyu Qiu 33ad21d2ed Utilize mouse position when zooming with shortcuts in 2D editor 2022-02-23 20:45:44 +08:00
lawnjelly bb070af610 Fix GIProbe gizmo out of bounds crash
The GIProbe gizmo was writing values in 3 dimensions to Vector2s. This error was previously being masked by the Vector2 accessor, but now results in a crash or ERR_FAIL message.

This PR removes the Vector2s as they were unused.
2022-02-22 19:01:18 +00:00
SaracenOne 04535bdc7d Fix contextual tileset editor and ensure button is always visible when tileset is available 2022-02-21 13:34:11 +00:00
Rémi Verschelde adf10902c9
Merge pull request #58315 from KoBeWi/fixibility 2022-02-21 12:33:17 +01:00
kobewi 3a9fb3aff0 Fix 2D instance drop position 2022-02-20 23:09:47 +01:00
kobewi 3a77484f70 Fix CanvasItem visibility propagation 2022-02-19 22:40:53 +01:00
Markus Sauermann ec8e616024 Fix vertical icons in container sizing 2022-02-19 19:29:53 +01:00
Eric M f6edd2d2a0 Fixed issues with shortcut checking in 3d node editor
The freelook shortcuts now use the action system by proxy. This allows the actions system to be leveraged for input checking. When the shortcut changes, the respective action is updated.
2022-02-18 23:19:22 +10:00
Hugo Locurcio 958912a33f
Use versioned URL for "Online Documentation" buttons in the editor
This also avoids a redirect, making the page appear to load faster.
2022-02-17 18:17:02 +01:00
Rémi Verschelde 009254d87c
Merge pull request #58187 from jakobbouchard/notification-switch-chunk-c
Convert _notification methods to switch - Chunk C
2022-02-16 20:58:55 +01:00
Jakob Bouchard 6553f5c242
Convert _notification methods to switch - Chunk C 2022-02-16 13:03:05 -05:00
Rémi Verschelde 51a00c2855
Merge pull request #58182 from akien-mga/style-cleanup-if-semicolons-deadcode 2022-02-16 16:55:07 +01:00
Rémi Verschelde 33c7f52f36
Merge pull request #58169 from megalobyte/update-notificatin-if-to-switch-batch-B 2022-02-16 16:39:23 +01:00
megalobyte 8824b6c5e9 Update if == NOTIFICATION_* to switch statements to match coding style 2022-02-16 08:44:37 -05:00
Rémi Verschelde b8b4580448
Style: Cleanup single-line blocks, semicolons, dead code
Remove currently unused implementation of TextureBasisU, could be re-added
later on if needed and ported.
2022-02-16 14:06:29 +01:00
kobewi 547786650f Automatically select source of the picked tile 2022-02-16 00:39:00 +01:00
Rémi Verschelde 11572c6e30
Editor: Cleanup some includes dependencies
Removes some unnecessary includes from `editor_node.h`, and instead add
those where they're used.

Removes unnecessary `editor_node.h` includes in various editor classes.

Renames `dynamicfont` to `dynamic_font` in a couple files.

Misc cleanup while jumping through that rabbit hole.
2022-02-15 14:54:15 +01:00
Rémi Verschelde 1d910b1e58
Merge pull request #57863 from Calinou/editor-use-anchors-metadata-no-redundant 2022-02-15 14:41:27 +01:00
Rémi Verschelde 6d708dfd6a
Merge pull request #57329 from Ev01/tileset-editor-minimum-zoom 2022-02-15 14:20:22 +01:00
Rémi Verschelde f810f76890
Merge pull request #57306 from trollodel/remove_editornode_param 2022-02-14 16:40:40 +01:00
trollodel 05b56f316d Remove most EditorNode constructor parameters and fields 2022-02-14 14:16:24 +01:00
JFonS 8317753c24
Merge pull request #57964 from mbrlabs/deselect
Deselect nodes in the 3D editor when pressing ESC
2022-02-14 10:42:46 +01:00
JFonS 58199e5ad0
Merge pull request #57990 from jmb462/fix-drag-lines-precision-issue
Fix 3D editor axis drag lines precision issue
2022-02-14 10:39:44 +01:00
Haoyu Qiu 9aaab5b693 Make duplicate animation prompt for new name 2022-02-14 14:48:25 +08:00
Hugo Locurcio 7ca843b655
Only store `_edit_use_anchors_` metadata if value is not the default
The default value is assumed to be `false`, so this metadata
only needs to be stored if the value is `true`.
2022-02-14 01:26:57 +01:00
Geoffroy Warin cf90394d10 use physical keys for numpad emulation in the editor
This allows non-qwerty keyboard to benefit from this features
2022-02-12 20:40:39 +01:00
Rémi Verschelde 498805282a
Merge pull request #57993 from Calinou/sky-tweak-default-values 2022-02-12 16:46:19 +01:00
Jean-Michel Bernard b452534e60 Fix 3D Editor axis drag lines precision issue 2022-02-12 10:20:31 +01:00
Rémi Verschelde f5a27ee4fe
Merge pull request #57994 from jmb462/polygon2d-handles 2022-02-12 10:12:06 +01:00
Rémi Verschelde 7a7fabe4f6
Merge pull request #57641 from Geometror/compilation-time-improvements-1 2022-02-12 09:46:02 +01:00
Hendrik Brucker b396fd4eef Improve compilation speed (forward declarations/includes cleanup) 2022-02-12 02:46:22 +01:00
Hugo Locurcio b7b18a4940
Tweak default ProceduralSkyMaterial and PhysicalSkyMaterial appearance
- Tweak colors to be less saturated and more balanced (in terms of hue).
  The cool blue sky is balanced by a warm brown ground,
  which makes reflections look closer to how they'd look like when using
  an HDRI panorama texture.
- Make the ground color dark on both ProceduralSkyMaterial and
  PhysicalSkyMaterial to reduce indoor light leaking, especially
  when using GI.
- Tweak the PhysicalSkyMaterial colors to be as close as possible
  to ProceduralSkyMaterial (with the default sun orientation).
- Tweak editor environment defaults to be identical to the default
  ProceduralSkyMaterial colors. Previously, the default editor sky
  color was different from the colors of a newly created
  ProceduralSkyMaterial resource.

Both new skies were tested without GI, with SDFGI and with VoxelGI.
They were tuned to look best when using ACES tonemapping with a
whitepoint set to 6, but they still look good with other
tonemapping operators.
2022-02-12 02:22:40 +01:00
Jean-Michel Bernard b0ebbd8ece Hide Polygon2D lines and handles when node is not visible in tree. 2022-02-11 23:18:23 +01:00
Rémi Verschelde a0558b8af8
Merge pull request #57984 from jmb462/collisionshape_handles 2022-02-11 23:03:20 +01:00
Rémi Verschelde 45360ca118
Merge pull request #57982 from trollodel/fix_disabled_visualscript 2022-02-11 22:57:11 +01:00
trollodel e97e894aa0 Fix editor compile error when VisualScript is disabled 2022-02-11 18:45:41 +01:00
Jean-Michel Bernard ef995b222e Hide CollisionShape2D handles when node is not visible in tree. 2022-02-11 18:44:17 +01:00
Yuri Sizov 175088db25 Add an explicit way to remove a theme type 2022-02-11 17:57:52 +03:00
Marcus Brummer 55fda17742 Deselect nodes in the 3D editor when pressing ESC 2022-02-11 11:41:51 +01:00
JFonS 3aa7b7eaf2
Merge pull request #57919 from mbrlabs/region-select-fixes
Fixed issues with 3D region-select in the editor
2022-02-11 10:59:18 +01:00
Marcus Brummer 3c4c73b100 Fixed issues with 3D region-select in the editor 2022-02-11 09:43:40 +01:00
Rémi Verschelde ba8973d663
Merge pull request #57902 from aaronfranke/canvas-editor-scale 2022-02-10 22:24:22 +01:00
Rémi Verschelde 69ddf2fd05
Merge pull request #55157 from pycbouh/control-inspector-reorg 2022-02-10 22:13:28 +01:00
Yuri Sizov 107b6f299c Reorganize inspector layout workflow for Control nodes 2022-02-10 20:29:34 +03:00
Rémi Verschelde 519075cf41
Merge pull request #57912 from rcorre/fix-blender 2022-02-10 16:53:01 +01:00
kobewi 283ec9e640 Fix texture file dropping in 2D editor 2022-02-10 15:06:13 +01:00
Ryan Roden-Corrent 628219c922
Don't block input after cancelling transform.
After starting an instant transform and cancelling it, the mouse was
blocked because cancel_transform did not set _edit.instant back to
false.

This refactors all the cleanup into a separate function that both
cancel_transform and commit_transform can call.

Fixes #57868.
2022-02-10 08:23:10 -05:00
Anilforextra bb5d130509 Code quality cleanup for some variable scopes. 2022-02-10 15:56:01 +05:45
Aaron Franke 742205b29a
Fix CanvasItemEditor scale editor not using the editor methods 2022-02-10 03:51:53 -06:00
Marcus Brummer c283a0ece7 Improved region-select in the 3D editor viewport 2022-02-09 12:22:03 +01:00
Rémi Verschelde d6deada47c
Revert "Show the 3D transform gizmo in the center when otherwise offscreen"
This reverts commit 4234a72b25.

There are some errors which are problematic to have in 4.0 alpha 2.
The PR can be redone with fixes and merged again after the dev release.

Fixes #57839.
2022-02-09 09:39:28 +01:00
Ellen Poe 41a158af56
Add AudioStreamRandomizer, replacing AudioStreamRandomPitch
Add additional randomization options.
2022-02-09 00:05:32 +01:00
Rémi Verschelde 25d4c14fef
Merge pull request #57627 from JFonS/occluder_improvements 2022-02-08 23:23:50 +01:00
Aaron Franke 4234a72b25
Show the 3D transform gizmo in the center when otherwise offscreen 2022-02-08 14:38:31 -06:00
jfons 8345aabaf4 Improve rotation in the 3D transform gizmo
* Get rid of deadzones.
* Make it easier to select rotation handles at very oblique angles.
* Handle rotation for axes that are perpendicular to the camera.
2022-02-08 20:56:59 +01:00
jfons e0c82913ff Fix navigation in 3D viewport
The incorrect initialization of EditData::instant to true was preventing the navigation code to run until the transform gizmo was used.
2022-02-08 19:24:50 +01:00
Rémi Verschelde 96e4de3511
Merge pull request #57626 from Calinou/3d-editor-rename-debug-draw-modes 2022-02-08 16:42:01 +01:00
Rémi Verschelde cc097cd22b
Merge pull request #56543 from rcorre/blendermotion-4.0 2022-02-08 16:39:19 +01:00
bruvzg 8e3245383a
[Editor] Fix font style matching issues.
Fix font selection when no style selected.
Fix style matching when fonts have different style sets.
Use SNAME for theme overrides.
2022-02-08 15:20:01 +02:00
Rémi Verschelde f425d403fe
Merge pull request #57066 from KoBeWi/in_the_name_of_the_custom 2022-02-08 11:15:01 +01:00
Rémi Verschelde a66e55069e
Merge pull request #57796 from akien-mga/revert-sname-theme-setters 2022-02-08 11:13:24 +01:00
Rémi Verschelde 6eeeb9a63c
Re-add missing `SNAME` macros in `get_theme_*` calls
They were removed in the previous commit reverting the addition of `SNAME`
to `add_theme_*` and theme setter methods, which is not wanted.
2022-02-08 10:31:56 +01:00
Rémi Verschelde fc076ece3d
Revert "Add missing SNAME macro optimization to all theme methods call"
This reverts commit a988fad9a0.

As discussed in #57725 and clarified in #57788, `SNAME` is not meant to be used
everywhere but only in critical code paths. For theme methods specifically, it
was by design that only getters use `SNAME` and not setters.
2022-02-08 10:17:25 +01:00
Rémi Verschelde 317cd0b19a
Refactor some object type checking code with `cast_to`
Less stringly typed logic, and less String allocations and comparisons.
2022-02-08 10:08:34 +01:00
kobewi a08fc442a0 Fix script editor errors with CustomCallables 2022-02-07 14:34:42 +01:00
jfons dd970482c5 Improvements and fixes to occluders
Improvements:
* Occluder3D is now an abstract type inherited by: ArrayOccluder3D, QuadOccluder3D, BoxOccluder3D, SphereOccluder3D and PolygonOccluder3D. ArrayOccluder3D serves the same purpose as the old Occluder3D (triangle mesh occluder) while the rest are primitives that can be used to manually place simple occluders.
* Occluder baking can now apply simplification. The "bake_simplification_distance" property can be used to set a world-space distance as the desired maximum error, set to 0.1 by default.
* Occluders can now be generated on import. Using the "occ" and "occonly" keywords (similar to "col" and "colonly" for colliders) or by enabling on MeshInstance3Ds in the scene's import window.

Fixes:
* Fixed saving of occluder files after bake.
* Fixed a small error where occluders didn't correctly update in the rendering server.

Bonus content:
* Generalized "CollisionPolygon3DEditor" so it can also be used to edit Resources. Renamed it to "Polygon3DEditor" since it was already being used by other things, not just colliders.
* Fixed a small bug in "EditorPropertyArray" where a call to "remove" was left after the "remove_at" rename.
2022-02-07 13:04:51 +01:00
Rémi Verschelde bfb75d107c
Merge pull request #57741 from Chaosus/vs_fixes 2022-02-07 12:50:44 +01:00
Rémi Verschelde b024602660
Merge pull request #57725 from jmb462/missing-sname-theme-setters 2022-02-07 11:46:25 +01:00
Yuri Roubinsky a6e280c5de Add some more fixes to visual shader 2022-02-07 11:28:42 +03:00
kleonc 803ac608a6 SpriteFramesEditor Fix crash when selecting non-Texture2D file for splitting 2022-02-06 23:39:04 +01:00
jmb462 a988fad9a0 Add missing SNAME macro optimization to all theme methods call 2022-02-06 23:06:11 +01:00
Rémi Verschelde 9cf6e5113b
Merge pull request #57716 from Chaosus/vs_vector_3d
Rename `PORT_TYPE_VECTOR` to `PORT_TYPE_VECTOR_3D` in visual shaders
2022-02-06 21:24:47 +01:00
Yuri Roubinsky db18faf660 Rename `PORT_TYPE_VECTOR` to `PORT_TYPE_VECTOR_3D` 2022-02-06 20:15:28 +03:00
Rémi Verschelde 95719930a8
Merge pull request #57672 from fire-forge/fix-image-drop-nodes 2022-02-06 18:11:12 +01:00
Rémi Verschelde 79a4d782a5
Merge pull request #57709 from jmb462/missing-sname-optimization 2022-02-06 17:03:11 +01:00
jmb462 1ce81dc5f2 Add missing SNAME macro optimization in some function calls 2022-02-06 15:54:04 +01:00
NeilKleistGao 729c1f056b Edit font properties on multiple objects at once 2022-02-06 18:32:55 +08:00
FireForge 871b9fc352 Fix node types in image drag-and-drop and add node icons 2022-02-05 21:01:29 -06:00
Rémi Verschelde 3db1d689ce
Merge pull request #57631 from groud/terrain_fix_with_empty_cells 2022-02-04 19:03:44 +01:00
Gilles Roudière 64e53cdc55 Fixes terrain painting on TileMaps when using empty terrain bits 2022-02-04 18:10:12 +01:00
Hugo Locurcio 21b9f1ecfe
Rename 3D editor debug draw modes to be more explicit
- Rename "Directional Shadow" to "Directional Shadow Map"
  to distinguish it from the "Directional Shadow Splits" option.
- Rename "Disable LOD" to "Disable Mesh LOD" as it only affects
  automatic mesh LOD, not visibility ranges.
- Rename "GI Buffer" to "VoxelGI/SDFGI Buffer" as it doesn't cover
  LightmapGI or SSIL.
- Rename the cluster options to match the respective node names.
2022-02-04 16:37:43 +01:00
Fabio Alessandrelli c971316d88 [Editor] Replication plugin to configure MultiplayerSynchronizers.
Allows configuring the MultiplayerSynchornizer in a way similar to
AnimationPlayer.
Properties are added manually, edither as plain properties, or via the
NodePath format for child nodes' properties "path/to/node:property"
relative to the MultiplayerSynchronizer root path.

Nice things to add would be:
- Moving properties up/down in the list.
- Some form of keying, autmatic filling of the replication properity
  line edit.
2022-02-04 14:56:30 +01:00
bruvzg 244db37508
Cleanup and move char functions to the `char_utils.h` header. 2022-02-04 11:35:01 +02:00
Rémi Verschelde f8f19b313d
Merge pull request #57562 from AnilBK/string-add-contains
String: Add contains().
2022-02-03 22:21:24 +01:00
Anilforextra adbe948bda String: Add contains(). 2022-02-04 01:28:02 +05:45
Rémi Verschelde 3004415bfc
Merge pull request #57565 from jmb462/split_offset 2022-02-03 17:04:49 +01:00
Gilles Roudière 73e784de1e Remove get_focus_owner() from Control, replaced by get_viewport()->gui_get_focus_owner() 2022-02-03 11:59:32 +01:00
jmb462 71fb89390f Save script editor's function list split offset with the editor layout 2022-02-02 22:50:49 +01:00
Yuri Roubinsky 59af063636 Add support for 2D vector type to visual shaders 2022-02-02 19:59:34 +03:00
Rémi Verschelde bf12719cca
Merge pull request #57524 from Sauermann/fix-display-grid-fadeout 2022-02-02 11:51:07 +01:00
Anilforextra fc27636999 Vectors: Use clear() and has().
Use clear() instead of resize(0).

Use has() instead of "find(p_val) != -1".
2022-02-02 00:11:09 +05:45
Markus Sauermann 51b5b51653 Fix TileMap Display Grid fadeout 2022-02-01 18:58:27 +01:00
Rémi Verschelde 45553fd586
Merge pull request #56970 from YeldhamDev/rise_tabbar_rise 2022-01-31 21:46:07 +01:00
Michael Alexsander 64c4a5b283 Bring `TabBar` to full parity with the `TabContainer` implementation. 2022-01-31 15:35:54 -03:00
Rémi Verschelde 7d97f04da8
Merge pull request #57454 from rcorre/undo_skel 2022-01-31 18:13:32 +01:00
Rémi Verschelde d7822cbf21
Merge pull request #57367 from Chaosus/vs_derivative 2022-01-31 16:51:30 +01:00
Ryan Roden-Corrent c9cce53983
Merge create_physical_skeleton undo entries.
Pressing `ctrl+z` after clicking "Create Physical Skeleton" will now
undo the creation of all physical bones by that operation.

Previously undo would remove one bone at a time.

Fixes https://github.com/godotengine/godot/issues/55351.
2022-01-30 12:28:44 -05:00
Ev01 c66ab56544 Set a minimum zoom of 1% and a maximum zoom of 10,000% on the tileset editor
Fixes issue #57292 where zooming out too much stops
you from being able to zoom back in
2022-01-30 13:45:14 +11:00
Nathan Franke 8a0a3accee
simplify formatting scripts, add a clang-tidy script, and run clang-tidy 2022-01-29 04:41:03 -06:00
Rémi Verschelde 252ec22ff9
Merge pull request #57296 from emcguirk/bug-57253-fix-hint-label 2022-01-29 00:36:42 +01:00
Rémi Verschelde e22a162003
Merge pull request #57365 from pycbouh/editor-icons-uniformity 2022-01-28 23:53:23 +01:00
Rémi Verschelde 2279edeaf0
Merge pull request #57368 from TokageItLab/fix-delta-for-animation-tree 2022-01-28 23:16:29 +01:00
Yuri Sizov 876345191f Fix theme application in various curve editors 2022-01-29 01:03:43 +03:00
Silc 'Tokage' Renew 0650846248 Make AnimationTree delta argument force double in core 2022-01-29 05:07:30 +09:00
Yuri Roubinsky 88b2afa28f [VisualShader] Merge scalar and vector derivative functions into one 2022-01-28 22:19:10 +03:00
Rémi Verschelde b9a2569be6
Merge pull request #57347 from Chaosus/vs_refactor_addop 2022-01-28 17:45:54 +01:00
Rémi Verschelde 02d48f88ef
Merge pull request #56933 from Chaosus/fix_shader_editor_theming 2022-01-28 17:45:28 +01:00
Rémi Verschelde b8b33df178
TileSetAtlasSource: Make `get_tile_data` return `TileData *`
This is now possible thanks to `Variant` changes.

Also unbind some `_` prefixed methods which don't need to be exposed.
2022-01-28 14:27:12 +01:00
Yuri Roubinsky fd8c0f4a6a Refactor AddOption in visual shader editor 2022-01-28 15:28:37 +03:00
Eric McGuirk 9f01c887b1 Fixes Hint label in 2D editor appearing at wrong position and pushes zoom controls 2022-01-27 21:49:33 -05:00
Rémi Verschelde e6caaf4c80
Merge pull request #57205 from TechnoPorg/variant-template-cast
Allow method binds to take Object subclasses as arguments
2022-01-27 23:46:37 +01:00
Rémi Verschelde aa94d5d61a
Merge pull request #57290 from IgorKordiukiewicz/fix-tile-map-editor-not-disappearing 2022-01-27 11:44:13 +01:00
Rémi Verschelde 899cd34426
Merge pull request #57281 from Rubonnek/rename-subsequence 2022-01-27 11:03:13 +01:00
Rémi Verschelde a4f999b7dc
Merge pull request #57295 from TokageItLab/fix-blendspace2d-discrete 2022-01-27 10:17:04 +01:00
Silc 'Tokage' Renew 1c0b163df5 More time parameters change type float to double 2022-01-27 12:42:46 +09:00
kobewi 2cd0c3f8be Improve 2D editor's right-click menu 2022-01-27 03:02:45 +01:00
Igor Kordiukiewicz a6b20c1816 Fixes TileMap editor not disappearing 2022-01-27 02:49:29 +01:00
Wilson E. Alvarez 3eb5e0ac50
Rename String::is_subsequence_ofi to String::is_subsequence_ofn 2022-01-26 18:03:56 -05:00
Hugo Locurcio 68580ecedd
Rename VoxelGI editor bake actions from "GI Probe" to "VoxelGI" 2022-01-26 23:12:26 +01:00
Rémi Verschelde 9df9dc77a3
Merge pull request #54822 from KoBeWi/sortuces 2022-01-26 15:46:48 +01:00
kobewi e793331cd7 Allow sorting tileset sources 2022-01-26 13:58:32 +01:00
kleonc 93a95ae84a SpriteFramesEditor Incorrect texture type fix 2022-01-25 18:39:26 +01:00
TechnoPorg 051ef479c9 Allow method binds to take Object subclasses as arguments
This commit adds a condition to VariantCaster that casts Variants of type OBJECT to any type T, if T is derived from Object.
This change enables a fair bit of code cleanup. First, the Variant implicit cast operators for Node and Control can be removed, which allows for some invalid includes to be removed. Second, helper methods in Tree whose sole purpose was to cast arguments to TreeItem * are no longer necessary.
A few small changes also had to be made to other files, due to the changes cascading down all the includes.
2022-01-25 09:03:36 -07:00
Haoyu Qiu 5ea4a8b421 Fix crash after renaming an animation node 2022-01-25 20:18:40 +08:00
Yuri Roubinsky 050f746e19 Fix theming update of shader editor 2022-01-25 12:10:07 +03:00
kobewi 342a31e326 Fix 2D Pan Tool 2022-01-24 22:21:19 +01:00
Rémi Verschelde eb5aa3218f
Merge pull request #57029 from timothyqiu/disable-script-editor-menu 2022-01-23 16:04:46 +01:00
kobewi 98692d68c3 Minor tweaks and fixes to panning 2022-01-23 13:49:53 +01:00
Rémi Verschelde c3d28ffa74
Merge pull request #57012 from Calinou/editor-add-new-script-textfile-shortcuts 2022-01-23 12:55:58 +01:00
Ryan Roden-Corrent 58e8e5f219
Implement blender-style 3D transform tools.
See godotengine/godot-proposals#1215.

This adds shortcuts for blender-inspired transforms, where you can press
the key and immediately be transforming an object without holding the
mouse. Clicking commits the transformation, ESC aborts it.

This is inspired by Blender's G(rab)/R(otate)/S(cale) shortcuts, but I
decided not to add default bindings as `S` is already bound to the
regular scale tool, and it might be confusing to only bind some of them.

While actively using a transform tool, you can press X/Y/Z to lock the
transform to an axis or (shift)+X/Y/Z to constrain the transform to a
plane. These keys are only processed if you have a transform tool
(translate/rotate/scale) active _and_ the mouse button is held.

Pressing XX/YY/ZZ will lock the transform to a local (rather than
global) axis.

This is achieved by temporarily toggling the local transform button. I
did this (vs handling it in the transform functions) for 3 reasons:

- Transform logic for translate/rotate (but not scale) appears to be
  tightly coupled to the gizmo
- This ensures the gizmo changes to indicate we're transforming
  locally/globally
- Toggling the button state in the UI also gives the user feedback about
  the nature of the transform.

The original state of the button is reset when the transform completes.

Pressing the `spatial_editor/cancel_transform` shortcut key during a
transform operation will cancel the transform and reset the objects back
to their original transforms.

This functionality was already accessible by pressing RMB during a
transform, however:

- ESC is more familiar to blender users, and a more common "cancel" key
  in general.
- Given you must hold LMB during a transform, pressing RMB as well is
  clumsy if not impossible (on a laptop trackpad).
2022-01-22 20:55:39 -05:00
Rémi Verschelde e363f404a5
Merge pull request #57000 from KoBeWi/UNLIMITED_PANNING 2022-01-23 00:47:52 +01:00
Rémi Verschelde ee253163ab
Merge pull request #57056 from Chaosus/vs_fix_defaults 2022-01-23 00:27:48 +01:00
kleonc c635ab914d SpriteFramesEditor Show AtlasTexture's source texture path in the frame's tooltip 2022-01-22 17:03:37 +01:00
Yuri Roubinsky 56a6e95d6a Remove transform input from fog mode in visual shaders 2022-01-22 16:31:06 +03:00
Yuri Roubinsky 538cff1351 Fix default input port hints for some modes in visual shader 2022-01-22 11:12:56 +03:00
kobewi 74bfe88267 Add ViewPanner to 2D editor 2022-01-21 18:35:06 +01:00
Michael Alexsander 8383115666 Fix icon in drag preview of scripts/docs 2022-01-21 13:00:02 -03:00
Rémi Verschelde ffc4d62e60
Merge pull request #57032 from timothyqiu/assetlib-network-settings 2022-01-21 11:32:46 +01:00
Haoyu Qiu 575cd3645c Update AssetLib network settings when Editor Settings change 2022-01-21 15:42:05 +08:00
Silc 'Tokage' Renew b3a800b1e2 Fixed target which connected animation player, follow up #55066 2022-01-21 15:31:16 +09:00
Haoyu Qiu e461e28c70 Disable ScriptEditor's menu items when they do nothing 2022-01-21 12:12:48 +08:00
Hugo Locurcio 990586b06b
Add shortcuts for New Script and New Text File in the script editor
These default to Ctrl + N and Ctrl + Shift + N respectively,
and will only work while the script editor is focused.
When the script editor is not focused, a new scene
(or inherited scene) will be created instead.
2022-01-20 23:10:42 +01:00
Rémi Verschelde e6170aae39
Merge pull request #55066 from trollodel/less_singletons_in_editornode 2022-01-20 22:29:17 +01:00
Rémi Verschelde 880855264f
Merge pull request #56980 from KoBeWi/handled_key_input 2022-01-20 20:25:01 +01:00
trollodel aa1102fc53 Store panels and docks singletons in their own classes 2022-01-20 20:13:26 +01:00
Rémi Verschelde eacde082a5
Merge pull request #53276 from Phischermen/propagate_check 2022-01-20 16:37:16 +01:00
kobewi b4ad04078c Fix unhandled_key_input() in Script Editor 2022-01-20 15:11:44 +01:00
Rémi Verschelde c13319db8d
Merge pull request #56967 from pycbouh/assetlib-ux-in-progress
Fix Asset Library UX when an asset is being downloaded
2022-01-19 22:55:36 +01:00
Paulb23 f43f68f605 Convert TextEdit callbacks to Callable 2022-01-19 17:26:22 +00:00
Yuri Sizov 01845510f6 Fix Asset Library UX when an asset is being downloaded 2022-01-19 19:16:17 +03:00
Rémi Verschelde 26c42331bc
Merge pull request #56907 from rburing/convert_to_meshlibrary_apply_transforms 2022-01-19 13:59:41 +01:00
Fabio Alessandrelli 7e14548fc6 [Editor] Move some animation specific keying logic out of inspector.
Most of the custom logic to handle special keying cases is now inside
the AnimationPlayerEditorPlugin.

The EditorInspector now emits a signal when inspecting a new object.
2022-01-19 11:08:25 +01:00
Kevin Fischer a4bac268c9 Addded methods to propagate checks & refactored classes to use new methods. 2022-01-18 19:21:59 -08:00
Yuri Sizov 8e8177521f Make assets in progress open the next step instead of erring 2022-01-19 04:37:38 +03:00
Rémi Verschelde bc5ba38ff5
Merge pull request #56619 from timothyqiu/left-right-palette 2022-01-18 16:38:09 +01:00
Ricardo Buring 025d7b9332 Fix "Convert to MeshLibrary" not respecting collision transforms 2022-01-18 16:30:41 +01:00
Rémi Verschelde 7c771ea310
Merge pull request #47522 from madmiraal/rename-test_width-test_height 2022-01-18 13:39:57 +01:00
Rémi Verschelde 844ea681f1
Merge pull request #33252 from KoBeWi/anime_dup 2022-01-17 13:21:51 +01:00
Rémi Verschelde 56e79052b7
Merge pull request #56842 from Chaosus/fix_assetlib_crash 2022-01-17 12:25:54 +01:00
Haoyu Qiu 19634bd1a1 Fix crash when undoing node creation of BlendTree editor 2022-01-17 14:35:09 +08:00
Yuri Roubinsky baba079f93 Fix assetlib crash 2022-01-16 21:18:20 +03:00
Yuri Roubinsky 5003d4351e Fix theming update in several editor classes 2022-01-16 14:49:03 +03:00
kleonc 3f9e50505a Fix AtlasTexture nesting 2022-01-15 00:14:56 +01:00
Rémi Verschelde 472b5b1167
Merge pull request #56249 from PucklaMotzer09/physics_layer_tooltip 2022-01-14 21:04:28 +01:00
Rémi Verschelde 3efa6644c4
Merge pull request #55541 from KoBeWi/outcognito_scripts 2022-01-14 21:04:13 +01:00
Rémi Verschelde 6689a9360c
Merge pull request #56756 from KoBeWi/great_unification_theory 2022-01-14 16:13:53 +01:00
kobewi fbb5580b3d Add ViewPanner to more editors 2022-01-14 13:09:39 +01:00
luz paz 858bcd5058 Fix various typos
Found via `codespell -q 3 -S ./thirdparty,*.po,./DONORS.md -L ackward,ang,ans,ba,beng,cas,childs,childrens,dof,doubleclick,expct,fave,findn,gird,hist,inh,inout,leapyear,lod,nd,numer,ois,ony,paket,ro,seeked,sinc,switchs,te,uint,varn,vew`
2022-01-13 23:20:01 -05:00
PucklaMotzer09 56b47b673e Add tooltips to all tile data editor properties 2022-01-13 16:04:54 +01:00
kobewi f524ddebd5 Make script type distinguishable by icon 2022-01-13 12:29:05 +01:00
Rémi Verschelde 52c41e6cc0
Merge pull request #56253 from PucklaMotzer09/tile_editor_select 2022-01-13 11:45:15 +01:00
Rémi Verschelde 42d3993446
Merge pull request #56692 from JFonS/fix_gizmo_secondary_handles 2022-01-12 15:53:06 +01:00
Rémi Verschelde 585231a172
Merge pull request #56492 from akien-mga/remove-author-docstrings 2022-01-12 15:24:17 +01:00
jfons 5ebea2d120 Fix secondary handles in editor gizmos
Primary and secondary handles are no longer differentiated by their ids, so a bool was added to tell them apart in all the handle-related methods.

Includes a minor fix in CollisionPolygon3DEditor, unrelated to editor gizmos.
2022-01-12 14:21:20 +01:00
Yuri Roubinsky b2ae6f838a
Merge pull request #56713 from Chaosus/vs_sampler_connection
Auto-set a port source for texture nodes created by dragged connection
2022-01-12 16:07:09 +03:00
Yuri Roubinsky c381990fca Auto-set a port source for texture nodes created by dragged connection 2022-01-12 15:21:55 +03:00
Yuri Roubinsky 422f7b280f Optimize include files to improve `shader_language.h` compilation speed 2022-01-12 14:19:12 +03:00
Rémi Verschelde b5495783b2
Merge pull request #53185 from KoBeWi/viewing_pan 2022-01-12 11:36:41 +01:00
Rémi Verschelde 189662e5bd
Merge pull request #56696 from AnilBK/use-init-lists 2022-01-12 10:04:45 +01:00
Anilforextra 6c3a0460a8 Use List Initializations for Vectors. 2022-01-12 10:15:12 +05:45
kobewi ba7ed05792 Unify panning in sub-editors and make it configurable 2022-01-11 13:57:19 +01:00
Rémi Verschelde 5f7bbf4d33
Merge pull request #55456 from KoBeWi/break_all_the_things 2022-01-10 12:36:21 +01:00
Haoyu Qiu 8fc73539e9 Allow showing both left and right side panels 2022-01-08 20:31:22 +08:00
Anilforextra c9f5d88f3a Use fill() to fill an entire image instead of setting pixels individually. 2022-01-08 17:43:15 +05:45
kobewi 562fc4cc0d Rename TextureRect.expand to ignore_texture_size 2022-01-07 20:21:17 +01:00
Rémi Verschelde 129418962f
Merge pull request #55352 from YeldhamDev/text_widget_undo 2022-01-07 15:38:22 +01:00
Yuri Roubinsky ea8d00282d A small visual shader editor refactoring 2022-01-07 11:27:06 +03:00
Rémi Verschelde e885de0507
Merge pull request #56367 from Calinou/bakedlightmap-print-time-request-attention 2022-01-07 00:58:36 +01:00
Rémi Verschelde a01b18a476
Fix typos with codespell
Using codespell 2.1.0.

Method:
```
$ cat > ../godot-word-whitelist.txt << EOF
ang
ans
ba
curvelinear
dof
doubleclick
fave
findn
gird
inout
leapyear
lod
merchantibility
nd
numer
ois
ony
que
readded
seeked
statics
2022-01-07 00:12:09 +01:00
Julien Nguyen 234637ab79 Fix create physical bone when up vector is collinear to child rest origin 2022-01-06 19:14:55 +01:00
SaracenOne 901f376671 Move metallic and roughness automated assignment to an inspector UndoRedo
callback.
2022-01-06 16:07:26 +00:00
Rémi Verschelde 3fcae531e2
Merge pull request #55293 from LlamaLad7/master 2022-01-05 16:42:17 +01:00
Rémi Verschelde 6af77c7b09
Merge pull request #53684 from TokageItLab/orthogonal-mode 2022-01-05 16:05:40 +01:00
kobewi 77eb25421e Fix names of scenes dropped onto viewport 2022-01-05 13:11:18 +01:00
Rémi Verschelde 6d4ed65f4c
Merge pull request #56483 from vnen/gdscript-warning-annotation
Add annotation to ignore warnings
2022-01-05 09:05:56 +01:00
Rémi Verschelde ba2bdc478b
Style: Remove inconsistently used `@author` docstrings
Each file in Godot has had multiple contributors who co-authored it over the
years, and the information of who was the original person to create that file
is not very relevant, especially when used so inconsistently.

`git blame` is a much better way to know who initially authored or later
modified a given chunk of code, and most IDEs now have good integration to
show this information.
2022-01-04 20:42:50 +01:00
Rémi Verschelde deefce7bb5
Merge pull request #56362 from V-Sekai/preview_node_sanitize
Clean preview node of all nodes which are not derived from VisualInstances
2022-01-04 17:20:13 +01:00
Rémi Verschelde 851fb16350
Merge pull request #56305 from Calinou/rename-lod-threshold 2022-01-04 15:28:06 +01:00
Marcel Admiraal f107139979 Rename Project Window width and height settings to match their function 2022-01-04 13:59:16 +00:00
George Marques 923b7b2748
Remove action to ignore warning in the script editor
The way to ignore warnings changed so this isn't valid anymore.
2022-01-04 09:52:13 -03:00
Tomasz Chabora 1a091c498a Add option to paste animation as duplicate 2022-01-04 13:39:32 +01:00
Rémi Verschelde 6994602e4f
Merge pull request #56429 from PucklaMotzer09/tile_set_editor_hide 2022-01-04 10:22:47 +01:00
Rémi Verschelde 7f66c16c03
Merge pull request #51206 from clayjohn/Vulkan-ASSGI 2022-01-04 10:00:17 +01:00
Rémi Verschelde fe52458154
Update copyright statements to 2022
Happy new year to the wonderful Godot community!
2022-01-03 21:27:34 +01:00
Rémi Verschelde 5cb6f39014
Merge pull request #56444 from Calinou/3d-editor-freelook-sensitivity-scale-with-zoom 2022-01-03 20:44:37 +01:00
Rémi Verschelde 20563b081b
Merge pull request #56327 from pycbouh/editor-theme-goes-brrr-but-then-halts
Make the theme editor correctly stop updating after it was hidden
2022-01-03 20:13:28 +01:00
Rémi Verschelde de066d56a2
Merge pull request #56153 from Chaosus/shader_uniform_limit_warning
Add a shader warning when the uniform buffer limit is exceeded
2022-01-03 17:43:05 +01:00
Yuri Roubinsky fd9c92d4ab Add a shader warning when the uniform buffer limit is exceeded 2022-01-03 16:24:56 +03:00
Rémi Verschelde b5807f5f1b
Merge pull request #55312 from YeldhamDev/theme_editor_undo 2022-01-03 14:09:09 +01:00
Hugo Locurcio fb4261b82f
Scale freelook sensitivity with zoom in the 3D editor
When using a FOV scale lower than the default (using Alt + mouse wheel),
the mouse sensitivity is now scaled to make it easier to use freelook
to look at distant objects.

This does not affect orbiting and panning.
2022-01-02 20:07:19 +01:00
PucklaMotzer09 65881a9734 Correctly show and hide tile set editor panel 2022-01-02 15:22:51 +01:00
luz paz a124f1effe Fix various typos
Found via ` codespell -q 3 -S ./thirdparty,*.po,./DONORS.md -L ackward,ang,ans,ba,beng,cas,childs,childrens,dof,doubleclick,expct,fave,findn,gird,hist,inout,leapyear,lod,nd,numer,ois,ony,paket,seeked,sinc,switchs,te,uint,varn`
Update editor/import/resource_importer_layered_texture.cpp

Co-authored-by: Raul Santos <raulsntos@gmail.com>
Update doc/classes/TileSetScenesCollectionSource.xml

Co-authored-by: Raul Santos <raulsntos@gmail.com>
Update scene/gui/graph_edit.cpp

Co-authored-by: Raul Santos <raulsntos@gmail.com>
Update scene/resources/animation.cpp

Co-authored-by: Raul Santos <raulsntos@gmail.com>
Update scene/resources/animation.cpp

Co-authored-by: Raul Santos <raulsntos@gmail.com>
Update scene/resources/animation.cpp

Co-authored-by: Raul Santos <raulsntos@gmail.com>
Update scene/gui/rich_text_label.cpp

Co-authored-by: Raul Santos <raulsntos@gmail.com>
Revert previously committed change
2022-01-02 01:03:58 -05:00
Hugo Locurcio 0761605435
Print time taken and request attention when lightmaps are done baking
Since lightmap baking can take a very long time, printing the time
spent can be useful for users tweaking the lightmap settings
to optimize bake times.

Completing lightmap baking will also request attention, which is
useful if you're doing something else while waiting for lightmaps
to bake.
2021-12-31 02:40:36 +01:00
SaracenOne 45b8bb745e Clean preview_node of all none VisualInstances 2021-12-30 14:07:56 +00:00
Michael Alexsander b80c378ee9 Add undo/redo capabilities to the text control plugin 2021-12-30 01:25:01 -03:00
Michael Alexsander 3764dce409 Add undo/redo capabilities to the theme editor 2021-12-30 00:30:50 -03:00
Yuri Sizov fad3138af7 Make the theme editor correctly stop updating after it was hidden 2021-12-29 23:40:01 +03:00
Hugo Locurcio df09bc38cb
Rename Lod Threshold to Mesh Lod Threshold
This makes it more obvious that the setting only affects mesh LOD,
not manual (H)LOD achieved using visibility ranges.
2021-12-29 00:11:50 +01:00
PucklaMotzer09 d45cab99ec Correctly deselect properties of TileDataCollisionEditor 2021-12-26 16:26:58 +01:00
Silc 'Tokage' Renew 61759da5b3 Fix some gizmo behavior to make more consistent 2021-12-25 03:24:04 +09:00
LlamaLad7 b5407f802f Editor: Resolve being able to move control nodes in containers using arrow keys
Fixes #55260
2021-12-21 21:41:05 +00:00
Yuri Roubinsky e8a457ba89 Refactor render_mode in shaders, forbid declaring duplicates 2021-12-21 22:20:09 +03:00
jmb462 f491b43edd Fix wrong ColorPicker shape with GradientEdit 2021-12-20 18:00:11 +01:00
Rémi Verschelde 9f5045f70f
Merge pull request #56041 from Zylann/null_checks2
Fix crash if font fails loading when generating a preview
2021-12-18 09:31:26 +01:00
Marc Gilleron ccb701f2f7 Fix crash if font fails loading when generating a preview
Historical crash log:

ERROR: No loader found for resource: res://addons/gdquest.mannequin/assets/theme/fonts/montserrat/Montserrat-Medium.ttf.
   at: (core\io\resource_loader.cpp:213)
ERROR: res://addons/gdquest.mannequin/assets/theme/fonts/default_font.tres:8 - Parse Error: [ext_resource] referenced non-loaded resource at: res://addons/gdquest.mannequin/assets/theme/fonts/montserrat/Montserrat-Medium.ttf
   at: ResourceLoaderText::_parse_ext_resource (scene\resources\resource_format_text.cpp:170)
ERROR: res://addons/gdquest.mannequin/assets/theme/fonts/default_font.tres:8 - Parse Error: [ext_resource] referenced non-loaded resource at: res://addons/gdquest.mannequin/assets/theme/fonts/montserrat/Montserrat-Medium.ttf
   at: ResourceLoaderText::load (scene\resources\resource_format_text.cpp:649)
ERROR: Failed loading resource: res://addons/gdquest.mannequin/assets/theme/fonts/default_font.tres. Make sure resources have been imported by opening the project in the editor at least once.
   at: (core\io\resource_loader.cpp:206)
2021-12-18 03:35:29 +00:00
Haoyu Qiu 1fb59d13c2 Fix font preview text color on light background 2021-12-18 00:34:28 +08:00
Fabio Alessandrelli 75ed3d74e8
Merge pull request #55747 from timothyqiu/editor-proxy
Add proxy support for the editor
2021-12-16 10:06:14 +01:00
Yuri Sizov dc858a8100 Improve user communication in the Add Item Type dialog 2021-12-14 17:00:15 +03:00
Rémi Verschelde ece3b0dd61
Merge pull request #55836 from jabcross/asset-selectable 2021-12-12 18:34:41 +01:00
Rémi Verschelde ad6652c08e
Merge pull request #55860 from rcorre/mesh_typo 2021-12-12 15:26:46 +01:00
Ryan Roden-Corrent 353617b202
Fix typo in create_outline error message. 2021-12-12 07:29:46 -05:00
jabcross 814a4ee434 Allow selection in asset description
Many assets include links in the description.
This change enables selection for the links,
and other information such as version numbers,
to be copied/pasted.
2021-12-11 16:43:05 -03:00
Nathan Franke 49403cbfa0
Replace String comparisons with "", String() to is_empty()
Also:
- Adds two stress tests to test_string.h
- Changes to .empty() on std::strings
2021-12-09 04:48:38 -06:00
Rémi Verschelde 31ded7e126
Fixup last commit, change misleading CodeEditor for consistency 2021-12-09 11:40:46 +01:00
Rémi Verschelde 3752e8f52e
Fix mid-air conflict between #55299 and #55692 2021-12-09 11:17:16 +01:00
Rémi Verschelde 4129c1d140
Merge pull request #55299 from nathanfranke/renames 2021-12-09 10:22:24 +01:00
Rémi Verschelde eac3885283
Merge pull request #55692 from Chaosus/material_editor_canvas_item_mode 2021-12-09 09:41:49 +01:00
Nathan Franke 41a20171eb
align to horizontal_alignment, valign to vertical_alignment, related 2021-12-09 01:38:46 -06:00
Haoyu Qiu 5912dd2964 Add proxy support for the editor
* Adds proxy support for `HTTPRequest`.
* Adds `network/http_proxy/{host,port}` editor settings.
    * Labeled as "HTTP Proxy" and it will be used for both HTTP and
      HTTPS requests. This is the same convention as seen in Android
      Studio's proxy settings.
* Makes Asset Library and Export Template Manager use proxy according to
  the editor settings.
2021-12-09 11:48:16 +08:00
kobewi 3f4728fe54 Fix some containers disabling wrong scrollbars 2021-12-09 00:25:17 +01:00
Yuri Roubinsky 04fac59f3f
Merge pull request #51381 from Chaosus/shader_compile_enchancement 2021-12-08 15:15:07 +03:00
Yuri Roubinsky 76f6c0849c Make `compile` shader function to use struct instead long parameter list 2021-12-08 11:34:40 +03:00
Rémi Verschelde 5cf178f3bf
Merge pull request #55694 from KoBeWi/scrollbar_modding_tools
ScrollContainer's scrollbar visibility is now enum
2021-12-08 09:16:57 +01:00
Hugo Locurcio cf936ae0dd
Rename GPUParticles attractor and collision nodes to have a 3D suffix
GPUParticles attractors and collision are currently only available in 3D.
Their 2D counterparts haven't been implemented yet, but they will use
separate nodes.
2021-12-08 00:21:05 +01:00
kobewi 841a9ef820 ScrollContainer's scrollbar visibility is now enum 2021-12-07 18:27:12 +01:00
Yuri Roubinsky a651610c43 Add CanvasItem mode support to the MaterialEditor 2021-12-07 17:16:41 +03:00
Rémi Verschelde 75ac048e4b
Merge pull request #55662 from KoBeWi/update_minimum_size_changed_to_update_minimum_size 2021-12-06 18:28:46 +01:00
jmb462 81efebb3a1
Fix bad popups offset in editor with single window off
Co-authored-by: Gil Arasa Verge <gilarasaverge@gmail.com>
Co-authored-by: Tomasz Chabora <kobewi4e@gmail.com>
2021-12-06 14:29:48 +01:00
kobewi ea7cc1dea9 Rename minimum_size_changed() method 2021-12-06 14:02:34 +01:00
Rémi Verschelde 5baf20e638
Merge pull request #34005 from aaronfranke/minmax 2021-12-06 14:01:45 +01:00
Rémi Verschelde a512edcfb9
Merge pull request #55654 from KoBeWi/reset_softcode 2021-12-06 13:27:27 +01:00
kobewi 9cb66cac2d Add a constant StringName for RESET animation 2021-12-06 12:26:42 +01:00
Rémi Verschelde 3a7d5a1c64
Merge pull request #55651 from Calinou/remove-more-debug-prints 2021-12-06 10:30:37 +01:00
Hugo Locurcio 89ec3d3bc7
Remove or make verbose some debugging prints
The message about SpatialMaterial conversion was turned into a warning,
as it can potentially interfere with porting projects from Godot 3.x
(if there's a bug in the conversion code).
2021-12-05 23:22:23 +01:00
Hugo Locurcio 4a5bb3ac20
Use tooltips instead of labels for VoxelGI and GPUParticlesCollisionSDF
This fixes the issue with labels being cut off (or becoming too long
when not clipped).

This also adds a mention of the individual cell size,
which is useful information to have when trying to avoid light leaking
or particle collision tunneling.
2021-12-05 23:14:16 +01:00
Michael Alexsander 3ff78c34e7 Disable base type changing when no type is selected in the theme editor 2021-12-03 15:03:39 -03:00
Yuri Roubinsky c033ed21b0
Merge pull request #55576 from Chaosus/vs_new_int_ops
Add bitwise operators to `VisualShaderNodeIntOp`
2021-12-03 14:46:33 +03:00
Rémi Verschelde acb6d1b0af
Merge pull request #55578 from madmiraal/fix-55561 2021-12-03 12:12:45 +01:00
Yuri Roubinsky b12fea5b52 Add bitwise operators to `VisualShaderNodeIntOp` 2021-12-03 12:48:35 +03:00
Rémi Verschelde ce63df2610
Merge pull request #54687 from KoBeWi/where_mouse 2021-12-03 10:11:56 +01:00
Marcel Admiraal 6e6d689ed6 Allow any kind of Mesh to be added to an EditorNode3DGizmo 2021-12-03 08:52:07 +00:00
Aaron Franke 24f57886d0
Expose max_axis_index and max_axis_index for Vector2(i)
Some cleanup with Vector3(i)'s methods so that it is consistent with Vector2, for example it returns enums internally (GDScript still gets ints).
2021-12-02 23:45:41 -06:00
Rémi Verschelde d3c992429c
Merge pull request #55522 from Calinou/3d-editor-drag-and-drop-auto-root-node
Automatically add root node when drag-and-dropping in 3D editor
2021-12-02 22:18:10 +01:00
Rémi Verschelde 11d5b91462
Merge pull request #55548 from pycbouh/editor-scroll-dat-preview 2021-12-02 17:30:11 +01:00
Yuri Sizov c33f407d27 Allow scrolling theme preview when the control picker is active 2021-12-02 17:57:53 +03:00
Rémi Verschelde 16778151c0
Merge pull request #55392 from TokageItLab/fix-skeleton-3d-editor-exiting-oddly
Fixed gizmo bug when `Skeleton3DEditor` is re-generated
2021-12-02 08:47:08 +01:00
Hugo Locurcio 73d596eba9
Automatically add root node when drag-and-dropping in 3D editor
This also uses correct capitalization scheme for 3D meshes that are
drag-and-dropped, like in the 2D editor.
2021-12-01 19:36:14 +01:00
Aaron Franke 129911f61a
Improve Curve with const and real_t 2021-11-30 14:24:27 -06:00
kobewi dc472622cc Mention that Ctrl+Alt with select tool will scale 2021-11-30 17:36:39 +01:00
Fazil Babu 61c2d397d6 Right-clicking with copied tiles cancels it 2021-11-30 00:23:44 +05:30
Rémi Verschelde d2ac4bb48e
Merge pull request #55052 from RPicster/master-particles-visibility-rect 2021-11-29 14:30:58 +01:00
Raffaele Picca 37cfa56db3 Visibility rect only shown when a GPUParticle2D is selected to reduce visual clutter in scenes with a lot of Particle nodes. 2021-11-28 19:42:42 +01:00
Wilson E. Alvarez 697d9e3cbf
Fix 'Add Node...' menu entries in AnimationNodeBlendTreeEditor 2021-11-28 09:08:34 -05:00