Commit graph

2721 commits

Author SHA1 Message Date
Rémi Verschelde
7c49b8e70f
Merge pull request #59009 from timothyqiu/tile-map-grid-3.x
[3.x] Improve TileMap editor grid
2022-03-12 22:06:54 +01:00
Haoyu Qiu
36ec71bcef Hide smart snapping line when guideline dragging ends
(cherry picked from commit b255efba7c)
2022-03-12 15:10:28 +01:00
Markus Sauermann
93447eb1ae 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.

(cherry picked from commit 0d96dbcb2a)
2022-03-12 15:10:14 +01:00
Haoyu Qiu
15aab4cde0 Remove unused code in AnimationPlayerEditor::_update_animation_list_icons()
(cherry picked from commit 6a1e3380f8)
2022-03-12 14:45:35 +01:00
Haoyu Qiu
86ec09faf5 Improve TileMap editor grid 2022-03-11 10:41:30 +08:00
Rémi Verschelde
ae036e823b
Merge pull request #58694 from Calinou/editor-frame-time-color-3.x 2022-03-10 21:11:17 +01:00
Rémi Verschelde
b0376ff494
Merge pull request #58851 from timothyqiu/tileset-zoom 2022-03-10 21:06:02 +01:00
Haoyu Qiu
3b04f59354 Fix some Animation panel icons not updating after theme change
(cherry picked from commit 83828c7d1b)
2022-03-10 19:02:01 +01:00
Haoyu Qiu
c2297215e3 Fix TextureRegion editor grid color for light themes
(cherry picked from commit af16e099ea)
2022-03-10 19:01:53 +01:00
Haoyu Qiu
2c3646b37b Add missing i18n to various strings
(cherry picked from commit 25d93200c8)
2022-03-10 19:01:52 +01:00
Haoyu Qiu
5514126234 Don't show Lock & Group buttons for nodes hidden by CanvasLayer
(cherry picked from commit fb999ebe22)
2022-03-10 17:18:41 +01:00
Haoyu Qiu
2ccd4fd030 Fix animation resource name after duplication
(cherry picked from commit 8dc12135cd)
2022-03-10 17:18:41 +01:00
Haoyu Qiu
86bcac5a5e Fix text color of TileMap editor info overlay 2022-03-10 19:12:40 +08:00
Haoyu Qiu
84a27308c1 Use ToolSelect icon for TileMap editor select button 2022-03-09 14:33:09 +08:00
Haoyu Qiu
cc65147250 Update scroll position when zooming TileSet editor 2022-03-07 13:01:39 +08:00
Hugo Locurcio
2e6a305b8f
Improve display for unsupported debug draw modes in GLES2
- Don't disable the Normal option as it technically can be chosen
  (it's the default).
- Use a text suffix in addition to the tooltip.
2022-03-05 22:03:39 +01:00
Haoyu Qiu
61e35b4f6e Make name of editor file dialog filters translatable 2022-03-05 12:44:17 +08:00
Hugo Locurcio
2893090a50
Color 3D editor FPS label depending on the performance level
This provides easier visual grepping.

Incindentally, this change will force constant editor redrawing whenever
the View FPS option is enabled in the 3D viewport settings. This is
required to get an accurate FPS display in 3.x.
Otherwise, the FPS counter shot all the way up to 145 FPS
whenever nothing was changing on screen (even if actual
performance was much lower).
2022-03-02 22:16:13 +01:00
Rémi Verschelde
74b698b817
Merge pull request #58135 from timothyqiu/shortcut-zoom-mouse-pos-3.x 2022-02-23 13:26:21 +01:00
Rémi Verschelde
4e44a15176
Merge pull request #58386 from KoBeWi/fix3bility 2022-02-21 12:33:28 +01:00
kobewi
fdded6b44d Fix 2D instance drop position
(cherry picked from commit 3a9fb3aff0)
2022-02-21 11:14:54 +01:00
kobewi
642591b6a9 Fix CanvasItem visibility propagation 2022-02-21 11:11:03 +01:00
Hugo Locurcio
92e6c2a33d Use versioned URL for "Online Documentation" buttons in the editor
This also avoids a redirect, making the page appear to load faster.

(cherry picked from commit 958912a33f)
2022-02-19 15:49:26 +01:00
Rémi Verschelde
e2287a201a
Merge pull request #58253 from mbrlabs/deselect-3x 2022-02-17 20:32:38 +01:00
Rémi Verschelde
453dc482e2
Merge pull request #58252 from mbrlabs/region-select-3x 2022-02-17 20:32:25 +01:00
Hugo Locurcio
3b25190494
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-17 20:13:28 +01:00
Marcus Brummer
d9c99f64c1 Improved region-select in the 3D editor viewport
Enable region-select when dragging the mouse. Previously this was only possible when the mouse was not over a mesh.
2022-02-17 19:49:39 +01:00
Marcus Brummer
67b879edbd Deselect nodes in the 3D editor when pressing ESC 2022-02-17 19:43:35 +01:00
Yuri Sizov
df13466139 Add type variations to Theme 2022-02-17 15:24:10 +03:00
Yuri Sizov
a91a24f822 Don't translate numbers in VersionControlEditorPlugin 2022-02-16 19:53:27 +03:00
Jean-Michel Bernard
9b7147157d
Hide Polygon2D lines and handles when node is not visible in tree.
(cherry picked from commit b0ebbd8ece)
2022-02-15 12:23:46 +01:00
Jean-Michel Bernard
cb885e97c5
Hide CollisionShape2D handles when node is not visible in tree.
(cherry picked from commit ef995b222e)
2022-02-15 12:23:45 +01:00
Haoyu Qiu
a25137c48e Utilize mouse position when zooming with shortcuts in 2D editor 2022-02-15 16:49:00 +08:00
Haoyu Qiu
aaf29c2d58 Make duplicate animation prompt for new name 2022-02-14 14:48:34 +08:00
Aaron Franke
a672f0db17
[3.x] Fix CanvasItemEditor scale editor not using the editor methods 2022-02-10 04:04:53 -06:00
lawnjelly
f0af29346b ProjectSettings add dirty flag and project_settings_changed signal
Most frames there will be no change in project settings, and it makes no sense to read settings every frame in case of changes, as a large number of string compares are involved.

This PR adds a signal to ProjectSettings that can be subscribed to in order to keep local settings up to date with ProjectSettings.

In addition a function `ProjectSettings::has_changes()` is provided for objects outside the signal system (e.g. Rasterizers).
2022-02-09 11:20:25 +00:00
kleonc
87b4db9e63 SpriteFramesEditor Fix crash when selecting non-Texture file for splitting 2022-02-06 23:39:26 +01:00
Rémi Verschelde
689f59dca0
Merge pull request #53463 from lawnjelly/vital_redraws
Add editor vital redraws only option
2022-02-04 21:42:49 +01:00
Haoyu Qiu
aeb9925615 Revert "Fix ViewportPreview upside-down in 3.x."
This reverts commit 1426df66a8.
2022-02-04 13:54:47 +08:00
lawnjelly
a0c6d16c90 Add editor vital redraws only option
When editor continuous redraws is switched off, the editor only redraws when a redraw_request was issued by an element in the scene. This works well in most situations, but when scenes have dynamic content they will continuously issue redraw_requests.

This can be fine on high power desktops but can be an annoyance on lower power machines.

This PR splits redraw requests into high and low priority requests, defaulting to high priority. Requests due to e.g. shaders using TIME are assigned low priority.

An extra editor setting is used to record the user preference and an extra option is added to the editor spinner menu, to allow the user to select between 3 modes:

* Continuous
* Update all changes
* Update vital changes
2022-02-02 11:26:45 +00:00
Rémi Verschelde
b6dbff7621
Merge pull request #57361 from lawnjelly/occ_poly_only 2022-02-01 14:04:24 +01:00
lawnjelly
8ea20f5fdd Add OccluderShapePolygon
Add OccluderShapePolygon, glue to Occluder and gizmos etc.
2022-02-01 11:31:06 +00:00
Ryan Roden-Corrent
0a77d2d850
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.

(cherry picked from commit c9cce53983)
2022-01-31 22:54:23 +01:00
Rémi Verschelde
b18a7f5220
Merge pull request #57030 from timothyqiu/disable-script-editor-menu-3.x
[3.x] Disable ScriptEditor's menu items when they do nothing
2022-01-26 08:06:05 +01:00
Haoyu Qiu
7a7eab06f8
Fix crash after renaming an animation node
(cherry picked from commit 5ea4a8b421)
2022-01-25 18:55:51 +01:00
kleonc
5b240d833a
SpriteFramesEditor Show AtlasTexture's source texture path in the frame's tooltip
(cherry picked from commit c635ab914d)
2022-01-25 18:17:23 +01:00
Haoyu Qiu
164ef0763a
Update AssetLib network settings when Editor Settings change
(cherry picked from commit 575cd3645c)
2022-01-25 18:14:58 +01:00
Haoyu Qiu
061ee6cdb3 Disable ScriptEditor's menu items when they do nothing 2022-01-21 12:05:32 +08:00
Ricardo Buring
684b7fdf47
Fix "Convert to MeshLibrary" not respecting collision transforms
(cherry picked from commit 025d7b9332)
2022-01-19 16:04:17 +01:00
Haoyu Qiu
28ae995a1a
Fix crash when undoing node creation of BlendTree editor
(cherry picked from commit 19634bd1a1)
2022-01-19 16:02:54 +01:00
Rémi Verschelde
ede7e68ab6
Merge pull request #56620 from timothyqiu/left-right-palette-3.x 2022-01-18 16:38:26 +01:00
Rémi Verschelde
c938104a88
Merge pull request #56630 from Pineapple/replace-find-last 2022-01-18 16:36:52 +01:00
kleonc
63fd172fce Fix AtlasTexture nesting 2022-01-15 00:11:02 +01:00
Rémi Verschelde
a627cdafc5
Update copyright statements to 2022
Happy new year to the wonderful Godot community!
2022-01-13 15:54:13 +01:00
Rémi Verschelde
edd9534f97
Merge pull request #53900 from ChronicallySerious/update-vcs-1 2022-01-10 12:18:57 +01:00
Bartłomiej T. Listwon
22750b1c03 Replace String::find_last with rfind where possible (backward compatible with old API) 2022-01-08 22:40:44 +01:00
Haoyu Qiu
37a38ece59 Allow showing both left and right side panels 2022-01-08 20:20:36 +08:00
Rémi Verschelde
b197de6f5f
Fix typos with codespell
Using codespell 2.1.0.

Method:
```
$ cat > ../godot-word-whitelist.txt << EOF
ang
curvelinear
dof
doubleclick
fave
findn
GIRD
leapyear
lod
merchantibility
nd
numer
ois
ony
que
readded
seeked
statics
synching
te
uint
unselect
webp
EOF

$ codespell -w -q 3 -I ../godot-word-whitelist.txt --skip="./thirdparty,*.po"
$ git diff // undo unwanted changes
```
2022-01-07 00:14:54 +01:00
Rémi Verschelde
8f17a4037b
Merge pull request #56466 from Chaosus/vs_uniform_hints_3.x 2022-01-06 09:39:27 +01:00
LlamaLad7
a0cc90a908
Editor: Resolve being able to move control nodes in containers using arrow keys
Fixes #55260

(cherry picked from commit b5407f802f)
2022-01-06 00:35:44 +01:00
Jake Young
09bc9eb101
Backport NavigationServer with RVO2 to 3.x
Change the entire navigation system.
Remove editor prefix from nav mesh generator class. It is now used for baking
at runtime as well.
Navigation supports obstacle avoidance now with the RVO2 library.
Nav system will also automatically link all nav meshes together to form one
overall complete nav map.
2022-01-05 16:00:56 +01:00
Rémi Verschelde
791f454b17
Merge pull request #56364 from V-Sekai/preview_node_sanitize_3_x
Clean preview node of all nodes which are not derived from VisualInstances [3.x]
2022-01-04 17:20:49 +01:00
Rémi Verschelde
25369acff9
Merge pull request #51708 from Calinou/viewport-add-32bpc-color-depth 2022-01-04 14:30:24 +01:00
Hugo Locurcio
d6e7308b3f
Split 3D editor sensitivity freelook sensitivity into its own setting
This allows configuring orbit sensitivity and freelook sensitivity
independently from each other. Often, it's needed to use a lower
freelook sensitivity compared to the orbit sensitivity.

Also, 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-03 22:36:42 +01:00
Yuri Roubinsky
5b0fe7880e [3.x] Add hints and default values to the uniform nodes in visual shader 2022-01-03 22:59:10 +03:00
Rémi Verschelde
0aa7768b1e
Merge pull request #54207 from Calinou/3d-editor-add-quick-fov-adjust-3.x 2022-01-03 20:44:00 +01:00
SaracenOne
5935cee298 Clean preview_node of all none VisualInstances 2021-12-31 01:19:15 +00:00
Yuri Sizov
b32acc57f3 Make the theme editor correctly stop updating after it was hidden 2021-12-29 23:40:23 +03:00
jabcross
a074b66380
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.

(cherry picked from commit 814a4ee434)
2021-12-21 11:25:57 +01:00
Haoyu Qiu
d99a313fd3 Fix font preview text color on light background 2021-12-18 00:34:54 +08:00
Haoyu Qiu
1cada6bfa9 Add proxy support for HTTPClient and the editor
* Adds proxy related methods for `HTTPClient` and `HTTPRequest`
* Adds `network/http_proxy/{host,port}` editor settings
* Makes AssetLib and Export Template Manager proxy aware
2021-12-16 19:38:53 +08:00
Yuri Sizov
9c155a25d0 Improve user communication in the Add Item Type dialog 2021-12-14 17:22:37 +03:00
Zae
1426df66a8 Fix ViewportPreview upside-down in 3.x. 2021-12-12 00:53:49 +08:00
Rémi Verschelde
e82091db51
Merge pull request #55782 from RPicster/3.x-gpu-particle-vis-rect 2021-12-10 13:50:45 +01:00
Raffaele Picca
995408b492 GPU Particles (2D + 3D) visibility rect / gizmo optimization for reduced visual clutter 2021-12-10 11:22:44 +01:00
Cory Petkovsek
3d20218dae Clears RIDs wherever they are freed by VisualServer or PhysicsServer and possibly reused. Fixes #53374 2021-12-10 02:31:30 +08:00
kobewi
6eb1c92cea Fix custom built-in script names 2021-12-08 14:04:10 +01:00
kobewi
d0569255f2
Properly reload built-in tool scripts
(cherry picked from commit 75e8eafa72)
2021-12-06 16:51:55 +01:00
lawnjelly
3d981b8265 Add option to use handles to RID
Adds an option to compile an alternative implementation for RIDs, which allows checks for erroneous usage patterns as well as providing leak tests.
2021-12-06 14:43:34 +00:00
kobewi
f899b76747 Improve save handling for built-in scripts 2021-12-04 01:28:52 +01:00
kobewi
eef08ea3e0
Show mouse position when clicking ruler tool
(cherry picked from commit 0f7d7c9ffb)
2021-12-03 12:19:47 +01:00
Marcel Admiraal
e0729b9c79 Allow any kind of Mesh to be added to an EditorSpatialGizmo 2021-12-03 08:51:38 +00:00
Yuri Sizov
eb98210be4 Allow scrolling theme preview when the control picker is active 2021-12-02 19:03:31 +03:00
Rémi Verschelde
f36debf8de
Merge pull request #55232 from Calinou/script-editor-add-replace-in-files-3.x 2021-12-02 09:38:01 +01:00
janglee
0b327eb46e VCS: Add push, pull, fetch and improved diff view to VCS UI
This commit was created by merging the commits presented in #39255 for
the GSoC 2020 VCS Improvement project

VCS: Make EditorVCSInterface store less amount of internal state

VCS: Add force push checkbox + more frequent VCS updates

Add force push checkbox in the Commit dock. Also add some missing
opportunities for checking the VCS state again on from UI inputs

VCS: Fix script contents not being updated on merge conflict

VCS: Add branch creation VCS interface calls

VCS: Add VCS remote creation and remote selection menus

VCS: Show more commit information + Fix truncated commit offsets

VCS: Make VCS less noisy + Fix diff view refreshes

VCS: Fix mismatched argument names in VCS helpers

VCS: Add SSH transport support for remote operations

Also, moves the editor's VCS settings registrations to
project_settings.cpp and editor_settings.cpp

VCS: Change TTR() to vformat() for branch and remote removal text

VCS: Add VCS branch icon instead of using Tree node icon

Co-authored-by: @ChronicallySerious
2021-12-01 22:52:07 +05:30
kobewi
009e4a3d18
Mention that Ctrl+Alt with select tool will scale
(cherry picked from commit dc472622cc)
2021-12-01 14:25:55 +01:00
kobewi
fd8eb47ee5
Show scene when showing built-in script file
(cherry picked from commit 512e260af4)
2021-11-29 16:10:29 +01:00
Wilson E. Alvarez
1a2153eb0a
Fix 'Add Node...' menu entries in AnimationNodeBlendTreeEditor 2021-11-28 09:08:02 -05:00
Haoyu Qiu
420ec1f84a
Fix Theme Editor crash when clicking the element picker
(cherry picked from commit abd41dedb0)
2021-11-25 22:06:15 +01:00
kleonc
97e9165de4 TileSetEditor Fix selecting next/previous subtile 2021-11-23 14:49:37 +01:00
Dominik 'dreamsComeTrue' Jasiński
7bd0eae635
Add "Replace in Files" functionality to text editors
The Soft Reload Script shortcut was changed from Ctrl + Shift + R
to Ctrl + Alt + R to avoid conflicts.
2021-11-23 01:10:38 +01:00
Marcel Admiraal
4d3690eba5 Remove unimplemented methods 2021-11-18 12:47:36 +00:00
kobewi
f3d5ef6f7b Fix TileSet editor workspace breaking 2021-11-17 18:00:33 +01:00
Hugo Locurcio
a0699bb6ec
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-16 01:01:43 +01:00
Rémi Verschelde
0cdcf1154f
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>
(cherry picked from commit 5341e6010e)
2021-11-15 17:22:47 +01:00
kobewi
5f081de854
Properly handle scenes in Find in Files
(cherry picked from commit 31644fe280)
2021-11-15 17:22:47 +01:00
kobewi
969136e675
Ignore external editor for built-in scripts
(cherry picked from commit 9abb07efb4)
2021-11-15 17:22:47 +01:00
Hugo Locurcio
cbf870aa59
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.

(cherry picked from commit 4ff1431993)
2021-11-15 16:10:00 +01:00
Ryan Roden-Corrent
d1df89a695
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.

(cherry picked from commit 3bd7c4f2a9)
2021-11-15 16:10:00 +01:00
Hugo Locurcio
b31f6f78a3
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.

This also makes the editor FPS display use `pad_decimals()`
for consistency with the implementation in `master`.
2021-11-09 17:20:59 +01:00
Hugo Locurcio
4d35049dc7
Add keyboard shortcuts for grouping and locking nodes, change grid toggle
- Locking nodes can now be done by pressing Ctrl + L, and unlocking with
  Ctrl + Shift + L.
- Grouping nodes is now done by pressing Ctrl + G, and ungrouping with
  Ctrl + Shift + G (similar to Inkscape).
- Toggling the grid is now done by pressing the `#` key
  (also similar to Inkscape). This change was needed as Ctrl + G
  now groups selected nodes.

Different shortcuts are used for the lock/unlock and group/ungroup
actions, so that the shortcuts are idempotent.
2021-11-08 23:38:54 +01:00
Rémi Verschelde
70b521af79
Merge pull request #53013 from Calinou/editor-debugger-bottom-panel-error-warning-highlight-3.x 2021-11-08 13:15:46 +01:00
Yuri Sizov
5ff11a2c5c Add a flag to EditorResourcePicker to differentiate selection contexts 2021-11-02 14:15:14 +03:00
Rémi Verschelde
87c80f529f
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 14:50:33 +02:00
Rémi Verschelde
1b65550ec7
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 14:50:32 +02:00
Rémi Verschelde
42d385b312
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 13:23:38 +02:00
Hugo Locurcio
d831836b09
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 17:01:10 +02:00
Hugo Locurcio
a094e5dcdf
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-25 00:39:50 +02:00
Julien Nguyen
480543f681 Fix create skeleton bone position 2021-10-23 20:02:05 +02:00
Haoyu Qiu
bd39b8649e
Update view name after processing orbit view shortcuts
(cherry picked from commit 392d529247)
2021-10-23 11:52:20 +02:00
Ryan Roden-Corrent
76255d89af
Implement camera orbiting shortcuts.
Fixes godotengine/godot-proposals#2051.
Relates to godotengine/godot-proposals#1215.

Implements shortucts for adjusting the camera rotation in 15-degree
increments, similar to Blender.

I did not add corresponding menu entries for these, as I didn't feel
like they would be too useful from a menu, and didn't want to make the
menu too long.

(cherry picked from commit cb15ec20bb)
2021-10-18 11:24:37 +02:00
Hugo Locurcio
52b16f0984
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).

