Commit Graph

5371 Commits

Author SHA1 Message Date
Rémi Verschelde 7663c69922
Merge pull request #81388 from YuriSizov/core-gdvirtual-but-less-confused-about-itself
Extract `ScriptInstance` into its own file to simplify includes
2023-09-07 13:53:45 +02:00
bitsawer d50595c0e9 Fix shader text editor include file reloading 2023-09-07 14:35:26 +03:00
Yuri Sizov d8ff69d53c Extract ScriptInstance to simplify includes
This allows to include script_instance.h directly in the
generated gdvirtual.gen.inc, and remove excessive includes
from the codebase.

This should also allow Resource to use GDVIRTUAL macros,
which wasn't possible previously due to a circular dependency.
2023-09-06 22:54:38 +02:00
Yuri Sizov fc01e2e7f6 Add a theme preview switcher to the 2D viewport
This commit adds a new View submenu that allows switching
between the project theme (default), the editor theme, and
the default theme. The last selected option is stored per
project and is restored when reloading the project.
2023-09-06 19:40:43 +02:00
Yuri Sizov 512182f147 Add theme contexts to various parts of the editor
This change defines additional theme contexts for editor
branches to prevent theme leaking between the default
theme, the project theme, and the editor theme.

- Both editor window and EditorNode define an editor-specific
context with the editor theme and the default theme.
- The 2D viewport defines a project-specific context with
the project theme and the default theme.
- Theme editor preview tabs define the default-only context
with the default theme.

Additionally, the default theme context now only includes
the project theme for running projects (both export and debug).
This prevents the project theme from leaking into the editor.

This commit also does a little clean up on the theming aspects
of the EditorNode.
2023-09-06 19:40:43 +02:00
Yuri Sizov 3c63dce3cd Merge pull request #80573 from KoBeWi/2k_lines_of_changes_created_at_2AM
Add EditorStringNames singleton
2023-09-06 14:49:02 +02:00
Fredia Huya-Kouadio 8cc7739197 Godot Android plugin re-architecture 2023-09-03 17:04:10 -07:00
kobewi 6de34fde27 Add EditorStringNames singleton 2023-09-03 19:58:18 +02:00
Rémi Verschelde 07035466e8
Merge pull request #81189 from jsjtxietian/Fix-press-space-when-enter-editor-layout-name-will-confirm-save
Use `ui_text_submit` instead of `ui_accept` to confirm and close text prompts
2023-09-02 14:30:12 +02:00
jsjtxietian ba41910967 Use ui_text_submit to confirm and close text prompts
Fix press space when enter editor layout name will
confirm and save layout, same in theme editor
2023-09-01 12:23:30 +08:00
jsjtxietian cfd7dfd985 Fix a crash when built-in script is not saved and have syntax error
When built-in script is not saved, it has empty path, and origin
code assumes error with empty path is a depended_error but that's
not always the case.
Also add protection before access list index 0.
2023-08-30 17:45:58 +08:00
Rémi Verschelde 3417f34a37
Merge pull request #80529 from KoBeWi/unfortunate_fix_is_unfortunate🤦‍♂️
Fix TileSet not disappearing on deselecting TileMap
2023-08-29 12:43:10 +02:00
Rémi Verschelde 1ffc24e19e
Merge pull request #80124 from Calinou/3d-editor-frame-time-initialize-fps
Initialize View Frame Time estimates to match 120 FPS
2023-08-29 12:42:16 +02:00
Rémi Verschelde 9229ea121c
Merge pull request #77986 from KoBeWi/outside_the_texture,_only_death_awaits
Cleanup tiles outside the texture
2023-08-28 20:37:04 +02:00
Hugo Locurcio 15b31f0891
Initialize View Frame Time estimates to match 120 FPS
This prevents the estimation from being extremely high (close to 100,000 FPS)
until enough time has passed to display an accurate estimation.
2023-08-28 17:25:56 +02:00
kobewi 52d41cc555 Add option to cleanup tiles outside the texture 2023-08-28 15:15:45 +02:00
Rémi Verschelde 6636ccc3ea
Merge pull request #80943 from rakkarage/tileset-atlas-merge-rgb8
Convert TileSet Atlas Merge input images to RGBA8 to match output, if needed
2023-08-28 15:04:16 +02:00
Rémi Verschelde bcbe1fd5e0
Merge pull request #80754 from KoBeWi/TileSetImprovementsCollectionSource
Improve scene tiles workflow
2023-08-28 15:03:26 +02:00
Rémi Verschelde a7ded904de
Merge pull request #79678 from thiagola92/auto_create_tilesets_for_multiple_atlas
Auto create tile for multiple atlases
2023-08-28 15:02:37 +02:00
Rémi Verschelde 2d42357464
Merge pull request #77316 from rakkarage/tileset_atlas_merge
Include animation frames in tile atlas merge.
2023-08-28 15:01:24 +02:00
Juan Linietsky 407b16ab00
Debug CanvasItem redraw
I wanted to add this tool for years and always forget. This command line option:

```
$ godot.exe -e --debug-canvas-item-redraw
```

Allows to see when a canvas item is redrawn. This helps find out if something
in the UI is refreshing in a way it should not. Examples as such:

* Signals causing more of the UI to redraw.
* Container resizing causes more UI elements to redraw.
* Something using a timer is redrawing all time time, which can go unnoticed.

