Commit Graph

3331 Commits

Author SHA1 Message Date
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
Mak Kma 1c3d3af6ef backported method get_rid for NavigationAgent 2022-01-21 00:15:16 +03:00
Rémi Verschelde a9b10054b8
Merge pull request #56950 from timothyqiu/has-clipboard-3.x 2022-01-20 12:09:53 +01:00
skyace65 c540a17efc Better explain JSON print indent parameter (3.x) 2022-01-19 20:37:58 -05:00
Hugo Locurcio 94b1ae5599
Document that soft bodies should be avoided for gameplay purposes 2022-01-20 01:36:39 +01:00
rafallus 27fc50d54a
Fix `input_ray_pickable` documentation for `CollisionObject3D`
(cherry picked from commit ba7d3f8331)
2022-01-19 16:04:16 +01:00
kobewi ccb52db232
Clarify to_float() and to_int() methods
(cherry picked from commit 7bb682651f)
2022-01-19 16:04:16 +01:00
bruvzg 7eb8339f6c
[Documentation] Add instruction how to execute built-in commands of various shells.
(cherry picked from commit 9faf1e027a)
2022-01-19 16:04:16 +01:00
kobewi 986b99ed5c
Mention that modifying text erases BBCode stacks
(cherry picked from commit 3f0e9da5a4)
2022-01-19 16:01:04 +01:00
Haoyu Qiu 76297e744d Add `OS.has_clipboard()` to check clipboard content 2022-01-19 20:19:06 +08:00
QueenOfSquiggles cab89124ff
Fixed a typo in BakedLightmap documentation
"capture_propagation" member documentation description was missing the second 'p' in "propagation". Fixed this minor typo
Also resubmitting pull request to 3.x branch as per @Calinou's recommendation.
2022-01-17 09:56:49 -06:00
Haoyu Qiu 7f49e5beec Expose `Image.COMPRESS_SOURCE_LAYERED` to scripting 2022-01-17 20:43:05 +08:00
Rémi Verschelde 879244c54e
Merge pull request #56015 from bruvzg/phy_code_conv 2022-01-16 11:36:26 +01:00
Rémi Verschelde 22166639ed
Merge pull request #56366 from Calinou/async-shaders-use-in-editor
Use asynchronous shader compilation and cache in the editor if requested
2022-01-16 10:34:07 +01:00
Yuri Sizov 58319564fa Unify theme item lookup in Controls and respect default font 2022-01-13 15:21:55 +03:00
Haoyu Qiu b6f0460520 Remove duplicated sentence in EditorVCSInterface classref 2022-01-13 14:39:12 +08:00
Rémi Verschelde 1cc3184f6e
Merge pull request #55444 from Calinou/doc-spritebase3d-modulate-material-override-3.x
Document using SpriteBase3D's `modulate` property with material override (3.x)
2022-01-13 00:00:10 +01:00
Hugo Locurcio 027a584faf
Document using SpriteBase3D's `modulate` property with material override 2022-01-12 22:37:15 +01:00
skyace65 a28955ac46
Fix normal map description
(cherry picked from commit d856074488)
2022-01-12 17:34:56 +01:00
kobewi 8edc8a95b1
Improve FileDialog filters
(cherry picked from commit b403954e41)
2022-01-12 17:33:16 +01:00
Haoyu Qiu 4621b41bfc
Add drag start/end signals for Slider
(cherry picked from commit 753ae7403f)
2022-01-12 17:31:39 +01:00
kobewi 46f65f9d79
Improve description of mouse_exited signal
(cherry picked from commit 4eec0032ea)
2022-01-12 17:28:46 +01:00
zacryol 40b7b575c6
List AnimatedSprite3D in SpriteFrames description
Both AnimatedSprite2D and AnimatedSprite3D use a SpriteFrames resource, but the SpriteFrames
class description currently only lists being used with the 2D variant.

(cherry picked from commit 4391f6a5b5)
2022-01-12 17:28:08 +01:00
Sam ea2080112d
Fixed typos in MeshDataTool documentation
- Fixed missing "be" typo in MeshDataTool's get_face_edge function
- Corrected documentation to say negative values aren't valid

(cherry picked from commit bc9df365b0)
2022-01-12 17:28:08 +01:00
zacryol 21526aa578
Update description of FileDialog `filters` property
specify that multiple filetypes/extensions can be included in one filter within the
PackedStringArray, and provide an example

(cherry picked from commit 123cfb4759)
2022-01-12 17:28:07 +01:00
Arnav Vijaywargiya a51f3f2a58
Fixed incorrect property types
(cherry picked from commit 0c46f73b5e)
2022-01-12 17:28:07 +01:00
bruvzg 6eac65d4fe
Add joystick button index boundary check. Increase max. button number to 128 (max. buttons supported by DirectInput).
(cherry picked from commit 61ea8f8337)
2022-01-12 17:28:07 +01:00
skyace65 7c61e6f72f
Document how to erase project settings with set_setting
(cherry picked from commit 290038952f)
2022-01-12 17:28:07 +01:00
Haoyu Qiu fe1e6eb995
Explain what 2D cross product means
(cherry picked from commit d54586a8e6)
2022-01-12 17:28:07 +01:00
David Cambré c2a9de23f5
Update default port_grab_distance_vertical
(cherry picked from commit 38ad72af44)
2022-01-12 17:28:07 +01:00
follower 99416a21fb
Fix the "AudioEffectRecord" descriptions.
The `AudioEffectRecord` effect has no microphone capture-specific functionality--it can be used with any audio bus.