(cherry picked from commit 7a3d0b79b4)
2021-10-15 12:51:42 +02:00
Haoyu Qiu
e7b67fe8ee
Fix make sub-resource crash in AnimationTreeEditor
(cherry picked from commit 274ed82283)
2021-10-10 12:27:51 +02:00
Rémi Verschelde
d4b2db5c3a
Merge pull request #51438 from timothyqiu/selection-box-sep-3x 2021-10-05 13:55:36 +02:00
Rémi Verschelde
7f58b6322e
Merge pull request #53067 from Calinou/add-script-nav-extra-mouse-button-3.x 2021-10-05 11:57:51 +02:00
Yuri Sizov
8fe6fceb02 Safeguard against BitMap fonts in the CanvasItem editor
Co-authored-by: ArrowInAKnee <gatexxl@gmail.com>
2021-10-04 22:54:04 +03:00
kobewi
0fa8d3431a Fix editor stuck dimmed because of unsaved script 2021-09-29 17:06:12 +02:00
Hugo Locurcio
1ff98bfa1b
Add history navigation in the script editor using extra mouse buttons
This feature is enabled by default, but it can be disabled in the editor
settings in case it interferes with other uses of the extra buttons
(such as push-to-talk in a VoIP program).
2021-09-25 20:33:57 +02:00
Stéphane Fortin
6cf54d06be add missing undo on CloseCurve 2021-09-25 13:22:10 -04:00
kleonc
4eb59e8492 TexturePreview Update text when texture is being changed 2021-09-24 18:55:58 +02:00
Yuri Roubinsky
5c06685609 [3.x] Draggin in/out from ports to create nodes in Animation Blend Tree 2021-09-23 12:09:19 +03:00
Haoyu Qiu
4b611c4518 Fix 3D view name typo 2021-09-22 10:31:48 +08:00
kobewi
168292fa00
Don't stop closing on unsaved script
(cherry picked from commit 8fe664fb4b)
2021-09-21 20:33:11 +02:00
kleonc
891681a5a3
SpriteFramesEditor Fix preview grid in "Select Frames" dialog
(cherry picked from commit ad7a6102ae)
2021-09-21 20:33:07 +02:00
Hugo Locurcio
da68feb0ca
Print a warning if a 3D editor gizmo has no name defined
Unnamed gizmos should be avoided, so this should help editor plugin
authors resolve issues with gizmo naming if they forgot to override
the function.

