Commit Graph

4310 Commits

Author SHA1 Message Date
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
Silc 'Tokage' Renew d54919945f Fixed odd behavior when Skeleton3DEditor is re-generated 2021-11-28 04:03:15 +09:00
Pablo Dobarro cfacd9c057 Fix offset in Viewport drag movement
The initial offset was using the mouse position when the threshold
was reached instead of the initial click position. This was adding
the drag threshold distance as an extra offset to the final
transformation.

Now the offset is calculated from the initial click position.
2021-11-27 01:32:02 +01:00
kobewi 512e260af4 Show scene when showing built-in script file 2021-11-24 13:05:18 +01:00
Lightning_A e078f970db Rename `remove()` to `remove_at()` when removing by index 2021-11-23 18:58:57 -07:00
kobewi 030697e06c Move container warning to the toaster 2021-11-23 16:17:19 +01:00
Rémi Verschelde c5ab537617
Merge pull request #42447 from aaronfranke/gitignore-create 2021-11-23 15:21:31 +01:00
Rémi Verschelde 76aa1d0a43
Merge pull request #55151 from Chaosus/control_reset_size 2021-11-22 16:22:57 +01:00
Yuri Roubinsky eabf8f5edf Added `reset_size` method to `Control` and `Window` classes 2021-11-22 16:55:21 +03:00
Haoyu Qiu abd41dedb0 Fix Theme Editor crash when clicking the element picker 2021-11-21 18:39:46 +08:00
kobewi ca4c63d654 Always soft-reload scripts 2021-11-19 17:45:16 +01:00
Hugo Locurcio 14d8ea767d
Tweak the built-ins color highlighting in the shader editor (take 2)
The new color is more distinguishable from other variables and
symbols.
2021-11-15 23:40:57 +01:00
Rémi Verschelde 5341e6010e
Allow dehardcoding documentation branch and URL in docs links
This makes it possible to change the branch of the documentation that
URLs are pointing to without having to modify all class reference
files.

In the XML class reference, the `$DOCS_URL` placeholder should be used,
and will be replaced automatically in the editor and when generating
the RST class reference.

The documentation branch string is set in `version.py`.

