Commit Graph

3524 Commits

Author SHA1 Message Date
Hugo Locurcio ed4976d1d5
Expose `VisualServer.viewport_set_use_32_bpc_depth()` to the scripting API
Previously, only the Viewport methods/properties were exposed to the
scripting API.
2022-07-23 03:52:38 +02:00
Rémi Verschelde 4ef99b409d
Merge pull request #63163 from dsnopek/multiplayer-peer-custom-3.x 2022-07-20 22:41:15 +02:00
David Snopek 8ad5889c1a Add NetworkedMultiplayerCustom so high-level multiplayer backends can be added from GDScript 2022-07-19 09:16:41 -05:00
BimDav ab644a9913 Add option in VisibilityEnabler2D to hide the parent for better performance 2022-07-19 10:56:47 +02:00
Hugo Locurcio b03ceaba2f
Document support limitations for OmniLight cubemap shadows in GLES2 2022-07-18 22:18:56 +02:00
Rémi Verschelde 7379f2c76a i18n: Sync classref translations with Weblate 2022-07-18 10:21:37 +02:00
Rémi Verschelde 5aa22a21be
Merge pull request #63058 from AaronRecord/backport-global-position-rotation 2022-07-18 09:33:23 +02:00
Rémi Verschelde 1995e1fb8d
Merge pull request #62850 from Calinou/doc-httprequest-timeout-3.x 2022-07-18 09:19:38 +02:00
foxydevloper 5238740fef Add global_translation and global_rotation to Spatial 2022-07-15 21:39:35 -06:00
Rémi Verschelde 101cbe5d5b
Merge pull request #62723 from hansemro/eraser-detect-3.x 2022-07-15 00:13:15 +02:00
Francois Belair 2ceb93bbef Fix custom res caching sub-res even if no-cache
Fixes #59686, fixes #59752
2022-07-13 11:18:26 -04:00
Hugo Locurcio 28b9e376cf
Improve documentation for HTTPRequest's `timeout` property 2022-07-08 23:25:06 +02:00
Rémi Verschelde 685cecbd5f AudioStreamPlayer: Clarify that no validation is made on 'bus' name
Supersedes #39605.
Fixes #39585.

(cherry picked from commit eedb729771)
2022-07-08 16:41:41 +02:00
Rémi Verschelde f05cecdc43
Merge pull request #55650 from kdiduk/pooled-arrays 2022-07-08 00:15:44 +02:00
Kirill Diduk 7b8b91f505 [GDScript][GDNative] Add 'sort' and 'has' methods to pooled arrays
This is a backport from 4.0 to 3.x that adds 'sort' and 'has' methods
to the following types:
- PoolByteArray
- PoolIntArray
- PoolRealArray
- PoolStringArray
- PoolVector2Array
- PoolVector3Array
- PoolColorArray

For all the types above, the methods 'sort' and 'has' have been
exposed to the GDNative API (v. 1.3)

Since the method 'has' was already implemented in GDScript before,
in this commit it has been only exposed to GDNative API.

The classes documentation is updated.

The method 'sort' uses the exisging class "Sorter".

