Commit graph

7344 commits

Author SHA1 Message Date
kobewi 12f5a5a701 Don't save unchanged script upon closing 2021-03-06 20:17:19 +01:00
Shatur95 c26b451afe Fix enabling of created plugin 2021-03-06 15:33:52 +02:00
Pedro J. Estébanez 565796518d Fix crash on cleanup of EditorFileServer 2021-03-06 13:29:40 +01:00
Ev1lbl0w 1f0b60c47d
Fix negative VRAM values 2021-03-05 21:48:20 +00:00
jmb462 068300c7c9 Adding Raycast3D custom debug shape thickness and color 2021-03-04 11:17:26 +01:00
Rémi Verschelde ec7053259b
Merge pull request #41437 from KoBeWi/put_it_here
Allow to create a node at specific position
2021-03-01 15:48:53 +01:00
Rémi Verschelde c2799893f4
Merge pull request #46544 from Chaosus/tilemap_signal_fix
Check before connecting `TileMapEditor::settings_changed`
2021-03-01 11:59:11 +01:00
Rémi Verschelde 4b1887fa28
Merge pull request #46535 from asmaloney/fix-gizmo-names
Fix Node3D gizmo names
2021-03-01 09:40:54 +01:00
Yuri Roubinsky 1e7662f972 Check before connecting TileMapEditor::settings_changed 2021-03-01 10:25:33 +03:00
Andy Maloney 14c50fdb94 Fix gizmo names
Commit 5ef62e546f renamed EditorNode3DGizmoPlugin "get_name" to "get_gizmo_name", but it wasn't done everywhere. Because EditorNode3DGizmoPlugin inherits from Resource, it was then using Resource::get_name() which resulted in null names.