Co-authored-by: Hugo Locurcio <hugo.locurcio@hugo.pro>
2021-11-15 13:02:21 +01:00
Rémi Verschelde 9e1c190ce1
Merge pull request #54851 from Calinou/skeleton-2d-editor-swap-rest-pose-actions 2021-11-15 10:56:37 +01:00
Aaron Franke ed9c7bf450
Allow creating .gitignore and .gitattributes when creating a new project
Also allow creating these files later, and also allow disabling creating the default environment in editor settings.
2021-11-12 21:27:31 -06:00
Aaron Franke 3c0fdcc8ac
Use "enum class" for input enums 2021-11-12 15:37:54 -06:00
Aaron Franke 2ad3d1bd7a
Make OpenSimplex and VisualScript modules not depend on the editor 2021-11-12 12:03:54 -06:00
Gilles Roudière 1224d7a25c Implement texture padding in TileSetAtlasSources 2021-11-12 15:14:10 +01:00
Rémi Verschelde 57ae154e86
Merge pull request #53987 from groud/tile_data_inspector_plugin 2021-11-12 15:10:54 +01:00
Yuri Roubinsky 826e781bfa Fix default_texture_param in shader pipeline to support uniform arrays 2021-11-12 12:53:40 +03:00
Rémi Verschelde 2beaae4b6f
String: Remove `erase` method, bindings can't mutate String 2021-11-11 11:23:32 +01:00
Hugo Locurcio 4ff1431993
Swap rest pose actions in the Skeleton2D editor
The texts were changed before, but the actions weren't swapped around.
This led to unexpected behavior.
2021-11-10 23:39:59 +01:00
Rémi Verschelde 7211012c4f
Merge pull request #54745 from KoBeWi/find_in_scenes 2021-11-10 22:08:24 +01:00
Rémi Verschelde 68664c0239
Merge pull request #54836 from pycbouh/inspector-plugins-fixes-and-groups 2021-11-10 22:06:30 +01:00
Rémi Verschelde a6412e132a
Merge pull request #54660 from Chaosus/vs_particles_mesh_emitter 2021-11-10 19:55:25 +01:00
Yuri Sizov 2e4d18c929 Fix EditorInspectorPlugin virtual bindings and add parse_group callback 2021-11-10 17:56:59 +03:00
Rémi Verschelde 284b50cf30
Merge pull request #54662 from KoBeWi/now_with_reloading
Properly reload built-in tool scripts
2021-11-09 23:00:35 +01:00
Rémi Verschelde 06a33e590f
Merge pull request #53819 from TokageItLab/re-implement-ping-pong
Reimplement ping-pong animation and reverse playback
2021-11-09 22:11:04 +01:00
kobewi 75e8eafa72 Properly reload built-in tool scripts 2021-11-09 21:58:06 +01:00
Rémi Verschelde efea3128c3
Merge pull request #54808 from Calinou/editor-frametime-display-more-decimals
Display 2 decimals instead of 1 in editor frametime labels
2021-11-09 21:52:37 +01:00
Rémi Verschelde e3f3fc517a
Merge pull request #54653 from KoBeWi/built_in_scripts_deserved_that
Improve save handling for built-in scripts
2021-11-09 21:46:58 +01:00
Hugo Locurcio f61ee47a2e
Display 2 decimals instead of 1 in editor frametime labels
When comparing different graphics settings or optimizations,
this makes precise measurements and frametime comparisons easier.
2021-11-09 17:17:55 +01:00
Rémi Verschelde eb98fd9442
Merge pull request #54788 from rcorre/orbit_clamp 2021-11-09 14:15:48 +01:00
Ryan Roden-Corrent 3bd7c4f2a9
Clamp rotation for up/down orbiting shortcuts.
This prevents the viewport from going upside-down.

This was suggested at:
https://github.com/godotengine/godot/pull/51984#issuecomment-948614191:

> For 3.4, I think we can just clamp the angle value when using the
> camera orbiting shortcuts. We can investigate what to do with panning
> and freelook in 3.5 and 4.0.
2021-11-09 06:50:39 -05:00
Rémi Verschelde d9a74fd07f
Merge pull request #54372 from bruvzg/text_edit_ui 2021-11-09 00:13:25 +01:00
Rémi Verschelde 6c4737341d
Merge pull request #54649 from bruvzg/shadows 2021-11-09 00:07:41 +01:00
Hendrik Brucker ed0337c0b9 Several Gradient improvements 2021-11-08 19:11:36 +01:00
kobewi 953a9be2d9 Improve Add Node Here popup 2021-11-08 14:02:33 +01:00
kobewi 31644fe280 Properly handle scenes in Find in Files 2021-11-08 02:28:55 +01:00
kobewi 134e4d168b Improve save handling for built-in scripts 2021-11-07 23:51:12 +01:00
kobewi 313ef412f5 Fix preview sun and environment names 2021-11-07 00:40:15 +01:00
kobewi 0f7d7c9ffb Show mouse position when clicking ruler tool 2021-11-07 00:00:52 +01:00
clayjohn 0eff109a21 Added SSIL post processing effect 2021-11-06 12:43:19 -07:00
Yuri Roubinsky 80b563672b Added `MeshEmitter` node for particles in visual shader 2021-11-06 17:45:38 +03:00
bruvzg 5f9cd9ccbc Fix Label and RichTextLabale text shadows and shadow outlines. 2021-11-06 10:22:09 +02:00
Rémi Verschelde 13aaa73124
Merge pull request #54573 from nekomatata/query-parameters 2021-11-05 21:52:39 +01:00
Brian Semrau a90e318a19 Fix previews sometimes displaying wrong/blank image 2021-11-05 12:58:14 -04:00
Rémi Verschelde 56cfebbe98
Merge pull request #54599 from Chaosus/vs_particles_2d_emitters 2021-11-05 12:01:36 +01:00
Yuri Roubinsky dcdf59cd73 Added 2D boolean hint for particle emitters in visual shaders 2021-11-05 12:45:57 +03:00
Brian Semrau ac24070056 Use Callable in RS::request_frame_drawn_callback 2021-11-05 01:59:38 -04:00
PouleyKetchoupp acbd24ea84 Use parameter classes instead of arguments for all physics queries
Same as what is already done for shape queries, applied to point and ray
queries. Easier to document and more flexible to add more parameters.

