Commit graph

3319 commits

Author SHA1 Message Date
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
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
SnailRhymer
6ac800aab7 Add clarification to tile_set_modulate
To resolve 45677, adds a note to tile_set_modulate clarifying how to use tile_modulate in shaders.
2022-01-24 21:23:04 +00:00
Pawel Lampe
67cf622935 Improve Navigation2D default settings, fixes #56852
This commit reduces `cell_size` and `edge_connection_margin` default
values so that `Navigation2D` behaves more like in Godot <= `3.4` by default.
2022-01-23 14:07:31 +01:00
Rémi Verschelde
e33f8df9ca
Merge pull request #56984 from Calinou/doc-softbody-no-gameplay-3.x 2022-01-23 12:54:36 +01:00
LoserFox
0af26280b6
Fix some errors in Environment documentation
Co-authored-by: Clay John <claynjohn@gmail.com>
Co-authored-by: Max Hilbrunner <mhilbrunner@users.noreply.github.com>
Co-authored-by: Rémi Verschelde <rverschelde@gmail.com>
2022-01-23 00:45:27 +01:00
Rémi Verschelde
6c0c0c4b29
Merge pull request #54165 from Calinou/directional-shadow-runtime-change-3.x
Allow changing directional shadow size at run-time
2022-01-22 15:25:09 +01:00