(cherry picked from commit e5406ba952)
2021-09-21 17:15:01 +02:00
Manuel Dun
dbf2d7b76c
Conversion now includes "Local to scene" flag and name
(cherry picked from commit 3e8b54bfc3)
2021-09-21 17:15:00 +02:00
Hugo Locurcio
c1d13df0ef
Enable Pixel Snap by default in the 2D editor
Since this avoids accidentally placing 2D nodes at subpixel positions,
this results in more crisp visuals by default, even when pixel snapping
is disabled in the project settings.

(cherry picked from commit c03e7c2dde)
2021-09-21 17:14:59 +02:00
Rémi Verschelde
8ea1ad6725
Merge pull request #52772 from Calinou/editor-default-enable-doppler-3.x 2021-09-21 11:30:03 +02:00
Rémi Verschelde
b37776fa2f
Merge pull request #52591 from timothyqiu/error-macros
[3.x] Remove do{ } while(0) wrapper around error macros
2021-09-21 10:38:34 +02:00
Rémi Verschelde
7d852bd98a
Merge pull request #52377 from Calinou/tweak-3d-inertia-3.x
Tweak the 3D editor inertia defaults for better responsiveness (3.x)
2021-09-20 15:41:43 +02:00
Hugo Locurcio
de3f454c27
Tweak skeleton editor texts "Make Rest Pose" and "Set Bones to Rest Pose"
The new terms are more descriptive of each button's actual function.