Fixes godotengine/godot#46349
2021-02-28 20:52:53 -05:00
Oliver Dick 0559fc58d1 SceneTreeDock: Changed "Save Branch as Scene" to make use of Node::duplicate_from_editor, which is also used by "Duplicate" function of the SceneTreeDock
- Removed Node::duplicate_and_reown method as it is not used anymore
2021-02-28 17:19:01 +01:00
kobewi af069109be Don't check modified time if file doesn't exist 2021-02-26 23:18:50 +01:00
Rémi Verschelde 7b685a1558
Merge pull request #46452 from hilfazer/click_mesh_instance_crash_40
Prevent crash when clicking Mesh in MeshInstance when is scene root
2021-02-26 21:00:12 +01:00
hilfazer 1810654369 Prevent crash when clicking Mesh in MeshInstance when is scene root 2021-02-26 19:28:09 +01:00
Tomasz Chabora 8df22a03c4 Allow to create a node at specific position 2021-02-26 14:40:28 +01:00
Rémi Verschelde 7bb0d39da4
Merge pull request #46327 from hilfazer/prevent_change_type_on_foreign_nodes
Prevent 'Change Type' on nodes from a foreign scene
2021-02-26 14:37:14 +01:00
kobewi 59e1c007a7 Save ProjectSettings on editor restart 2021-02-26 13:33:08 +01:00
hilfazer e28cc34db8 Prevent 'Change Type' on nodes from an instanced scene 2021-02-26 07:18:21 +01:00
Vedat Günel 929da94e2c Add outline to dragged guide text 2021-02-26 03:12:50 +03:00
Michael Alexsander f2ad7c5f12 Fix heap-use-after-free in Import Defaults Editor 2021-02-25 11:50:10 -03:00
Fredia Huya-Kouadio eda18fcc1f Update the filtering logic to properly handle directories with .gdignore files. 2021-02-24 18:40:36 -08:00
Rémi Verschelde 757c151219
Merge pull request #46394 from YeldhamDev/import_defaults_fix
Fix import selector resetting in Import Defaults Editor
2021-02-24 22:53:44 +01:00
Michael Alexsander 4837766292 Fix capitalization of checkbox in Input Map Editor 2021-02-24 16:20:39 -03:00
Michael Alexsander 881d1984cf Fix import selector resetting in Import Defaults Editor 2021-02-24 16:05:43 -03:00
trollodel 85a776ddcd Allow CollisionObject3D to show collision shape meshes
Add an editor gizmo to CollisionObject3D.
CollisionShape3D no longer shows collision shapes directly.
2021-02-24 18:50:13 +01:00
abaire 61cc1c8624 Relaxes Node naming constraints in glTF documents to match the Editor. 2021-02-24 08:22:27 -08:00
Rémi Verschelde 049d654c49
Merge pull request #46354 from reduz/importer-defaults-editor
Added Import Defaults Editor in Project Settings
2021-02-24 13:19:05 +01:00
Rémi Verschelde 6d6a4fa1cf
Merge pull request #46342 from YeldhamDev/sun_preview_enhancements
Apply minor visual enhancements to the Sun/Env Preview
2021-02-24 11:20:36 +01:00
Rémi Verschelde da551bbf2d
Merge pull request #46133 from aaronfranke/gray
Change fallback icon for abstract nodes to have a grayed out color
2021-02-24 11:17:49 +01:00
reduz b6fce5d750 Added Import Defaults Editor in Project Settings
-Change importer defaults in project settings.
-Ability to change them or reset them.
2021-02-23 14:18:02 -03:00
Michael Alexsander 0bc7049099 Apply minor visual enhancements to the Sun/Env Preview 2021-02-23 11:21:26 -03:00
reduz d6a9cff8b7 Add preview Sun and Environment
* Adds both a preview sun and preview environment to the 3D editor.
* They are valid as long as a DirectionalLight3D and WorldEnvironment are not in the scene.
* If any is added to the scene, the respective preview is disabled.
* Changed WorldEnvironment to better handle multiple node versions.
* Added a function in SceneTree to get the first node in a group.
* Fixed button minimum size to also consider font height if no text is there, this broke with the TextSever PR.
2021-02-22 16:56:29 -03:00
Rémi Verschelde 29f0ab0303 i18n: Sync translations with Weblate
(cherry picked from commit d0bc914491)
2021-02-22 11:06:33 +01:00
Rémi Verschelde 51d68919ff
Merge pull request #46263 from dalexeev/fix-help-shortcut-2
Fix "editor/editor_help" shortcut (again)
2021-02-22 10:37:15 +01:00
hilfazer 442e550114 Prevent selecting hidden nodes in 3D and Canvas Item editors 2021-02-21 11:58:31 +01:00
Danil Alexeev c6435e1d47 Fix "editor/editor_help" shortcut (again) 2021-02-21 00:15:26 +03:00
Rémi Verschelde dc1ae06557
Merge pull request #44864 from Calinou/editor-array-dictionary-increase-page-size
Increase the page size for array/dictionary editors to 20
2021-02-19 19:53:35 +01:00
Rémi Verschelde 04cb7e638c
Merge pull request #46191 from reduz/refactor-process-mode
Refactor Process Mode
2021-02-19 13:46:50 +01:00
Rémi Verschelde 13303dd56d
Merge pull request #46216 from Chaosus/fix_scenetree_timeout
Fix connecting signal to `SceneTreeEditor::update_timer`
2021-02-19 13:39:50 +01:00
Yuri Roubinsky a82d231e06 Fix SceneTreeEditor::update_timer - timeout signal 2021-02-19 14:58:18 +03:00
Eric M 8d9256e13c Added Built-in Action editor to Editor Settings dialog.
Built-in actions can now be edited for the Editor too.
Also added usage of the new Event confifiguration dialog to for better UX.
2021-02-19 19:36:42 +10:00
Eric M 3db45ff198 New ActionMapEditor to replace InputMapEditor. Used in ProjectSettings.
Renamed to ActionMapEditor as it is more generic and can be used for more than just the InputMapEditor if required.
This also includes a new Event Configuration dialog (previously "Press A key...") which can be used to create and edit InputEvents for any use - like the Project Settings input map, or the Editor Settings shortcuts.
2021-02-19 19:36:42 +10:00
Rémi Verschelde aeea4280a0
Merge pull request #38994 from nikibobi/fix-file-dialog-favorite
Fix file dialog filename cleared when selecting favorites
2021-02-19 09:46:17 +01:00
reduz 083aa9b95e Refactor Process Mode
Implements https://github.com/godotengine/godot-proposals/issues/1835#issuecomment-727186192