This patch attempts to clarify this fact (so people like me who want to capture audio output know they're in the right place) while still providing a pointer use of the effect with `AudioStreamMicrophone` for microphone capture.

(cherry picked from commit 022f49437b)
2022-01-12 17:28:06 +01:00
Rémi Verschelde 09884f17a3
Revert "Warn when using an AABB or Rect2 with a negative size"
This reverts commit d75e580765.

Fixes #56509.
2022-01-12 17:28:03 +01:00
Rémi Verschelde 1b0ba42ea1
Merge pull request #55268 from Calinou/gpu-particles-macos-performance-warning 2022-01-12 16:51:31 +01:00
Rémi Verschelde e805ec8574
Merge pull request #54871 from timothyqiu/remove-theme-override
[3.x] Add methods to remove theme overrides
2022-01-11 20:16:05 +01:00
Rémi Verschelde 8a192cd0ab
Merge pull request #55987 from bruvzg/wt🤎3 2022-01-10 16:43:56 +01:00
Rémi Verschelde edd9534f97
Merge pull request #53900 from ChronicallySerious/update-vcs-1 2022-01-10 12:18:57 +01:00
Rémi Verschelde cd47ff1411
Merge pull request #56639 from skyace65/Tweenmethods
Add note on when tween methods return false (3.x)
2022-01-09 19:14:08 +01:00
skyace65 4bd1ce49e6 Add note om when tween methods return false (3.x) 2022-01-08 21:51:30 -05:00
Haoyu Qiu dd462f512d Misc documentation improvements 2022-01-08 22:39:00 +08:00
Rémi Verschelde 01fef99749
Merge pull request #56325 from pycbouh/editor-resource-picker-needs-type-3.x 2022-01-07 16:13:46 +01:00
Rémi Verschelde 4737f563df
Fixup class reference after #54824 2022-01-07 15:25:28 +01:00
Rémi Verschelde aad12a2df5
Merge pull request #54824 from LightningAA/backport-gradient-texture-2d 2022-01-07 14:47:44 +01:00
Rémi Verschelde defb801120
i18n: Sync classref translations with current 3.x codebase 2022-01-07 13:34:14 +01:00
fabriceci 10e63b8dd6 backport moving_platform_apply_velocity_on_leave 2022-01-07 12:54:49 +01:00
Pierre-Thomas Meisels 7dd8e364b1
OSX: Add signing of directory structure in Library when exporting for OSX.
Add exporting of folder structure in PlugIns when exporting for OSX.
2022-01-07 01:15:37 +01: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
bruvzg 6f81a8ee2c
Fix multiple missing UTF-8 decoding.
(cherry picked from commit c69e0d16bc)
2022-01-06 21:44:40 +01:00
Rémi Verschelde 5fa1961ee3
Merge pull request #56369 from Rubonnek/expose-string-join 2022-01-06 15:14:18 +01:00
Haoyu Qiu df527b37d5 Unify similar method descriptions
Notably:

* `Pool*Array.size()` and `Array.size()`.
* Shared methods of `Transform2D` and `Transform`.
* Shared methods of `Vector2` and `Vector3`.

This reduces the Deja Vu when translating the class reference :)
2022-01-06 19:49:05 +08:00
Rémi Verschelde 8f17a4037b
Merge pull request #56466 from Chaosus/vs_uniform_hints_3.x 2022-01-06 09:39:27 +01:00
Wilson E. Alvarez 4106f95f30
Expose autotile_coord parameter in TileMap.set_cellv 2022-01-05 21:24:35 -05:00
kobewi 2dc30888bf
Fix get_v_scroll() desctiption in ItemList
(cherry picked from commit f97ab4a0e4)
2022-01-06 00:28:05 +01:00
Lertsenem 942f15fa4e
Fix error in Vector2.reflect() description
The description was probably copied from Vector3.reflect(), and
unfortunately did not match the 2D behaviour (where n is apparently the
direction vector of the symmetry line, not the normal).

(cherry picked from commit e1bf428cdc)
2022-01-06 00:23:59 +01:00
Hugo Locurcio 8d3e16676d
Document keyboard ghosting caveats in Input and InputEvent
This also adds recommendations for choosing between
`is_physical_key_pressed()` and `is_key_pressed()`.

(cherry picked from commit d01e22f187)
2022-01-06 00:21:37 +01:00
skyace65 098a8dab0d
Add warning to only use convex hull points when setting the point property for convex polygon shape
(cherry picked from commit 6b18614de7)
2022-01-06 00:21:36 +01:00
skyace65 ea637f641e
State that get static memory usage only works in debug
(cherry picked from commit 32b4edbe4e)
2022-01-06 00:21:36 +01:00
skyace65 97695d3796
Improve mouse input event class reference
(cherry picked from commit 37dfe5c706)
2022-01-06 00:21:36 +01:00
Hugo Locurcio 299d277c9c
Warn when using GPU-based particles on macOS due to low performance
On macOS, Particles rendering is much slower than CPUParticles
due to transform feedback being implemented on the CPU instead
of the GPU.
2022-01-06 00:10:32 +01:00
Rémi Verschelde 91c5a336e8
Merge pull request #55718 from bruvzg/oversampling_override 2022-01-06 00:07:48 +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
Hugo Locurcio ccd8cdc363
Improve the CanvasItem class documentation 2022-01-05 02:04:44 +01:00
Hugo Locurcio 73ec2c6ece
Improve the CameraServer and CameraFeed class documentations
This closes https://github.com/godotengine/godot-docs/issues/3255.
2022-01-04 19:25:50 +01:00
Max Hilbrunner c44de001de
Merge pull request #56395 from aaronfranke/3.x-doc-midi
[3.x] Document InputEventMIDI and add some missing 0xF MIDI messages
2022-01-04 18:28:16 +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
Aaron Franke da88e42f16
[3.x] Document InputEventMIDI and add some missing 0xF MIDI messages 2022-01-04 05:30:15 -08:00
Max Hilbrunner 1ffcd7b92a
Merge pull request #56150 from snailrhymer/patch-2
[3.x] Fix descriptions of `set_cell` and `set_cellv` in TileMap.xml
2022-01-04 14:04:48 +01:00
Max Hilbrunner 7fae8f6828
Merge pull request #56152 from belzecue/patch-4
Update CharFXTransform: explain "relative index"/"absolute index"
2022-01-04 13:56:07 +01:00
Max Hilbrunner 5083901561
Merge pull request #56378 from Calinou/doc-spatialmaterial-flowmap-format
Document the expected format of anisotropy flowmaps in SpatialMaterial
2022-01-04 13:48:37 +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
Max Hilbrunner 08ce24a3c4
Merge pull request #56234 from timothyqiu/3.x-at-tool-script
Use `tool` instead of `@tool` in 3.x documentation
2022-01-02 03:09:09 +01:00
Max Hilbrunner 40f7dcbc7e
Merge pull request #56241 from KoBeWi/r3gist3r_b3for3_us3
[3.x] Improve docs about plugin registration
2022-01-02 03:08:02 +01:00
Hugo Locurcio 9937f7f50d
Document the expected format of anisotropy flowmaps in SpatialMaterial 2021-12-31 17:29:03 +01:00
Wilson E. Alvarez d03b82cde7
Expose String::join over to GDScript 2021-12-30 21:27:18 -05:00
Hugo Locurcio ae918c3041
Use asynchronous shader compilation and cache in the editor if requested
This provides more consistent behavior between the editor and running
project.
2021-12-31 02:20:29 +01:00
Yuri Sizov d9bf3e5e35 Fix return type for the exposed EditorResourcePicker method 2021-12-29 21:57:14 +03:00
kobewi 4fc795194b Improve docs about plugin registration 2021-12-25 16:55:03 +01:00
Haoyu Qiu 7b83b5ea3c Use tool instead of at-tool in 3.x documentation 2021-12-25 10:56:34 +08:00
Haoyu Qiu bb1eb84da4 Alpha channel indicates opacity, not transparency 2021-12-24 16:52:32 +08:00
belzecue 89cebd79e8
Update CharFXTransform: explain "relative index"/"absolute index" (previously identical)
Confusingly, these two properties had identical descriptions even though they measure different things.

"relative_index" measures character count from the custom effect's bbcode opening tag.
"absolute_index" measures character count from the start of the bbcode text that includes the custom effect.

See the code author's own explanation here: https://github.com/godotengine/godot/pull/23658

NOTE: Doco for CharFXTransform.xml has changed significantly in 4.0, where terminology has changed to "glyph".  Therefore, proposing this change for 3.x branch only.
2021-12-22 14:17:47 +08:00
snailrhymer 73f4531c97
Fix descriptions of set_cell and set_cellv in TileMap.xml
Swap the first lines of the descriptions for set_cell and set_cellv to correctly describe which accepts x and y as separate arguments and which accepts a Vector2.