(cherry picked from commit 16cfb97ca2)
2021-09-19 11:30:21 +02:00
Hugo Locurcio
4914b57222
Enable Doppler preview in the 3D editor by default
This makes setting up AudioStreamPlayer3D nodes for Doppler playback
a bit easier.

- Move AudioStreamPlayer3D's Doppler Tracking property outside a group
  since the group only had 1 property, which resulted in unnecessary
  folding in the inspector.
- Put the AudioStreamPlayer3D Playing and Autoplay properties higher up
  in the inspector since these are likely to be modified often.
2021-09-17 18:51:09 +02:00
Hugo Locurcio
7922c262f6
Display a editor gizmo icon for Listener
The icon was present in `editor/icons/`, but it was never implemented
in the editor gizmos code.

This also removes some unused gizmo drawing code (overridden methods
that are no longer called anywhere).
2021-09-16 23:37:12 +02:00
Krystof Klestil
5e2450cae6 Fix issues with scaling 3D Objects
When scaling 3D objects the distance form them is not considered. Allowing for finer contorl. Overscaled objects no longer break the gizmo.
2021-09-15 08:40:41 +02:00
Rémi Verschelde
20f14e0a16
Merge pull request #52586 from JFonS/lm_bake_end
Fix editor getting stuck after baking lightmaps from a script
2021-09-14 22:40:48 +02:00
Rémi Verschelde
07d7754ac6
Merge pull request #52664 from butkeim/3.x
[3.x] Fix 3D Onion skinning missing
2021-09-14 22:27:55 +02:00
Vincent
ea13ff860d
implement individual mesh transform for meshlibrary items
(cherry picked from commit 70108fd850)
2021-09-14 13:41:22 +02:00
Kerrad Yanis
77b00d16e2 Fix 3D Onion skinning missing 2021-09-14 13:37:23 +02:00
Haoyu Qiu
70853fd669 Remove do{ } while(0) wrapper around error macros 2021-09-12 15:04:53 +08:00
JFonS
14eb739418 Fix editor getting stuck after baking lightmaps from a script 2021-09-12 01:01:29 +02:00
Hugo Locurcio
543c14336d
Tweak the 3D editor inertia defaults for better responsiveness
The default orbit sensitivity was decreased to account for this change.
Rotational inertia (orbit + freelook) was disabled by default due to
known issues.

