Commit Graph

10205 Commits

Author SHA1 Message Date
Rémi Verschelde 42b48496de HTML5: Always disable Asset Library
GitHub doesn't allow CORS so we can't download assets from it.

There'd also be more work needed for the Asset Library plugin to be
usable in the Web editor even if that was supported.
2022-05-25 14:19:46 +02:00
Rémi Verschelde 6f5be1f1f0 Project Manager: Fix crash on resize with assetlib disabled
Follow-up to #61215.
2022-05-25 13:09:53 +02: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
kobewi b923cc8f13 Optimize SceneTreeEditor filtering 2022-05-24 18:07:18 +02: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 8629ca02d7
Merge pull request #61305 from Calinou/editor-theme-gray-tweak-accent-color 2022-05-24 00:20:21 +02:00
Rémi Verschelde 2f0adb1c16 i18n: Sync editor translations with Weblate
(cherry picked from commit bf2c722a25)
2022-05-24 00:09:46 +02:00
Rémi Verschelde 3c9cc7914a
Merge pull request #61162 from KoBeWi/drag_nodes_like_a_boss 2022-05-23 22:08:03 +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
Hugo Locurcio 97f41379b1
Increase saturation of accent color on the Gray editor theme preset
This also renames the Gray editor theme preset to use US spelling.
2022-05-23 10:01:43 +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
FireForge a369bc7325 Use the "Move" mouse icon in inspector arrays 2022-05-22 14:27:32 -05:00
Rémi Verschelde 01d383a8ff
Merge pull request #61288 from kleonc/inspector_is_no_longer_refreshable 2022-05-22 20:11:14 +02:00
kleonc 8c3286670f Remove UndoRedo calls trying to call removed EditorInspector::refresh() 2022-05-22 19:27:58 +02:00
kleonc 33b2970492 EditorPropertyArray Fix crash when drag-reordering elements in the inspector 2022-05-22 19:00:04 +02:00
trollodel 307427af89 Add the button pressed to some signals in Tree 2022-05-21 17:16:52 +02:00
SnailRhymer 2eddc3776f Fix class_desc_deselect handling of @GlobalScope.X links
Fix bug where links to class enums and class constants of the form @GlobalScope.X were broken.

For an enum or constant with name "example_name", links of both forms @GlobalScope.example_name and example_name will now be correctly handled, including where example_name contains "." (e.g. Variant.Type).
2022-05-21 10:50:31 +01: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
Rémi Verschelde 25ec4b447b
Merge pull request #61211 from Calinou/project-manager-fix-small-window-size 2022-05-20 17:04:01 +02:00
Hugo Locurcio 9e64f3de6c
Fix project manager display at small window sizes
- Don't use minimum size for project order/filter controls.
  This also allows the filter field to become longer at large
  window sizes.
- Hide the loading label instead of changing its opacity.
  This causes a reflow during loading, but this is preferable to having
  the UI overflow.
- Hide the About button on Android as it will spawn a dialog that's
  too large to be closed on most screens.
- Hide the language dropdown on Android as it doesn't work correctly.