Fix not relevant to master branch due to changes to TileMap.
2021-12-22 02:37:12 +00:00
Haoyu Qiu e40bb68c05
Add / to the unix shortcut drive list
Also made `get_current_drive()` to pick the longest match on Unix.

(cherry picked from commit 67f04b381b)
2021-12-21 12:11:14 +01:00
cdemirer 8e29a37800
Clarify that replace_by keeps child nodes in tree
(cherry picked from commit 98a3948bf9)
2021-12-21 12:11:14 +01:00
kobewi 4f284893a6
Document get_minimum_size not called in some nodes
(cherry picked from commit 7d5ee8f694)
2021-12-21 12:11:14 +01:00
Micky 9fc2bc6cf2
Various improvements to Camera2D's documentation
A summary of the tweaked descriptions:
* "get_camera_position()" is explains what the camera position is, and mitigates the confusion between this method and Node2D.position;
* "get_camera_screen_center()" links to the "get_camera_position" method;
* "reset_smoothing()" links to the "smoothing_enabled" propriety;

* "drag_horizontal_offset" and "drag_vertical_offset" link to their respective _enabled_ properties;
* "limit_smoothed" links to the "smoothing_enabled" propriety;
* "rotating" clarifies that the camera _view_ rotates when enabled.

Partially closes https://github.com/godotengine/godot-docs/issues/5417, as some of the issues described are no longer present in 4.0, or are not fully solved in this PR.

Further tweaks are welcome, as I'm afraid this could be a too verbose. A few of these could be split into their PR if necessary.

(cherry picked from commit 6cf2623a20)
2021-12-21 12:11:14 +01:00
bruvzg 59085d5051
[Windows] Improve console handling and execute.
Always build with the GUI subsystem.
Redirect stdout and stderr output to the parent process console.
Use CreateProcessW for blocking `execute` calls with piped stdout and stderr (prevent console windows for popping up when used with the GUI subsystem build, and have more consistent behavior with non-blocking calls).
Add `open_console` argument to the `execute` to open a new console window (for both blocking and non-blocking calls).
Remove `interface/editor/hide_console_window` editor setting.
Remove `Toggle System Console` menu option.
Remove `set_console_visible` and `is_console_visible` functions.
2021-12-18 10:13:27 +02:00
Haoyu Qiu d99a313fd3 Fix font preview text color on light background 2021-12-18 00:34:54 +08:00
bruvzg b4ec1c5817
Backport: Allow for mapping scancodes to current layout
Co-authored-by: Frixuu <kontakt@lukasz.xyz>
2021-12-17 13:04:47 +02:00
kobewi bf99f09e14
Mention what happens if find_node() fails
(cherry picked from commit e7722a9a7b)
2021-12-17 00:14:50 +01:00
Rémi Verschelde a90cac7ba4
Merge pull request #55988 from timothyqiu/http-proxy-3.x 2021-12-16 13:09:07 +01: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
Haoyu Qiu c11b1850c4 Make `--doctool` locale aware
* Adds `indent(prefix)` to `String`
* Moves the loading of tool/doc translation into
  `editor/editor_translation.{h,cpp}`
* Makes use of doc translation when generating XML class references, and
  setup the translation locale based on `-l LOCALE` CLI parameter.

The XML class reference won't be translated if `-l LOCALE` parameter is
not given, or when it's `-l en`.
2021-12-16 18:27:32 +08:00
Haoyu Qiu b225fec1de Fix indentations in class reference XMLs 2021-12-15 22:40:19 +08:00
Max Hilbrunner 97ea2ba78c
Merge pull request #55668 from Calinou/doc-physics-ticks-per-rendered-frame-3.x
Document physics simulation being limited to 8 ticks per rendered frame
2021-12-15 03:44:49 +01:00
Max Hilbrunner ee3e3df539
Merge pull request #55772 from Calinou/doc-texturearray-srgb
Document sampling a TextureArray with sRGB -> linear conversion
2021-12-15 03:42:16 +01:00
Max Hilbrunner 1fd0f69050
Merge pull request #55832 from Calinou/doc-reflectionprobe-3.x
Improve the ReflectionProbe class documentation (3.x)
2021-12-15 03:23:51 +01:00
Rémi Verschelde 4d709b71de
Merge pull request #55690 from akien-mga/3.x-scene-tree-doc-font-oversampling 2021-12-14 17:33:00 +01:00
Ryan Roden-Corrent 22fb04bddf
Document how to autoscroll ScrollContainer.
It is not uncommon to want to scroll to the most recently added child of
a ScrollContainer (e.g. a chat box or activity log). This is a little
tricky, since `ensure_control_visible` will not work on a node on the
same frame as you add it. Let's at least document that you need to wait
until the next frame.

Relates to https://github.com/godotengine/godot-proposals/issues/3629.

Backport of https://github.com/godotengine/godot/pull/55609.

Co-authored-by: Yuri Sizov <pycbouh@users.noreply.github.com>
2021-12-14 06:51:05 -05:00
Rémi Verschelde dd122e2971
Merge pull request #55827 from Calinou/doc-viewport-upside-down 2021-12-12 21:04:55 +01:00
lawnjelly b8d3d97b6a Visibility Notifier / Enabler classref mention Portals
Fixes the classref to show that these do not take account of occlusion except when using Portals.
2021-12-11 18:50:01 +00:00
Hugo Locurcio 2fbf880912
Improve the ReflectionProbe class documentation 2021-12-11 19:10:30 +01:00
Hugo Locurcio 6b26012284
Document Viewports rendering upside-down by default
This was fixed in `master`, but the default behavior can't be changed
in `3.x` for compatibility reasons.
2021-12-11 16:56:44 +01:00
Steve Szilágyi 285b816f1f
VehicleWheel can now return the surface it's colliding with.
Fixed PR issues.

Update vehicle_body_3d.cpp

Apply suggestions from code review

Co-authored-by: Camille Mohr-Daurat <pouleyKetchoup@gmail.com>
(cherry picked from commit 0c352407d8)
2021-12-10 19:01:06 +01:00
Anilforextra 9351bc4b1c
Fixed awkwardly named AnimatedSprite Setters.
(cherry picked from commit 0c06ed98fb)
2021-12-10 17:57:39 +01:00
Rémi Verschelde fc7528b366
Merge pull request #55788 from RPicster/3.x-particles-random-start-color 2021-12-10 16:52:19 +01:00
Raffaele Picca 6dd593d579 Random initial color for all Particle Nodes 2021-12-10 16:35:25 +01:00
Rémi Verschelde c6a9a384a0
Merge pull request #55783 from timothyqiu/broken-doc-link
[3.x] Fix broken links in Class Reference
2021-12-10 15:51:17 +01:00
Haoyu Qiu b1153f8829 Fix broken links in Class Reference 2021-12-10 21:07:21 +08:00
Rémi Verschelde eac0d90c39
Merge pull request #55560 from pycbouh/docs-overridden-cross-linked-3.x
[3.x] Make overridden properties link to parent definition
2021-12-10 12:42:09 +01:00
Hugo Locurcio 491acf346d
Document sampling a TextureArray with sRGB -> linear conversion
This is required when sampling an albedo map from a texture array
in 3D. Otherwise, colors will look washed out.
2021-12-10 01:02:48 +01:00
Raul Santos 229489f7b7
Expose `ScriptEditor::edit` to scripting
Exposes a method in `EditorInterface` to open scripts on a specified
line and column. This method handles if the internal or the external
editor should be used.