To my surprise, the editor UI is redrawing very efficiently. There is some
weird stuff with the scene tabs, redrawing when the inspector changes but most
things for the most part are fine.
2023-08-28 12:53:56 +02:00
Rémi Verschelde 00d1fafc77
Merge pull request #81022 from YuriSizov/editor-run-scripts-valid-and-toasty
Improve warnings when running scripts in the editor
2023-08-28 12:08:37 +02:00
Rémi Verschelde 8f07644867
Merge pull request #81011 from 21dhruvp/remove-meta-array
Added checks to remove meta arrays when creating and undoing guides
2023-08-28 12:07:03 +02:00
Rémi Verschelde 0655a7d7d3
Merge pull request #80517 from YuriSizov/tsa-randomly-picked-you-for-mandatory-inspection-i-think-not
Avoid unnecessary inspector updates when loading or switching scenes
2023-08-28 12:05:06 +02:00
Rémi Verschelde 33a3e12fe1
Merge pull request #80435 from YuriSizov/region-editor-quality-pass
Fix multiple usability issues in the texture region editor
2023-08-28 12:04:18 +02:00
thiagola92 c8a94ea3e8 Support auto create tiles when adding multiple atlases
TileSet add button support multiple files
Join most of the code of `_drop_data_fw()` and `_texture_file_selected()` in a new function `_load_texture_files()`
Rename `init_source` to `init_new_atlases`
2023-08-27 10:45:03 -03:00
Yuri Sizov 4b7d0c84a1 Fix multiple usability issues in the texture region editor
- Correctly display atlas textures when used by other objects.
- Make region handles easier to hit in ninepatchable objects.
- Correctly initialize and restore various visual properties.
- Improve code quality.
2023-08-27 14:25:49 +02:00
Yuri Sizov 2270f4917a Improve warnings when running scripts in the editor 2023-08-27 13:59:06 +02:00
21dhruvp a7b2819540 Added checks to remove meta arrays when creating and undoing guides
Added checks to remove meta arrays when creating and undoing guides

Update editor/plugins/canvas_item_editor_plugin.cpp

Co-authored-by: A Thousand Ships <96648715+AThousandShips@users.noreply.github.com>

Update editor/plugins/canvas_item_editor_plugin.cpp

Co-authored-by: A Thousand Ships <96648715+AThousandShips@users.noreply.github.com>
2023-08-26 10:35:54 -04:00
Yuri Sizov 6da4ad1662 Merge pull request #80968 from rakkarage/alternative-icon-scale
Call `add_child` after `set_rect` to fix size bug
2023-08-25 21:26:50 +02:00
Yuri Sizov 43f61836ad Merge pull request #80934 from philippesic/TileSet-Sep-Suffix
Add `px` suffix for TileSet `separation` property
2023-08-25 21:26:41 +02:00
Pippo Pesic 0044217a7f Add `px` suffix to TileSet `Separation` value
Add px suffix to TileSet separation value
2023-08-25 08:58:11 -07:00
Rakka Rage e93d2a04df Call `add_child` after `set_rect` to fix size bug 2023-08-25 10:10:47 -04:00
Yuri Sizov e21ded8f8f Merge pull request #80450 from KoBeWi/settings_freeze,_no_more_changes
Deprecate `project_settings_changed` signal
2023-08-25 14:58:32 +02:00
Rakka Rage dc2aa69c46 Convert TileSet Atlas Merge input images to RGBA8 to match output, if needed 2023-08-23 19:26:57 -04:00
Rakka Rage c17848f07d Include animation frames in tile atlas merge. 2023-08-23 16:19:24 -04:00
Rémi Verschelde cc01b28886
Merge pull request #80779 from Chaosus/cpuparticles_converter
Implement conversion from `CPUParticles` to `GPUParticles` (3D/2D)
2023-08-21 19:26:48 +02:00
Rémi Verschelde 23db0240a2
Merge pull request #78996 from Tetane/create_shader_node_popup
Fix "Create Shader Node" window position when visual shader editor is floating
2023-08-21 08:20:42 +02:00
Yuri Roubinski 7fcb91f077 Implement conversion from `CPUParticles` to `GPUParticles` (3D/2D) 2023-08-19 11:58:57 +03:00
kobewi 0d8f8d7054 Simplify making texture nodes in 2D editor 2023-08-19 00:17:34 +02:00
kobewi a88e3b8604 Improve scene tiles workflow 2023-08-18 13:55:30 +02:00
Rémi Verschelde 446dfdbd87
Merge pull request #80329 from xiongyaohua/path3d_tilt_gizmo
Add handles to control Curve3D tilt
2023-08-17 12:29:55 +02:00
Rémi Verschelde a42f95f9e2
Merge pull request #80689 from AThousandShips/gizmo_fix
Fix gizmo for `BoxShape3D`
2023-08-17 11:27:28 +02:00
Rémi Verschelde c7356c795b
Merge pull request #80647 from jsjtxietian/CollisionShape3D-Shape-Size-handles-missing-when-Script-editor-floating
Fix 2D/3D viewport context switching issues when script editor is floating
2023-08-17 11:27:04 +02:00
Rémi Verschelde 8d0c9a4c87
Merge pull request #80317 from KoBeWi/taking_shortcuts
Ensure TileMap editor shortcuts are handled
2023-08-17 11:24:39 +02:00
Rémi Verschelde aa9e4b8ace
Merge pull request #77096 from spanzeri/skeleton-editor-cleanup-followup
Additional cleanup of bone editors
2023-08-17 11:19:44 +02:00
A Thousand Ships 1dcb45a79c Fix gizmo for `BoxShape3D` 2023-08-16 16:49:04 +02:00
jsjtxietian fec0396cac fix CollisionShape3D Shape Size handle will missing
when Script editor floating
2023-08-15 12:41:20 +08:00
Rémi Verschelde c78be12f42
Merge pull request #80610 from lawnjelly/fix_tilemap_editor_plugin_crash2
Fix `TileMapEditorPlugin` crash by storing tilemap ID instead of pointer
2023-08-14 15:31:19 +02:00
lawnjelly 356fc728a4 Fix `TileMapEditorPlugin` crash by storing tilemap ID instead of pointer
Store the tilemap ObjectID instead of raw pointer, and check it is valid before access.
2023-08-14 12:56:52 +01:00
lawnjelly fa7be20ee1 Fix crash on exit where TileSet calls destroyed TileSetAtlasSourceEditor
Removes signal from TileSet on destroying TileSetAtlasSourceEditor, to prevent TileSet calling function in destroyed TileSetAtlasSourceEditor.
2023-08-14 10:25:50 +01:00
Yuri Sizov 2445414aa0 Avoid unnecessary inspector updates when loading or switching scenes
This should result in some noticeable performance improvements,
aside from fixing bugs due to conflicts in logic.
This also simplifies some related code identified while debugging.
2023-08-12 13:32:59 +02:00
Daniel Roberts 46e395abb1 Add handles to control Curve3D tilt 2023-08-12 14:55:38 +08:00
kobewi 6b7829b5ff Fix TileSet not disappearing on deselecting TileMap 2023-08-12 00:47:26 +02:00
Rémi Verschelde 48a447b5ee
Merge pull request #58389 from rcorre/blender-numeric
Implement numeric blender-style transforms.
2023-08-11 10:31:40 +02:00
kobewi fca3ab5564 Deprecate project_settings_changed signal 2023-08-10 15:07:25 +02:00
Ryan Roden-Corrent d6a83a6bac
Implement numeric blender-style transforms.
This allows the user to input numbers during an "instant" (blender
style) transform operation to specify exactly how far to transform the
object. For example:

