Commit graph

2534 commits

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