Also expose intersect_point method to script in 3D.
Remove intersect_point_on_canvas in 2D, replaced with a parameter.
2021-11-04 11:44:39 -07:00
Hugo Locurcio f5170dca75
Use 4× MSAA for the Advanced Import Options 3D preview
This results in better preview quality and is more consistent with
the material preview in the inspector.
2021-11-04 19:27:23 +01:00
kobewi 9abb07efb4 Ignore external editor for built-in scripts 2021-11-04 14:30:04 +01:00
kobewi e393c2a734 Add is_built_in() method to Resource 2021-11-04 12:45:58 +01:00
Rémi Verschelde a2803f3d86
Merge pull request #54072 from KoBeWi/hrcr_is_ded 2021-11-03 17:31:48 +01:00
Silc 'Tokage' Renew 953a7bce7e reimplement ping-pong 2021-11-03 13:39:33 +09:00
Yuri Sizov 67cbca341a Add a flag to EditorResourcePicker to differentiate selection contexts 2021-11-02 14:35:15 +03:00
Rémi Verschelde 529968df30
Merge pull request #54396 from groud/implement_terrain_other_brushes 2021-11-01 22:27:06 +01:00
Rémi Verschelde eae34230c8
Merge pull request #54419 from Chaosus/vs_cut 2021-11-01 14:05:46 +01:00
Gilles Roudière 699f020f1d Fix TileSet editor drag and drop not working 2021-11-01 10:22:41 +01:00
Clay John 8a10bb7d0d
Use OpenGL 3.3 core profile instead of compatibility profile
- Rename OpenGL to GLES3 in the source code per community feedback.
  - The renderer is still exposed as "OpenGL 3" to the user.
- Hide renderer selection dropdown until OpenGL support is more mature.
  - The renderer can still be changed in the Project Settings or using
    the `--rendering-driver opengl` command line argument.
- Remove commented out exporter code.
- Remove some OpenGL/DisplayServer-related debugging prints.
2021-10-31 15:56:45 +01:00
bruvzg 3f33e1d7d6 Add functions for getting name and font style from dynamic and bitmap fonts.
Add font selection toolbar editor plugin.
2021-10-31 12:40:58 +02:00
Yuri Roubinsky 6e00b4e330 Refactored copy/paste of visual shaders, implement 'Cut' feature 2021-10-31 10:42:32 +03:00
Hugo Locurcio ce97ddbcb1
Rename GLES2 driver to OpenGL to prepare for the upgrade to GLES3
- Use lowercase driver names for the `--rendering-driver`
  command line argument.