g2.5xx: Translate 2.5 units along the local x-axis
ry-45: Rotate -45 degrees around the y-axis
s.25Z: Scale by a factor of .25 on the xy plane

Some shared code between the traslate/rotate/scale branches of update_transform
was refactored into apply_transform so numeric transforms could reuse it.

This removes any "{X,Y,Z}-Axis Transform" messages. These prevented the
"Transforming: (x,y,z)" messages from showing, and the latter are more
useful, as they tell you the actual units.

This also rearranges finish_transform to clear _edit before updating
the axis rendering, so an axis doesn't remain highlighted.

Co-authored-by: Rémi Verschelde <rverschelde@gmail.com>
2023-08-10 07:18:18 -04:00
kobewi f02133a4a2 Fix TileSet with TileMap handling 2023-08-09 23:50:45 +02:00
Rémi Verschelde 8375f73680
Merge pull request #80355 from jcovin293/issue/80347/fix-missing-ellipsis
Fix menu items that trigger secondary interface missing ellipsis
2023-08-09 17:46:26 +02:00
RandomWalrus13 585633ea85 Fix menu items that trigger secondary interface missing ellipsis
fix #80347
2023-08-09 08:30:35 -05:00
Rémi Verschelde f6b9d445b5
Merge pull request #80285 from YeldhamDev/just_a_little_bit
Further separate icon from text of buttons in both editor and default themes
2023-08-09 15:20:25 +02:00
Rémi Verschelde 1163dac9e3
Merge pull request #80215 from clayjohn/HDR-2D
Add option to enable HDR rendering in 2D
2023-08-08 16:57:33 +02:00
Hugo Locurcio e21388d9f4
Readd a Camera3D icon gizmo to the 3D editor, renew Camera2D/3D icons
The lack of icon gizmo made it no longer possible to select Camera3D
nodes in the 3D viewport by clicking on them.

A new Camera3D icon gizmo was designed to be direction-neutral.
This avoids the issue that the previous icon gizmo had, since it was
always facing right.

This also adds icons for CameraAttributesPractical and CameraAttributesPhysical.
2023-08-08 16:04:53 +02:00
Michael Alexsander 98bdb56815
Further separate icon from text of buttons in both editor and default themes 2023-08-07 13:22:39 -03:00
Rémi Verschelde 169a28bd0f
Merge pull request #80362 from Calinou/string-use-unicode-compiletime
Use compile-time Unicode string conversion
2023-08-07 14:55:58 +02:00
Rémi Verschelde 02709d57ee
Merge pull request #78858 from MewPurPur/tweak-mesh-preview
Improve material and mesh preview buttons
2023-08-07 14:44:34 +02:00
Rémi Verschelde faaf27f284
Fix various typos with codespell
Also includes typo fixes from #79993, #80068, #80276, and #80303.

Co-authored-by: betalars <contact@betalars.de>
Co-authored-by: spaceyjase <429978+spaceyjase@users.noreply.github.com>
Co-authored-by: Swarkin <102416174+Swarkin@users.noreply.github.com>
Co-authored-by: Raul Santos <raulsntos@gmail.com>
2023-08-07 13:09:47 +02:00
clayjohn 57eb762bae Add option to enable HDR rendering in 2D
This is needed to allow 2D to fully make use of 3D effects (e.g. glow), and can be used to substantially improve quality of 2D rendering at the cost of performance

Additionally, the 2D rendering pipeline is done in linear space (we skip linear_to_srgb conversion in 3D tonemapping) so the entire Viewport can be kept linear.
This is necessary for proper HDR screen support in the future.
2023-08-07 11:24:03 +02:00
Hugo Locurcio e9f723006a
Use compile-time Unicode string conversion
Thanks to this syntax introduced in C++11, this reduces the amount of work
that needs to be performed at run-time while making the code more terse.
2023-08-07 10:38:16 +02:00
kobewi 181eecc51b Ensure TileMap editor shortcuts are handled 2023-08-06 03:38:03 +02:00
MewPurPur 50f4c298e6 Improve material and mesh preview buttons 2023-08-04 01:47:32 +03:00
Yuri Sizov e4b8dc81b8 Merge pull request #78300 from ajreckof/fix-replace-node-destroying-Node-properties
Auto-update properties when replacing a node
2023-08-03 22:37:40 +02:00
ocean (they/them) bf3af190c3 Increase vertical size of `CurveEdit` when `Inspector` widens
This should allow users to edit points in a less constrained space,
which feels like a UX improvement.

That said, changing minimum size according to current size might be a
hack that causes issues in certain situations.
2023-08-03 16:02:28 -04:00
ajreckof 4da9927faf Fix replace node deleting `Node` properties.
Update editor/scene_tree_dock.cpp