(cherry picked from commit 9535831866)
2021-12-09 12:05:14 +01:00
bruvzg eb54676e0f
Add DynamicFontData oversampling override property. 2021-12-08 11:34:56 +02:00
Hugo Locurcio bfe77b8fab
Document physics simulation being limited to 8 ticks per rendered frame 2021-12-08 00:22:03 +01:00
Hugo Locurcio 2fe15124de
Document that RigidBody angular velocity is in degrees per second
This will be changed to radians per second in Godot 4.0, but it can't
be changed in 3.x to preserve compatibility with existing projects.
2021-12-07 18:38:03 +01:00
Rémi Verschelde 35b79284cc
SceneTree: Document font oversampling, remove warnings 2021-12-07 14:15:09 +01:00
Rémi Verschelde 643a9a3420
Merge pull request #55526 from pycbouh/docs-sort-group-newline-theme-and-enums-3.x 2021-12-07 12:14:48 +01:00
Rémi Verschelde 0845f20784
Merge pull request #55614 from Calinou/add-os-crash-method-3.x 2021-12-06 17:04:14 +01:00
Manolis Papadeas 3be071f8c6
Fix link to the supported image formats in the Image class
It previously linked to this page which doesn't exist. https://docs.godotengine.org/en/latest/getting_started/workflow/assets/importing_images.html#supported-image-formats

Now, it should link here: https://docs.godotengine.org/en/latest/tutorials/assets_pipeline/importing_images.html#supported-image-formats

(cherry picked from commit c01c4c687b)
2021-12-06 16:52:00 +01:00
kobewi 9776241ce6
Bind column_titles_visible as property
(cherry picked from commit 7f6ab0006d)
2021-12-06 16:52:00 +01:00
Aaron Franke d75e580765
Warn when using an AABB or Rect2 with a negative size
(cherry picked from commit 9687f6fca3)
2021-12-06 16:51:59 +01:00
Hugo Locurcio 796ea60d11
Document SceneTreeTimer being freed automatically when elapsed
The note was present in the SceneTree `create_timer()` class
documentation, but not in the SceneTreeTimer class documentation.
2021-12-05 18:39:10 +01:00
Hugo Locurcio 58296c7e21
Add an `OS.crash()` method for testing system crash handler
This makes it possible to test the system's crash handler without
having to modify engine code or exploit an engine bug.
2021-12-04 01:40:56 +01:00
Rémi Verschelde ade0e700f1
Merge pull request #55591 from RPicster/3.x-particlemat-ring-axis-fix
Fix Ring-Axis parameter being always visible
2021-12-03 21:38:16 +01:00
Raffaele Picca 2f69caaff3 Fix Ring-Axis parameter being always visible 2021-12-03 21:16:32 +01:00
Yuri Sizov 1cf6d21f69 Make overridden properties link to parent definition
Co-authored-by: Josh DeGraw <joshmdegraw@gmail.com>
2021-12-03 17:48:49 +03:00
kobewi ad5cb8ef5e
Improve store_string() description
(cherry picked from commit 09b1fc1956)
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
Haoyu Qiu 144e3cd31f
Fix various misused code tag in classref
(cherry picked from commit 85c136bd07)
2021-12-02 17:31:16 +01:00
Rémi Verschelde 6f1fcdee0d
Merge pull request #49662 from kleonc/transforms-xform_inv-docs 2021-12-02 12:54:44 +01:00
Yuri Sizov ebd8101546 Sort and group theme properties in docs, improve formatting for theme and enums 2021-12-01 22:48:17 +03: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
Rémi Verschelde 6cf77f80b5
doc: Fixup Tabs reference after cherry-pick 2021-11-30 14:46:11 +01:00
zacryol 86190dd909
Clarify usage of TabContainer
Makes it more clear that TabBar is separate from TabContainer, and that the container draws the tabs itself.

(cherry picked from commit 5c645d510f)
2021-11-30 10:58:37 +01:00
Aaron Franke 035a84fe92
[3.x] Add a Time singleton 2021-11-29 11:00:06 -06:00
zacryol dd94440509
Fix description of Viewport `find_world_2d()` method.
The doc now states that the method searches for a World2D among ancestor Viewports as well, differentiating it from the get_world_2d() getter.

and also find_world_3d()

(cherry picked from commit 81c1d5197e)
2021-11-29 16:13:19 +01:00
Rémi Verschelde 0bf78feb46
Merge pull request #55416 from pycbouh/textedit-position-from-linecol-3.x 2021-11-29 14:28:35 +01:00
Yuri Sizov ba747e2a26 Add methods to get position from column and line in TextEdit 2021-11-29 00:06:16 +03:00
Aaron Franke 1d8cef8236
[3.x] Backport some APIs in math structs 2021-11-27 01:19:45 -06:00
kobewi de365200bb
Clarify get_indexed in relation to Nodes
(cherry picked from commit 4ea6709558)
2021-11-25 22:48:20 +01:00
Hugo Locurcio f6725f8089
Document the engine's use of internal groups in Node
(cherry picked from commit f8d9e4afdb)
2021-11-25 22:24:12 +01:00
kobewi a7d950ab8e
Mention that replace_by doesn't free the node
(cherry picked from commit 58a3ea5453)
2021-11-25 22:20:27 +01:00
bruvzg 2ef2879d7b
Add Input.is_physical_key_pressed method.
(cherry picked from commit 9877d91c4a)
2021-11-25 22:19:33 +01:00
Rémi Verschelde 888f8cea9f
Merge pull request #52457 from kleonc/image-fill-rect-3x 2021-11-24 16:34:15 +01:00
Hugo Locurcio e5593212e2
Add a project setting to disable the boot splash image
This allows disabling the boot splash image while keeping the
background color.
2021-11-23 19:06:54 +01:00
kleonc 4f446c8b9e Add Image::fill_rect method 2021-11-23 17:59:08 +01:00
Camille Mohr-Daurat 3970f28f67
Merge pull request #55096 from lawnjelly/bvh_expanded_leaf
BVH - add option for expanded AABBs in leaves
2021-11-22 09:37:16 -07:00
Haoyu Qiu eb6f74855f Allow toggle TextEdit bookmark gutter 2021-11-21 21:34:30 +08:00
Brian Semrau 04846156c3
Expose Thread::get_main_id in core bindings
(cherry picked from commit c558263d84)
2021-11-20 11:48:09 +01:00
lawnjelly 211dc8cd2d BVH - add option for expanded AABBs in leaves
This PR adds a define BVH_EXPAND_LEAF_AABBS which is set, which stores expanded AABBs in the tree instead of exact AABBs.

This makes the logic less error prone when considering reciprocal collisions in the pairing, as all collision detect is now taking place between expanded AABB against expanded AABB, rather than expanded AABB against exact AABB.

The flip side of this is that the intersection tests will now be less exact when expanded margins are set.