This also removes the need for separate manipulation inertia settings,
as the default settings are more responsive.
2021-09-10 22:17:04 +02:00
Twarit Waikar
25cb3edbc4 Fix #52195 VCS script attachment failing for GDScript instances 2021-08-29 18:27:17 +05:30
kobewi
6611d24e74 Include locked nodes on selection list 2021-08-18 13:27:33 +02:00
Rémi Verschelde
19301d4ad2
Merge pull request #51828 from yjh0502/ext-reload
Auto-reload scripts with external editor
2021-08-18 10:37:09 +02:00
Jihyun Yu
5c66891048 Auto-reload scripts with external editor 2021-08-18 16:52:14 +09:00
Haoyu Qiu
a66339a549 Fix TextEditor not checking Standard highlighter in non-English UI
When using non-English UI, there were `Index p_idx = -1 is out of bounds (items.size() = 2).`
errors on on startup if any text file is open in the script editor. And clicking the Standard
highlighter option does not check that menu item.

This is caused by `TextEditor` searching for that menu item with unlocalized text. As already
did in `ScriptTextEditor`, this PR stores and searches for menu item with `TTR`ed text.
2021-08-18 10:42:12 +08:00
Haoyu Qiu
5f316aa216 Improve Undo/Redo menu items
* Make Undo/Redo menu items disabled when clicking it does nothing.
    * Context menu of `TextEdit`
    * Context menu of `LineEdit`
    * Editor's Scene menu
    * Script editor's Edit menu and context menu  (for Script and Text)