Co-Authored-By: Hugo Locurcio <hugo.locurcio@hugo.pro>
2023-08-03 18:38:24 +02:00
kobewi 0a9a8c75fa Improve editing of box collision shapes 2023-08-03 14:09:10 +02:00
Yuri Sizov 1886dee28f Merge pull request #79588 from magian1127/4.0Fix78052
Fix the error when clicking AnimationTree in the editor
2023-08-02 21:36:56 +02:00
Magian 0b3c073c9e Fix the error when clicking AnimationTree in the editor 2023-08-02 22:45:09 +08:00
Rémi Verschelde f823bccdf8
Merge pull request #80135 from KoBeWi/A_NumbER_Is_REQuIrEd
Ignore null "id" in tile source proxy
2023-08-02 12:22:48 +02:00
Rémi Verschelde 2132638937
Merge pull request #79404 from raulsntos/dotnet/lines-open-in-external-editor
C#: Fix line in OpenInExternalEditor
2023-08-02 12:17:31 +02:00
kobewi 91328a86cd Ignore null "id" in tile source proxy 2023-08-01 22:52:16 +02:00
Yuri Sizov de0a06ee80 Merge pull request #79258 from KoBeWi/drag_and_drop_anarchy
Assume root when dropping node to unassigned script
2023-08-01 20:03:38 +02:00
kobewi 3f272f4910 Assume root when dropping node to unassigned script 2023-08-01 17:36:51 +02:00
Yuri Sizov 6731accf80 Merge pull request #79419 from KoBeWi/no_ID_for_you
Unexpose tile source ID
2023-08-01 17:25:11 +02:00
Yuri Sizov 0387defcbe Merge pull request #80037 from KoBeWi/we_are_reaching_levels_of_hacks_that_should_not_be_possible
Edit TileSet source on double click
2023-07-31 21:01:47 +02:00
Yuri Sizov 25f3f660c5 Merge pull request #79610 from aaronfranke/toggle-comment-slash
Add Ctrl+/ as a shortcut to toggle comment in addition to Ctrl+K
2023-07-31 21:01:17 +02:00
kobewi 2a5db5949f Rework modifying tile source ID 2023-07-31 20:57:09 +02:00
kobewi d39b040114 Edit TileSet source on double click 2023-07-30 02:27:40 +02:00
Yuri Sizov 6c11fcd01a
Merge pull request #74717 from KoBeWi/tilesetmap_handler_plugin
Add separate editor plugin for TileMap and TileSet
2023-07-27 19:11:37 +02:00
Yuri Sizov 4aae6d3f23 Merge pull request #78944 from bgie/particle_mask
Add option to center image when loading particle emission mask
2023-07-27 15:22:58 +02:00
Yuri Sizov b2e2973a67 Merge pull request #79928 from timothyqiu/fonts
Sort system font menu in Inspector
2023-07-27 15:22:47 +02:00
Yuri Sizov 6535b7475d Merge pull request #79908 from YeldhamDev/output_icon_space
Fix spacing between icon and "Output" button
2023-07-27 15:22:44 +02:00
Yuri Sizov cd074f965f Merge pull request #79904 from KoBeWi/how_to_create_huge_tiles_using_a_simple_trick
Add help label about creating multiple/big tiles
2023-07-27 15:22:40 +02:00
Yuri Sizov f29a0ad21c Merge pull request #79512 from KoBeWi/tile_expanded_universe
Add option to expand tile polygon editors
2023-07-27 15:22:36 +02:00
Michael Alexsander 2883a40aa1
Fix spacing between icon and "Output" button 2023-07-26 15:22:44 -03:00
Yuri Sizov 7fe88c7710 Merge pull request #79899 from KoBeWi/snapped_in_half
Improve atlas tile size dragging
2023-07-26 18:40:38 +02:00
Yuri Sizov bc0e646076 Merge pull request #78827 from Rindbee/fix-history-mismatch
Fix history mismatch
2023-07-26 18:39:32 +02:00
Haoyu Qiu 7de4fef959 Sort system font menu in Inspector 2023-07-26 23:56:57 +08:00
kobewi ec24d50469 Add separate editor plugin for TileMap and TileSet 2023-07-26 17:23:41 +02:00
Patrick 65b0989f68 Additional Visual Shader Nodes
* RotationByAxis Visual Shader Node added
* WorldPositionFromDepth Visual Shader Node added
* ScreenNormalWorldSpace Visual Shader Node added
2023-07-26 00:39:12 +02:00
kobewi df69073589 Add help label about creating multiple/big tiles 2023-07-25 22:55:29 +02:00
kobewi 965847b6e9 Improve atlas tile size dragging 2023-07-25 22:06:38 +02:00
Yuri Sizov 4d4e5145b3 Merge pull request #79734 from somecrepe/master
Change the text for the flat button preview to follow pattern
2023-07-25 21:26:10 +02:00
Danil Alexeev 0d39121b3a
SpriteFrames Editor: Fix Frame Duration applied to wrong frame when switching frame 2023-07-25 10:55:37 +03:00
Danil Alexeev 2f1e135573
SpriteFrames Editor: Fix FPS applied to two animations when switching animation 2023-07-25 10:51:35 +03:00
somecrepe 97fd8cbdb3 Change the text for the flat button preview to follow pattern
Changed text for flat button preview to follow pattern set by previous two.
2023-07-24 13:24:59 -07:00
Yuri Sizov 0cbdad47f9 Merge pull request #79837 from KoBeWi/CursorShaper
Fix `get_cursor_shape()` in tile atlas editor
2023-07-24 19:33:41 +02:00
Yuri Sizov 7dbbf2eef9 Merge pull request #79743 from TokageItLab/fix-name-list-asp
Make animation name list scroll to new animation in `SpriteEditor`
2023-07-24 19:33:23 +02:00
Yuri Sizov dbff173597 Merge pull request #79676 from KoBeWi/MissingNo.Layers
Add placeholder items to TileSet layer list
2023-07-24 19:33:09 +02:00
Yuri Sizov fb2c3ae8f7 Merge pull request #79308 from Geometror/refactor-graphedit
Clean up/refactor GraphEdit
2023-07-24 19:32:33 +02:00
Yuri Sizov fefd02b411 Merge pull request #79175 from MewPurPur/curve-deselect
Deselect curve point with RMB on the empty space
2023-07-24 19:32:29 +02:00
Yuri Sizov 74d20fe17e Merge pull request #75216 from rune-scape/rune-dependancy-errors
Script editor (GDScript): Show depended script errors
2023-07-24 19:32:20 +02:00
Yuri Sizov 2bd904e3db Merge pull request #73196 from Vilcrow/fix-lookup-symbol
Fix jumping to function definition using `Ctrl+LMB` or the "Lookup Symbol" button
2023-07-24 19:32:12 +02:00
Hendrik Brucker a38fd09669 Clean up/refactor GraphEdit 2023-07-24 18:37:23 +02:00
Yuri Sizov 91258e52be
Merge pull request #79307 from Geometror/remove-graph-node-comment
Remove GraphNode's comment property and related functionality
2023-07-24 16:56:41 +02:00
rune-scape 83b01708b2 Script editor: Show depended script errors 2023-07-24 15:49:39 +02:00
kobewi 4408f82c93 Fix get_cursor_shape() in tile atlas editor 2023-07-23 23:06:23 +02:00
kobewi f837624d75 Add option to expand tile polygon editors 2023-07-22 22:21:05 +02:00
Yuri Sizov 7573a458be Merge pull request #79600 from Rindbee/fix-rename-animation-in-SpriteFramesEditor
Fix rename animation in SpriteFramesEditor
2023-07-21 17:54:47 +02:00
Yuri Sizov ce92f052ec Merge pull request #79562 from KoBeWi/click_here_yo
Improve message when no tile is selected to edit
2023-07-21 17:54:43 +02:00
Yuri Sizov 5ae617627d Merge pull request #78519 from groud/add_white_rect_to_tilemap_selection
Add white rect to TileMap selection tool
2023-07-21 17:54:17 +02:00
Yuri Sizov bf73ac2891 Merge pull request #73641 from KoBeWi/yolo_exiting
Don't save scripts when exiting editor
2023-07-21 17:15:14 +02:00
Silc Lizard (Tokage) Renew 99451b55c2 Make animation name list scroll to new animation in SpriteEditor
Co-authored-by: DarellLdark <darell.ldark@gmail.com>
2023-07-21 19:36:25 +09:00
kobewi bb64588796 Add placeholder items to TileSet layer list
Co-authored-by: MewPurPur <mew.pur.pur@abv.bg>
2023-07-20 14:31:00 +02:00
Yuri Roubinski 01101134f4 Make the dragging connections more user-friendly in visual shaders 2023-07-20 15:00:19 +03:00
Gilles Roudière 0fc56646f1 Add white rect to TileMap selection tool 2023-07-19 17:42:29 +02:00
Fredia Huya-Kouadio d17811c814 Re-architect how Android plugins are packaged and handled at export time
The previous packaging format for Godot Android plugins consisted of the plugin's `gdap` config file accompanied by binaries defined in the `gdap` file.
This format is now deprecated (starting with Godot 4.2), and instead Godot Android plugins are now packaged as `EditorExportPlugin` plugins.

