Commit graph

5252 commits

Author SHA1 Message Date
Rémi Verschelde
9892bc2478
Merge pull request #81810 from AThousandShips/camera_m
Make editor camera speed indicator use `m/s` and `m`
2023-09-18 10:38:24 +02:00
Rémi Verschelde
3e233e1f24
Fix various typos with codespell
Using 2.2.6.dev193+g907e5380.
2023-09-18 09:53:39 +02:00
Silc Lizard (Tokage) Renew
c1c4a09527 Improve retarget auto-mapping algorithm 2023-09-18 12:51:15 +09:00
MewPurPur
c094631ba0 Fix grayed out paint icons 2023-09-17 19:23:28 +03:00
A Thousand Ships
8d7a2c615c Make editor camera speed indicator use m/s and m 2023-09-17 18:04:58 +02:00
Rémi Verschelde
ba54c34551
Merge pull request #81735 from KoBeWi/360_no_scope
Fix rotated 2D movement gizmo
2023-09-16 21:25:17 +02:00
Rémi Verschelde
cdef53df1e
Merge pull request #81705 from AThousandShips/null_check_editor
[Editor] Replace `ERR_FAIL_COND` with `ERR_FAIL_NULL` where applicable
2023-09-16 21:24:53 +02:00
Rémi Verschelde
91dee347ad
Merge pull request #81609 from AThousandShips/gizmo_fix
Fix local 3D translation editing
2023-09-16 21:24:06 +02:00
Rémi Verschelde
7ca579cb27
Merge pull request #81554 from Calinou/editor-gizmos-add-decal
Add 3D editor gizmo icons for Decal, LightmapProbe and FogVolume
2023-09-16 21:22:54 +02:00
kobewi
447a4b6bcf Fix rotated 2D movement gizmo 2023-09-16 19:26:20 +02:00
A Thousand Ships
dae27d1311 Fix local 3D translation editing 2023-09-16 11:11:54 +02:00
Hugo Locurcio
5345cf3e75
Add 3D editor gizmo icons for Decal, LightmapProbe and FogVolume
- Tweak CPUParticles3D editor gizmo icon to use the same outline
  color as other gizmo icons. Make the internal icon easier to see
  by using an orange color instead of gray.

Co-authored-by: MewPurPur <mew.pur.pur@abv.bg>
2023-09-15 20:44:45 +02:00
A Thousand Ships
75ee58fd04 [Editor] Replace ERR_FAIL_COND with ERR_FAIL_NULL where applicable 2023-09-15 20:15:39 +02:00
Yuri Sizov
2febb246e1 Merge pull request #81606 from jsjtxietian/hide-animation-tool--correctly-when-switching-scenes
Hide animation toolbar above the viewport correctly when switching scenes
2023-09-15 19:48:23 +02:00
Yuri Sizov
df6cd37a69 Merge pull request #81516 from YuriSizov/editor-theme-access-the-success
Fix accessing editor theme items throughout the UI
2023-09-15 19:48:14 +02:00
Yuri Sizov
508a758eab Merge pull request #75303 from Calinou/3d-gizmos-only-selected
Show visual-oriented 3D node gizmos only when selected
2023-09-15 19:48:10 +02:00
Yuri Sizov
8ecc0c4f47 Fix accessing editor theme items throughout the UI
This also exposes `EditorInterface::get_editor_theme`.
2023-09-15 14:51:01 +02:00
jsjtxietian
0113e6961d Hide animation tool correctly when switching scenes 2023-09-15 10:48:26 +08:00
Hugo Locurcio
1024ba0c0d
Show visual-oriented 3D node gizmos only when selected
Affected nodes:

- DirectionalLight3D, OmniLight3D, SpotLight3D
- ReflectionProbe
- LightmapGI
- VoxelGI
- GPUParticles3D (but not collision/attractor nodes)
- AudioStreamPlayer3D

This reduces visual clutter in the editor with 3D scenes.
2023-09-15 01:59:49 +02:00
Rémi Verschelde
5a74ce9a56
Merge pull request #81557 from YuriSizov/editor-toolbars-divided
Improve the looks of 2D/3D viewport contextual toolbars
2023-09-14 23:40:33 +02:00
Yuri Sizov
f542dffb39 Improve the looks of 2D/3D viewport contextual toolbars 2023-09-13 13:04:55 +02:00
kobewi
015953a3d9 Add helper for 3D gizmos and unify box 2023-09-12 18:08:02 +02:00
Haoyu Qiu
b8b0339549 Improve undo action names
* Avoid concating strings manually for better i18n and easy l10n
   * Use `vformat` when possible
   * Use separate strings if the changing part is only a few hardcoded strings
* Don't put a period at the end of the name
2023-09-12 18:53:50 +08:00
Rémi Verschelde
3e68ed0ca1
Merge pull request #81255 from JohnGabrielUK/primary-line-separate-xy
Allow configuring primary line X/Ys separately
2023-09-12 12:01:15 +02:00
Rémi Verschelde
475860839c
Merge pull request #80144 from KoBeWi/freedom_tiles
Add per-tile flipping and transposing
2023-09-12 12:00:20 +02:00
John Gabriel
984eb96c43 Allow configuring primary line X/Ys separately 2023-09-12 10:24:07 +01:00
Rémi Verschelde
5c43e4c1ef
Fix various typos with codespell
Using 2.2.6.dev180+ge3a2cfbd.
2023-09-12 08:54:18 +02:00
Rémi Verschelde
7471ac2c4d
Merge pull request #81543 from DarioSamo/lightmap-size-crash-fix
Propagate error correctly when max texture size for lightmaps is too small.
2023-09-12 08:50:45 +02:00
Jean-Michel Bernard
67dce301aa Add code region folding to CodeEdit 2023-09-11 18:36:40 +02:00
Dario
7dfb854556 Propagate error correctly when max texture size for lightmaps is too small.
Add error handling for BAKE_ERROR_LIGHTMAP_TOO_SMALL, which was previously ignored. Fixes #81453.
2023-09-11 09:14:39 -03:00
kobewi
a9f3154da3 Add per-tile flipping and transposing 2023-09-09 00:56:38 +02:00
Yuri Sizov
639aba4ee1 Improve handling of archives when installing assets 2023-09-08 20:45:49 +02:00
Hendrik Brucker
5afe78bd9c Clean up/refactor GraphNode and make it more flexible
Split GraphNode into GraphElement and GraphNode, add custom
titlebar, and adjust theming.
2023-09-07 17:29:06 +02:00
Rémi Verschelde
074931a3aa
Merge pull request #81410 from bitsawer/fix_shader_include_reload
Fix shader text editor include file reloading
2023-09-07 16:32:54 +02:00
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
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