* Make editor undo/redo log messages translatable.
* Mark `UndoRedo`'s `has_{un,re}do()` methods as `const`.
* Expose `TextEdit`'s `has_{un,re}do()` to scripts since `{un,re}do()` are already available.
2021-08-18 00:46:51 +08:00
Rémi Verschelde
c0fc475078
Merge pull request #51521 from lawnjelly/portals_occluders
Sphere occluders (portals and general use)
2021-08-17 13:55:34 +02:00
Rémi Verschelde
53cc7a9be9
Merge pull request #51648 from pycbouh/editor-merge-custom-theme-3.x
[3.x] Add support for partial custom editor themes
2021-08-17 13:12:49 +02:00
lawnjelly
115f4dce55 Sphere occluders (portals and general use)
Add framework for supporting geometrical occluders within rooms, and add support for sphere occluders.
Includes gizmos for editing.

They also work outside the portal system.
2021-08-17 09:02:06 +01:00
Rémi Verschelde
032559936f
Merge pull request #51031 from kleonc/sprite_frames-preserve-src-atlas_texture-margins-3x
[3.x] SpriteFramesEditor: preserve source texture margins when creating frames from AtlasTexture
2021-08-16 10:37:57 +02:00
Hugo Locurcio
5335a0368c
Add a Viewport property to use full floating-point precision in HDR
This is only available on the GLES3 backend.