The `EditorExportPlugin` class has been updated with the following methods to provide the necessary set of functionality:
- `_supports_platform`: returns true if the plugin supports the given platform
- `_get_android_dependencies`: retrieve the set of android dependencies (e.g: `org.godot.example:my-plugin:0.0.0`) provided by the plugin
- `_get_android_dependencies_maven_repos`: retrieve the urls of the maven repos for the provided android dependencies
- `_get_android_libraries`: retrieve the local paths of the android libraries (AAR files) provided by the plugin
- `_get_android_manifest_activity_element_contents`: update the contents of the `<activity>` element in the generated Android manifest
- `_get_android_manifest_application_element_contents`: update the contents of the `<application>` element in the generated Android manifest
- `_get_android_manifest_element_contents`: update the contents of the `<manifest>` element in the generated Android manifest
2023-07-18 19:14:53 +02:00
Yuri Sizov 9c39fe0690 Merge pull request #79609 from KoBeWi/one_dollar_mistake
Fix wrong Curve connection
2023-07-18 15:10:13 +02:00
kobewi b883f32188 Check for unsaved changes when closing a scene 2023-07-18 14:27:56 +02:00
kobewi 000471ee56 Add unsaved status for script and shader editors 2023-07-18 14:18:36 +02:00
Aaron Franke df3a1c18f1
Add Ctrl+/ as a shortcut to toggle comment in addition to Ctrl+K 2023-07-18 07:00:59 -05:00
kobewi a076792a3c Fix wrong Curve connection 2023-07-18 13:55:04 +02:00
Rindbee e9cd29cf22 Fix rename animation in SpriteFramesEditor/AnimationNodeStateMachineEditor
When the name suffix grows, the old name is used if it is obtained first.

Fix the case where the following error message would appear when renaming
an animation.

```
ERROR: Animation '' doesn't exist.
   at: get_frame_count (scene/resources/sprite_frames.cpp:71)
```
2023-07-18 15:39:02 +08:00
kobewi de4a3fa151 Unify and streamline connecting to Resource changes 2023-07-17 19:35:57 +02:00
Raul Santos 132a1daf1a
C#: Fix line in OpenInExternalEditor 2023-07-17 18:44:17 +02:00
Hendrik Brucker a29a680920 Extract StyleBoxFlat, StyleBoxTexture and StyleBoxLine in their own file 2023-07-17 13:25:00 +02:00
kobewi 7b8c70c668 Improve message when no tile is selected to edit 2023-07-17 02:41:36 +02:00
Yuri Sizov a7583881af Merge pull request #68460 from Geometror/split_texture_src
Extract and reorganize texture resource classes
2023-07-14 21:28:06 +02:00
Yuri Sizov c10b8ac735 Merge pull request #79198 from theraot/enchance_onready_drop
Make onready variables created from dropping nodes include custom types
2023-07-14 21:28:02 +02:00
Yuri Sizov 5f23b8b916 Merge pull request #78451 from alula/integer-zoom
Add option to swap default Alt+scroll zooming behavior in 2D editor
2023-07-14 21:27:54 +02:00
Hendrik Brucker 7e21eb7e00 Extract and reorganize texture resource classes 2023-07-14 20:04:21 +02:00
Yuri Sizov a927b22f65 Merge pull request #77257 from rakkarage/tile_animation_sync
Add `TileSetAtlasSource::TileAnimationMode` options and allow to shuffle tile animations
2023-07-12 21:02:31 +02:00
S.V.I. Vilcrow 56e2fad319 Fixed the jumping to function definition using 'Ctrl+LMB' and the 'Lookup Symbol' button. 2023-07-12 21:30:35 +03:00
Yuri Sizov 770b7e974b Merge pull request #79337 from KoBeWi/best_fix_ever
Change default Save Script shortcut
2023-07-12 17:17:11 +02:00
Yuri Sizov 91fefcb546 Merge pull request #79285 from KoBeWi/instant_atlas
Streamline creating tile atlas sources
2023-07-12 17:17:07 +02:00
Yuri Sizov 4d862d6cc9 Merge pull request #78772 from MineBill/master
Fix VoxelGI saving VoxelGIData as a built-in file, despite being prompted to save it to an external file
2023-07-12 17:16:29 +02:00
Yuri Sizov c457480ca9 Merge pull request #78604 from KoBeWi/gotta_close_fast
Speed up closing multiple scripts
2023-07-12 17:16:24 +02:00
Yuri Sizov 56a1d5118f Merge pull request #59467 from rcorre/blender-wrap
Wrap mouse for blender-style transforms.
2023-07-12 17:15:08 +02:00
Yuri Sizov 6960a1d0e8 Merge pull request #78248 from felaugmar/load-svg-adjustable-scale
Added `Image::load_svg_from_(buffer|string)`
2023-07-12 15:09:03 +02:00
Theraot a51116c6c7 Make onready variables created from dropping nodes include custom types 2023-07-12 07:58:26 -05:00
kobewi 6a7567e8f7 Change default Save Script shortcut 2023-07-12 14:25:36 +02:00
Hendrik Brucker 662d8c76b3 Remove GraphNode's comment property and related functionality
(this functionality will be reintroduced in a new and more flexible way)
2023-07-11 02:05:25 +02:00
Rindbee 28db5e7649 Fix history mismatch
Set the properties of the resource's proxy instead of setting the resource's
properties directly. (For action "Set ...")

