Commit Graph

3723 Commits

Author SHA1 Message Date
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
Rémi Verschelde e9484e057d
i18n: Sync classref translations with Weblate 2022-01-07 13:30:22 +01:00
Rémi Verschelde c62de9abec
i18n: Make more `make_rst.py` strings translatable
For now we leave out the strings which could break rst table formatting.

(cherry picked from commit fd1d0c28c2)
2022-01-07 13:30:21 +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
Rémi Verschelde f2ddafd860
i18n: Add `--lang` option to `make_rst.py` to write translated headings
Add a few missing headings to the translation templates.

(cherry picked from commit b98785309f)
2021-12-21 14:40:13 +01:00
Rémi Verschelde aac4e36149
i18n: Sync classref translations with 3.x branch (3.5-beta)
This is the new base branch for the classref translations to prepare them
for the 3.5 release.

This means that the 3.4 class ref translations will likely no longer get
updates, as we can't easily maintain two slightly different branches on
Weblate.
2021-12-21 12:33:57 +01:00
Rémi Verschelde 8ed5192f74
i18n: Sync classref translations with Weblate
(cherry picked from commit eb4816ee13)
2021-12-21 12:33:57 +01:00
Rémi Verschelde 05faadab2d
i18n: Remove line numbers from classref PO files
It's useful context for translators but it generates very spammy diffs whenever
a line is added or removed, changing the comments for hundreds or thousands of
msgids needlessly.

We still have the file names so it's relatively easy to search in file to find
the location of the source string.

(cherry picked from commit dbfe36728e)
2021-12-21 12:33:56 +01: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
Haoyu Qiu 36642738e0 Update `make_rst.py` for non-latin texts 2021-12-21 16:36:53 +08: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 d32a763c17
i18n: Sync classref translations with current docs
(cherry picked from commit f8b4412b51)
2021-12-16 17:05:49 +01:00
Rémi Verschelde 754fc89d28
i18n: Sync classref translations with Weblate
(cherry picked from commit 9f838dbece)
2021-12-16 15:15:46 +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
Rémi Verschelde 95f895f087
i18n: Remove deleted translations from PO files
Since we bundle the whole files in the editor binary, they actual impact the
binary size needlessly.

Automate it via `make merge`.

(cherry picked from commit 6fb47a271f)
2021-12-10 11:52:45 +01:00
Rémi Verschelde 213f7cb719
i18n: Sync classref translations with Weblate
(cherry picked from commit f4b3c3ff09)
2021-12-10 11:52:41 +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
Rémi Verschelde 54490e9ebb
i18n: Sync classref translations with Weblate
(cherry picked from commit f737ed4da0)
2021-11-19 09:54:45 +01: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
Rémi Verschelde 0cdcf1154f
Allow dehardcoding documentation branch and URL in docs links
This makes it possible to change the branch of the documentation that
URLs are pointing to without having to modify all class reference
files.

In the XML class reference, the `$DOCS_URL` placeholder should be used,
and will be replaced automatically in the editor and when generating
the RST class reference.

The documentation branch string is set in `version.py`.

Co-authored-by: Hugo Locurcio <hugo.locurcio@hugo.pro>
(cherry picked from commit 5341e6010e)
2021-11-15 17:22:47 +01:00
kobewi 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
Rémi Verschelde 0b694eb8e7
i18n: Sync classref translations with Weblate
German (de) is now above the threshold for inclusion.
2021-11-03 15:00:52 +01: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
Aaron Franke 69e90daae3
Rename "makerst.py" to "make_rst.py"
(cherry picked from commits 8f05e26198
and cce7797a75)
2021-10-26 13:34:36 +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 8425c58991
i18n: Only include editor translations above a threshold
This reduces the size of the editor binaries significantly, as we otherwise
embed all WIP translations, including ones with very low completion ratios,
and end up paying for the size of all `msgid`s for each locale.

Cf. https://github.com/godotengine/godot-proposals/issues/3421 for details.

The thresholds used are:
- 30% for the editor interface (should already include most common strings
  while more obscure ones like UndoRedo action names might be untranslated).
- 10% for the class reference: this is a HUGE resource and 10% is already
  a lot of useful content, especially if focused on the most used APIs.

For 3.x, we also exclude languages that require complex text layout support
to be displayed properly.

This currently reduces the size of the editor binary by 17% on Linux.

The list will be synced manually every now and then.
2021-10-20 14:39:21 +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
Rémi Verschelde c17f051ee9
i18n: Sync classref translations with Weblate 2021-10-18 11:58:55 +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
Anutrix d238b15c15
Remove unused imports in .py, SCsub and SConstruct files
(cherry picked from commit a4b736658e)
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
Rémi Verschelde 0b7c957ce8
i18n: Sync classref template with current `3.x` docs
Merge the PO translations with the new template.
This adds the following changes:

- 8000 strings are still valid as is (80%)
- 2000 strings are marked fuzzy and need reviewing (20%)
- 1000 strings are new and need translation
2021-10-07 14:05:46 +02:00
Rémi Verschelde 831e85f4d9
i18n: Sync classref translations with Weblate
These are based on the `master` API from mid-2020 so they're somewhat outdated.
Some strings will be marked as fuzzy (needs review) and new strings will be
added in the next commit.
2021-10-07 14:04:08 +02:00
Rémi Verschelde ab80f9d9b2
i18n: Add Makefile to extract classref strings
Change extract script `path` argument to support specifying multiple
paths, like `makerst.py`. This prevents parsing invalid XML files while
scanning the whole repository.

(cherry picked from commit 87d23bf85a)
2021-10-07 12:48:22 +02:00
Rémi Verschelde 01707c28c9
i18n: Add header strings to translation catalog
(cherry picked from commit aca1971a12)
2021-10-07 12:48:21 +02:00
Thakee Nathees eac1752b68
Add script to generate translation catalog for the class reference
Fixes #37109.

(cherry picked from commit e817792c0a)
2021-10-07 12:11:40 +02:00
Brian Semrau d734bcc289 [core_bind] Add `Thread::is_alive` 2021-10-06 13:18:40 -04:00
Rémi Verschelde 322387b694
makerst: Make external links anonymous
Otherwise we get errors if we use the same title for different links in a given class.

(cherry picked from commit 1e36f5f524)
2021-10-06 09:29:32 +02: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