This can be useful for advanced shaders, but it should generally
not be enabled otherwise as full precision has a performance cost.
For general-purpose rendering, the built-in debanding filter should
be used to reduce banding instead.
2021-08-16 03:16:01 +02:00
Danil Alexeev
1372ba681b
[3.x] Fix "Property not found: editor/node_naming/name_casing" 2021-08-15 16:54:19 +03:00
Haoyu Qiu
afea754e97 Fix i18n of 3D view name
Make the full view name translatable as a whole instead of combining
from sub-strings.
2021-08-14 15:23:59 +08:00
Yuri Sizov
ab25266213 Add support for partial custom editor themes 2021-08-14 02:11:54 +03:00
Haoyu Qiu
ad425b7e9f Allow dropping property path into script editor 2021-08-13 23:01:45 +08:00
Rémi Verschelde
f0b37b1519
doc: Point URLs to 3.4 version of the online docs 2021-08-12 17:08:10 +02:00
Yuri Roubinsky
9c9559654b
Fix incorrect position of the created VisualShader nodes on zoomed graph
(cherry picked from commit 8249ae8085)
2021-08-12 16:42:17 +02:00
Rémi Verschelde
7c6bdea33c
Merge pull request #47416 from Calinou/add-contrast-adaptive-sharpening-3.x
Add support for contrast-adaptive sharpening in 3D (GLES3 only)
2021-08-10 10:08:24 +02:00
Haoyu Qiu
9d9043e1a9 Make 3D selection box independent of object size 2021-08-09 22:51:26 +08:00
Rémi Verschelde
b4a8717260
Merge pull request #51324 from LightningAA/show_view_rotation_dir-3.x
[3.x] Minor visual improvements to the viewport rotation gizmo (again)
2021-08-07 12:41:30 +02:00
Lightning_A
9613725732 Minor visual improvements to the viewport rotation gizmo (again) 2021-08-06 14:38:31 -06:00
kleonc
2eeed26d67 TileMap Fix trying to get data for tile not existing in attached TileSet 2021-08-06 18:52:04 +02:00
Lightning_A
6280c66f04 Minor improvements to the view rotation gizmo 2021-08-04 13:15:44 -06:00
Yuri Sizov
3b6e7d61a5 Improve user communications in the theme editor 2021-08-04 18:36:06 +03:00
Nicholas Huelin
0b94db5f4c
Make the "View" menu in 3D view toolbar stay open when selecting a checkbox
This pull request fixes an issue where the "View" menu in the 3D view toolbar would close when you selected either the "View Origin" or "View Grid" checkboxes. This was inconvenient and wasted time by making you have to reopen the menu in order to get to other settings anytime you changed this.

(cherry picked from commit 3ffd75107d)
2021-08-03 10:20:18 +02:00
foxydevloper
f807c7e569
Name nodes added from drag & drop by name_casing
(cherry picked from commit 07a8f0fe38)
2021-08-03 10:18:04 +02:00
Yuri Roubinsky
4fef6b9cbc
Prevent warning spam to console when dragging a CanvasItem in container
(cherry picked from commit bb5729fd35)
2021-08-03 09:33:25 +02:00
Hugo Locurcio
bcd3c9a285
Improve the 2D editor ruler display
- Use the ° symbol instead of "deg" to reduce clutter.
- Round the displayed lengths to only one decimal instead of two
  to further reduce clutter.
- Don't make the `px` suffix localizable, as it isn't localizable
  anywhere else in the editor.

(cherry picked from commit 026aea681d)
2021-08-03 09:15:33 +02:00
lawnjelly
9e9abe2137 Portals - Fix UI default
I had forgotten to add a call to update_portal_tools() at the end of the SpatialEditor constructors. This ensures that the portal UI is off by default in normal use without portals.
2021-08-02 16:10:34 +01:00
Rémi Verschelde
73c6ab0215
Merge pull request #51152 from lawnjelly/portals_improve_ui 2021-08-02 14:40:18 +02:00
Rémi Verschelde
e8f1cc693a
Merge pull request #50432 from goostengine/ctrl-enter-commit-3.x
[3.x] VCS: Allow to stage and commit all files with Ctrl + Enter
2021-08-02 12:20:35 +02:00
lawnjelly
776623d56b Portals - Improve UI and add shortcuts
This PR makes the 'convert rooms' button permanently on the toolbar and accessible whichever node is selected, so you can convert rooms without having to select the RoomManager first.

It also adds a togglable item 'view portal culling' to the 'View' menu which is a simple way of setting the RoomManager 'active' setting without the RoomManager being the selected node.

Both of these have keyboard shortcuts, which should make it much faster to reconvert rooms and edit.

In addition there the string in the 'Perspective' Listbox is modified to show [portals active] when portal culling is operational, for visual feedback. This is updated when you change modes, and when the rooms are invalidated.
2021-08-01 19:54:16 +01:00
Rémi Verschelde
a17228c788
Merge pull request #51111 from pycbouh/editor-put-the-colon-back-in-3.x
[3.x] Put multiple colons back into translated strings
2021-07-31 22:05:04 +02:00
Yuri Sizov
9b228f0f5d Put multiple colons back into translated strings 2021-07-31 20:18:24 +03:00
Haoyu Qiu
a3b221e99f Make action names translatable 2021-07-31 22:19:47 +08:00
Hugo Locurcio
1ed24ca548
Highlight context menu items at the top of the 2D/3D viewports
This makes it easier to notice that some menu items only appear when
specific nodes are selected.

This change applies to both 2D and 3D editors, including both plugin-based
menus and the hardcoded 2D layout/animation contextual menus.
2021-07-31 01:50:50 +02:00
kleonc
3bb950b8e8 SpriteFramesEditor: preserve source texture margins when creating frames from AtlasTexture 2021-07-29 20:23:06 +02:00
Hugo Locurcio
8f891535d0
Improve MeshInstance3D UV preview in the editor
- Use background and line colors that match better with the
  rest of the editor.