This allows the project manager to be displayed correctly at much
lower window sizes than previously.
2022-05-20 16:32:29 +02:00
Aaron Franke a53b7f0a9d
Tweaks to improve the Project Manager display at small sizes 2022-05-19 23:57:48 -05:00
Aaron Franke 5dc3bfb80e
Use suffixes for units in nodes and resources 2022-05-19 14:34:27 -05:00
kobewi 9a1054d942 Tweak minsize of editor ColorPickerButtons 2022-05-19 15:20:46 +02:00
Rémi Verschelde b9bb3de6a1
Merge pull request #61142 from bruvzg/rtl_threaded 2022-05-19 14:27:48 +02:00
Aaron Record 900c676b02 Use range iterators for RBSet in most cases 2022-05-19 12:09:16 +02:00
bruvzg cfcdfc38e2
[RTL] Add support for shaping in background thread. 2022-05-19 09:34:44 +03:00
Haoyu Qiu fc3b845c07 Add dedicated macros for property name extraction
* Replace case-by-case extraction with PNAME & GNAME
* Fix group handling when group hint begins with property name
* Exclude properties that are PROPERTY_USAGE_NO_EDITOR
* Extract missing ADD_ARRAY*, ADD_SUBGROUP* macros
2022-05-19 14:08:47 +08:00
kobewi 95bbffff48 Only switch to node when not dragging it 2022-05-18 23:25:32 +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 80acc7a2c2 i18n: Sync editor translations with Weblate
(cherry picked from commit caeae1f949)
2022-05-17 23:45: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
K. S. Ernest (iFire) Lee ec8e91e3cd Fix editor crash in built-in help when script inheritance chain changes. 2022-05-17 08:50:32 -07: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
Rémi Verschelde 3506825930
Merge pull request #61112 from Chaosus/graph_edit_delete_nodes_param 2022-05-17 13:10:04 +02:00
Rémi Verschelde ccdd85d8e7
Merge pull request #61001 from derammo/derammo_popup_conditional_hide 2022-05-17 12:56:53 +02:00
Yuri Rubinsky c84d050980 Add node list param to `GraphEdit::delete_nodes_request` signal 2022-05-17 13:28:21 +03:00
Lyuma 41824c6cc8 Bind EditorFileSystem::reimport_files and improve docs
reimport_files offers a way for scripts to modify imported resources directly.
For example, images, sounds or glTF documents which are written by an external program.