* PauseMode is now ProcessMode, containing the following states:
	```
	PROCESS_MODE_INHERIT, // same as parent node
	PROCESS_MODE_NORMAL, // process only if not paused
	PROCESS_MODE_PAUSE_ONLY, // process only if paused
	PROCESS_MODE_ALWAYS, // process always
	PROCESS_MODE_DISABLED, // never process
	```
* NOTIFICATION_PAUSED and NOTIFICATION_UNPAUSED are received effectively when the node is paused and unpaused (not any longer when pause mode is set in SceneTree).
* Renamed some nodes that used ProcessMode/process_mode to specify a callback type to ProcessCallback to avoid clashes.
2021-02-18 20:39:55 -03:00
Rémi Verschelde 310496a89f
Merge pull request #45617 from RandomShaper/modernize_atomics
Modernize atomics (and fix `volatile`)
2021-02-18 19:40:31 +01:00
Pedro J. Estébanez 8e128726f0 Modernize atomics
- Based on C++11's `atomic`
- Reworked `SafeRefCount` (based on the rewrite by @hpvb)
- Replaced free atomic functions by the new `SafeNumeric<T>`
- Replaced wrong cases of `volatile bool` by the new `SafeFlag`
- Platform-specific implementations no longer needed

Co-authored-by: Hein-Pieter van Braam-Stewart <hp@tmm.cx>
2021-02-18 17:12:46 +01:00
Eric M 49714b0963 Removed hardcoded shortcuts from /scene and converted to input actions
This removes hardcoded actions from things like LineEdit and TextEdit.

