Commit Graph

3507 Commits

Author SHA1 Message Date
lawnjelly 9d44a88e0b
Visibility Notifier / Enabler classref mention Portals
Fixes the classref to show that these do not take account of occlusion except when using Portals.

(cherry picked from commit b8d3d97b6a)
2021-12-14 17:30:50 +01:00
Hugo Locurcio 4dcce2cf30
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.

(cherry picked from commit 6b26012284)
2021-12-14 17:30:27 +01:00
Haoyu Qiu 1230169ad1
Fix broken links in Class Reference
(cherry picked from commit b1153f8829)
2021-12-10 17:30:31 +01:00
Rémi Verschelde 6fb47a271f
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`.
2021-12-10 11:49:04 +01:00
Rémi Verschelde f4b3c3ff09
i18n: Sync classref translations with Weblate 2021-12-10 11:46:57 +01:00
Hugo Locurcio c089e687cf
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.

(cherry picked from commit 2fe15124de)
2021-12-09 12:08:10 +01:00
Raul Santos a10372fe9a
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:06:12 +01:00
Yuri Sizov e77c6aaba7
Sort and group theme properties in docs, improve formatting for theme and enums
(cherry picked from commit ebd8101546)
2021-12-07 12:14:59 +01:00
Manolis Papadeas 8c59dbda33
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-07 09:14:31 +01:00
Hugo Locurcio 6ff6c503d0
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.

(cherry picked from commit 796ea60d11)
2021-12-07 09:14:31 +01:00
Raffaele Picca 47f9a316ce
Fix Ring-Axis parameter being always visible
(cherry picked from commit 2f69caaff3)
2021-12-07 09:14:31 +01:00
Marcel Admiraal ca3ab75697
Allow any kind of Mesh to be added to an EditorSpatialGizmo
(cherry picked from commit e0729b9c79)
2021-12-07 09:14:31 +01:00
kleonc d3b0436cfb
Clarify Transform.xform_inv docs
(cherry picked from commit c20d097636)
2021-12-07 09:14:31 +01:00
kobewi 03bfedc67c
Improve store_string() description
(cherry picked from commit 09b1fc1956)
2021-12-07 09:14:27 +01:00
Rémi Verschelde 187530de7d
doc: Fixup Tabs reference after cherry-pick
(cherry picked from commit 6cf77f80b5)
2021-11-30 14:47:22 +01:00
zacryol 7a79ee014d
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 11:00:05 +01:00
Yuri Sizov 93fe9ecb97
Add methods to get position from column and line in TextEdit
(cherry picked from commit ba747e2a26)
2021-11-29 16:44:34 +01:00
zacryol afa8844679
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:40:48 +01:00
kobewi f5ea27e587
Mention that replace_by doesn't free the node
(cherry picked from commit 58a3ea5453)
2021-11-25 23:13:16 +01:00
bruvzg b8f888a43b
Add Input.is_physical_key_pressed method.
(cherry picked from commit 9877d91c4a)
2021-11-25 23:13:15 +01:00
Hugo Locurcio 5555a69b5e
Document the engine's use of internal groups in Node
(cherry picked from commit f8d9e4afdb)
2021-11-25 23:13:15 +01:00
kobewi b8bda1fb67
Clarify get_indexed in relation to Nodes
(cherry picked from commit 4ea6709558)
2021-11-25 23:13:15 +01:00
lawnjelly 07e5022cce
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.

(cherry picked from commit 211dc8cd2d)
2021-11-25 23:13:14 +01:00
Haoyu Qiu 58dc743a2c
Allow toggle TextEdit bookmark gutter
(cherry picked from commit eb6f74855f)
2021-11-25 23:13:14 +01:00
kobewi cce91ce6e0
Mention how to add margins to Button's icon
(cherry picked from commit 2341c7bbd9)
2021-11-25 21:03:42 +01:00
Rémi Verschelde f737ed4da0
i18n: Sync classref translations with Weblate 2021-11-19 09:54:07 +01:00
Hugo Locurcio a49e3bb449
Document low performance when using `SurfaceTool.append_from()` in thread
(cherry picked from commit f39375d315)
2021-11-15 22:47:24 +01:00
lawnjelly 7de023e192
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.

(cherry picked from commit 788f075b44)
2021-11-15 22:45:57 +01:00
Hugo Locurcio fc749f7f8b
Improve the GIProbe and BakedLightmap class documentation
This adds information about performance and procedural generation.

(cherry picked from commit 194d45f11d)
2021-11-15 22:37:51 +01:00
Benjamin Armstrong 4f2993b124
Clarify how 'audio/driver/output_latency' project setting works
(cherry picked from commit 1e485a7da8)
2021-11-15 22:35:33 +01:00
Rémi Verschelde 9868850a9f
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 22:35:01 +01:00
boruok 0a2dadb639
fixed typo in NavigationPolygon doc
(cherry picked from commit 30d22305e1)
2021-11-15 22:34:11 +01:00
PouleyKetchoupp f9710ecb5e
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.

(cherry picked from commit 1560c8b5aa)
2021-11-15 22:33:16 +01:00
PouleyKetchoupp 7344beafdd
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.

(cherry picked from commit b93aeec4a2)
2021-11-15 22:32:53 +01:00
Kongfa Waroros 5f27fd458c
Fix little typos in 3.x doc
(cherry picked from commit 0d852bf5a6)
2021-11-15 22:22:45 +01:00
PouleyKetchoupp c2a108fe7d
Expose intersect_point in 3D physics server
Also cleaned a few things in the documentation for 2D.

(cherry picked from commit fc2bd63ca0)
2021-11-15 22:22:31 +01:00
Hugo Locurcio 231883bdcc
Improve description for `BitMap.grow_mask()`
(cherry picked from commit e3d23d444c)
2021-11-04 19:55:56 +01: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
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
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
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