It is much faster than `scan`, and can allow scripts to synchronously proceed after import finishes.
2022-05-17 00:45:48 -07: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 f2accdb73d
Merge pull request #60086 from fire-forge/editorspinslider-hide-slider 2022-05-16 15:02:09 +02: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 7b571ab8f7
Merge pull request #60986 from fire-forge/capitalism 2022-05-16 13:49:14 +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
Rémi Verschelde 6d5d9dd82a
Merge pull request #61016 from macjuul/mono-script-editor-fix
Fix script editor opening when external editor is configured for C#
2022-05-14 09:19:32 +02:00
Julian Mills 77f23a3023 Fix script editor opening when external editor is configured 2022-05-14 01:27:01 +02:00
derammo 47d0dc8a41 popup deferred hide suppressed if reopened
popup no longer tries to close itself a second time
popup no longer closes after having been reopened
fixed bug in RenameDialog not calling base (by inspection)
fixes #59181
fixes #60921
reverts #59287
2022-05-13 09:30:00 -04: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 2f47a0747c
Merge pull request #59498 from adamscott/add-custom-type-check-before-hiding-type
[Fix #58248] Add custom type check before hiding type
2022-05-12 23:58:52 +02:00
Rémi Verschelde b32fec988f
Merge pull request #60539 from snailrhymer/class-desc-select-fix
Fix _class_desc_select to handle Variant.Type
2022-05-12 23:16:28 +02: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
FireForge 88a8038387 Capitalize/fix some property enum hints 2022-05-12 15:03:16 -05:00
Rémi Verschelde ff30a09993
Merge pull request #60643 from clayjohn/GLES3-3D 2022-05-12 21:08:02 +02:00
clayjohn 652adcd5bf Basic 3D rendering 2022-05-12 10:37:27 -07:00
SnailRhymer d04a431b9b Fix _class_desc_select to handle Variant.Type
Change the order of checks in _class_desc_select to first try checking current page and GlobalScope
before resorting to slicing either side of ".".

Bug was caused by assumption that no enums or constants in @GlobalScope would contain ".". This is still
assumed elsewhere in the file, so bugs may persist.

Format some comments.
2022-05-12 16:09:00 +01:00
Rémi Verschelde a38aafca3e
Merge pull request #60970 from Chaosus/gds_fix_signal_completion 2022-05-12 16:36:40 +02:00
kobewi 379ebe304a Show list of groups in node tooltip 2022-05-12 15:46:16 +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
bruvzg d36c5514d3
Fix ZipIO crash when reused (and possible leaks). 2022-05-11 16:08:17 +03:00
Rémi Verschelde cc3ed63af6
Merge pull request #60923 from aaronfranke/fix-pm-features 2022-05-10 18:20:34 +02:00
Aaron Franke b1ea83451a
Fix display of unsupported project features in the project manager 2022-05-10 08:25:22 -05:00
Rémi Verschelde b95042a3aa
Merge pull request #58071 from Calinou/lightmapgi-tweak-default-texel-size
Increase the default texel size for lightmap baking
2022-05-10 15:16:08 +02:00
Aleksey Smirnov 81520be31d Cleanups after changes in ItemList signals 2022-05-10 13:26:16 +03:00
Rémi Verschelde ccb583be09
Merge pull request #60865 from KoBeWi/plugin_maker_3000
Improve plugin dialog UX
2022-05-10 08:30:10 +02: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
Yuri Rubinsky b5cb4ea067
Merge pull request #60844 from Chaosus/vs_vec4 2022-05-09 21:34:13 +03:00
Rémi Verschelde 6f130768c7
Merge pull request #53356 from kleonc/animation-track-editor-root-removed-connection-fix 2022-05-09 15:47:21 +02: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
kobewi 32c4d110eb Improve plugin dialog UX 2022-05-07 23:19:55 +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
Rémi Verschelde 36c8af8849
Merge pull request #60823 from timothyqiu/import-defaults
Make import defaults inspector honor property style settings
2022-05-06 17:50:41 +02:00
Rémi Verschelde 9424dc0467
Merge pull request #60543 from fire-forge/connection-icons
Add all types to connections dialog and add icons
2022-05-06 17:49:45 +02:00
Haoyu Qiu 9c94ff178d Make import defaults inspector honor property style settings 2022-05-06 22:24:57 +08:00
Rémi Verschelde 61517b6d39
Merge pull request #59720 from Vitika9/itemlist-signals 2022-05-06 10:46:47 +02:00
Vitika9 aef3b5681d Changed signals of ItemList 2022-05-06 13:09:04 +05:30
Rémi Verschelde f70085a942
Merge pull request #60802 from Calinou/profiler-idle-time-rename 2022-05-06 08:28:59 +02:00
FireForge 86378ff1fd Add missing types to connections dialog
- Add all types to list (except Nil, Object, Callable, Signal, and RID)
- Add icons
2022-05-05 18:12:50 -05:00
kobewi 1dc7bcc83c Cleanup metadata usage 2022-05-06 00:27:10 +02:00
Hugo Locurcio 79be2c7b75
Rename profiler "Idle Time" to "Process Time"
References to "idle time" are progressively being replaced by
"process time" throughout the engine to avoid confusion.
2022-05-05 20:23:47 +02:00
Rémi Verschelde efd6e4da0c
Merge pull request #60795 from KoBeWi/can't_export_this 2022-05-05 19:57:14 +02:00
kobewi e7da3ce96e Disallow Callable, Signal and RID in export arrays 2022-05-05 19:22:48 +02:00
RechieKho 8e8e457dd9 Disallow setting editor-only metadata in the editor 2022-05-05 16:11:27 +02:00
Rémi Verschelde 71e41eb395
Merge pull request #60597 from reduz/missing-node-resource-placeholders 2022-05-05 15:57:50 +02:00
Rémi Verschelde b2beab3a0a i18n: Sync editor translations with Weblate
(cherry picked from commit 0997c2de84)
2022-05-05 15:55:44 +02:00
kobewi 3f50dad460 Cache script icons in editor 2022-05-05 14:27:29 +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
Rémi Verschelde 0f8ee1d256
Merge pull request #60161 from V-Sekai/instanced_children_color
Make editable children use warning color instead of disabled color
2022-05-05 01:41:27 +02: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
Rémi Verschelde 640279bdd4
Merge pull request #60738 from LightningAA/disable_input_map_add_button 2022-05-04 20:39:08 +02:00
Aaron Record 6b878e9aea Disable add button when action name is invalid 2022-05-04 11:19:27 -06:00
Rémi Verschelde 84f64ddde9
Merge pull request #60723 from reduz/refactor-module-initialization 2022-05-04 19:08:43 +02:00
reduz de0ca3b999 Refactor module initialization
* Changed to use the same stages as extensions.
* Makes the initialization more coherent, helping solve problems due to lack of stages.
* Makes it easier to port between module and extension.
* removed the DRIVER initialization level (no longer needed).
2022-05-04 17:34:51 +02:00
Haoyu Qiu c0516c2312 Handle AssetLib repository config error 2022-05-04 22:18:41 +08:00
bruvzg 800a68837f Fix export plugins after embedded PCK loading changes. 2022-05-04 12:57:21 +03: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
reduz 0a57f964a3 Implement missing Node & Resource placeholders
Implemented by request of @neikeq to advance in the GDExtension version of Mono.

* If a Resource type is missing upon load, it will be remembered together with its data (Unless manually overriden).
* If a Node type is missing upon load, it will be also be remembered together with its data (unless deleted).

This feature makes working with GDExtension much easier, as it ensures that missing types no longer cause data loss.
2022-05-03 17:08:09 +02: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 78193788d0
Merge pull request #59895 from akien-mga/clang-tidy 2022-05-02 17:45:13 +02:00
Rémi Verschelde 652650c10c
Merge pull request #60674 from MightiestGoat/master 2022-05-02 17:36:39 +02: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
mightygoat 436ef26e18 Fix mesh preview cleanup in the Scene import settings 2022-05-02 19:16:41 +05:30
kobewi 7f183d0361 Add Copy UID option to filesystem dock 2022-05-02 11:51:23 +02:00
Rémi Verschelde ce4326df76
Merge pull request #60693 from KoBeWi/random_programming
Change Place Random Tiles to an icon
2022-05-01 22:53:54 +02:00
kobewi 142d0e7d75 Change Place Random Tiles to an icon 2022-05-01 22:13:30 +02:00
Haoyu Qiu c2a974f045 Keep logo aspect ratio in About dialog 2022-05-01 15:57:00 +08:00
Hendrik Brucker 6d876baf60 Improve the VisualShader/VisualScript editor UI 2022-04-30 03:56:57 +02:00
kobewi fd490c95a5 Fix wrong condition checking for foreign resources 2022-04-30 00:12:22 +02:00
Aaron Franke 1bf94dff3a
Rename Basis "elements" to "rows" 2022-04-29 08:02:56 -05: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
Rémi Verschelde 81139c94a8
Merge pull request #60109 from rohanrhu/find-match-number 2022-04-29 14:35:53 +02:00
Haoyu Qiu 28317ef33c Fix issues when skipping l10n for script variables 2022-04-29 17:49:17 +08:00
Haoyu Qiu ef42b686ad Fix external link icon black background
(cherry picked from commit 65f3d99693)
2022-04-29 09:15:56 +02:00
Haoyu Qiu ba90778f1c Load fallback icon for custom class when no icon available 2022-04-29 09:40:20 +08: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
Rindbee fbba40f04d Limit the maximum value of unbinds to signal_argument_size
Update editor/connections_dialog.cpp

Co-authored-by: Tomek <kobewi4e@gmail.com>
2022-04-28 08:05:16 +08:00
Rémi Verschelde 504708ae21
Merge pull request #56093 from bruvzg/pck_section_load
Improve embedded PCK loading and exporting.
2022-04-27 14:29:21 +02:00
Oğuzhan Eroğlu 77a78cb4ad Indicate code editor search match number 2022-04-27 15:21:28 +03:00
Rémi Verschelde d22850234c
Merge pull request #59393 from techiepriyansh/move-gltf-export-under-scene-menu 2022-04-27 11:51:49 +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 6c20ade250
Merge pull request #60440 from KoBeWi/Ȑ̶̛̘̻̹̪͙̇̍̔͐̊̆̏̏̓̈́̉͌͘Ȩ̸͉̳̘̬̣̩̽̈́́̅̈́̕͝ͅS̷͓̮̙̪̪̺̭̰̓̎̌́͗͆͌̈́̒͋͊͘Ë̷̡̨͔̻͈̺͓̘͉́̏̍̓͋̋͠T̶̠̙͍̱̠̱̟͎͇̬̥̞̘͛̔̄̏̆̽̄̌̅͝ͅ 2022-04-27 11:06:20 +02:00
Rémi Verschelde 1b5d943fbb
Merge pull request #60549 from timothyqiu/import-preset-i18n 2022-04-27 10:33:33 +02:00
Rémi Verschelde 8dfa12cae7
Merge pull request #59979 from bruvzg/cpp_check2 2022-04-27 10:08:26 +02:00
Rémi Verschelde a19d7d8f8d
Merge pull request #58383 from bruvzg/no_inv_window_placement 2022-04-27 09:33:40 +02:00
Rémi Verschelde 676f9d39ed
Merge pull request #60535 from timothyqiu/class-name-icon
Fix custom class icon when it inherits from a script
2022-04-27 08:05:38 +02:00
Rémi Verschelde 6e67dc0881
Merge pull request #58164 from Calinou/import-hdr-add-clamp-exposure-option
Add an option to clamp HDR exposure to reduce environment fireflies
2022-04-27 08:01:34 +02:00
Haoyu Qiu 3b9095253c Make more import preset name translatable 2022-04-27 13:50:54 +08:00
Haoyu Qiu 8960b990ec Fix custom class icon when it inherits from a script 2022-04-27 10:02:21 +08:00
Hugo Locurcio 2694138060
Add an option to clamp HDR exposure to reduce environment fireflies
HDRI panoramas designed for realistic lighting can have extremely
bright suns, causing fireflies to appear in the environment reflection
(in addition to making environment lighting too bright when a
DirectionalLight3D is used).

This uses the Filament tonemapping formula.
2022-04-27 01:28:43 +02:00
FireForge fb1d4be7bd Add RayCast2D target_position editor handle 2022-04-26 15:14:35 -05:00
Aaron Franke 50495bcb08
Allow using other property hints without the range hint 2022-04-26 07:54:25 -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 004567e0cd
Merge pull request #60367 from timothyqiu/refresh-cd 2022-04-26 12:12:29 +02:00
Rémi Verschelde 525ee68087
Merge pull request #60409 from fire-forge/array-type 2022-04-26 11:20:33 +02:00
Rémi Verschelde 06c33cca18
Merge pull request #60511 from akien-mga/readd-find_node 2022-04-26 09:42:19 +02:00
Rémi Verschelde e35ce44853
Merge pull request #60446 from KoBeWi/animation_extermination
Remove RESET tracks after removing tracks
2022-04-26 08:18:15 +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
Rémi Verschelde 2b50d4af5f
Merge pull request #58666 from IgorKordiukiewicz/sprite-frames-resize-panels
Fixed issue where panels in sprite frames editor couldn't be resized
2022-04-26 08:15:20 +02:00
FireForge a549617a38 Add more property capitalizations
- BiDi
- FileSystem
- NavMesh
2022-04-25 23:49:39 -05: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 340ffabd20 i18n: Sync editor translations with Weblate
(cherry picked from commit 1e61fb1e37)
2022-04-25 17:19:34 +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 df4de306a9
Merge pull request #60490 from aaronfranke/dap-typo 2022-04-25 16:51:09 +02:00
Rémi Verschelde e246d08c52
Merge pull request #60500 from KoBeWi/scene_crasher 2022-04-25 16:50:17 +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
Rémi Verschelde 9c2ea7e296 Node: Re-add `find_node` as `find_child`, improve docs
The new name contrasts it better with `find_parent`, and makes it clear
that it only matches child/descendant nodes.

Also rename `find_nodes` to `find_children` accordingly.
2022-04-25 15:21:22 +02:00
Rémi Verschelde 7c7ce7dcd7
Merge pull request #60298 from reduz/scene-unique-paths 2022-04-25 13:38:08 +02:00
reduz 8580f377a3 Implement Scene Unique Nodes
Implements https://github.com/godotengine/godot-proposals/issues/4096

* Nodes can be marked unique to the scene in the editor (or via code).
* Unique nodes can be accessed via the **%** prefix at any point in the path. From that point in the path (depending on whether the scene of the path is), the unique node will be fetched.
* Implementation is very optimal, as these nodes are cached.
2022-04-25 12:19:17 +02:00
Yuri Rubinsky d9d871dfbf
Merge pull request #60439 from Chaosus/vs_vec4 2022-04-25 07:20:44 +03:00
kobewi 675594e9cd Fix crash with nested resources 2022-04-25 00:06:11 +02: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 fb6aaacaed
Fix type name typo in Debug Adapter Protocol 2022-04-24 03:21:23 -05: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
kobewi e96b773c81 Remove RESET tracks after removing tracks 2022-04-23 00:40:28 +02:00
kobewi cf74b36740 Fix RESET animation not being created 2022-04-22 22:28:15 +02: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 f563337251 Show typed Array type in Array editor
- Use vformat() and TTR() for Array editor button text
2022-04-20 22:59:51 -05: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 defcd0c57e
Avoid setting sub-window or started project window positions, if it's impossible to get screen rect. 2022-04-20 11:10:33 +03:00
bruvzg c0cc41d6c1
Improve embedded PCK loading and exporting.
Windows export process:
  Limit size of executable with embedded PCK to 4 GB.
  Use "rcedit" before embedding PCK.
  Capture and process "rcedit" errors.

Windows, Linux:
  Add support for PCK loading from executable "pck" section.
2022-04-20 11:09:59 +03: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
Haoyu Qiu 925167c4ea Reset refresh countdown if pending update tree request 2022-04-19 14:42:16 +08:00
Rindbee d97236bfca Fixes incorrect display of property labels with feature tags
Closes #60352
2022-04-19 09:08:56 +08:00
Silc 'Tokage' Renew 4d4ffa3a2c Implement global rest 2022-04-18 02:11:19 +09:00
Josh Kabo 0bff53135a Unzip read success no longer breaks read loop
unzReadCurrentFile(3) returns number of bytes read, so the current code only processes the file if no bytes were read (UNZ_OK is a #define equal to 0).
I've altered the break to occur only on unsuccessful read, (when unzReadCurrentFile(3) returns less than zero), and added an error message for when an unsuccessful read occurs.
2022-04-16 16:39:37 -07:00
Rémi Verschelde 970debed93
Merge pull request #60177 from reduz/animation-library-import
Import scenes as AnimationLibrary
2022-04-13 22:47:54 +02:00
reduz 66009318e0 Import scenes as AnimationLibrary
Added the ability to import scenes as AnimationLibrary

* Completes implementation of https://github.com/godotengine/godot-proposals/issues/4296
* Helps if you want to export animations to a separate file (say a GLTF) to avoid re-importing/exporting them every time the model changes.
* Helps if you simply want to have animations using a dummy model, which can be shared across multiple models.

Creates a secondary scene importer used only for animations.

**NOTE**: A new flag for scene importer: EditorSceneFormatImporter.IMPORT_DISCARD_MESHES_AND_MATERIALS has been added, to hint importers that they should skip meshes and animations (and hence make importing faster). It is not implemented in any importer yet, this should be done in a separate PR.
2022-04-13 15:06:56 +02:00
Rémi Verschelde 383cac9d1e
Merge pull request #59398 from Calinou/animation-track-editor-keyframe-draw-hover 2022-04-13 13:07:03 +02: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
Rémi Verschelde 4f0a379b25
Merge pull request #60040 from ConteZero/editor_log_copy 2022-04-12 21:06:54 +02:00
Rémi Verschelde 776c6bf6fb
Merge pull request #54740 from LightningAA/project-manager-sort-by-most-recent-as-default 2022-04-12 21:05:15 +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
Priyansh Rathi 0ea7780e33
move gltf export under scene menu 2022-04-12 19:42:41 +05:30
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
Rémi Verschelde c28d781344
Merge pull request #60169 from bruvzg/remove_fa_close 2022-04-12 14:16:52 +02:00
bruvzg d2ebac3a30
Remove or make private `FileAccess` `close()` methods. 2022-04-12 14:50:14 +03: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 bbd8651d87
Merge pull request #60020 from KoBeWi/yeet_bg 2022-04-11 17:54:58 +02:00
Rémi Verschelde 4ab86c6731
Merge pull request #59980 from reduz/animation-libraries 2022-04-11 14:18:35 +02:00
Rémi Verschelde 5613ac37d6
Merge pull request #59440 from bruvzg/fd_ref_counted 2022-04-11 14:12:18 +02:00
Rémi Verschelde 2ec68599a4
Merge pull request #60111 from KoBeWi/the_files_have_landed 2022-04-11 12:52:51 +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
Rémi Verschelde aba84275ae
Merge pull request #59514 from EricEzaM/input-editor-fixes 2022-04-11 12:37:10 +02:00
bruvzg 9381acb6a4
Make FileAccess and DirAccess classes reference counted. 2022-04-11 13:28:51 +03:00
Haoyu Qiu 35d0878139 Localize unnamed project name in editor window title 2022-04-11 12:50:10 +08:00
SaracenOne e7e4f41004 Make instance's editable children use warning color instead of disabled color 2022-04-11 02:36:20 +01:00
kobewi 63de41b996 Improvements to files_dropped signal 2022-04-11 00:37:06 +02:00
FireForge 8e752b06e8 Expose EditorSpinSlider.hide_slider 2022-04-09 16:31:22 -05:00
Haoyu Qiu 90782a18b7 Improve Select Frames dialog of SpriteFrames editor 2022-04-09 17:30:00 +08:00
ConteZero ee8fc125bf Fix editor_log text copy 2022-04-08 22:13:48 +02:00
kobewi 216fe8f8d9 Fix 2D editor menu position 2022-04-08 17:09:40 +02:00
kobewi f75e08db6a Remove unused SplitContainer bg theme property 2022-04-08 13:05:29 +02:00
Hugo Locurcio f064258aee
Highlight hovered keyframes in the animation track editor
Both unselected and selected keyframes feature hover feedback.

This currently only affects standard keyframes (i.e. not booleans,
colors or audio tracks which use custom icons).
2022-04-08 01:43:21 +02:00
Rémi Verschelde 748fde8df0
Merge pull request #59396 from Calinou/animation-track-editor-improve-drawing
Improve the animation track editor drawing
2022-04-08 01:18:42 +02:00
Rémi Verschelde 10dc3284fa
Merge pull request #59178 from Calinou/occluder3d-add-editor-icons 2022-04-07 19:02:41 +02:00
Rémi Verschelde a49079947b
Merge pull request #59962 from Ev1lbl0w/bugfix-projectManagerFileDialog 2022-04-07 00:09:48 +02:00
Ev1lbl0w 38fed916e7
Restore hidden folder behavior for project manager 2022-04-06 22:37:33 +01:00
Daniel Kříž cbe363d716 Fix missing favorite files in filesystem dock 2022-04-06 22:49:50 +02:00