All margins are now user customizable via project settings, and take account of collision pairing density to adjust the margin dynamically.
2021-11-20 06:45:12 +00:00
kobewi 70d25bbfbb
Mention how to add margins to Button's icon
(cherry picked from commit 2341c7bbd9)
2021-11-17 15:56:23 +01:00
Rémi Verschelde 4103b0b7d8
Merge pull request #50823 from fbcosentino/3d-material-overlay 2021-11-16 08:21:18 +01:00
Fernando Cosentino cc8846bef6 Added material_overlay property to MeshInstance
Applying overlay materials into multi-surface meshes currently
requires adding a next pass material to all the surfaces, which
might be cumbersome when the material is to be applied to a range
of different geometries. This also makes it not trivial to use
AnimationPlayer to control the material in case of visual effects.
The material_override property is not an option as it works
replacing the active material for the surfaces, not adding a new pass.

This commit adds the material_overlay property to GeometryInstance
(and therefore MeshInstance), having the same reach as
material_override (that is, all surfaces) but adding a new material
pass on top of the active materials, instead of replacing them.

Implemented in rasterizer of both GLES2 and GLES3.
2021-11-15 23:50:34 +00:00
Rémi Verschelde ca61752a8c
Merge pull request #54982 from Calinou/doc-surfacetool-append-from-thread 2021-11-15 22:47:14 +01:00
Rémi Verschelde 89792e5c49
Merge pull request #54921 from lawnjelly/portals_roaming_margin 2021-11-15 22:45:46 +01:00
Rémi Verschelde 3ac2999f22
Replace Godot docs URL with `$DOCS_URL` in XML class reference 2021-11-15 17:22:47 +01:00
kobewi 7f91cbc397
Expose String.get_slice
(cherry picked from commit e5725c7deb)
2021-11-15 17:22:46 +01:00
Benjamin Armstrong 77add76a16
Clarify how 'audio/driver/output_latency' project setting works
(cherry picked from commit 1e485a7da8)
2021-11-15 16:10:00 +01:00
Rémi Verschelde 9ef3fec87f
Rect2: Clarify docs for `has_point` excluding bottom and right borders
Improve tests, as well as documentation for `expand`.

(cherry picked from commit 36c4451a7b)
2021-11-15 16:10:00 +01:00
Hugo Locurcio 194d45f11d
Improve the GIProbe and BakedLightmap class documentation
This adds information about performance and procedural generation.
2021-11-14 23:47:19 +01:00
Hugo Locurcio f39375d315
Document low performance when using `SurfaceTool.append_from()` in thread 2021-11-14 22:46:42 +01:00
lawnjelly 788f075b44 Portals - Allow user to set roaming expansion margin
Previously a crude metric was used to decide on the roaming expansion margin, but it created unexpected results in some scenarios. Instead this setting is exposed to the user via the RoomManager, allowing them to tailor it to the world size, room sizes, roaming objects sizes and the speeds of movement.
2021-11-12 15:46:04 +00:00
Haoyu Qiu 936832d59c Add methods to remove theme overrides 2021-11-11 18:23:37 +08:00
boruok 30d22305e1 fixed typo in NavigationPolygon doc 2021-11-11 14:29:19 +09:00
Hendrik Brucker 97074dcf95 Add GradientTexture2D
Co-authored-by: Mariano Javier Suligoy <marianognu.easyrpg@gmail.com>
Co-authored-by: Andrii Doroshenko <xrayez@gmail.com>
2021-11-10 19:00:40 -07:00
Rémi Verschelde fee83d02cc
Merge pull request #54848 from Calinou/mono-move-exception-policy-setting-3.x 2021-11-10 22:07:00 +01:00
Hugo Locurcio 4c88a82f50
Move Mono unhandled exception setting to be located within a subsection
Settings that aren't within a subsection are difficult to reach when
other settings do have a subsection.

This also adds documentation for the project setting.
2021-11-10 20:57:35 +01:00
PouleyKetchoupp 1560c8b5aa Fix test_move reporting collision when touching another body
Reporting rest collision information is needed for move_and_collide and
move_and_slide so floor detection can be done properly, but in the case
of just testing the motion for collision, it makes sense to return false
if the body is able to move all along the path without being stopped.

Updated the logic in test_move and clarified the documentation for
test_move and move_and_collide.
2021-11-10 11:07:32 -07:00
PouleyKetchoupp b93aeec4a2 Fix errors in KinematicBody when floor is destroyed or removed
In all physics servers, body_get_direct_state() now silently returns
nullptr when the body has been already freed or is removed from space,
so the client code can detect this state and invalidate the body rid.

In 2D, there is no change in behavior (just no more errors).

In 3D, the Bullet server returned a valid direct body state when the
body was removed from the physics space, but in this case it didn't
make sense to use the information from the body state.
2021-11-09 15:15:40 -07:00
Pedro J. Estébanez 4c710780d4 Implement async shader compilation plus caching for GL ES 3
Async. compilation via ubershader is currently available in the scene and particles shaders only.

Bonus:
- Use `#if defined()` syntax for not true conditionals, so they don't unnecessarily take a bit in the version flagset.
- Remove unused `ENABLE_CLIP_ALPHA` from scene shader.
- Remove unused `PARTICLES_COPY` from the particles shader.
- Remove unused uniform related code.
- Shader language/compiler: use ordered hash maps for deterministic code generation (needed for caching).
2021-11-09 12:19:12 +01:00
Rémi Verschelde 4b4e92b3d4
Merge pull request #52944 from RandomShaper/property_pin_control_natural_3.x 2021-11-08 18:53:25 +01:00
Pedro J. Estébanez 4dba25b3ff Add property value pinning 2021-11-08 17:42:27 +01:00
Rémi Verschelde ee46679ca3
Merge pull request #54577 from nekomatata/intersect-point-3d-3.x 2021-11-08 13:16:14 +01:00
Max Hilbrunner 73cb77c62c
Merge pull request #54623 from gongpha/3.x-typo1
Fix little typos in `OS` 3.x doc
2021-11-06 17:35:45 +01:00
Rémi Verschelde 965f7a6df9
Merge pull request #54607 from nekomatata/fix-intersect-shape-motion-3.x 2021-11-05 21:53:06 +01:00
Rémi Verschelde 14c366ddd7
Bump version to 3.5-beta 2021-11-05 16:10:17 +01:00
Kongfa Waroros 0d852bf5a6 Fix little typos in 3.x doc 2021-11-05 16:23:37 +07:00
Hugo Locurcio 231883bdcc
Improve description for `BitMap.grow_mask()`
(cherry picked from commit e3d23d444c)
2021-11-04 19:55:56 +01:00
PouleyKetchoupp 160346f794 Add support for motion in 2D intersect_shape function
It was only missing extended rect for broadphase check, the solver was
already taking the motion from parameters into account.
2021-11-04 11:43:30 -07:00
Gustavo Beltrão Braga 27ec7e6ed5
Change description of relative field in input drag event.
(cherry picked from commit 76c50928a1)
2021-11-04 16:35:20 +01:00
PouleyKetchoupp fc2bd63ca0 Expose intersect_point in 3D physics server
Also cleaned a few things in the documentation for 2D.
2021-11-03 16:46:40 -07:00
Yuri Sizov 5ff11a2c5c Add a flag to EditorResourcePicker to differentiate selection contexts 2021-11-02 14:15:14 +03:00
Omar El Sheikh 203295f17d Added Mesh Compression Import Options
Fleshed out the "Optimize Mesh" options found in the mesh import UI
Gave a checkbox to every vertex attribute that can be compressed