Pooled arrays in 4.0 are rewritten, that's why this backport is not
completely indentical to the original PR made for 4.0 (see #32144).
2022-07-07 23:24:31 +02:00
Rémi Verschelde d6bcdd18c3 Input: Re-enable input accumulation disabled by error in 3.4
Input accumulation was implemented and enabled by default in 3.1, and
I don't recall major complaints around it (or bugs were fixed).

In 3.4, #42220 added input buffering and apparently toggled input
accumulation off by mistake.

This led to multiple bug reports about degraded performance on Windows,
or simply unexpected behavior change (see linked issues in #55037).

Fixes #55037.
2022-07-07 23:04:51 +02:00
Brian Semrau ce24b48e50 Add support for multiple virtual keyboard types 2022-07-07 14:22:28 -04:00
Haoyu Qiu e170ddadef Fix cherry-pick mistakes in SceneTreeTween doc 2022-07-07 00:51:50 +08:00
Jean-Marc Pelletier ee227b9d09 StyleBox: Document correct methods to draw with a RID
(cherry picked from commit 63d5f31561)
2022-07-06 11:43:04 +02:00
Hansem Ro 193d5c11f3 [3.x, macOS, Windows, X11] Add stylus inverted/eraser support to InputEventMouseMotion event 2022-07-04 16:12:11 -07:00
bruvzg a8eb779ac3
Backport locale selection improvements. 2022-07-04 11:49:20 +03:00
Rémi Verschelde 7de45b6203 Input: Document that accumulated input is disabled by default
This was actually disabled by mistake in 3.4 causing a regression, but since
this issue survived the whole 3.4.x series and it's now very close to 3.5,
it's too late to change it again.

We might consider it for 3.6 after some beta testing.

Fixes #55037.
2022-07-03 12:00:26 +02:00
Rémi Verschelde df70aa1772
Merge pull request #57566 from Calinou/viewport-shadow-atlas-clamp-sizes 2022-07-03 03:08:03 +02:00
Rémi Verschelde 3d19f21576
Merge pull request #49967 from Calinou/viewport-2d-hdr-print-warning 2022-07-03 02:41:26 +02:00
Rémi Verschelde 86229d0b03
Merge pull request #54239 from Calinou/editor-directionallight-3d-only-show-relevant-properties-3.x
Only show relevant properties in the DirectionalLight inspector (3.x)
2022-07-03 02:02:10 +02:00
saneery cb94797ce4 Add process_mode property to InterpolatedCamera 2022-07-03 01:47:10 +02:00
Haoyu Qiu 4834525242 Improve String.format() documentation
(cherry picked from commit 25c7f567dd)
2022-07-02 00:07:48 +02:00
smix8 5e1063bd0e [3.5] Remove documentation that mentions 2D navigation baking
Cherrypick mentions 2D navigation mesh baking which does only exist very hidden in Godot 3.5.
2022-07-01 22:18:13 +02:00
bruvzg 6489fe890e
Backport text-to-speech support. 2022-07-01 11:04:50 +03:00
ConteZero a13b3028a2 Add an option to drag'n'drop selected text in TextEdit
(cherry picked from commit 5d56efcaa4)
2022-06-30 19:23:01 +02:00
snailrhymer 28d387f721 Fix typos and improve clarity in Tween docs
(cherry picked from commit aff30b649e)
2022-06-28 16:41:26 +02:00
smix8 7aff541538 Clarify NavigationAgent radius property
Documents Navigation radius property, especially that it affects avoidance only.

(cherry picked from commit e1a4d1d08c)
2022-06-28 16:32:23 +02:00
Pedro J. Estébanez f971c886fa Add safe defaults for async shader compilation 2022-06-28 11:50:38 +02:00
smix8 928c488888 Document limits of using meshes to obstruct navigation mesh baking
Recast (the library used for baking) has no concept of a geometry "inside" and this is intentional. ReCast will add navigation mesh to areas as soon as the area inside a source geometry mesh is large enough to fit a navigation mesh polygon with current baking parameters.

(cherry picked from commit 85cdb1144d)
2022-06-25 12:41:37 +02:00
Haoyu Qiu 6fb76ba266 Fix code example of String.is_valid_integer() 2022-06-25 10:10:27 +08:00
Rémi Verschelde f428bfd456
Merge pull request #62370 from timothyqiu/http-request-doc-3.x
[3.x] Make code example in HTTPRequest classref working
2022-06-24 23:21:10 +02:00
smix8 721c99a530 Add NavigationServer map_force_update() function
Adds map_force_update() function to NavigationServer. This function immediately flushes the Navigationserver command queue and recalculates all navigationmeshes and region connections for a specific map.

(cherry picked from commit fdea269805)
2022-06-24 10:19:00 +02:00
smix8 f0069cc1e9 Add NavigationServer.region_owns_point() helper function
Adds a helper function to check if a world space position is currently owned by a navigation region.

(cherry picked from commit e57360d8df)
2022-06-24 10:19:00 +02:00
Haoyu Qiu c31ce5be02 Make code example in HTTPRequest classref working 2022-06-24 12:05:21 +08:00
smix8 38ee593b76 Add Navigation function to get all navigation maps
Added new function that returns all created navigation map RIDs from the NavigationServer. The function returns both 2D and 3D created navigation maps as technically there is no distinction between them.

(cherry picked from commit c0fed1d4e8)
2022-06-23 16:29:11 +02:00
smix8 fcff804844 Implement NavigationMesh bake area
Adds two new properties to NavigationMesh resources to restrict the navmesh baking to an area enclosed by an AABB with volume.

(cherry picked from commit 0c4d99f4fd)
2022-06-23 16:17:43 +02:00
salamandars 22881a6923 Clarify that MeshInstance surface methods only apply to override materials 2022-06-23 22:58:52 +10:00
Rémi Verschelde 3c35617c50
Merge pull request #62187 from smix8/nav_nodes_depr_3.5 2022-06-20 18:36:17 +02:00
smix8 693aeaf799 [3.5] Mark Navigation/Navigation2D nodes as deprecated
Mark Navigation/Navigation2D nodes as deprecated. They already just redirect calls to the NavigationServer and have no longer a real purpose. In Godot 4.0 both nodes are already removed for good reasons.
2022-06-20 17:37:55 +02:00
smix8 88e42b2915 Add NavigationAgent desired path distance
Add NavigationAgent desired path distance

(cherry picked from commit 07740302f3)
2022-06-20 15:11:09 +02:00
Rémi Verschelde 0cb897421a Node: Rename `child_exited_tree` to `child_exiting_tree`
The name was confusing as this signal is emitted around the same time as
`tree_exiting` and `NOTIFICATION_EXIT_TREE`, i.e. while the child node is
still in tree.

Fixes #59210.

(cherry picked from commit 3e6de687b8)
2022-06-20 15:00:09 +02:00
Hugo Locurcio 8ad483e2d8 Document incremental search support in ItemList, PopupMenu and Tree
(cherry picked from commit 466bd7ce39)
2022-06-20 14:58:15 +02:00
Rémi Verschelde e4d6a4d005
Merge pull request #60799 from Calinou/doc-os-cmdline-args-3.x 2022-06-19 14:09:23 +02:00
Rémi Verschelde 4137578369 Fix typos with codespell
Using codespell 2.2-dev from current git.

Fix a couple incorrect uses of gendered pronouns.
2022-06-19 13:48:15 +02:00
Rémi Verschelde acd4a01b8c ProjectSettings: Ensure 'editor/' settings aren't nested
Having a mix of settings with and without subcategory makes the 'Editor'
section stand out with a weird UX, as instead of simply being a foldable
section like the others, it also holds its own top-level settings and is
therefore selectable.

This wasn't the case in 3.4, and is fixed in 4.0 by refactoring, so for
3.5 we should preserve the 3.4 UX, even if it's not the best.
2022-06-19 11:47:19 +02:00
Haoyu Qiu b43fdea0d5 Classref typo fixes and improvements 2022-06-17 15:19:31 +08:00
Theraot 69653a4b9d Updating AStar2D documentation to mention the new bidirectional paramter
(cherry picked from commit b18a018ad2)
2022-06-16 20:49:04 +02:00
smix8 c6f9627c74 [3.5] Add NavigationAgent2D/3D set_navigation_map() function
Add NavigationAgent2D/3D set_navigation_map() function. Also fixes some bugs from leftover code before the backport update.
2022-06-16 19:25:52 +02:00
Hugo Locurcio bec892c010 Tweak default crash handler message in exported projects
When an exported project crashes, the crash handler message
shouldn't reference the Godot issue tracker, as not all crashes
are Godot's fault.

Reporting crashes that only occur on exported projects is still allowed,
but it should not be done by people who aren't working on the project
in question.

(cherry picked from commit c850ccb7c0)
2022-06-16 10:16:32 +02:00
Aaron Franke fca4af0e58 Document limitations of negative scales in 2D and 3D
(cherry picked from commit 3398fb77a9)
2022-06-16 10:15:41 +02:00
smix8 96e865dfb3 Document NavigationServer API navigation agent callbacks
Document NavigationServer API navigation agent callbacks.

(cherry picked from commit 10c400ca82)
2022-06-16 10:03:47 +02:00
Rémi Verschelde 4e7363cac7
Merge pull request #61996 from smix8/navigation_bp_update_3.x
[3.5] Update NavigationServer backport
2022-06-16 00:17:16 +02:00
Rémi Verschelde 17e472fb9b
Merge pull request #61995 from Calinou/gles3-shader-compilation-default-asynchronous-cache
Enable asynchronous shader compilation + cache by default in GLES3
2022-06-16 00:13:43 +02:00
smix8 8bd7c6188b [3.5] Update NavigationServer backport
Backports features and bugfixes from current Godot 4.0 to 3.5 and brings functions and codebase of both version largely in sync to make tutorials more compatible and future backports easier.
2022-06-14 05:55:14 +02:00
Pedro J. Estébanez f46d7583ff Add INFO_SHADER_COMPILES_IN_FRAME to GL ES 3 render info 2022-06-13 18:53:15 +02:00
kobewi 2a7d60111f Improve description of move_to_trash()
(cherry picked from commit 1c90b066dd)
2022-06-13 17:44:27 +02:00
Hugo Locurcio 4c9dc78f19 Update name of Convert to MeshInstance2D button in MeshInstance2D doc
(cherry picked from commit 857e5a3bb0)
2022-06-13 17:44:06 +02:00
Hugo Locurcio 70d8e71b0e
Enable asynchronous shader compilation + cache by default in GLES3
This reduces stuttering when a material is displayed for the first
time, and prevents stuttering from occurring entirely after the
project is restarted when a similar situation is encountered.
2022-06-13 16:32:19 +02:00
Hugo Locurcio 87f22083af
Improve CurveTexture documentation 2022-06-13 14:06:34 +02:00
Haoyu Qiu c197e11363 Remove extra codeblock tag from ProximityGroup classref 2022-06-12 11:10:16 +08:00
Haoyu Qiu 5569d4d2de Fix description about SceneTreeTimer auto free
(cherry picked from commit 5a011f5999)
2022-06-10 12:53:31 +02:00
FireForge 53c01540d9 Make Input mouse_mode and use_accumulated_input properties
Co-authored-by: Haoyu Qiu <timothyqiu32@gmail.com>
2022-06-10 17:33:12 +08:00
Rémi Verschelde a9e966c319
Merge pull request #61544 from lawnjelly/vis_notifier_max_dist
VisibilityNotifier - add max_distance feature
2022-06-10 10:57:53 +02:00
Nikola Whallon 1b6ac2afb3 added info on microphone sample format
(cherry picked from commit eb5a42d0bc)
2022-06-10 10:25:37 +02:00
Rémi Verschelde 5c4e95e6e5
Merge pull request #61844 from smix8/navigation_default_navmap_3.x 2022-06-10 09:48:47 +02:00
smix8 96d98d8c4e Backport default World navigation maps
Backports default navigation maps created with each World or World2D.
2022-06-09 14:05:39 +02:00
lawnjelly 0c5a424f65 VisibilityNotifier - add max_distance feature
Enables turning off objects by distance to the camera in addition to testing whether they are in the view frustum.
2022-06-09 11:37:42 +01:00
kobewi 460fd7c03b Add Dictionary.merge()
(cherry picked from commit a0915e6dee)
2022-06-09 11:58:48 +02:00
kobewi 7882b1ea05 Improve EditorPlugin state documentation
(cherry picked from commit 505a2ce468)
2022-06-09 10:55:17 +02:00
sps1112 ede6ce9847 Bind vararg method flag in core constants
(cherry picked from commit 1f361b0367)
2022-06-09 10:55:17 +02:00
smix8 e629622598 Remove slash delimiter from NavigationMesh properties
Remove slash delimiter from NavigationMesh properties.

(cherry picked from commit 2c059dcfcb)
2022-06-09 10:31:57 +02:00
smix8 e5c9f90bce Document the correct use of NavigationAgent path functions
Document the correct use of NavigationAgent path functions.

(cherry picked from commit 9c7f03aefc)
2022-06-09 10:31:57 +02:00
smix8 c111d6b621 Expose get_mesh() for NavigationPolygon Resources
Expose get_mesh() for NavigationPolygon Resources.

(cherry picked from commit 8bcce0ebb2)
2022-06-09 10:09:46 +02:00
smix8 5e31c3dbb5 Note that NavigationObstacles should only be used if necessary and for moving objects only
Note that NavigationObstacles should only be used if necessary and for moving objects only.

(cherry picked from commit d1959cabd9)
2022-06-09 10:08:01 +02:00
smix8 c9c5e57109 Document that NavigationAgent height offset is mostly a placebo
Document that NavigationAgent height offset is mostly a placebo.

(cherry picked from commit b1d9853415)
2022-06-09 10:06:15 +02:00
bruvzg f5fa1ca944
Add readable export errors. Add RTL image vertical alignment support. 2022-06-08 17:56:28 +03:00
Rémi Verschelde 80b82e4e66 i18n: Misc fixes translation strings
Adds some translator comments to solve some questions raised on Weblate.
2022-06-08 12:56:42 +02:00
Sergey Pershenkov d51fc369b7 draw_circle() draws a filled circle
(cherry picked from commit adccb9fd60)
2022-06-08 10:11:28 +02:00
smix8 99fb3205bd Add class doc that NavigationServer changes are not instant
Add class doc that NavigationServer changes are not instant.

(cherry picked from commit 7f72b7b3ad)
2022-06-08 10:11:27 +02:00
kleonc 84898dfc22 Make `Mesh::generate_triangle_mesh()` handle `PRIMITIVE_TRIANGLE_STRIP` and `PRIMITIVE_TRIANGLE_FAN` 2022-06-07 22:04:14 +02:00
Haoyu Qiu d043f91b79 Fix `Viewport.own_world` documentation
Also fixed the naming of the setter's parameter and made an `if` block
straightforward.
2022-06-06 21:34:36 +08:00
Haoyu Qiu fb62ec6c1d Fix several typos in the classref 2022-06-01 15:57:51 +08:00
dtesniere ed4e597027 Fix class name : change "string" to "String"
Change case of "s" letter : "string" does not compile but "String" does (for gdScript)

(cherry picked from commit 55b63eceaa)
2022-06-01 00:29:46 +02:00
skyace65 c0ecbeaf6f Fix rigid body damp description (3.x) 2022-05-30 13:39:44 -04:00
Rémi Verschelde fdade32d40
Merge pull request #61527 from Calinou/doc-empty-variant-null-3.x
Change instances of "returns an empty Variant" to "returns null" in docs (3.x)
2022-05-29 22:30:45 +02:00
Hugo Locurcio 109f968171
Change instances of "returns an empty Variant" to "returns null" in docs
While "returns an empty Variant" technically valid (it's constructed
as `Variant()` in C++), "returns null" is more intuitive to users.
2022-05-29 20:20:08 +02:00
belzecue 803c5b9e22
doc: Fix typo in "reset" method description
Change "all tweens are removed" to "all tweens are reset". Possibly this snippet was copy-pasted from the "remove" method description and not updated for "reset".
2022-05-29 12:37:14 +08:00
Rémi Verschelde 9d1d386bd0 HTML5: Enable mbedTLS module for Crypto object
Increases the size of the wasm by around 3% (~300-350 KiB).

This enables using the Crypto object for hashing, signing and encryption,
and therefore reduces the gap between the features of the HTML5 platform
and other platforms.

Closes https://github.com/godotengine/godot-proposals/issues/3574.

(cherry picked from commit 3ff6d794c0)
2022-05-25 14:52:57 +02:00
Rémi Verschelde 5f9bc7ea5a
Merge pull request #59637 from Calinou/doc-poolarray-value-caveats 2022-05-24 00:19:53 +02:00
bruvzg d502bd4847
Backport TextMesh and expose dynamic font vector outlines 2022-05-23 10:47:28 +03:00
bruvzg dc6d8d6098
Backport Label3D node implementation and Sprite*3D material render priority. 2022-05-23 09:14:41 +03:00
smix8 8df9fd076f Process NavigationAgent2D/3D avoidance on demand only
Changes NavigationAgent avoidance callback to a toggle that is disabled by default.
Also fixes a few missing descriptions / wrong warnings.

(cherry picked from commit 7f3688603c)
2022-05-22 19:43:56 +02:00
Hugo Locurcio 548c511f57 Tweak the disabled files text color in FileDialog for readability
Contrast rate is still fairly low, but the text needs to be easy enough
to distinguish from non-disabled items.

(cherry picked from commit 8962d2760d)
2022-05-22 19:43:56 +02:00
smix8 b03f6bc170 Remove arbitrary NavigationMesh bake property limits
Lowers or removes the slider limits and steps from NavigationMesh resources and changes some default values to better work with realistic unit sizes by default.

(cherry picked from commit cda93057f7)
2022-05-22 19:26:45 +02:00
Rémi Verschelde 67208ae80b
Merge pull request #60402 from Calinou/httprequest-timeout-float 2022-05-20 15:27:29 +02:00
Rémi Verschelde 2a1a2380e5
Merge pull request #61027 from timothyqiu/quit-prop-3.x
[3.x] Make `auto_accept_quit` and `quit_on_go_back` properties
2022-05-20 08:13:41 +02:00
Rémi Verschelde 7a70b4878b
Merge pull request #61021 from timothyqiu/wait-busy-3.x 2022-05-19 15:41:47 +02:00
Haoyu Qiu 067e738cb8 Fix various typos 2022-05-19 19:07:45 +08:00
Yuri Rubinsky 32b9818965 Add node list param to GraphEdit::delete_nodes_request signal 2022-05-18 12:36:00 +03:00
Rémi Verschelde 281c5c9a56
Merge pull request #61102 from okla/3.x
[3.x] Make various improvements to OptionButton
2022-05-16 23:51:55 +02:00
Sergey Pershenkov 431c032d8c Make various improvements to OptionButton
- Allow OptionButton selection to be set to -1 to signify no selection, both via API and in the editor.
- Reset OptionButton selection to -1 when the selected item has been removed.
- Fully convert PopupMenu to a zero-based ID system, which improves an inconsistency in generated IDs when making new items in the editor.

(cherry picked from commit 3b146c5eaa)
2022-05-16 22:47:46 +03:00
kobewi 16fb788853 Clarify seek() in relation to animation_finished
(cherry picked from commit 74e135c90b)
2022-05-16 21:13:24 +02:00
Hugo Locurcio 5b19a5d4a8 Improve documentation for `Camera3D.project_ray_{normal,origin}`
This mentions that internally, the inverse camera projection is used
to perform projections.

(cherry picked from commit fbec10179a)
2022-05-16 21:12:21 +02:00
FireForge 5968dbd747 Expose EditorSpinSlider.hide_slider
(cherry picked from commit 8e752b06e8)
2022-05-16 21:12:21 +02:00
smix8 214a00ca2e Add missing class doc to NavigationMeshGenerator
Adds missing class documentation for NavigationMeshGenerator bake() and clear() functions.

(cherry picked from commit 375c4ef312)
2022-05-16 21:12:20 +02:00
smix8 3977eb9107 Add NavigationServer2D/3D API functions to find missing RID info
Utility functions for NavigationServer2D/3D to find missing RID information when working with Server API directly. e.g. from map to regions and agents, from agent or region to map, from region to map and agents and so on ....

Requirement to work with NavigationServer API exklusive without SceneTree nodes and when juggling agents and regions between multiple navigation maps.

(cherry picked from commit 371054e3e5)
2022-05-16 21:10:36 +02:00
smix8 c3b39ca1e9 Disable threaded NavigationMesh bake on unsupported OS
Automatically disables threaded NavigationMesh bake when OS does not support threads.

(cherry picked from commit 49c603e127)
2022-05-16 17:52:07 +02:00
smix8 b11708c50d Expose NavigationObstacle2D/3D get_rid() and add config warning
Exposes get_rid() function for scripting.
Adds configuration warning when obstacle is used with not intended static body parent.

(cherry picked from commit 001d89223f)
2022-05-16 17:52:07 +02:00
SnailRhymer a656243a4e Document Shape2D's collide_and_get_contacts() and collide_with_motion_and_get_contacts()
Expand on the format of the output array for collide_and_get_contacts and collide_with_motion_and_get_contacts, and describe how the contact point pairs can be used to calculate collision normals and depths.

(cherry picked from commit bdf086c781)
2022-05-16 17:52:07 +02:00
Megamega53 559c20aa2f Improve AnimatedSprite2D description in the class reference
(cherry picked from commit de968baca9)
2022-05-16 17:52:07 +02:00
kobewi bdbbc78da4 Mention that Area2D doesn't support one_way_collision
(cherry picked from commit c836bdf5b1)
2022-05-16 16:27:51 +02:00
Nicholas Huelin 5cedb395dc Fix inconsistent naming in Time
(cherry picked from commit 8409d92282)
2022-05-16 15:58:36 +02:00
Haoyu Qiu 58650af062 Make auto_accept_quit and quit_on_go_back properties 2022-05-14 18:24:43 +08:00
Haoyu Qiu 4c70c5b0cd Swap the meaning of CURSOR_WAIT and CURSOR_BUSY 2022-05-14 10:24:25 +08:00
Hugo Locurcio b47466bc59
Improve documentation related to Pool*Array value passing caveats 2022-05-12 23:40:31 +02:00
FireForge f17c5fa7bd Add interpolation modes to Gradient
- Linear, Constant, and Cubic interpolation modes
- Partial backport of #53321
2022-05-12 14:24:04 -05:00
Hugo Locurcio 069c955af7
Use a floating-point number for the `timeout` property in HTTPRequest
This allows for greater precision when specifying a timeout in
HTTPRequest in `3.x`, similar to what is already possible in `master`.
2022-05-11 08:41:40 +02:00
Rémi Verschelde 288370609c
Merge pull request #60856 from timothyqiu/pool-array-find 2022-05-10 13:40:00 +02:00
Rémi Verschelde 16abb7f471
Merge pull request #60858 from lawnjelly/fti_add_mode_property
Physics Interpolation - add interpolation mode property to node
2022-05-10 08:42:41 +02:00
Michael Alexsander 2e4e76b2e3 Add `font_separator` to `PopupMenu` 2022-05-08 14:11:59 -03:00
Haoyu Qiu 3d1644f7c3 Add search methods for pool arrays
* has()
* count()
* find()
* rfind()
2022-05-08 11:07:00 +08:00
lawnjelly 0ab077fcef Physics Interpolation - add interpolation mode property to node
Exposes the "interpolated" flag on nodes via a property, physics_interpolation_mode.

Mode can be INHERIT, OFF and ON. This makes it easy to turn off interpolation for nodes in the editor, versus via code.
2022-05-07 13:51:49 +01:00
Rémi Verschelde db48b80707
Merge pull request #60816 from timothyqiu/tweener-doc 2022-05-06 08:48:18 +02:00
Haoyu Qiu 9b8c77fbf0 Fix wrong link in PropertyTweener doc 2022-05-06 12:58:49 +08:00
smix8 da9a88a35a Allow AStar/AStar2D zero point weight
Allow AStar/AStar2D zero point weight.

Limit was set to 1 which seemed like an arbitrary value as lower values down to zero can be useful for common gameplay navigation elements like teleports.
2022-05-06 02:33:31 +02:00
Cory Petkovsek 2be0738304 Visual/Physics/Navigation Servers validate RIDs with documentation update 2022-05-06 03:39:06 +08:00
Hugo Locurcio 99d9228a2e
Handle CLI arguments without a value in `OS.get_cmdline_args()` example
Command lines such as `--host --address 127.0.0.1` are now parsed as
`{"host": "", "address": "127.0.0.1"}`.
2022-05-05 19:19:15 +02:00
Rémi Verschelde 4dfc44ecc3
Merge pull request #60788 from akien-mga/3.x-cherrypicks 2022-05-05 15:54:33 +02:00
kleonc b0bcbcc094 Tree::get_edited Fix in docs example code 2022-05-05 15:07:40 +02:00
Rémi Verschelde 9e37599f36 Core: Rename math 'phi' arguments to 'angle'
(cherry picked from commit e7a58a7eb6)
2022-05-05 15:02:46 +02:00
Micky 15f9803d28 Specify return value of Transform3D.scaled() and more
Add more `[code]` (Transform3D)

Co-authored-by: kleonc <9283098+kleonc@users.noreply.github.com>

Add more `[code]` (Transform2D)

Co-authored-by: kleonc <9283098+kleonc@users.noreply.github.com>
(cherry picked from commit 87599054d2)
2022-05-05 15:02:46 +02:00
mdavisprog 53fb0440d3 Add OS::is_process_running function.
Adds the is_process_running function to the native OS class and exposes it to script.

This is implemented on Windows and Unix platforms. A stub is provided for other platforms that do not support this function.

Documentation is updated to reflect new API function.

(cherry picked from commit f3c1232c59)
2022-05-05 15:02:46 +02:00
kobewi 68b4cdfaf9 Clarify InputMap.action_get_events() in the editor
(cherry picked from commit 5235584066)
2022-05-05 14:07:56 +02:00
PureAsbestos 46c4e2e704 Change 'throws an error' to 'prints an error' in classref
(cherry picked from commit a89b3f872d)
2022-05-05 13:49:35 +02:00
Chris verBurg e7329c0cfc Link to Container tutorial
Users happening across any of the Container pages may not already know the intent of Containers, or which others are available.  This commit adds a link to the existing "GUI containers" page in their tutorials sections.

(cherry picked from commit 3b941ed98c)
2022-05-05 13:44:17 +02:00
Pawel Lampe 505ace250d Add ability to `bake_navigation_mesh` off thread.
This feature makes it possible to workaround problems such as:
 - long baking time due to heavy synchronization when parsing geometry
   from mesh instances
 - crash when freeing `NavigationMeshInstance` while baking
 - errors when actively baking node tree is being detached from the
   scene tree
2022-05-04 22:41:38 +02:00
Haoyu Qiu e1441890eb Document RichTextLabel append_bbcode/parse_bbcode always return OK 2022-05-03 16:00:51 +08:00
Rémi Verschelde c1a0e6b5c9
Merge pull request #59952 from Calinou/doc-line2d-polygon2d-antialiasing 2022-05-02 10:50:23 +02:00
Rémi Verschelde 6ee64331db
Merge pull request #60527 from KoBeWi/unique_names_demastered 2022-05-02 10:48:27 +02:00
Rémi Verschelde d8e702b010
Merge pull request #60552 from madmiraal/implement-3466-3.x
[3.x] Add a method for obtaining display cutouts on Android
2022-05-02 07:58:05 +02:00
Rémi Verschelde 973bbb5c0e
Merge pull request #60661 from smix8/navigation_region_rid_3.x
[3.x] Add get_region_rid() to NavigationPolygonInstance and NavigationMeshInstance
2022-05-01 14:18:05 +02:00
Rémi Verschelde f12f41d343
Merge pull request #60662 from Calinou/doc-tonemap-3.x 2022-04-30 16:31:32 +02:00
Hugo Locurcio 035cb7fcb0
Improve documentation for tonemapping operators 2022-04-30 16:21:10 +02:00
smix8 ebcbbec563 Add get_region_rid() to NavigationPolygonInstance and NavigationMeshInstance
Add get_region_rid() to NavigationPolygonInstance and NavigationMeshInstance
2022-04-30 15:54:12 +02:00
Rémi Verschelde 12cc0b8699
Merge pull request #60636 from Calinou/doc-proximitygroup
Document the ProximityGroup class
2022-04-30 10:13:20 +02:00
Haoyu Qiu b395731517 Add missing description of finished signal of SceneTreeTween 2022-04-30 09:39:20 +08:00
Hugo Locurcio fb345a924d
Document the ProximityGroup class
Co-authored-by: MJacred <loesch.benny92@gmx.de>
2022-04-29 20:26:29 +02:00
Hugo Locurcio 1bdcba2d76
Document workarounds for 2D line and polygon antialiasing 2022-04-29 19:39:11 +02:00
Rémi Verschelde 8ee69a88c1 doc: Fix a couple broken links to a moved page 2022-04-29 14:16:34 +02:00
Haoyu Qiu 153dc4d57e Backport the new Tween system as SceneTreeTween
Co-authored-by: Tomasz Chabora <kobewi4e@gmail.com>
2022-04-29 20:01:12 +08:00
Rémi Verschelde 73e6b7c145
Merge pull request #60592 from Calinou/styleboxflat-add-skew-3.x 2022-04-28 22:29:56 +02:00
Hugo Locurcio 4b399b2285
Add a Skew property to StyleBoxFlat
This makes it possible to create more aesthetically pleasing
styleboxes for GUI theming, especially in games that have
a futuristic appearance (where skewed buttons and progress bars
are common).
2022-04-28 20:40:01 +02:00
Rémi Verschelde f06e68f2a2
Merge pull request #54682 from smix8/textureproxy 2022-04-28 19:47:20 +02:00
smix8 ca1216fcef Expose VisualServer.texture_set_proxy() to GDScript
Expose VisualServer.texture_set_proxy() to GDScript
2022-04-28 18:53:29 +02:00
Rémi Verschelde 4cfc96fea7
Merge pull request #60531 from lawnjelly/fti_usage_warnings 2022-04-28 12:00:49 +02:00
twi 718533552c Update link to vector2_angle_to_point.png 2022-04-27 18:34:16 -05:00
kobewi b7336524f2 Expose move_to_trash()
(cherry picked from commit b80e52f048)
2022-04-27 12:41:01 +02:00
kleonc 6f01a949c2 Fix `Image.blit_rect/blend_rect()` for negative `p_dest` point
(cherry picked from commit 4038bc0c36)
2022-04-27 12:38:27 +02:00
kobewi 6891d719f6 Improve descriptions for drag methods
(cherry picked from commit 31a23ab33f)
2022-04-27 12:27:20 +02:00
GTcreyon 81bbde5b9f Changed "pair" to "triplet" in Vector3 definition
(cherry picked from commit ce1fcfcff9)
2022-04-27 12:25:16 +02:00
Haoyu Qiu bcc93c3e7c Document timestamp decimal fraction in Time
(cherry picked from commit 1b891069cd)
2022-04-27 12:24:16 +02:00
Timo Schwarzer 8fb9c96df9 Vibrate using iOS haptics engine on supported devices (3.x) 2022-04-27 09:46:42 +02:00
lawnjelly ad9b2b3794 Physics Interpolation - add helper warnings
When physics interpolation is active on a node, it is essential that transforms are updated during "_physics_process()" rather than "_process()" calls, for the interpolation to give the correct result.

This PR adds optional warnings for instances, cameras and multimeshes which can flag updates being incorrectly called, and thus make these problems much easier to fix.
2022-04-26 13:56:02 +01:00
kobewi e1c74ae83f Implement Scene Unique Nodes 2022-04-26 13:55:48 +02:00
Marcel Admiraal ec2270b88f Add a method for obtaining display cutouts on Android 2022-04-26 13:52:33 +02:00
Rémi Verschelde 82e375d0a2
Merge pull request #60451 from timothyqiu/pool-array-doc
Remove `Array` link in description of `Pool*Array`
2022-04-25 23:05:45 +02:00
Rémi Verschelde 5e4358eb73
Merge pull request #60426 from timothyqiu/array-fill
[3.x] Add fill method to `Array` and `Pool*Array`
2022-04-25 23:00:17 +02:00
Haoyu Qiu 8f0f98ffab Bind Semaphore.try_wait() 2022-04-25 20:47:09 +08:00
Haoyu Qiu 77b6f7595a Add fill method to Array and PoolArrays
Co-authored-by: Matheus Lima Cunha <matheus.limacunha@hotmail.com>
2022-04-23 19:29:17 +08:00
Haoyu Qiu 4fda4f31c2 Remove Array link in description of PoolArrays 2022-04-23 11:07:55 +08:00
Rémi Verschelde 9a45eb70b4
Merge pull request #60204 from akien-mga/3.x-cherrypicks 2022-04-13 14:23:56 +02:00
Rémi Verschelde 57b53f5b53
Merge pull request #60035 from Calinou/camera-allow-lower-size-3.x 2022-04-13 12:48:17 +02:00
Markus Sauermann b0b1e55305 Add a note about collisions in different canvases.
(cherry picked from commit b9c91d620e)
2022-04-13 11:43:49 +02:00
Haoyu Qiu 6598eb9547 Improves EditorInspector documentation
(cherry picked from commit 2fa3c65d30)
2022-04-13 11:43:49 +02:00
Ryan Roden-Corrent 24d40ebed9 Clarify Array.erase for nonexistant element.
The docs specify that Array.remove does nothing if the index does not
exist. Array.erase does not have a similar phrase, so it's unclear if
erase will print an error, or silently do nothing.

(cherry picked from commit f84e2db35e)
2022-04-13 11:43:49 +02:00
kobewi 427480aa35 Mention how to add dragging for SpinBox's LineEdit
(cherry picked from commit c8de265307)
2022-04-13 11:43:49 +02:00
Fredia Huya-Kouadio a3b445d7e8 Remove duplicate `resizable` settings
(cherry picked from commit f1a7caf9bb)
2022-04-13 11:43:49 +02:00
nova++ 8235005c99 Fixing some of my own typos...
(and a little improvement to wording that was bugging me)

(cherry picked from commit 05718796db)
2022-04-13 11:43:49 +02:00
kobewi e86a64a2a5 Add optional 'default' argument to get_meta()
(cherry picked from commit 3eb7fc4bfd)
2022-04-13 11:43:49 +02:00
Rémi Verschelde 8855d73e12
Merge pull request #60018 from timothyqiu/nav-server-free-3.x
[3.x] Rename `NavigationServer`'s `free` method to `free_rid`
2022-04-13 08:33:51 +02:00
Yuri Roubinsky e54a4646c7 Add selection getter methods to `LineEdit`
Co-authored-by: Yuri Roubinsky <chaosus89@gmail.com>
2022-04-12 14:31:51 +02:00
Hugo Locurcio 4bf6cbe4fe
Allow `size` values as low as `0.001` in Camera's orthogonal/frustum mode
This allows for lower field of view (or higher zoom) in orthogonal
and frustum camera modes.

The property hint also allows setting the size with greater precision.
2022-04-08 18:53:07 +02:00
Haoyu Qiu f24312380f Rename NavigationServer's free method to free_rid 2022-04-08 17:31:04 +08:00
ConteZero 820728aa52 [3.x] Expose get_selected_text in RichTextLabel 2022-04-05 22:38:10 +02:00
Rémi Verschelde a4bbc87acc
Merge pull request #59900 from timothyqiu/remove-theme-type
[3.x] Add an explicit way to remove a theme type
2022-04-05 08:29:17 +02:00
Haoyu Qiu f6251724af Add an explicit way to remove a theme type
Co-Authored-by: Yuri Sizov <yuris@humnom.net>
2022-04-05 11:51:15 +08:00
Haoyu Qiu bba6d18973 Add missing period in classref of 3D render layer 2022-04-05 09:43:38 +08:00
ConteZero 5e714051ea [3.x] Add deselect() to RichTextLabel 2022-04-04 22:46:13 +02:00
Rémi Verschelde bac58e898e
Merge pull request #59713 from Calinou/doc-canvasitem-top-level-3.x 2022-03-31 23:19:10 +02:00
Hugo Locurcio 4e6dfac969
Improve documentation related to 3D material vertex lighting 2022-03-31 18:11:18 +02:00
Hugo Locurcio 196c4fff13
Clarify what `set_as_toplevel()` does in CanvasItem 2022-03-31 02:07:16 +02:00
Rémi Verschelde 81eda4eee0 doc: Fix String.rsplit code example
Fixes #36898.
Supersedes and closes #36951.

(cherry picked from commit e7fd0ec31f)
2022-03-28 23:51:32 +02:00
Haoyu Qiu 98069fa6f1 Document how to specify explicit value for `PROPERTY_HINT_ENUM` names
(cherry picked from commit 405bc96a1e)
2022-03-28 23:49:06 +02:00
Haoyu Qiu f062e967f5 Mention default output node name for AnimationNodeBlendTree
(cherry picked from commit 6bf01e0567)
2022-03-28 23:45:23 +02:00
bruvzg fd2fba7c2c
Add binary MO translation file support. Add brotli decoder and WOFF2 support.
Use smaller .mo files instead of .po, if gettext is available.
Convert editor fonts to .woff2 format.
2022-03-25 19:51:39 +02:00
Hugo Locurcio 292ad704e6
Increase the maximum number of concurrent DNS queries from 32 to 256
This makes the following error message less likely to be printed
when performing many concurrent HTTP requests:

    Condition ' resolving == IP::RESOLVER_INVALID_ID ' is true. returned: ERR_BUG
2022-03-25 17:13:51 +01:00
Rémi Verschelde 788abafb77
Merge pull request #57673 from Calinou/doc-bakedlightmap-atlas-size
Document BakedLightmap atlas generation only being compatible with GLES3
2022-03-22 20:12:31 +01:00
Hugo Locurcio ff8e0519a8
Document BakedLightmap atlas generation only being compatible with GLES3 2022-03-22 17:36:15 +01:00
zacryol 3fe37f9635 update _init() description
Specify details regarding required parameters.

(cherry picked from commit 21fc3cbe81)
2022-03-22 10:29:25 +01:00
Hugo Locurcio 0e25cd0788 Mention that Node's `owner` must be set for persistence to work
This is already done in `Node.add_child()` documentation, but
this copies the note in `Node.owner` for good measure.

(cherry picked from commit be1acf3b92)
2022-03-22 08:55:07 +01:00
Jason Knight 09e4672f0d Bind NOTIFICATION_LOCAL_TRANFORM_CHANGED 2022-03-20 11:34:29 -06:00
Rémi Verschelde 9e44fb166d
Merge pull request #59344 from madmiraal/fix-57943-3.x
[3.x] Ensure minimum modifiers are pressed when matching actions
2022-03-20 11:27:20 +01:00
Marcel Admiraal 88c723c33c Ensure minimum modifiers are pressed when matching actions 2022-03-20 08:08:40 +00:00
Rémi Verschelde cec7fc4ffe
Merge pull request #58479 from ChronicallySerious/use-time-in-vcs
Use Time singleton in VersionControlEditorPlugin
2022-03-18 20:34:56 +01:00
ChronicallySerious 9e978bf989 Use Time singleton in VersionControlEditorPlugin
Instead of displaying the exact string, now Godot uses the Time
singleton to calculate the date string from the UTC Unix timestamp and
also uses Time's timezone offset conversion to string function
2022-03-19 00:50:37 +05:30
Ricardo Buring 812d45ea7c Document that PhysicsServer's get_process_info is implemented only for Godot Physics 2022-03-18 20:01:45 +01:00
Rémi Verschelde 6a524b2cc0
Merge pull request #57661 from lawnjelly/bind_mesh_merging 2022-03-17 19:54:31 +01:00
taigi100 e49d8f8b4c Update color constants to use HEX codes
(cherry picked from commit bd247fa315)
2022-03-17 15:49:58 +01:00
Haoyu Qiu d537a88299 Add item tooltip access to OptionButton
(cherry picked from commit a635ecf6d4)
2022-03-17 14:45:19 +01:00
Hugo Locurcio 1a300503c6 Document Range's `value_changed` signal is also emitted with code changes
This also mentions that the signal is potentially emitted every frame,
which can have performance implications.

(cherry picked from commit cdbb31adc9)
2022-03-17 14:45:19 +01:00
Hugo Locurcio b087538119
Add an XML schema for documentation
This makes it easier to spot syntax errors when editing the
class reference. The schema is referenced locally so validation
can still work offline.

Each class XML's schema conformance is also checked on GitHub Actions.
2022-03-16 23:01:02 +01:00
Marcel Admiraal d2c0ee700a Update documentation for Control rect_pivot_offset to include rotation 2022-03-15 10:28:45 +00:00
Rémi Verschelde ee818e1631
Merge pull request #54026 from ConteZero/primary_clipboard_linux_3.x 2022-03-14 18:52:20 +01:00
ConteZero 2ff0735329 Added primary clipboard for Linux 2022-03-14 15:28:36 +01:00
Rémi Verschelde fdaf0de3f0
Merge pull request #59100 from RandomShaper/mouse_drop_on_disable_3.x 2022-03-14 11:25:12 +01:00
Pedro J. Estébanez 3d7821bf1f Drop mouse focus and over when gui input is globally disabled
Since some porjects may be relying on the former behavior, this is opt-in via a new project setting, disabled by default, but enabled for new projects, since it's the new standard behavior (and the only one in 4.0).
2022-03-14 11:06:26 +01:00
ConteZero 0ffacff998 [3.x] Add option to make selection unique 2022-03-14 09:48:09 +01:00
Rémi Verschelde 08c3e00b95
Merge pull request #55355 from ConteZero/drag_and_drop_3.x 2022-03-14 08:43:22 +01:00
ConteZero 4167e98088 Add drag and drop to TextEdit, LineEdit, RichTextLabel 2022-03-14 08:15:25 +01:00
Hugo Locurcio caf2c20655 Don't store and show current file/directory/path FileDialog properties
These properties are only useful at run-time, so they don't need
to be displayed in the editor and stored.

(cherry picked from commit 2ad6e11b78)
2022-03-13 15:46:01 +01:00
Rémi Verschelde 3eee2f45a3
Merge pull request #57674 from RandomShaper/fix_ubershader_android
Improve ubershader compatibility
2022-03-13 00:53:48 +01:00
Hugo Locurcio c731cda3d8 Clarify the position of points in `Curve{2D,3D}.add_point()`
(cherry picked from commit 35c8d332b5)
2022-03-12 15:10:28 +01:00
Aaron Franke 3040285b27 Add offset string from minutes conversion method to Time singleton
(cherry picked from commit 55aabb8b06)
2022-03-12 14:44:23 +01:00
Rémi Verschelde f6895fbb46
Merge pull request #59034 from lawnjelly/docs_background_keep 2022-03-12 14:28:00 +01:00
Rémi Verschelde eb36566c34
Merge pull request #58812 from Calinou/os-add-get-screen-refresh-rate-3.x
Add `get_screen_refresh_rate()` to OS
2022-03-11 17:31:20 +01:00
lawnjelly bc924d4b41 Correct docs for Environment background keep mode
The docs incorrectly stated that KEEP was the fastest mode. This is not the case with modern hardware.
2022-03-11 15:44:40 +00:00
Markus Sauermann 2cafaf3adb Fix documentation about depth and width of Height map 2022-03-11 01:03:07 +01:00
Hugo Locurcio cec7c908ca
Add `get_screen_refresh_rate()` to OS
This method can be used to get the refresh rate of a given screen.
It is supported on Windows, macOS, Linux, Android and iOS (but not
HTML5).
2022-03-10 22:10:48 +01:00
Rémi Verschelde 1cf444aff0
Merge pull request #58686 from vnen/gdscript-warn-export-type-mismatch 2022-03-10 21:12:05 +01:00
Rémi Verschelde 1639b3a6a9
Merge pull request #58674 from Calinou/smooth-trimesh-collision-always-setting-3.x 2022-03-10 21:11:44 +01:00
Haoyu Qiu 94a5f9edb0 Fix capitalization of boolean output in classref 2022-03-09 21:56:55 +08:00
Wilson E. Alvarez c37be0f31b
Expose TextEdit get_visible_rows() and get_total_visible_rows() to GDScript 2022-03-08 22:32:22 -05:00
Rémi Verschelde 85b4848ca8
Merge pull request #54188 from Rubonnek/increase_var_arg_max_3x 2022-03-08 13:10:48 +01:00
Wilson E. Alvarez 424dbf70af
Increase VARIANT_ARG_MAX to 8 2022-03-07 10:03:49 -05:00
Hugo Locurcio 413689559c
Always register the Smooth Trimesh Collision project setting
This ensures the project setting never disappears from the editor,
even if the current physics engine is GodotPhysics.

This also adds documentation for the Smooth Trimesh Collision
project setting.
2022-03-02 18:50:21 +01:00
George Marques f2166ba92f
GDScript: Don't coerce default values to the export hint type
This behavior is inconsistent with non tools builds and can create
issues. Instead, a warning is emitted if there's a type mismatch. If the
type can't be converted, an error is shown instead.

For the editor it gives a converted value to avoid issues with the
property editor, which expects the correct type.
2022-03-02 12:26:17 -03:00
Nova c4041ca8c0 Added or improved documentation to a few more String methods
(cherry picked from commit f159e7e5ab)
2022-03-02 11:00:26 +01:00
Markus Sauermann 54eac2aba5 Update doc for match: empty argument doesn't match anything
(cherry picked from commit 70ae6c21de)
2022-03-02 11:00:26 +01:00
Hugo Locurcio 967821f719
Clamp SpatialMaterial triplanar sharpness to values that never look broken 2022-02-27 18:58:22 +01:00
skyace65 310adf533d Add more information on triangulate polygon
(cherry picked from commit bcc4d26c48)
2022-02-24 10:33:52 +01:00
Hugo Locurcio 595d67ae8b
Document glow rendering caveats when using GLES3 on mobile 2022-02-23 17:47:16 +01:00
lawnjelly b90f1a3ec0 Disable jitter fix when physics interpolation is enabled. 2022-02-21 10:32:42 +00:00
Hugo Locurcio cfba65fa23 Expose `AudioServer.capture_device` as a property
This is more consistent with `AudioServer.device` (for output),
which is already exposed as a property.

(cherry picked from commit 1d35b37499)
2022-02-19 15:57:36 +01:00
Haoyu Qiu f61ce6ee89 Fix wording in AnimationNode classref
(cherry picked from commit bc37b0508b)
2022-02-19 15:45:43 +01:00
Hugo Locurcio def35898e4
Document that meshes and lights must be fully set up before baking GIProbe 2022-02-18 21:42:06 +01:00
Yuri Sizov df13466139 Add type variations to Theme 2022-02-17 15:24:10 +03:00
Rémi Verschelde 47e34dc4e2
Merge pull request #58157 from Calinou/os-add-get-processor-name-3.x 2022-02-17 12:34:16 +01:00
Hugo Locurcio ac0d37dcef
Add a property hint for the Line2D Round Precision property
This prevents choosing extremely high values which cause performance
issues for no visual benefit.

(cherry picked from commit 6b52aa67b8)
2022-02-17 09:59:28 +01:00
Haoyu Qiu c9f9e06775
Fix documentation about TreeItem button ID
(cherry picked from commit bb766a8fb6)
2022-02-17 09:59:28 +01:00
Wagner Scholl Lemos 2ed43f940b
Added show and hide methods and updated doc API.
(cherry picked from commit 160ee4ef8e)
2022-02-17 09:52:47 +01:00
Rémi Verschelde 125e419f61
Merge pull request #35316 from Calinou/contact-shadows-hide-from-editor
Document Light contact shadows often looking broken
2022-02-17 07:37:45 +01:00
Haoyu Qiu 8f14941ffd Fix mismatched BBCode tags in classref 2022-02-17 10:19:28 +08:00
Hugo Locurcio 9171737e2b
Document Light contact shadows often looking broken 2022-02-17 02:04:07 +01:00
Hugo Locurcio 7f9e974a8b
Add an `OS.get_processor_name()` method
This method can be used to get the CPU model name.
It can be used in conjunction with
`VisualServer.get_video_adapter_name()` and
`VisualServer.get_video_adapter_vendor()` for annotating benchmarks
and automatic graphics quality configuration.
2022-02-16 18:39:02 +01:00
Haoyu Qiu 0e9a9a7ee2 Fix description of OccluderShapePolygon.two_way 2022-02-17 01:21:32 +08:00
Rémi Verschelde 2dd545b512
Merge pull request #58141 from lawnjelly/occluder_shared_resources 2022-02-16 13:29:55 +01:00
lawnjelly 3c2df49832 Fix Occluder to properly share resources
In order to properly support the resource sharing paradigm, Occluders are split into Instances and Resources in the VisualServer. Instances are owned by a Scenario, and Resources are global. OccluderShape resources can now correctly be shared by multiple OccluderInstances.
2022-02-16 09:55:11 +00:00
lawnjelly 522bce1159 Fixed Timestep Interpolation (3D)
Adds fixed timestep interpolation to the visual server.
Switchable on and off with project setting.

This version does not add new API for set_transform etc, when nodes have the interpolated flag set they will always use interpolation.
2022-02-16 09:41:23 +00:00
Hugo Locurcio 7dcb25e37b
Improve documentation for AudioServer device properties and methods
(cherry picked from commit 743b5608e3)
2022-02-15 12:30:58 +01:00
Hugo Locurcio 5ca3a360d1
Clarify identical `hash()` return values due to collisions
(cherry picked from commit 08541fe11d)
2022-02-15 12:27:57 +01:00
Hugo Locurcio 08128351a5
Clamp environment light sky contribution to the [0.0; 1.0] range
The value is already clamped in the editor, but it wasn't being
clamped when the value was set via code. Values outside the [0.0; 1.0]
range can result in broken rendering.
2022-02-14 17:15:06 +01:00
Hugo Locurcio 53b96095eb
Improve completion scroll bar visibility in the script editor (3.x)
This makes the scroll bar bar thicker and more opaque (roughly
matching the editor theme's scroll bar by default).
2022-02-14 14:54:35 +01:00
Hugo Locurcio f1d289f6eb
Improve the `AudioStreamPlayer2D/3D.area_mask` documentation
The documentation was stating that the area mask affects where sounds
can be heard, which is not true. Instead, the area mask affects audio
bus redirection.

Thanks to Azedaxen on the Godot forums for providing this description :)

(cherry picked from commit ab1eaac315)
2022-02-11 09:51:50 +01:00
Rémi Verschelde 7a16bb2ee4
Fix typos with codespell
Using codespell 2.2-dev from current git.

Added `misc/scripts/codespell.sh` to make it easier to run it once in a
while and update the skip and ignore lists.

(cherry picked from commit 1bdb82c64e)
2022-02-11 09:50:59 +01:00
reduz e4e3f7d157
Add a signal to notify when children nodes enter or exit tree
-Allows more fine grained notifications (hence better performance) than using the global scene tree signals (node added and removed).
-Required for #55950

(cherry picked from commit fbd9599b04)
2022-02-11 09:50:58 +01:00
TechnicalSoup 49059e3f26
Expand description for warp_mouse_position method
Add more detail to the description for the warp_mouse_position method, clarifying that the vector is in screen coordinates and relative to an origin at the top of the game window.

(cherry picked from commit 3dc1fad262)
2022-02-11 09:50:57 +01:00
Max Hilbrunner 12841d536f
DOCS: Object.set() does nothing on type mismatch
(cherry picked from commit bb7d003881)
2022-02-11 09:50:06 +01:00
Haoyu Qiu 8231303dec Backport FlowContainer 2022-02-11 14:48:40 +08:00
Haoyu Qiu f49ffe4bb0 Backport CanvasLayer visibility 2022-02-11 01:00:35 +08:00
Rémi Verschelde 0c7c640112
Merge pull request #57643 from YeldhamDev/smarter_pm_focus_port 2022-02-10 16:52:08 +01: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
Haoyu Qiu a3f6033513 Improve TreeItem button API 2022-02-08 23:56:19 +08:00
Raul Santos 1d3de163dc Add alignment options to icons on buttons.
They can now be centered and right-aligned.

Co-authored-by: jitspoe <jitspoe@yahoo.com>
2022-02-07 21:29:37 +01:00
Fabio Alessandrelli 4c23a902c1 [HTML5] Implement JavaScript PWA update callbacks.
Allows detecting when a new version of the progressive web app service
worker is waiting (i.e. an update is pending), along a function to force
the update and reload all clients.
2022-02-06 18:33:13 +01:00
Marcel Admiraal a4f0e02798 Update definitions of get_mouse_position methods 2022-02-06 09:32:46 +00:00
Pedro J. Estébanez 0d1ec9a7cf Improve ubershader compatibility
- Prevent debug enforced use of ubershader on shaders not supporting it
- Use unsigned integer for ubershader flags
- Add project setting for disabling async shader compilation on mobile
- Stop sampling some textures through different kinds of samplers at the same time
2022-02-05 22:12:31 +01:00
lawnjelly cf1b3fdd55 Bind mesh merging functionality in MeshInstance
The portal system introduced basic mesh merging functionality, this has wide ranging uses outside of the portal system.
For this reason, this PR binds the mesh merging functionality.
It also slightly modifies the calling from RoomManager to use a Vector of Node *, in order to allow binding of the function.
2022-02-05 13:18:17 +00: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
Michael Alexsander f63bea9ef2 Make popup menus focus items automatically when not using the mouse 2022-02-04 17:20:26 -03:00
Hugo Locurcio 92376633f3
Clamp Viewport shadow atlas sizes to improve usability
- Add a range hint to the Viewport `shadow_atlas_size` property.
- Add range steps to the shadow resolution project settings that
  match the lowest allowed values (since lower increments don't
  make sense).
2022-02-04 18:01:16 +01:00
lawnjelly 10eb9564ca Portals - Improve mesh merging
Some improvements to robustness to account for more properties.
Addition of an "allow merging" flag in the cull instance.
2022-02-04 08:40:46 +00:00
Rémi Verschelde 176de98dd6
Merge pull request #57576 from timothyqiu/doc-stream-peer-buffer-3.x 2022-02-03 09:59:20 +01:00
Haoyu Qiu 9150fe5c9a Add documentation for StreamPeerBuffer 2022-02-03 16:01:28 +08:00
Pawel Lampe 6c6e50bf0c Fix navigation merge errors, fixes #56786
- improved `detail/sample_max_error` default value
- improved floating point precision handling in cell key calculations
- improved `merge error` error message
- exposed `cell_height` of `nav_map` to the `Navigation`
- fixed cell key `y` calculation
2022-02-02 23:52:29 +01:00
Rémi Verschelde 78f230885b
Merge pull request #57475 from snailrhymer/look-at-update 2022-02-02 23:07:20 +01: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
Hugo Locurcio 7f00317f67
Clarify documentation for Rect2's `has_no_area()` 2022-02-01 22:43:02 +01: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
Ev01 fa906f70e9
Fixes invalid links to tutorials in AudioStreamGenerator, AudioStreamGeneratorPlayback, and AudioEffectSpectrumAnalyzer class references
(cherry picked from commit b6c543179c)
2022-01-31 22:54:22 +01:00
Hugo Locurcio 3fd186c0c2
Improve documentation for `ReflectionProbe.max_distance` property
(cherry picked from commit c35968e276)
2022-01-31 22:54:17 +01:00
SnailRhymer 83298da9b8 Backport improved look_at docs and errors
Take extra constraint info and function description from Node3D.look_at to improve Spatial.look_at docs.
Add an explicit error for up == 0
2022-01-31 11:52:15 +00:00
Manolis Papadeas 941879f601
Expose BitMap's `convert_to_image` and `resize` methods to GDScript
(cherry picked from commit 453912d48d)
2022-01-25 18:55:52 +01:00
Wysocki Patryk 6340e4c83f
Expose AnimationNodeOneShot::mix_mode as a property
Fixes #23458.

(cherry picked from commit f16c483c9d)
2022-01-25 18:55:51 +01:00
Rémi Verschelde 2eb12f1d71
doc: Clarify expected type of `Object *` parameters in Tree methods
They're meant to be `TreeItem *` but this can't be bound in Variant.

Fixes #20538.

(cherry picked from commit 81f2ce4e46)
2022-01-25 18:24:02 +01:00