2021-10-30 02:05:49 +02:00
Gilles Roudière c609d39214 Implement missing TileMap brushes for terrains 2021-10-29 19:46:42 +02:00
Yuri Roubinsky f6084f38c3
Merge pull request #54388 from Chaosus/fix_orm_conversion 2021-10-29 18:59:12 +03:00
Yuri Roubinsky 7528c204d3 Added convertor from `ORMMaterial3D` to `ShaderMaterial` 2021-10-29 17:49:24 +03:00
Yuri Roubinsky 2d0aa5ebc4 Repair Fog mode in visual shaders 2021-10-29 17:09:03 +03:00
clayjohn 1b2cd9f251 Addition of FogVolumes, FogShaders, FogMaterial, and overhaul of VolumetricFog
Co-authored-by: Brian Semrau <brian.semrau@gmail.com>
2021-10-28 22:02:23 -07:00
Rémi Verschelde 0ae65472e7
clang-format: Enable `BreakBeforeTernaryOperators`
clang-format keeps breaking the way it handles break *after* ternary operators,
so I give up and go with the only style they seem to actually test.
2021-10-28 15:57:41 +02:00
Rémi Verschelde 3a6be64c12
clang-format: Various fixes to comments alignment from `clang-format` 13
All reviewed manually and occasionally rewritten to avoid bad auto formatting.
2021-10-28 15:43:36 +02:00
Rémi Verschelde 3b11e33a09
clang-format: Disable alignment of operands, too unreliable
Sets `AlignOperands` to `DontAlign`.

`clang-format` developers seem to mostly care about space-based indentation and
every other version of clang-format breaks the bad mismatch of tabs and spaces
that it seems to use for operand alignment. So it's better without, so that it
respects our two-tabs `ContinuationIndentWidth`.
2021-10-28 15:19:35 +02:00
Rémi Verschelde 6d930bd270
Merge pull request #54342 from groud/remove_item_list_editor 2021-10-28 11:52:47 +02:00
Gilles Roudière a51f92273a Remove ItemList editor and replace it by a property array 2021-10-28 10:16:51 +02:00
kobewi de4f29f458 Remove node_hrcr hack 2021-10-28 01:43:34 +02:00
Hugo Locurcio bb681ef9f2
Improve appearance of the editor Debugger bottom panel menu
- Make the Debugger bottom panel menu more prominent when
  there are errors or warnings by adjusting the text color.
- Add some spacing to the right of the error/warning icon
  for better visual appearance.
2021-10-27 16:56:15 +02:00
Rémi Verschelde 8c162f4a7b
Merge pull request #54270 from JFonS/fix_selection 2021-10-26 19:03:34 +02:00
jfons 83fd0e0c70 Fix click selection in the editor 3D viewport 2021-10-26 18:08:31 +02:00
Yuri Sizov 12838bd99d Add focus font color to Button and derivatives 2021-10-26 17:42:40 +03:00
Gilles Roudière cec004adf0 Implement polygons editors in the tiles selection mode 2021-10-26 12:38:36 +02:00
Rémi Verschelde 01afa39d21
Merge pull request #54073 from groud/terrains_for_procgen 2021-10-26 08:15:07 +02:00
reduz d03b7fbe09 Refactored Node3D rotation modes
* Made the Basis euler orders indexed via enum.
* Node3D has a new rotation_order property to choose Euler rotation order.
* Node3D has also a rotation_mode property to choose between Euler, Quaternion and Basis