Surfaced option to enable/disable Octahedral compression for
normal/tangent vectors

Also surfaces the vertex position compression option which previously
inaccessible because the defaults did not compress vertex positions

Supports all current importers (obj, fbx, collada, gltf)
2021-11-01 12:54:28 -04:00
Yuri Sizov 7fe0dab69b Add focus font color to Button and derivatives 2021-10-26 17:40:51 +03:00
skyace65 c1709e8177
Improve area method descriptions
(cherry picked from commit 4dd8ab745a)
2021-10-26 13:34:36 +02:00
Hugo Locurcio 1806661462
Only show relevant properties in the DirectionalLight inspector
Some split distance properties are unused depending on the
current shadow mode. Also, Blend Splits and Bias Split Scale can
only be used if the shadow mode is PSSM 2 Splits or PSSM 4 Splits.
2021-10-25 22:08:47 +02:00
Rémi Verschelde 6e141e8688
Merge pull request #54229 from akien-mga/3.x-ios-disable-high-float 2021-10-25 20:57:48 +02:00
Hugo Locurcio 059ba23f72
Document `Image.FORMAT_R8` stores in alpha channel instead in GLES2 2021-10-25 16:52:58 +02:00
Rémi Verschelde bc0d18d8d5
GLES2: Disable half float on iOS via platform override
This can be changed back by setting
`rendering/gles2/compatibility/disable_half_float.iOS` to false.

Fixes #31907.
2021-10-25 16:25:56 +02:00
Hugo Locurcio 31ad99072f
Allow changing directional shadow size at run-time
Factoring out the directional shadow creation code allows calling it
at any time. This works in both GLES3 and GLES2.
2021-10-23 22:04:59 +02:00
Pedro J. Estébanez beb99fe54b
Expose Input::flush_buffered_events()
(cherry picked from commit 6dc3fae201)
2021-10-23 12:02:48 +02:00
SeleckyErik 98c0ffb749 Add BAKE_ERROR_NO_ROOT to BakedLightmap
Add new error type to BakeError to signalise that there is no root node to
start baking from.
Document the new error type, as well as BAKE_ERROR_NO_LIGHTMAPPER.
2021-10-21 13:32:03 +02:00
Rémi Verschelde 90f8cd89a7
Merge pull request #50560 from noidexe/patch-1 2021-10-18 23:01:52 +02:00
Rémi Verschelde c743649c0b
Merge pull request #53742 from DmitriySalnikov/exposed_sensor_setters 2021-10-18 23:01:07 +02:00
Rémi Verschelde 0fb135d598
Merge pull request #53779 from m4gr3d/restrict_project_data_dir_config_3x 2021-10-18 22:58:51 +02:00
Hugo Locurcio dc3b614a6a
Tweak AudioStreamPlayer3D property hints for usability
This also improves the documentation for the `max_distance` property.

(cherry picked from commit b383181851)
2021-10-18 11:24:42 +02:00
Rémi Verschelde fbcf442260
Merge pull request #53651 from pycbouh/docs-warn-about-internal-nodes-3.x 2021-10-18 11:24:08 +02:00
Rémi Verschelde f6784e18d1
Merge pull request #53848 from MaxLap/backport_doc_shape_signals 2021-10-15 18:54:43 +02:00
Maxime Lapointe f3002c62b7 Improve area/body_shape_entered/exited signals parameter names and doc
Fix some typoed names from the doc
Add _index to "index" parameters of *_shape_* signals, this is both in doc and in the template. This makes the code, signature and doc easier to understand
Add method to get Node from the _index params of those signals. This was not as easy to find as one would expect. Putting this information where it is needed will help.
2021-10-15 11:28:17 -04:00
Xeadriel 78b247c91e
Add that elapsed_time in CharFXTransform resets when RichTextLabels text is changed
Update doc/classes/CharFXTransform.xml Grammar fix

Co-authored-by: Aaron Record <50304111+LightningAA@users.noreply.github.com>
(cherry picked from commit bf5f5e159e)
2021-10-15 12:51:42 +02:00
Fabio Alessandrelli 6c4bb3fc4a Revert HTTPRequest gzip compression support.
Partial revert of commit c1135cf006.
2021-10-14 12:51:37 +02:00
Fredia Huya-Kouadio 2b6678c851 Restrict the project data directory configuration. 2021-10-13 13:56:01 -07:00
Rémi Verschelde 6fb7f18e35
Merge pull request #53740 from clktmr/gles2-multiple-refprobes 2021-10-13 12:42:23 +02:00
Timur Celik e230bc6caa Fix flipped `interior` option for second refprobe
This patch fixes rendering of multiple reflection probes for a single
mesh in the GLES2 renderer.  If there were two reflection probes, one of
them would always have the `interior` option flipped, resulting in
broken blending between probes and flickering of ambient reflection.

Also make note of GLES2 reflection probe limit
2021-10-13 10:04:48 +02:00
Rémi Verschelde 4186c5e757
Merge pull request #53490 from briansemrau/thread-is-alive-3.x
[3.x] [core_bind] Add `Thread::is_alive`
2021-10-12 22:35:26 +02:00
Дмитрий Сальников 5cf898b897 Exposed setters for sensor values in Input class 2021-10-12 23:09:30 +03:00
Fredia Huya-Kouadio d1808f0a7f Make the project data directory customizable. 2021-10-11 14:42:40 -07:00
zacryol df1eebd8d8
Mention remove_node() side effect of potentially setting owner to null
(cherry picked from commit 6941ab9ae5)
2021-10-11 12:50:04 +02:00
Yuri Sizov b02c61ddb1 Ignore OS specific values (constants, project settings, properties)
Co-authored-by: bruvzg <7645683+bruvzg@users.noreply.github.com>
2021-10-10 23:40:32 +03:00
Yuri Sizov 2401f1cf65 Add warnings to methods that give access to internal nodes 2021-10-10 23:10:07 +03:00
Lisandro Lorea 56f66aa8fc Clarify that resize doesn't initialize memory
Some users might expect resize() to initialize added elements to zero. This clarifies that it is not the case.
2021-10-09 13:46:04 -03:00
Hugo Locurcio 7dcefa7c1b
Add a warning for Timer nodes with very low wait times
Very low wait times behave in unpredictable ways depending on the
rendered frame rate. This is because the timeout signal is only emitted
once per rendered frame (or physics frame, depending on the timer's
process mode).
2021-10-09 11:36:03 +02:00
Rémi Verschelde 7843c871d0
Fix missing argument names in FileSystemDock bindings 2021-10-09 00:31:22 +02:00
Rémi Verschelde 302ad4e600
Merge pull request #52918 from Calinou/add-new-light-attenuation-3.x 2021-10-08 23:08:49 +02:00
Hugo Locurcio 85e080fcc0
Backport new 3D point light attenuation as an option
This provides more realistic lighting with a very small performance cost.
The option is available in both GLES3 and GLES2, and can be enabled in
the Project Settings. This goes well with the ACES Fitted tonemapping mode
that was recently added.