Previously, things like copy, paste, etc were all hardcoded to Ctrl+C, Ctrl+V, etc. They could not be changed. This allows the possibility of them being changed, by making them use the action map. This has the added benefit of greatly simplifying the input handling logic in those controls. The logic which was previously in a huge and hard to follow switch statement has been extracted to individual methods.
2021-02-18 16:22:51 +01:00
Eric M 074f53563d Added ability to override built-in actions for the editor
This adds the ability to add overrides for built-in actions (i.e. ui_*) in the editor. Also added a number of additional built-in actions for various text-related actions, gui-generic actions (like copy and paste) and graph-related actions (duplicate nodes), etc. Moved the definition of input actions to input_map, rather than in project_settings so the editor can make use of these actions as well.
2021-02-18 16:22:50 +01:00
reduz 64140eaf42 Reorganize Project Settings
-Advanced Settings toggle also hides advanced properties when disabled
-Simplified Advanced Bar (errors were just plain redundant)
-Reorganized rendering quality settings.
-Reorganized miscelaneous settings for clean up.
2021-02-18 11:23:34 -03:00
Rémi Verschelde 72f74eb29e
Merge pull request #45943 from KoBeWi/YEEEET
Remove Merge From Scene
2021-02-18 15:15:19 +01:00
Rémi Verschelde 4fe0f1161e
Merge pull request #46159 from gongpha/jr-_-fix-function-binding
Fixes function bindings
2021-02-18 13:25:09 +01:00
Rémi Verschelde bdf3c578ff
Merge pull request #45950 from KoBeWi/naughty_resources
Fix internal resource detecting when pasting nodes
2021-02-18 12:05:54 +01:00
Kongfa Waroros efc1eba974 Fixes function bindings 2021-02-18 14:47:06 +07:00
Aaron Franke 0efbd13d8a
Change fallback icon for abstract nodes to have a grayed out color 2021-02-17 13:06:03 -05:00
Rémi Verschelde 7f63d6e848
Merge pull request #46105 from Calinou/assetlib-retry-button-only-failure
Only display the assetlib Retry button if the download failed
2021-02-17 08:10:27 +01:00
Hugo Locurcio 508011a57f
Only display the assetlib Retry button if the download failed 2021-02-17 02:00:22 +01:00
Aaron Franke 7d9ad2b845
Use Vector3.UP as a default value for look_at's up vector 2021-02-16 18:33:23 -05:00
Rémi Verschelde cb64f2d96b
i18n: Sync translations with Weblate
(cherry picked from commit 7d921c1d53)
2021-02-16 14:54:45 +01:00
Rémi Verschelde c6c8f22fbe
Merge pull request #46072 from Calinou/add-gpu-particle-attractor-collision-icons
Add icons for the new GPU particle attractor and collision nodes
2021-02-16 12:20:50 +01:00
Hugo Locurcio 7279b4ee35
Add icons for the new GPU particle attractor and collision nodes 2021-02-15 22:15:48 +01:00
Eric M 26c29cc0d7 Improved PopupMenu visuals. Removed x-y margin, made it 'padding' instead. 2021-02-15 15:45:25 +10:00
Pedro J. Estébanez 20f48f0105 Fix SceneTreeEditor::_update_tree() binding 2021-02-14 22:32:42 +01:00
Rémi Verschelde fc5e9828b4
Merge pull request #44071 from dalexeev/editor-about-logo
Change logo in the About dialog box (return Godot's teeth)
2021-02-14 17:37:26 +01:00
Rémi Verschelde 4a41367949
Merge pull request #42784 from mujpao/search-results-font-size-4.0
Make search results font follow code editor font
2021-02-14 17:28:11 +01:00
Danil Alexeev c553ca54d5 Change logo in the About dialog box (return Godot's teeth) 2021-02-14 18:50:05 +03:00
Rémi Verschelde b21f854b7f
Merge pull request #45910 from Ansraer/default-scale-highres-monitor
Adjust auto scale on 4k monitors to 150%
2021-02-14 12:54:04 +01:00
Rémi Verschelde ff9cd8d374
Merge pull request #45968 from KoBeWi/do_not_SAVE
Don't save project settings when not necessary
2021-02-14 11:04:16 +01:00
reduz 288540a690 Fix editor always redrawing
-Only update rendering settings when project settings change
-Fixes the update spinner (and editor rendering) updating all the time.
-Added a "project_settings_changed" signal to EditorNode and EditorPlugin
2021-02-13 14:57:28 -03:00
kobewi 4db47eb32e Don't save project settings when not necessary 2021-02-13 18:51:48 +01:00
kobewi 6146d95a9d Fix internal resource detecting when pasting nodes 2021-02-13 02:57:29 +01:00
Juan Linietsky f0951537a4
Merge pull request #45924 from reduz/icon-saturation
Add ability to change Icon Saturation
2021-02-12 22:55:42 -03:00
kobewi 6b4faa355c Remove Merge From Scene 2021-02-13 01:35:03 +01:00
Rémi Verschelde e7ab3a4132
Merge pull request #34892 from KoBeWi/copy-pasta_v7
Yet another node copy-paste PR
2021-02-12 23:16:31 +01:00
Rémi Verschelde 5011a22731
Merge pull request #45932 from goostengine/sprite-convert-compressed
Fix sprite editor conversion tools to handle compressed textures
2021-02-12 23:11:51 +01:00
kobewi 36494e8526 Duplicate resources pasted to other scenes 2021-02-12 22:38:38 +01:00
Andrii Doroshenko (Xrayez) 1cd7a16c10 Fix sprite editor conversion tools to handle compressed textures 2021-02-12 21:42:07 +02:00
reduz 28537d8c84 Fix LineEdit minimum width
-Changed theme setting name to make more sense of what it does
-Reduced amount of minimum characters, so minimum size is smaller.
2021-02-12 17:04:38 +01:00
Hugo Locurcio d97d65b184
Increase the page size for array/dictionary editors to 20
With smaller arrays/dictionaries, this makes it possible to view all of
an array/dictionary's items on a single page.

Larger values could be used, but make switching between node selections
quite slow, especially on low-end CPUs. They could also be problematic
with complex resource inspectors for arrays/dictionaries that contain
Resources.

This closes https://github.com/godotengine/godot-proposals/issues/2058.
2021-02-12 17:03:00 +01:00
reduz 5ae9051771 Add ability to change Icon Saturation
-Allows for more theme freedom
-Allows for entirely B&W themes.
2021-02-12 12:16:37 -03:00
reduz b9b68b755c Improved Inspector Sub-Resource Editing
-Better margins
-Colors to delimit subresources better.
2021-02-12 09:31:47 -03:00
Rémi Verschelde d3867b2dab
Merge pull request #45785 from Calinou/project-manager-add-loading-text
Display loading text while the project manager is loading
2021-02-12 13:01:17 +01:00
Ansraer 466cf0b466 Adjust auto scale on high res displays 2021-02-12 01:12:25 +01:00
reduz f8d03b98e7 Improve resource load cache
-Added a new method in Resource: reset_state , used for reloading the same resource from disk
-Added a new cache mode "replace" in ResourceLoader, which reuses existing loaded sub-resources but resets their data from disk (or replaces them if they chaged type)
-Because the correct sub-resource paths are always loaded now, this fixes bugs with subresource folding or subresource ordering when saving.
2021-02-11 15:44:28 -03:00
reduz 1aa2823fa3 Removed _change_notify
-For inspector refresh, the inspector now detects if a property change by polling a few times per second and then does update the control if so. This process is very cheap.
-For property list refresh, a new signal (property_list_changed) was added to Object. _change_notify() is replaced by notify_property_list_changed()
-Changed all objects using the old method to the signal, or just deleted the calls to _change_notify(<property>) since they are unnecesary now.
2021-02-10 19:31:24 -03:00
Rémi Verschelde e8f73124a7
Merge pull request #45845 from qarmin/cppcheck_scene_2
Initialize class variables with default values in scene/ [2/2]
2021-02-10 20:06:12 +01:00
Rémi Verschelde b1c60c757f
Merge pull request #31747 from KoBeWi/scene_stalking
Detect external modification of scenes
2021-02-10 14:31:29 +01:00
Tomasz Chabora abe548d76d Add node copy-paste 2021-02-09 20:53:06 +01:00
Rafał Mikrut 7961a1dea3 Initialize class variables with default values in scene/ [2/2] 2021-02-09 18:24:36 +01:00
Michael Alexsander cf9d5cec22 Make FileSystem dock set its path to the base folder of files after changes 2021-02-09 12:57:36 -03:00
kobewi c390c82014 Detect external modification of project.godot 2021-02-09 14:44:44 +01:00
Rémi Verschelde df9c98e107
Merge pull request #45812 from RandomShaper/keep_selected_visible
Keep selected node visible after filter change
2021-02-09 10:43:21 +01:00
Rémi Verschelde 5f23fcf847
Merge pull request #45713 from KoBeWi/1000_unmasked
Make Rect2 properties show in 2x2 layout
2021-02-08 22:30:23 +01:00
Pedro J. Estébanez ef062b1c37 Keep selected node visible after filter change
(Implemented both for the local and remote scene tree docks.)
2021-02-08 02:19:14 +01:00
Hugo Locurcio 8be51252f6
Display loading text while the project manager is loading
This hints the user that the project manager is currently busy
loading the project. This is important for the HTML5 editor as the
current feedback isn't very obvious.

This also removes the unused `_exit_dialog` function.
2021-02-07 02:04:10 +01:00
reduz 8faf23b52b Simplify Volumetric Fog
-Always use temporal reproject, it just loos way better than any other filter.
-By always using termporal reproject, the shadowmap reduction can be done away with, massively improving performance.
-Disadvantage of temporal reproject is update latency so..
-Made sure a gaussian filter runs in XY after fog, this allows to keep stability and lower latency.
2021-02-06 15:08:21 -03:00
Rémi Verschelde 3de411cb83 i18n: Sync translations with Weblate
(cherry picked from commit 84e356d720)
2021-02-05 10:45:34 +01:00
Rémi Verschelde d93f75fae5
Merge pull request #45698 from KoBeWi/callables_are_love_callables_are_life
Change sort_custom/bsearch_custom to use Callables
2021-02-05 09:30:19 +01:00
kobewi 962610bbaa Make Rect2 properties show in 2x2 layout 2021-02-04 20:53:29 +01:00
Rémi Verschelde 779dc76130
Merge pull request #45696 from YeldhamDev/texregion_margin_snap
Make margins obey the snap option in the TextureRegion editor
2021-02-04 19:33:30 +01:00
Danil Alexeev 2105b6a070 Fix "editor/editor_help" shortcut overwriting when restarting editor 2021-02-04 18:21:29 +03:00