Exposing these modes as well as the order makes Godot a lot friendlier for animators, which can choose the best way to interpolate rotations.
The new *Basis* mode makes the (exposed) transform property obsolete, so it was removed (can still be accessed by code of course).
2021-10-25 14:34:00 -03:00
bruvzg ebbc25e89c Ignore empty Font resources as theme override.
Add range hint to font_size properties.
Remove excessive `base_size` Font property.
2021-10-25 14:05:37 +03:00
Rémi Verschelde 69eaa806c8
Merge pull request #53820 from Calinou/3d-editor-add-quick-fov-adjust 2021-10-24 22:33:05 +02:00
Hugo Locurcio 5ae45cf388
Implement Alt + Mouse wheel to adjust FOV in the 3D editor viewport
This allows for quicker FOV adjustments compared to using the View menu.
2021-10-23 12:21:03 +02:00
Silc 'Tokage' Renew 653e2a550c Fixed animation insertion in SkeletonEditor 2021-10-23 16:50:00 +09:00
Yuri Roubinsky af08d497e2 Fix error spam at setting a CurveTexture in visual shaders 2021-10-22 17:32:16 +03:00
Marcel Admiraal 87a4ba492e Remove unimplemented methods 2021-10-21 18:44:25 +01:00
Gilles Roudière d1aef45072 Allow updating TileMap cells using surrounding terrains 2021-10-21 16:57:28 +02:00
Rémi Verschelde c942d567eb
Merge pull request #53926 from YeldhamDev/i_am_tabbar_now 2021-10-20 15:42:41 +02:00
Rémi Verschelde 9841c9abe8
Merge pull request #53994 from groud/move_tileset_tilemap_switch_to_tabs 2021-10-20 11:53:54 +02:00
Haoyu Qiu 392d529247 Update view name after processing orbit view shortcuts 2021-10-20 13:05:59 +08:00
Gilles Roudière 5317b79a1d Remove the tilemap/tileset editor switch, move it to tabs 2021-10-19 17:11:34 +02:00
Michael Alexsander 67acb7de6e Rename `Tabs` to `TabBar` 2021-10-19 11:37:31 -03:00
Gilles Roudière 1a95f893c4 Implement TileMap patterns palette 2021-10-19 11:57:37 +02:00
Rémi Verschelde 4387f9645b
Merge pull request #52940 from groud/toast_notification 2021-10-19 09:57:13 +02:00
Rémi Verschelde 21f1ac8bf3
Merge pull request #53805 from groud/name_to_tileset_sources 2021-10-19 09:56:19 +02:00
Rémi Verschelde c240275482
Merge pull request #51984 from rcorre/camera_shortcuts 2021-10-16 18:50:48 +02:00
mennomax b4eeeb315a
Swap args of Plane(point, normal) constructor
Now (normal, point)
2021-10-15 20:49:42 -05:00
Rémi Verschelde b5ece7c363
Merge pull request #53764 from Chaosus/vs_curve_input_port_default 2021-10-15 19:31:05 +02:00
Rémi Verschelde f90047f158
Merge pull request #53786 from TokageItLab/fix-skeleton-editor-methods 2021-10-14 20:53:15 +02:00
Silc 'Tokage' Renew 8e9897b6de get rid set_bone_pose and fix some function in SkeletonEditor 2021-10-15 02:41:17 +09:00
Gilles Roudière 3b42660105 Add a name to TileSet sources 2021-10-14 14:54:48 +02:00
Gilles Roudière 0587e5e018 Implement toast notifications in the editor 2021-10-14 13:30:54 +02:00
kobewi 0afd47d8bc Add tool quick-select to tile editor 2021-10-14 02:24:39 +02:00
reduz 2dc823273e Remove REST transform influence in skeleton bones
* Animations and Skeletons are now pose-only.
* Rest transform is kept as reference (when it exists) and for IK
* Improves 3D model compatibility (non uniform transforms will properly work, as well as all animations coming from Autodesk products).
2021-10-13 14:51:29 -03:00
Rémi Verschelde 004b44e915
Merge pull request #53767 from groud/improve_tile_set_change_performances 2021-10-13 16:03:31 +02:00
Gilles Roudière 0de2fce3e1 Greatly improve editor performances by deferring tiles related updates
Solve few update problems
2021-10-13 14:49:47 +02:00
Yuri Roubinsky e270644b20 Add a default input parameter field to CurveTexture (in visual shaders) 2021-10-13 15:25:12 +03:00
Gilles Roudière b9151860f3 Prevent tiles outside atlas texture 2021-10-13 13:44:02 +02:00
Rémi Verschelde 3e86ca5586
Merge pull request #53689 from reduz/remove-animation-transform3d-track 2021-10-13 12:40:33 +02:00
Rémi Verschelde 4d2c82ef77
Merge pull request #53727 from Calinou/3d-editor-tweak-object-snap-distances 2021-10-13 11:43:58 +02:00
Rémi Verschelde 74a87fe98b
Merge pull request #53683 from Chaosus/vs_previews 2021-10-13 10:03:44 +02:00
reduz ec19ed3723 Remove animation 3D transform track, replace by loc/rot/scale tracks.
* `Animation.TYPE_TRANSFORM3D` track is gone.
* Added POSITION_3D, ROTATION_3D, SCALE_3D tracks.
* GLTF2, Collada, FBX importers will only import the track types found.
* Skeleton3D bone poses are now Pos/Rot/Scale, pose matrix removed.
* AnimationPlayer and AnimationTree animate these tracks separately, only when found.
* Removed BakeReset code, is useless with these changes.