Update the path of the edited scene when saving the scene. (For action "Add
atlas source")
2023-07-11 05:45:37 +08:00
kobewi bdb7e62029 Streamline creating tile atlas sources 2023-07-10 15:36:00 +02:00
Rémi Verschelde bdcbfd71a8
Merge pull request #79158 from jpcerrone/shaderinclude_fixes
Fix comments and indentation in .gdshaderinc files
2023-07-08 18:22:42 +02:00
Rémi Verschelde e3dee8cea9
Merge pull request #78694 from Yadnesh-Kulkarni/bugfix-grid-view-disappear-#78588
Fix 3D viewport grid disappearing on scene tab changes
2023-07-08 18:16:55 +02:00
Ryan Roden-Corrent 90bddd21c8
Wrap mouse for blender-style transforms.
When performing a blender-style translate or scale (but not rotate),
wrap the mouse inside the bounds of the viewport. This allows moving the
mouse indefinitely for large translate or scale operations, and is
consistent with how blender works.

This enables global input processing during blender-style transforms, so
we can capture and wrap mouse events outside the bounds of the viewport.

Other wrapping operations use _sinput, which I assume is possible
because a mouse button is held, so the control receives input even when
the mouse exits the control.

This does not implement wrapping for regular (gizmo-driven) transforms,
though this could be done if desired.

Fixes godotengine/godot-proposals#4255.
2023-07-08 07:53:47 -04:00
MewPurPur d8d53e3370 Deselect curve point with RMB on the empty space 2023-07-08 00:31:17 +03:00
jpcerrone 71b8a9d274 Fix comments and indentation in .gdshaderinc files
Fixes #78205
The handling of comments and indentation in the shader editor
wasn't considering shader include files.
2023-07-07 11:18:30 -03:00
Rémi Verschelde 81c6694014
Merge pull request #78522 from MewPurPur/improve-tileset-labels
Improve string drawing in the tiledata editor
2023-07-07 16:03:02 +02:00
Rémi Verschelde 443820686c
Merge pull request #79112 from bitsawer/fix_preprocessor_keyword_colors
Make shader preprocessor keyword colors consistent
2023-07-07 08:36:13 +02:00
bitsawer a5d6152949 Make shader preprocessor keyword colors consistent 2023-07-06 17:56:26 +03:00
Tetane 1cd0a34e47 Fix Create shader Node window position on second monitor 2023-07-03 20:17:56 +02:00
Brecht Kuppens 86117f8cba Added option to center image when loading particle emission mask 2023-07-02 12:22:38 +02:00
Rindbee fec731bf33 Make sure the shortcut key respects the context in `TileSetAtlasSourceEditor` 2023-07-02 06:40:14 +08:00
MineBill c34d5627fb Set the VoxelGIData path before saving, otherwise the ResourceSave will revert it to an empty String 2023-06-28 10:28:36 +03:00
Yadnesh Kulkarni a8dde286ce Fixed grid disappearance 2023-06-26 09:27:25 -04:00
Yuri Sizov 8cfbc6bda2 Revert "Remember only permanent bottom tabs"
This reverts commit 5dde57e958.
2023-06-23 15:23:36 +02:00
Rémi Verschelde 9ab388c146
Merge pull request #78609 from KoBeWi/—GodotEngine
Unify window title format
2023-06-23 12:36:44 +02:00
kobewi 44bec97d5e Unify window title format 2023-06-23 12:21:56 +02:00
kobewi 9a302e32c8 Speed up closing multiple scripts 2023-06-23 11:19:09 +02:00
kobewi 5dde57e958 Remember only permanent bottom tabs 2023-06-23 10:53:39 +02:00
Felipe Augusto Marques 26eb3db234 Added Image's `load_svg_from_(buffer|string)`
No core dependency to the svg module.
2023-06-23 00:43:43 -03:00
Gilles Roudière bca1f91291 Fixes crash in TileSetAtlasSourceEditor 2023-06-22 15:03:53 +02:00
Alula 9676905aee
Add option to swap Alt+scroll zooming behavior in 2D editor
Update doc/classes/EditorSettings.xml

Co-authored-by: Hugo Locurcio <hugo.locurcio@hugo.pro>
2023-06-21 18:56:58 +02:00
MewPurPur 1649dcad0b Improve string printing in the tiledata editor 2023-06-21 17:43:45 +02:00
Yuri Sizov 4fc045e9b5
Merge pull request #76152 from timothyqiu/tile-resize-clamp
Fix tile resizing towards atlas boundary
2023-06-21 11:19:24 +02:00
Rémi Verschelde 9e56f28d0e
Merge pull request #75345 from Rindbee/fix-wrong-description-in-EditorSettings
Fix wrong descriptions in EditorSettings
2023-06-21 10:18:09 +02:00
Yuri Sizov 38ae7b58d1
Merge pull request #78350 from ajreckof/you-know-when-you-want-to-search-this-member-you-don't-know-and-then-you-have-the-script-editor-all-over-the-place-now-it-should-not-happen-anymore-hopefully
Fix placement and style of the "Make Floating" button
2023-06-21 03:03:19 +02:00
Rindbee 19d77ea90d Fix wrong descriptions in EditorSettings
Fix wrong descriptions about `editors/3d/grid_division_level_max`
and `editors/3d/grid_division_level_min`.
2023-06-21 07:16:30 +08:00
ajreckof 13e65da804 Fix wrong placement of the Make Floating Button. 2023-06-21 01:00:37 +02:00
Samuele Panzeri 4067907074 Fix insert key crash with no animation 2023-06-20 17:39:09 +02:00
Gilles Roudière 94b1bc0d68 Fix TileMap draw preview when switching CI editor tool 2023-06-20 12:12:01 +02:00
Rémi Verschelde e4deaa2727
Merge pull request #76787 from RedworkDE/avoid-localvector-copy
Avoid making unnecessary copies of `LocalVector`
2023-06-20 00:01:55 +02:00
Haoyu Qiu ac36776729 Fix tile resizing towards atlas boundary 2023-06-20 00:36:37 +08:00
Artyom Lunchenkov 613c060e0b
Add a line break to error messages in the script editor
Fixes #71002
2023-06-19 15:57:27 +02:00
Rémi Verschelde cdfaf8a10f
Merge pull request #78418 from brno32/apply-texture-filter-2d-polygon-editor
Apply selected texture filter when editing UV
2023-06-19 13:28:36 +02:00
Alex Drozd 0c75d5d70c apply selected texture filter when editing UV 2023-06-18 22:56:26 +02:00
Qiqi Wu 9321e9fa86 fix TexturePreview crash from an invalid image 2023-06-18 13:08:06 +08:00
clayjohn 36a005fafc
Add RENDERING_INFO parameters to GL Compatibility renderer
This also fixes RENDERING_INFO_TOTAL_PRIMITIVES_IN_FRAME for the RD renderers as it was incorrectly reporting vertex/index count at times

This also adds memory tracking to textures and buffers to catch memory leaks.

This also cleans up some memory leaks that the new system caught.
2023-06-16 09:10:00 +02:00
kleonc 77b8e0fcb7 Allow setting negative WorldBoundaryShape2D.distance through the editor 2023-06-14 14:54:00 +02:00
Rémi Verschelde 7aa530c4ca
Merge pull request #78171 from MewPurPur/fix-curve-editor-crash
Fix Curve Editor crash with null curve
2023-06-13 13:53:02 +02:00
Haoyu Qiu 8b5d5dc2c4 Fix crash when opening a TileSet with invalid tiles 2023-06-13 18:50:08 +08:00
MewPurPur beae9b0bc1 Fix Curve Editor crash with null curve 2023-06-13 11:35:35 +02:00
Yuri Sizov 593d5ca29f
Merge pull request #77962 from KoBeWi/some_hand-holding_is_ok,_probably
Improve some tile editor hint labels
2023-06-12 18:23:23 +02:00
Rémi Verschelde 6306eb4047
Merge pull request #76372 from sygi/dont_propagate_lock_view
Store lock view rotation whether its on or off
2023-06-12 17:09:38 +02:00
kobewi 0a4d0506d1 Fix problems reloading MeshLibrary 2023-06-11 19:42:24 +02:00
Rémi Verschelde b083c1dbf5
Merge pull request #78005 from Sauermann/fix-some-simplifications
Some code simplifications
2023-06-09 11:06:26 +02:00
Rémi Verschelde 577ab3c565
Merge pull request #75746 from ajreckof/order_autocomplete
Sort code autocompletion with rules
2023-06-08 18:14:31 +02:00
Markus Sauermann 5ddab1f363 Some code simplifications
AnimationNodeBlendSpace2DEditor:
- `!tree` is always false, because it is checked a few lines above

CurveEdit:
- grabbing != GRAB_NONE is redundant

GradientTexture2DEdit:
- grabbed != HANDLE_FROM is redundant
- grabbed != HANDLE_TO is redundant

Viewport:
- index is not used afterwards
- In these cases `gui.mouse_focus` is always valid. Move check to a DEV_ASSERT
- simplify `stopped` calculation
2023-06-08 16:15:22 +02:00
kobewi 0972e15df5 Improve some tile editor hint labels 2023-06-07 15:59:19 +02:00
kobewi 16ac217aa0 Draw materials in tile atlas view 2023-06-07 01:03:55 +02:00
Rémi Verschelde 46c4068821
Merge pull request #77170 from lawnjelly/scu_build_master
Add support for single compilation unit builds
2023-06-06 17:58:09 +02:00
lawnjelly b69c8b4791 Single Compilation Unit build.
Adds support for simple SCU build (DEV_ENABLED only).
This speeds up compilation by compiling multiple cpp files within a single translation unit.
2023-06-06 15:36:51 +01:00
Rakka Rage 6dbae30000 Add tile_animation_mode option:
- to tile animation properties
- when "Default" each animation starts at time 0.
- when "Random Start Times" each animation starts at random time.
2023-06-06 09:31:18 -04:00
Rémi Verschelde 67c0467e04
Merge pull request #77860 from ajreckof/add-move-control-points-button-for-Path3D
Add move control points button to Path3D Editor.
2023-06-05 18:05:02 +02:00
ajreckof 7f4f219a24 Add move control points button to PAth3D Editor 2023-06-05 04:54:48 +02:00
ajreckof 05dd9c0f8b Make panning the 3D view with trackpad goes the right way 2023-06-05 02:12:52 +02:00
Yuri Sizov dc8a0c3cd1
Merge pull request #77674 from ProbablyWorks/77562-tilemap-center-view-button-offset-fix
Set the grow direction for the "Center View" button in the TileMap editor
2023-06-02 15:52:44 +02:00
ProbablyWorks 882ffdfaae set the grow direction of the center view button after setting the anchors 2023-06-01 21:44:16 -04:00
Kongfa Waroros aeb9b8381a Add null checking when finding a lightmap baking path 2023-06-02 04:06:19 +07:00
Rémi Verschelde 42775ff75b
Merge pull request #77705 from MewPurPur/less-code-for-mouse-exit
Use NOTIFICATION_MOUSE_EXIT instead of a signal for a few editor plugins
2023-06-01 15:52:12 +02:00
Rémi Verschelde 0b5c5022f2
Merge pull request #77663 from RedworkDE/audiostream-preview-crash
Fix crash in AudioStream preview
2023-06-01 15:52:08 +02:00
VolTer 6566b96b63 Use NOTIFICATION_MOUSE_EXIT instead of a signal for a few editor plugins 2023-05-31 20:03:04 +02:00
Yuri Sizov 282f5ebda1
Merge pull request #47628 from Calinou/2d-editor-remove-contrained-view
Remove constrained view in the 2D editor
2023-05-31 16:35:54 +02:00
kobewi b8a136c385 Add Center View button to 2D editor 2023-05-31 12:56:18 +02:00
Yuri Sizov e7345c3e89
Merge pull request #77208 from KoBeWi/the_tooltip_centipede
Small rework of tooltip plugins
2023-05-31 12:37:42 +02:00
Yuri Sizov 8d6c472f6a
Merge pull request #77135 from KoBeWi/Vector∞
Refactor vector editor properties
2023-05-31 12:36:37 +02:00
kobewi 267728a240 Refactor vector editor properties 2023-05-31 00:14:28 +02:00
kobewi 5baebf75f2 Small rework of tooltip plugins 2023-05-30 23:13:50 +02:00
RedworkDE 301731c7e6 Fix crash in AudioStream preview 2023-05-30 20:26:10 +02:00
Rémi Verschelde c79f96d23a
Merge pull request #77592 from nklbdev/fix_update_animation_duration_in_every_selected_tile
Fix update animation frame duration in every selected tile
2023-05-30 09:33:20 +02:00
Nikolay Lebedev 779c39f478 Fix update animation frame duration in every selected tile 2023-05-29 23:15:40 +05:00
Haoyu Qiu b30a332009 Fix theme of editor VCS dialogs
These dialogs were added to the plugin itself so theme can't be
propagated.

Also moved initialization of the VCS menu after the creation of
EditorInterface.
2023-05-29 21:25:31 +08:00
Rémi Verschelde aa739bae4f
Merge pull request #76616 from TokageItLab/implement-anim-node-sub2
Implement `AnimationNodeSub2` to `AnimationTree` and allow less or greater value in mathematical `AnimationNode`
2023-05-29 10:29:02 +02:00
Rémi Verschelde c97201babc
Merge pull request #76545 from JoNax97/gradient_color_spaces
Add Linear SRGB and OKLab color spaces to Gradient.
2023-05-29 10:28:58 +02:00
Rémi Verschelde 990943782a
Merge pull request #74959 from MewPurPur/nice-curves
Overhaul the Curve Editor
2023-05-29 10:28:53 +02:00
Rémi Verschelde 9f05e16727
Merge pull request #70940 from MewPurPur/better-gradient2d-editor
Improvements to Gradient2D Editor
2023-05-29 10:28:46 +02:00
VolTer a3c4a4b039 Overhaul the Curve Editor 2023-05-28 14:17:51 +02:00
Silc Lizard (Tokage) Renew c9c8205644 Implement NodeSub2 to AnimationTree & improve mathematical Nodes 2023-05-27 13:19:54 +09:00
JoNax97 c07b2fcf4d Add Linear SRGB and OKLab color spaces to Gradient. 2023-05-26 16:18:01 -03:00
Rémi Verschelde 5de3f5c317
Merge pull request #77467 from bitsawer/fix_shader_editor_crash
Fix shader editor crash
2023-05-26 18:15:20 +02:00
Rémi Verschelde 95d745f8dc
Merge pull request #77382 from rakkarage/tileset_merge_crash
Fix crash when using tile atlas merge with recreated alt tile
2023-05-26 11:23:03 +02:00
kobewi 010ce46ffa Add get_edited_property_value() shorthand method 2023-05-26 09:18:53 +02:00
bitsawer 993e671dc0 Fix shader editor crash 2023-05-26 07:01:23 +03:00
kobewi e5b6b3e1e3 Don't create bones from empty scene 2023-05-25 14:57:08 +02:00
smix8 66a8418a2d Remove unnecessary Clipper lib includes
Removes unnecessary Clipper lib includes.
2023-05-24 23:57:08 +02:00
Rémi Verschelde 95bea896da
Merge pull request #77418 from MewPurPur/unify-stylebox-grid-textures
Improve StyleBox preview a little
2023-05-24 18:36:33 +02:00
VolTer f65b9ee56c Improve StyleBox preview a little 2023-05-24 15:40:56 +02:00
Rémi Verschelde c39c565307
Merge pull request #72842 from TokageItLab/fix-pathfollow
Fix Pathfollow direction and add Z forward option
2023-05-24 10:52:46 +02:00
Silc Renew 42aa5398d9 Fix Pathfollow direction
Co-authored-by: aaronfranke <arnfranke@yahoo.com>
2023-05-24 17:37:00 +09:00
Rémi Verschelde 299f0ae3db
Merge pull request #76052 from TokageItLab/fix-viewport-axis
Fix 3D Viewport Front/Rear axis and Focus button
2023-05-24 10:34:12 +02:00
Rémi Verschelde f92634a709
Merge pull request #77389 from vmedea/tooltip-pattern-index
Add pattern index tooltip to tilemap and tileset editor
2023-05-24 08:49:33 +02:00
Rémi Verschelde 692a76d9a5
Merge pull request #77385 from rakkarage/tileset-atlas-merge-filter
Make tile atlas merge dialog use filter nearest on right side, like left. To avoid blurry tiles.
2023-05-24 08:49:03 +02:00
Rémi Verschelde adbdf9a86e
Merge pull request #77234 from RandomShaper/fix_rtl_mt
Allow threads to mark themselves as safe for nodes
2023-05-24 08:42:59 +02:00
Pedro J. Estébanez e725b4b02b Allow threads to mark themselves as safe for nodes 2023-05-24 00:22:58 +02:00
Rakka Rage 855d78e458 Make tile atlas merge dialog use filter nearest mipmaps on both sides. To avoid blurry tiles. 2023-05-23 14:46:02 -04:00
mara 93248684b4 Add pattern index tooltip to tilemap and tileset editor
Just a little UI convenience feature. Knowing the index (without having
to count manually) is convenient when working with tile patterns
programmatically, especially when having lots of them.
2023-05-23 19:28:06 +02:00
Rémi Verschelde 59a35194bf
Merge pull request #77394 from YuriSizov/editor-vshaders-delay-init
Delay initialization of the visual shader editor UI
2023-05-23 19:15:13 +02:00
Rémi Verschelde 8f9e0672fb
Merge pull request #77297 from puchik/popup-close-key-mapping
Use defined key mapping for closing popups and dialogs
2023-05-23 19:14:31 +02:00
Rakka Rage 88d2ed433d Fix crash when using tile atlas merge with recreated alt tile 2023-05-23 10:32:02 -04:00