- Use translucent lines to make overlapping lines visible.
- Tweak the error message to mention the UV layer in question
  when there is no UV for a defined layer.

(cherry picked from commit 8cdfd2e706)
2021-07-28 15:37:40 +02:00
Hugo Locurcio
8fc99ef680
Improve the 3D editor manipulation gizmo
- Allow some tolerance when clicking the plane move/scale,
  even if the click is actually slightly outside the plane
  (similar to Blender).
- Make the rotate manipulation circles visually thinner to be
  less distracting.
- Make the hovered color less saturated to be more distinguishable
  from the non-hovered state.
  - Don't set brightness above 1.0 to prevent the gizmo from glowing
    when hovered.

(cherry picked from commit 6cfcbbbb93)
2021-07-28 15:35:35 +02:00
Rémi Verschelde
fddc370b2b
Merge pull request #50837 from Calinou/3d-editor-camera-preview-add-shortcut-3.x
Add shortcut to toggle the 3D editor's camera preview (3.x)
2021-07-27 13:34:35 +02:00
Rémi Verschelde
b358a71a38
Merge pull request #50817 from KoBeWi/gg_ez_rects
[3.x] Allow for easier editing of rect CollisionShape2D
2021-07-27 13:34:29 +02:00
SaracenOne
462231e297
Removing bounding box calculations from 3D scene drag and drop and collide against physics rather than visual geometry.
(cherry picked from commit fbda490d0f)
2021-07-27 11:58:36 +02:00
foxydevloper
f2cdacd3a6
Improve select tool's tooltip
- Makes tips clearer and more consistent.
- Removes outdated "shift+v" that doesn't work
- Adds Ctrl+RMB for adding nodes at position
- Removes tip for non-existent Alt+Drag in 3D select tool

(cherry picked from commit 6b90e2df6c)
2021-07-26 13:30:56 +02:00
Rémi Verschelde
8ecb5d2047
Merge pull request #48621 from Calinou/editor-3d-hide-selection-box-no-gizmos-3.x
Hide the 3D editor selection box when View Gizmos is disabled (3.x)
2021-07-26 12:45:00 +02:00
Hugo Locurcio
ba91c37efe
Add shortcut to toggle the 3D editor's camera preview
A Camera node still has to be selected to initially enable camera
preview, but another node can then be selected and the preview can
be disabled by pressing the shortcut key again.
2021-07-25 12:50:51 +02:00
Hugo Locurcio
db04860653
Only print message about lightmap baking if it took at least 1 second 2021-07-24 22:06:46 +02:00
kobewi
10652cd342 Allow for easier editing of rect CollisionShape2D 2021-07-24 21:31:32 +02:00
Hugo Locurcio
ce78e605b1
Clarify the purpose of the default asset library URLs in the editor
`localhost` was removed as it won't work out of the box. It can be added
by the user if they're working on the asset library itself.

This won't affect existing installations due to how the editor settings
are stored, but existing installations will keep working fine.

(cherry picked from commit eac8ba6ce8)
2021-07-24 01:01:14 +02:00
foxydevloper
c7062f3bb8
Fix hidden seperators when horizontal frames is 1
(cherry picked from commit 429382b7e5)
2021-07-24 00:52:49 +02:00
kobewi
49f323410b
Don't set metadata_label font if it doesn't exist
(cherry picked from commit 2846dbf239)
2021-07-24 00:51:08 +02:00
Lightning_A
8e90c7e829 Fix TexturePreview crashing 2021-07-22 13:42:22 -06:00
lawnjelly
83f1377a8f Portals - lift roomlist restrictions and fix link bug
Allows users to have the RoomManager as the roomlist.

Fixes a couple of bugs dealing with situations where users attempt to link Portals to Rooms outside the roomlist.

Adds a PortalEditorPlugin allowing you to flip individual portals.
2021-07-20 19:05:16 +01:00
Atlinx
6026de80e7
Add scaling to the curve editor's handles
This fixes issue #50617

(cherry picked from commit ac5f3a6733)
2021-07-20 13:05:12 +02:00
Rémi Verschelde
d12243370d
Merge pull request #50632 from timothyqiu/add-item-type-3.x
[3.x] Improve add item type UI in theme editor
2021-07-20 12:15:11 +02:00
Rémi Verschelde
559d02a216
Merge pull request #50095 from LightningAA/add-viewport-spy-3.x
[3.x] Add the ability to preview viewports from the inspector
2021-07-20 11:19:34 +02:00
Haoyu Qiu
48af497e8c Improve add item type UI in theme editor 2021-07-20 16:55:54 +08:00
Rémi Verschelde
f9707e1a28
Merge pull request #50499 from LightningAA/zoom-out-alt-3.x
[3.x] Add shift + [1-5] keyboard shortcuts to zoom out
2021-07-20 09:17:52 +02:00
Aaron Franke
7dc2edc430
[3.x] Allow reading shaders from .gdshader files 2021-07-19 23:34:23 -04:00
Lightning_A
cf8de3b316 Add viewport preview plugin and refactor TextureEditorPlugin 2021-07-18 14:49:45 -06:00