This is the first in a series of commits designed to make the animation system in Godot more useful, which includes:

* Better compatibility with Autodesk products
* Better reusability of animations across models (including retargeting).
* Proper animation compression.
* etc.

*Note* GLTF2 animation saving went broken with this PR, needs to be fixed in a subsequent one.
2021-10-12 20:08:42 -03:00
Rémi Verschelde 7494d54e04
Merge pull request #53471 from KoBeWi/🥞
Improve editor panning and remove RMB panning
2021-10-12 22:37:28 +02:00
Rémi Verschelde 64ec08d70d
Merge pull request #53735 from Paulb23/text-file-drop-and-drag
Allow dragging TextFiles from the Filesystem dock
2021-10-12 22:21:02 +02:00
Paulb23 31c1215c25 Allow dragging TextFiles from the Filesystem dock 2021-10-12 18:16:08 +01:00
Paulb23 f33a6328b5 Fix TextFiles not saving when closing the tab 2021-10-12 17:13:24 +01:00
Hugo Locurcio 7a3d0b79b4
Increase object snapping distances in the 3D editor
- Increase drag-and-drop snapping to 50 units
  (from 10 units).
- Increase Snap Object to Floor maximum height to 500 units
  (from 20 units).
- Increase Snap Object to Floor negative margin to 1 unit
  (from 0.2 units).
2021-10-12 16:38:33 +02:00
Juan Linietsky 610de0974d
Revert "Implement reverse playback and ping-pong loop in AnimationPlayer and NodeAnimation" 2021-10-11 19:27:50 -03:00
Rémi Verschelde 9ed4f8367b
Merge pull request #48332 from TokageItLab/implement-ping-pong 2021-10-11 22:55:01 +02:00
Yuri Roubinsky c299c54023 Make port previews in visual shader visible in other shader modes 2021-10-11 22:19:08 +03:00
Paulb23 3010bca41b Move add_syntax_highlighter bind to ScriptEditorBase 2021-10-11 18:13:31 +01:00
Rémi Verschelde 94ce83beff
Merge pull request #53678 from groud/fix_tilemap_selection_not_updating 2021-10-11 18:11:55 +02:00
Gilles Roudière 1f82d617e2 Fix selection not updating when erasing tiles 2021-10-11 17:34:20 +02:00
Gilles Roudière ae3ce8beaf Fix TileSet selection not updating when selecting on TileMap 2021-10-11 14:09:44 +02:00
Tokage 372ba76663 implement ping-pong loop in animation
Co-authored-by: Chaosus <chaosus89@gmail.com>
2021-10-09 18:08:43 +09:00
Rémi Verschelde 5ae569560d
Fix missing argument names in bindings
While at it, tweak some boolean setters to use `p_enabled` for the bool.