When enabled, this also makes upgrading Godot 3.x projects to Godot 4.0 easier,
since lighting in 3.x will better match how it'll look in Godot 4.0.
2021-10-08 22:15:22 +02:00
Rémi Verschelde 06fc2378de
Merge pull request #51491 from Calinou/glow-add-high-quality-mode-3.x
Add high quality glow mode (3.x)
2021-10-08 07:47:07 +02:00
Hugo Locurcio 761047076c
Document null argument limitation with `SceneTree.call_group()` 2021-10-07 18:55:44 +02:00
Brian Semrau d734bcc289 [core_bind] Add `Thread::is_alive` 2021-10-06 13:18:40 -04:00
Rémi Verschelde c7eb3d25e7
doc: Fix style inconsistencies for `[b]Note:[/b]` paragraphs
(cherry picked from commit 788b3aa27a)
2021-10-06 09:29:32 +02:00
PouleyKetchoupp 9bc1b4b90e Improved logic for KinematicBody collision recovery depth
Allows more flexible collision detection with different safe margin values.

Kinematic body motion changes in 2D and 3D:
-Recovery only for depth > min contact depth to help with collision
detection consistency (rest info could be lost if recovery was too much)
-Adaptive min contact depth (based on margin) instead of space parameter
2021-10-05 17:00:55 -07:00
Rémi Verschelde 77f52bdf99
Merge pull request #52137 from Ansraer/3.x-2d-scale-factor 2021-10-05 19:12:19 +02:00
Ansraer d44aa61735 implement better ui scaling 2021-10-05 14:30:38 +02:00
Rémi Verschelde 4e85135c37
Merge pull request #53429 from KoBeWi/listener3.x 2021-10-05 13:57:28 +02:00
kobewi f9720a9bf2 Add Listener2D 2021-10-05 13:29:59 +02:00
lawnjelly 192ec963ae Create 'rendering/misc' project settings section
To prevent the project settings `rendering` section getting out of hand, this PR moves some of the smaller new settings into a `misc` category.
2021-10-05 11:47:03 +01:00
Rémi Verschelde 59930dca00
Merge pull request #53263 from Calinou/editor-inspector-warning-yellow-3.x 2021-10-05 11:12:44 +02:00
Rémi Verschelde 72a922eb4e
Merge pull request #53300 from Calinou/viewport-tweak-configuration-warning-3.x 2021-10-04 20:31:05 +02:00
Rémi Verschelde 55c9cc21e9
Merge pull request #53397 from pycbouh/theme-improve-change-propagation-3.x
[3.x] Make `Theme` report property list changes less often, and other backports
2021-10-04 18:05:16 +02:00
Yuri Sizov 98cf645258 Expose API to retrieve Theme's default font 2021-10-04 17:44:53 +03:00
Hugo Locurcio d71ed9d287
Document SurfaceTool must generate tangents for proper normal display
(cherry picked from commit d339388942)
2021-10-04 15:15:27 +02:00
zacryol 3e4e87fb90
Fix typo with example variable name in Dictionary docs, and fix error in C# example
(cherry picked from commit 9359bee75c)
2021-10-04 14:36:59 +02:00
Hugo Locurcio ebdbace62a
Document that tangents are required for normal mapping in SpatialMaterial 2021-10-01 19:05:58 +02:00
Hugo Locurcio c6617e956c
Tweak the Viewport configuration warning to mention 2×2 size requirement 2021-10-01 16:43:33 +02:00
Hugo Locurcio deeeabc2ba
Clarify what the `Node.filename` property contains
(cherry picked from commit f23b917007)
2021-10-01 08:01:47 +02:00
Haoyu Qiu 44ea7e7c4f
Fix doc for Dictionary.erase
(cherry picked from commit 1e0fe9f817)
2021-10-01 08:00:59 +02:00
Hugo Locurcio 26671e7407
Use a yellow color for editable children properties instead of red
This matches the usual "Changes may be lost!" warning color.
2021-09-30 18:41:46 +02:00
O01eg cddabf2a8b
Implement override of get_message 2021-09-29 14:06:57 +03:00
Rémi Verschelde 462b8dfe96
Merge pull request #53041 from pycbouh/docs-color-picker-and-button-3.x 2021-09-28 12:14:00 +02:00
Michael Alexsander b4d6afb7ad
Expose `TabContainer`'s tab hidding for scripts
(cherry picked from commit 7ce02b642e)
2021-09-27 18:06:36 +02:00
skyace65 370fa82b2c
Add note that for _gui_input(event) event position is relative to the control origin
(cherry picked from commit 824259aca0)
2021-09-27 17:57:50 +02:00
Yuri Sizov dd2a01cbbe Add usability notes to ColorPicker and ColorPickerButton descriptions
Co-authored-by: follower <follower@rancidbacon.com>
2021-09-25 02:21:39 +03:00
kobewi d0a8e6d563
Improve call_group documentation
(cherry picked from commit 31ef94f2ec)
2021-09-21 20:33:12 +02:00
Rémi Verschelde b4fc24b73f
Implement `OS::get_locale_language()` helper method
This method extracts the 2 or 3-letter language code from `OS::get_locale()`,
making it easier for users to identify the "main" language code for users
that might have different OS locales due to different OS or region, but
should be matched to the same translation (e.g. "generic" Spanish).

Fixes #40703.

(cherry picked from commit def99c7baf)
2021-09-21 20:33:12 +02:00
bruvzg 131f913747
Improve `OS::get_locale()` on macOS and Windows, replace "-" with "_" and use system macros instead of bitwise AND. Add locale format info to the documentation.
(cherry picked from commit f797e1c078)
2021-09-21 20:33:11 +02:00
Hugo Locurcio 6702e37a88
Document how to delay code execution in a non-blocking manner
(cherry picked from commit 1529bf7c10)
2021-09-21 20:33:11 +02:00
mechPenSketch 68b8cf75ea
Add Graph Illustrations to Doc
(cherry picked from commit 9ea619c486)
2021-09-21 20:33:11 +02:00
Nick Huelin e902ee06ef
Add note to `SceneTree` about pausing
This pull request adds a small amendment to `SceneTree` describing the behavior `_physics_process()` when pausing the scene.

`_physics_process` will completely stop processing collisions and signals whenever the scene is paused, however, the function will still receive calls.

This addresses: #47326

(cherry picked from commit d62175e009)
2021-09-21 17:15:01 +02:00
Nick Huelin 03af0f3e94
Add note to `RichTextLabel`
(cherry picked from commit 4a0cadd4ed)
2021-09-21 17:15:01 +02:00
Jummit d29095027b
clarify what duplicate does and its limitations
(cherry picked from commit a6108f8a3d)
2021-09-21 17:15:00 +02:00
Marcus Brummer c75aa69774
Documented that mutexes are implemented recursively
(cherry picked from commit 46bbeb2b60)
2021-09-21 17:15:00 +02:00
georgespatton de009a29c8
doc: Clarify need to save ConfigFile to apply changes to file
See #52645 for context.

