Commit graph

5171 commits

Author SHA1 Message Date
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
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