Also renames `draw_minimap()` to `set_draw_minimap()`.
2021-10-09 00:20:10 +02:00
Rémi Verschelde 8b9022d2f3
Merge pull request #53235 from Paulb23/script-editor-save-state 2021-10-07 22:34:35 +02:00
Paulb23 44e260e247 Allow breakpoints in closed files 2021-10-07 19:48:58 +01:00
Paulb23 bec8ae7ba6 Preserve script editor state through tab closes 2021-10-07 19:44:23 +01:00
Haoyu Qiu 274ed82283 Fix make sub-resource crash in AnimationTreeEditor 2021-10-07 19:45:03 +08:00
Silc 'Tokage' Renew 7a447026c2 fixed insert track queue in AnimationTrackEditor doesn't work correctly 2021-10-07 07:30:36 +09:00
Rémi Verschelde 164dc11e04
Merge pull request #45699 from TokageItLab/implement-skeleton-editor-gizmo
Implement Skeleton Editor Gizmo
2021-10-06 21:11:20 +02:00
Silc Renew f2e9867e9f Implemented SkeletonEditorGizmo
Co-authored-by: Lyuma <xn.lyuma@gmail.com>
2021-10-07 01:07:46 +09:00
kobewi 3f6112d48b Improve editor panning and remove RMB panning 2021-10-06 14:11:33 +02:00
Gilles Roudière bfbaa4b461 Allow editing several tiles animations at once 2021-10-06 13:20:29 +02:00
Rémi Verschelde 8a0db53d0f
Merge pull request #51437 from timothyqiu/selection-box-sep 2021-10-05 13:55:22 +02:00
kobewi 6397eaa27e Fix some leftover references to idle_frame 2021-10-04 20:57:31 +02:00
reduz b11bb595d1 Remove ClippedCamera3D
* Usage was always confusing for users
* The ability to generate a pyramid shape was moved to Camera3D
* SpringArm3D now casts using the camera pyramid shape if no shape is supplied.
2021-10-04 10:46:49 -03:00
Eric M bd3cc8d6cc Fixed ScriptTextEditor errors/warnings panel formatting. 2021-10-04 18:03:26 +10:00
PouleyKetchoupp 39f6ca96a3 Rename Joint2D and Joint3D files for consistency
Now matches the class names to be consistent between 2D and 3D and with
other node types.
2021-10-01 12:00:32 -07:00
Camille Mohr-Daurat c7ee029acd
Merge pull request #53302 from nekomatata/physics-bone-remove-editor-code
Remove editor code in PhysicalBone3D
2021-10-01 08:45:20 -07:00
PouleyKetchoupp ca30b70943 Remove editor code in PhysicalBone3D
_set_gizmo_move_joint is only used in PhysicalBone3DEditor, so the
editor plugin call can be done directly there.
2021-10-01 08:02:38 -07:00
Eric M ad30b0a8dd Allow shortcuts to have any number of bindings. Updated UI as required. 2021-10-01 18:04:28 +10:00
Rémi Verschelde a28f44fa53
Merge pull request #53277 from YeldhamDev/tabs_renaming 2021-10-01 07:52:29 +02:00
Michael Alexsander 663e480f24 Rename some elements of `Tabs` 2021-09-30 20:18:23 -03:00
Lightning_A c63b18507d Use range iterators for `Map` 2021-09-30 15:09:12 -06:00
Rémi Verschelde 3e1b630461
Merge pull request #53025 from Paulb23/textfile-ux 2021-09-30 23:00:07 +02:00
Juan Linietsky c370b4c4d0
Merge pull request #52544 from JFonS/lod_fixes
Auto LOD fixes and improvements
2021-09-30 14:49:11 -03:00
Hugo Locurcio 570cdc128f
Rename Node's `filename` property to `scene_file_path` for clarity 2021-09-30 16:50:25 +02:00
Paulb23 6596c7bdc2 Add TextFile support across the editor 2021-09-30 13:29:29 +01:00
Rémi Verschelde 1ab8f3f559
Merge pull request #52724 from groud/improve_tilemap_physics 2021-09-29 23:01:16 +02:00
Gilles Roudière f2caab4691 Improve TileMap physics for moving platforms and conveyor belts like movements 2021-09-29 17:56:30 +02:00
Rémi Verschelde 1979266a17
Merge pull request #53062 from stebulba/4.0_undo_CloseCurve 2021-09-29 10:18:24 +02:00
Rémi Verschelde ad635567b1
Merge pull request #53189 from AnilBK/use-class-specific-funcs 2021-09-29 07:40:52 +02:00
Rémi Verschelde 50c0cee44e
Merge pull request #53186 from groud/tiles_fixes 2021-09-29 07:05:19 +02:00