(cherry picked from commit fd8bdddd5d)
2021-09-21 17:15:00 +02:00
Hugo Locurcio df0210a508
Document caveats with StyleBoxFlat antialiasing and beveled corners
(cherry picked from commit f7f8ae6372)
2021-09-21 17:15:00 +02:00
skysphr f53294f874
Added increment_pressed and decrement_pressed icons to scrollbars
(cherry picked from commit e27ab2708f)
2021-09-21 17:14:59 +02:00
kobewi 44a56c9742
Add offset for TextureProgress progress texture
(cherry picked from commit e78ee616f7)
2021-09-21 17:14:59 +02:00
Hugo Locurcio 415b7a7bfc
Improve documentation for `String.get_extension()`
(cherry picked from commit 09eb98c530)
2021-09-21 17:14:58 +02:00
Hugo Locurcio 3872986f1f
Document `Object.get_class()/is_class()` ignores `class_name` declaration
(cherry picked from commit a15847e5ca)
2021-09-21 17:14:58 +02:00
Hugo Locurcio 348152b3c9
Document that ConfigFiles can use any file extension
The file extension given to a ConfigFile has no impact on its
formatting or behavior.

(cherry picked from commit 9c6ae95cb2)
2021-09-21 17:14:58 +02:00
Rémi Verschelde 8ea1ad6725
Merge pull request #52772 from Calinou/editor-default-enable-doppler-3.x 2021-09-21 11:30:03 +02:00
Rémi Verschelde 91d0e985cd
Merge pull request #52572 from timothyqiu/expose-enum-3x
[3.x] Expose enum related methods in ClassDB
2021-09-20 16:12:16 +02:00
Zak fb17ac885a
Improve docs for Thread
An attempt to improve the documentation for Thread
- Adds documentation on how and when the `wait_to_finish` should be used
- Adds a note on what to be careful about when using `wait_to_finish`

(cherry picked from commit 9e2882a989)
2021-09-20 12:49:13 +02:00
Kyle cc04b4ceba
Wrote JNISinglton docs
I added a few descriptions and links to the empty JNISingleton class doc.

(cherry picked from commit 4eff57d39b)
2021-09-20 12:47:43 +02:00
Austin Tasato af76e5fddc
Add "Physics intro" docs link for State classes
(cherry picked from commit ce8eb09a25)
2021-09-20 12:42:17 +02:00
Hugo Locurcio e1330418ab
Document that node groups don't have a guaranteed order
(cherry picked from commit 0adf1a6683)
2021-09-20 12:31:56 +02:00
Arthur Paulino e1be41b2c6
improving note on HTTPRequest class under the request method documentation
(cherry picked from commit 1ed3d9a0b0)
2021-09-19 11:30:21 +02:00
Rémi Verschelde 1a30a285a9
Merge pull request #52454 from skyace65/ExpRange34 2021-09-17 23:12:36 +02:00
Hugo Locurcio 4914b57222
Enable Doppler preview in the 3D editor by default
This makes setting up AudioStreamPlayer3D nodes for Doppler playback
a bit easier.

- Move AudioStreamPlayer3D's Doppler Tracking property outside a group
  since the group only had 1 property, which resulted in unnecessary
  folding in the inspector.
- Put the AudioStreamPlayer3D Playing and Autoplay properties higher up
  in the inspector since these are likely to be modified often.
2021-09-17 18:51:09 +02:00
Camille Mohr-Daurat bb885c5704
Merge pull request #52369 from bengtsts/3.x
Expose soft body pin methods to GDScript
2021-09-17 06:19:54 -07:00
Bengt Söderström 2117584690 Documented soft body pinning methods 2021-09-17 11:25:53 +02:00
Álex Román Núñez 43bc8830f1 Fix InputMap.action_erase_event() failing to erase events correctly.
Fixes #52733

(3.x backport of 7104229a85)
2021-09-17 03:08:21 +02:00
Max Hilbrunner f8e3840913
Merge pull request #49039 from madmiraal/fix-docs-3407-3.x
[3.x] Clarify documentation of Camera.get_camera_transform()
2021-09-16 00:22:06 +02:00
Max Hilbrunner 1d07feca54
Merge pull request #49042 from madmiraal/fix-docs-4085-3.x
[3.x] Clarify that eof_reached() cannot be used to check if more data is available
2021-09-16 00:20:12 +02:00
Rémi Verschelde 25cbb858bc
Merge pull request #51935 from nekomatata/android-transparency-3.x
[3.x] Window transparency support on Android
2021-09-15 22:34:12 +02:00
Fabio Alessandrelli 97a8b7c68e
Merge pull request #52723 from Faless/js/3.x_mix_rate
[3.x] [HTML5] Use browser mix rate by default on the Web.
2021-09-15 21:49:26 +02:00
Fabio Alessandrelli b800438efb [HTML5] Use browser mix rate by default on the Web.
Browsers doesn't really like forcing the mix rate, e.g. Firefox does not
allow input (microphone) if the mix rate is not the default one, Chrom*
will exhibit worse performances, etc.
2021-09-15 20:36:19 +02:00
PouleyKetchoupp 52fdb4ece9 Window transparency support on Android
Implements per-pixel transparency feature on Android.
Allows plugins to do specific rendering and render godot UI on top
(useful for camera support with drawing on top).
2021-09-15 10:41:08 -07:00
Hugo Locurcio 622f0b7d38
Document that most emoji won't display correctly on Windows 2021-09-15 18:52:21 +02:00
Yuri Roubinsky b36b81cbdd
Better port handling connection for `GraphEdit`
(cherry picked from commit 61904d56ea)
2021-09-14 13:41:27 +02:00
Hugo Locurcio 9aee1a3992
Document `Image.generate_mipmaps()` always running on the main thread
(cherry picked from commit 30a88f464b)
2021-09-14 13:41:26 +02:00
LoipesMas 7f0094ca9f
Add note about batching to Line2D's anti-aliasing
(cherry picked from commit b047430702)
2021-09-14 13:41:25 +02:00
Vincent ea13ff860d
implement individual mesh transform for meshlibrary items
(cherry picked from commit 70108fd850)
2021-09-14 13:41:22 +02:00
Rémi Verschelde 37fab65e00
Merge pull request #52477 from Lauson1ex/3.x
Add a new high quality tonemapper: ACES Fitted (3.x)
2021-09-13 17:37:22 +02:00
Hugo Locurcio 31c07bcca7
Improve documentation for `Engine.get_idle_frames/get_physics_frames()` 2021-09-12 23:10:06 +02:00
Haoyu Qiu 468a2a2a65 Expose enum related methods in ClassDB 2021-09-11 20:33:29 +08:00
Endri Lauson 077083938e Add a new high quality tonemapper: ACES Fitted 2021-09-08 19:12:09 -03:00
Max Hilbrunner 76693aa364
Merge pull request #52182 from lawnjelly/portals_pvs_enum
Portals - Fix RoomManager PVS enum
2021-09-07 21:23:48 +02:00
Gilles Roudière cf48297ea2
Merge pull request #52047 from nobuyukinyuu/bind-get-tab-idx-at-point
[3.x] Bind TabContainer::get_tab_idx_at_point() to ClassDB
2021-09-07 11:10:27 +02:00
skyace65 b926059f78 Fix EXP range property hint description 2021-09-06 21:29:39 -04:00