Commit Graph

2618 Commits

Author SHA1 Message Date
Maganty Rushyendra 25af738762 Expose `get_char_size()` from Font instead of BitmapFont
`get_char_size()` is a public virtual function defined in the `Font`
class. Implementations exist for both `BitmapFont` and `Dynamic Font`.
However, it was only exposed to the GDScript API through the Bitmap
Font, and not for Dynamic Font.

This commit exposes the function through `Font` instead.

Fixes #23967

(cherry picked from commit a4413710f9)
2020-06-04 12:09:39 +02:00
Gustav 26c617654e Fix ProjectSettings.save_custom documentation
(cherry picked from commit 728c0c1e14)
2020-06-04 12:09:39 +02:00
Maganty Rushyendra e51767b3c0 Document usage requirement for Viewport to sample ViewportTexture as HDR
Modified class documentation to specify that `USAGE_3D` or
`USAGE_3D_NO_EFFECTS` is required in order to use HDR in a ViewPort.

Fixes #38702
2020-05-29 08:05:35 +08:00
lawnjelly c7d18dec70 Rename batching project settings in preparation for GLES3
As it now seems like we will soon have GLES3 batching working using the same intermediate layer as GLES2, it makes more sense to reuse the same batching settings for both renderers rather than duplicate project settings for GLES2 and GLES3.
2020-05-26 18:15:35 +01:00
Rémi Verschelde acb83db1d1 doc: Sync classref with current source 2020-05-25 17:00:22 +02:00
Rémi Verschelde 11d6c0f20d
Merge pull request #38984 from Calinou/bakedlightmap-configuration-warning
Document known bugs in BakedLightmap
2020-05-25 11:28:16 +02:00
Hugo Locurcio 5fb5fb135a
Document known bugs in BakedLightmap
See #30929.
2020-05-24 21:29:12 +02:00
Rémi Verschelde b6c551e864
Merge pull request #38875 from bruvzg/tab_drv_sel_32
[Windows, 3.2] Add tablet driver selection.
2020-05-20 13:58:26 +02:00
bruvzg 71b2abbfa3
[Windows, 3.2] Add tablet driver selection. 2020-05-20 09:36:56 +03:00
Hugo Locurcio 8ebcdeb3d7 Document that Dictionary is always passed as reference
See #38792.

(cherry picked from commit 675fea1648)
2020-05-18 16:40:33 +02:00
Max Hilbrunner ebc63dac30
Merge pull request #38784 from remram44/patch-1
[DOC] Update description of Object.free() method
2020-05-17 20:33:57 +02:00
Fredia Huya-Kouadio a71a338c59 Implementation of the Godot Android Plugin configuration file 2020-05-16 23:09:45 -07:00
Remi Rampin ccf5703568
Update description of Object.free() method
Clarify that variables pointing to an object don't become `null` when that object is freed, it just makes them invalid.
2020-05-16 12:32:41 -04:00
Rémi Verschelde d45b96d2b1 Android: Check for deprecated GodotPaymentV3 module, direct to new plugin
Fixes #38581.
2020-05-15 13:32:30 +02:00
Marcel Admiraal dd7f9b1c08 Make it clear that PhysicsDirectSpaceState is only available from
within _physics_process().

(cherry picked from commit bb9c104695)
2020-05-13 16:13:47 +02:00
Hugo Locurcio 47d003fbb8 Clarify that the SSL certificate setting overrides the default bundle
See https://github.com/godotengine/godot-docs/issues/2531.
2020-05-12 11:52:57 +02:00
Hugo Locurcio e77313b3ed Clarify the `id` parameter in `TileMap.get_used_cells_by_id()` 2020-05-12 09:26:38 +02:00
Chris Bradfield 752f61d4fe [DOCS] minor description changes
(cherry picked from commit 975ed93794)
2020-05-11 11:01:13 +02:00
Tomasz Chabora 79f3725bdd Add documentation for the VisualShader nodes
(cherry picked from commit fecf79f287)
2020-05-11 11:01:13 +02:00
lawnjelly dcb19ed735 Add Nvidia Workaround for GLES3
Ported GLES2 workaround code to GLES3.
2020-05-07 14:54:14 +01:00
Rémi Verschelde 4daba9bfc5 doc: Sync classref with current source 2020-05-07 13:47:06 +02:00
Thakee Nathees 1a39b4ea22 method bind TextEdit::set_line() added
(cherry picked from commit b9acf1cedf)
2020-05-07 13:43:43 +02:00
Marcel Admiraal 87de81258d Make 2D and 3D KinematicBody stop_on_slope documentation the same.
(cherry picked from commit da13b74cc8)
2020-05-07 13:37:19 +02:00
follower 90f9f01a2f Fix suffix property doc typo: "prefix" -> "suffix"
(cherry picked from commit ae067413a5)
2020-05-06 23:30:45 +02:00
bruvzg 78266c09c4
Add support for the WinTab API for pen input. (3.2) 2020-05-05 14:56:02 +03:00
Hugo Locurcio 2293cf61c6 Document the expected normal map coordinate system where relevant
(cherry picked from commit d8808fba85)
2020-05-05 13:41:29 +02:00
Rémi Verschelde ef715f37d5
Merge pull request #35091 from Faless/dtls/enet
[3.2] DTLS support + optional ENet encryption
2020-05-05 13:40:59 +02:00
lawnjelly 53f6dafdde Added 'disable_half_float' project setting to the class reference.
Just forgot to do this in the original PR.
2020-05-05 09:31:10 +01:00
Rémi Verschelde e363b65b99 doc: Sync classref with current source 2020-05-04 16:10:57 +02:00
Bastiaan Olij 02b1a5de47 Added missing spring enums for generic_6dof_joint
(cherry picked from commit 45d1f41837)
2020-05-04 16:10:22 +02:00
Hugo Locurcio 23ee40deff Tweak Tween cheatsheet link formatting to avoid rST conversion bug
reStructuredText doesn't allow embedding links in bold/italic text.

(cherry picked from commit e8a2fa6b7d)
2020-05-04 16:10:22 +02:00
Rémi Verschelde 01a085d05f
Merge pull request #38320 from lawnjelly/kessel_pr_light_join
GLES2 2D batching - item reordering, light joining and light modulate fix
2020-05-01 15:03:03 +02:00
Revan Ji 6a7d50403a Add set_frame, pause, and oneshot to AnimatedTexture
Add API documentation for said changes.

(cherry picked from commit f5029e18ca)
2020-05-01 11:00:10 +02:00
Hugo Locurcio be56ec9e65 Document the formats supported by `Image.load()`
This partially addresses #32166.

(cherry picked from commit a26649de42)
2020-05-01 10:56:58 +02:00
Hugo Locurcio 6fb6107e6a Warn when trying to open `res://` or `user://` with `OS.shell_open()`
`OS.shell_open()` will pass on the path directly to the OS' shell
handler (which can handle file paths or URLs). It can't handle
Godot-specific paths, so these need to be converted with
`ProjectSettings.globalize_path()` first.

(cherry picked from commit d46e411b44)
2020-05-01 10:56:58 +02:00
Bojidar Marinov 4b58d453d4 Expose the cell_size affecting VisibilityNotifier2D precision
Refs: #4803
(cherry picked from commit d49ff7aff7)
2020-05-01 10:56:58 +02:00
Hugo Locurcio 782d9536f3 Improve the compression project settings documentation
(cherry picked from commit b2b8db7897)
2020-05-01 10:56:58 +02:00
Tomasz Chabora 6bb87d7d23 Mention how to remove TreeItem from a Tree
(cherry picked from commit f6aec99d27)
2020-05-01 10:56:58 +02:00
Markus Sauermann e88cde0415 Clarify Transform scaled Method description.
(cherry picked from commit 19c8b0be45)
2020-05-01 10:56:58 +02:00
Avantir-Chaosfire fd6424aa04 doc: Improve Node2D to_local/to_global description
(cherry picked from commit 5c6f824e71)
2020-05-01 10:56:57 +02:00
lawnjelly 451c3fc0fb GLES2 2D batching - item reordering, light joining and light modulate fix
Although 2D draws in painters order with strict ordering, in certain circumstances items can be reordered to increase batching / decrease state changes, without affecting the end result. This can be determined by an overlap test.

In situation with item:
A-B-A
providing the third item does not overlap the second, they can be reordered:
A-A-B

Items already contain an AABB which can be used for this overlap test.

1)
To utilise this, I have implemented item reordering (only for single rects for now), with the lookahead adjustable in project settings. This can increase performance in situations where items may not be grouped in the scene tree by texture. It can also be switched off (by setting lookahead to 0).

2)
This same trick can be used to help join items that are lit. Lit items previously would prevent joining completely, thus missing out on performance gains other than multi-command items such as tilemaps.

In this PR, lights are assigned as bits in a bitfield (up to 64, the optimization is disabled above this), and on each try_item (for joining), the bitfield for lights and shadows is constructed and compared with the previous items. If these match the 2 items can potentially be joined. However, this can only be done without changing the rendered result if an overlap test is successful.

This overlap test can be adjusted to join items up to a specific number of item references, selectable in project settings, or turned off.

3)
The legacy uniform single rect drawing routine seems to have been identified as the source of flicker, particularly on nvidia. However, it can also be up to 2x as fast. Because of the speed the batching contains a fallback where it can use the legacy single rect method, but I have now added a project setting to make this switchable. In most cases with batching it should not be necessary (as single rects are drawn less frequently) and thus the flickering can be totally avoided.

4)
This PR also fixes a color modulate bug when drawing light passes, in certain situations (particularly custom _draw routines with multiple rects).

5)
This PR also fixes #38291, a bug in the legacy renderer where light passes could draw rects in wrong position.
2020-05-01 07:47:33 +01:00
Fredia Huya-Kouadio 9b9f70bd20 Update the documentation for `ExternalTexture` to match the restriction on Android platforms 2020-04-28 08:04:41 -07:00
Hugo Locurcio ae0bc06eba Improve `pitch_scale` descriptions in AudioStreamPlayer documentation
This closes #29439.

Co-authored-by: Cheeseness <contact@jbushproductions.com>
(cherry picked from commit 4751dee7f4)
2020-04-27 10:18:41 +02:00
Hugo Locurcio 24265c498b Improve the procedural geometry class documentations
This references Godot's winding order at the top of every
procedural geometry class, as well as referencing other classes
within a given geometry class.

A warning about ImmediateGeometry3D performance was also added.

(cherry picked from commit ed7347d73d)
2020-04-27 10:14:42 +02:00
Hugo Locurcio bbd381c987 Add an easing/transition type cheatsheet to the Tween documentation
Related to https://github.com/godotengine/godot-docs/pull/3403.

(cherry picked from commit 5972a9138e)
2020-04-27 10:12:11 +02:00
Hugo Locurcio f3cd7e3808 Document how some editor classes should be accessed as singletons only
This closes #37687.

(cherry picked from commit a225265b0a)
2020-04-27 10:11:53 +02:00
Rémi Verschelde 253fc093b8 DocData: Skip unexposed classes
Properly expose classes that we actually want accessible.

(cherry picked from commit 0ef8bcac4d)
2020-04-21 14:15:34 +02:00
Hugo Locurcio 469f398e70 Document how to workaround UI anchor issues when using BackBufferCopy
This closes #6880.

(cherry picked from commit f8a413bb1f)
2020-04-21 14:11:29 +02:00
Hugo Locurcio e8ead37725 Check for errors when saving in the ResourceSaver example documentation
This also replaces a non-breaking space that was accidentally added in
the EditorFeatureProfile documentation.

This closes #31393.

(cherry picked from commit 2f46f1e7b1)
2020-04-21 14:11:15 +02:00
Hugo Locurcio 3a2cdf7d5b Improve the VisibilityEnabler and VisibilityNotifier documentations
This closes #4803.

(cherry picked from commit 7f2d602106)
2020-04-21 14:10:50 +02:00
Rémi Verschelde faf858fe41 Revert "Made possible to specify where to dump the contents when loading a ".pck" file"
This reverts commit ffcfd9c8ea.

This was not so useful as is due to the way dependency paths are stored
in scenes and resources.
2020-04-20 13:48:02 +02:00
Dominik 'dreamsComeTrue' Jasiński ac0a55ce75 Update TextEdit docs - explaining 'override_selected_font_color' role
(cherry picked from commit 6a0e6c2852)
2020-04-20 11:55:47 +02:00
Marcel Admiraal 339c10889d Correct the addition of a key and the duplication of a variable name
in Dictionary class documentation.

(cherry picked from commit 4d41535fa3)
2020-04-20 11:55:31 +02:00
Hugo Locurcio 4e73fcc959 Document DynamicFont limitations and a possible workaround
This closes #30014.

(cherry picked from commit 46b8e108e2)
2020-04-20 11:55:04 +02:00
Hugo Locurcio 4f7296a869 Document image size limits
This closes #30238.

(cherry picked from commit 5497cec7a1)
2020-04-20 11:54:47 +02:00
Hugo Locurcio bb753aaf17 Clarify that angles must be specified as radians in the documentation
This closes #36356.

(cherry picked from commit cae5260dab)
2020-04-20 11:53:40 +02:00
Rémi Verschelde 50582446ad Sync classref with current source 2020-04-17 13:43:43 +02:00
Michael Alexsander ffcfd9c8ea Made possible to specify where to dump the contents when loading a ".pck" file
(cherry picked from commit 3c261e0dfa)
2020-04-17 13:00:52 +02:00
Rémi Verschelde 008e0748c1
Merge pull request #37349 from lawnjelly/kessel32_1
GLES2 2d Batch rendering (across items)
2020-04-17 12:55:33 +02:00
lawnjelly 72adefa5cf Add frame diagnostics for GLES2 Batch renderer
Added project setting to enable / disable print frame diagnostics every 10 seconds. This prints out a list of batches and info, which is useful to optimize games and identify performance problems.
2020-04-17 08:54:33 +01:00
Rémi Verschelde 07aa524a42 doc: Sync classref with current source 2020-04-16 13:02:36 +02:00
Michael Alexsander b4429c325a Fix incorrect TabContainer documentation for 'get_tab_control()'
(cherry picked from commit 8f925b1970)
2020-04-16 12:57:22 +02:00
Hugo Locurcio 26614a37b8 Mention `keep_pressed_outside` caveat in the BaseButton documentation
This closes #37790.

(cherry picked from commit e799dc954e)
2020-04-16 12:57:22 +02:00
Hugo Locurcio 6c4a0ec75a Improve the Dictionary class documentation
This closes https://github.com/godotengine/godot-docs/issues/3376.

(cherry picked from commit 88da90f2bf)
2020-04-16 12:57:22 +02:00
PouleyKetchoupp eab7342321 More details in Rigid Body add_force documentation
(cherry picked from commit 219c5712f0)
2020-04-16 12:57:22 +02:00
Tomasz Chabora edd5d9c78e Improve Camera2D documentation
(cherry picked from commit 630096fa74)
2020-04-16 12:57:22 +02:00
Hugo Locurcio ab4ea9379c Improve the AudioStreamSample class documentation
This closes #37915.

(cherry picked from commit 52786b54ef)
2020-04-16 12:57:22 +02:00
Markus Sauermann 7607fafda1 Clarify documentation and indicate that rect_clip_content affects only CanvasItem based nodes.
Resolves #37683

(cherry picked from commit 3f19b5e0b3)
2020-04-16 12:47:18 +02:00
Nannaquin 27989ae8f8 Add reference of Color8 function to Color class documentation
(cherry picked from commit 06aeff3044)
2020-04-16 12:47:18 +02:00
lucaslcode cd10966652 clarify autotile_coord in docs
I had no idea what 'coordinate' meant in the context of autotiles, so just adding some clarification for future people who have the same problem.

(cherry picked from commit cbe73766e3)
2020-04-16 12:47:18 +02:00
Zak Grumbles 294008015e Clarify Dictionary duplicate params godotengine#37162
* Added additional clarification for the function of the 'deep'
parameter in the Dictionary's `duplicate` method.

(cherry picked from commit 469b7c948f)
2020-04-16 12:02:18 +02:00
Yuri Sizov 22ebdd72d9 Add more verbosity for property overrides in RST documentation
(cherry picked from commit 38821dc6d7)
2020-04-16 11:57:50 +02:00
Zak Grumbles 5d9108c9c6 Fix OptionButton docs godotengine#36803
* item_selected and item_focused docs incorrectly had 'id' as the parameter. Changed to
'index'.
* Fix parameter name in ADD_SIGNAL callin code.

(cherry picked from commit a8de034f78)
2020-04-16 11:45:19 +02:00
Danil Alexeev 2ef1ee9da7 Improve the `File.store_{8,16,32,64}()` documentation
Added information about the intervals of values that the functions
`store_{8,16,32,64}()` can correctly write to the file.

(cherry picked from commit 97e20b2f30)
2020-04-16 11:44:58 +02:00
Yuri Roubinsky 5914fdc067 Implements estimate/compute_cost for AStar2D
(cherry picked from commit bad77bcb52)
2020-04-16 11:35:52 +02:00
Hugo Locurcio e88cfedf0e Document the EditorFeatureProfile class
(cherry picked from commit 7ab279403d)
2020-04-06 20:58:21 +02:00
Zak Grumbles 011602447c Clarify docs for Thread.start() godotengine#36032
* Updated docs for Thread.start() to specify that the method argument
must accept one parameter.

(cherry picked from commit d09644dff3)
2020-04-06 18:17:43 +02:00
PouleyKetchoupp d4c77e60c0 Fixed errors in makerst pre-commit hook
(cherry picked from commit 619354fb2c)
2020-04-06 18:16:11 +02:00
Nathan 679708aa8f Make note of 16 probe limit
Godot by default has a limit of 16 reflection probes in a scene. this can be increased by increasing atlas subdiv. For 3.2 and possibly 4.0. This also fixes a spelling mistake

Update doc/classes/ReflectionProbe.xml

Fix from clayjohn, Directly link to settings

Co-Authored-By: Clay John <claynjohn@gmail.com>
2020-04-05 04:41:00 -04:00
lawnjelly 45b0b8bff8 GLES2 2d Batch rendering (across items)
2d rendering is currently bottlenecked by drawing primitives one at a time, limiting OpenGL efficiency. This PR batches primitives and renders in fewer drawcalls, resulting in significant performance improvements. This also speeds up text rendering.

This PR batches across canvas items as well as within items.

The code dynamically chooses between a vertex format with and without color, depending on the input data for a frame, in order to optimize throughput and maximize batch size. It also adds an option to use glScissor to reduce fillrate in light passes.
2020-04-04 17:13:58 +01:00
Rémi Verschelde fdd85311c3 Sync classref with current source 2020-03-25 11:42:15 +01:00
Andrea Catania e30a0a30b6 Added new method to replace an already added node to the animation state machine
(cherry picked from commit 422926cfc6)
2020-03-25 11:38:54 +01:00
Umang Kalra d7c6a42cbf Doc edit at InputEventMouseMotion
Doc edit

(cherry picked from commit 052424c76d)
2020-03-25 11:38:53 +01:00
Tomasz Chabora 8fd7efef84 Fix visibility enabler flag toggling
(cherry picked from commit 2ccd1a7805)
2020-03-25 11:38:53 +01:00
Hugo Locurcio b5f1f7dfde Improve the `Input.set_use_accumulated_input()` documentation
(cherry picked from commit 30961c60ab)
2020-03-25 11:38:53 +01:00
Hugo Locurcio f3d2c672e9 Document known performance issues with Sprite3D
See https://github.com/godotengine/godot/issues/20855.

(cherry picked from commit 92fa3e076f)
2020-03-25 09:40:09 +01:00
PouleyKetchoupp 82bee3f993 Added has_signal method for Object
(cherry picked from commit 258d91f883)
2020-03-25 09:36:41 +01:00
Rémi Verschelde cc70b2fa0a
Merge pull request #36342 from m4gr3d/external_texture_support_for_godot_3_2
Add support for opengl external textures
2020-03-17 16:29:14 +01:00
Tomasz Chabora 3739f03d98 Add LOTS of missing docs
(cherry picked from commit e103f21a40)
2020-03-13 17:26:30 +01:00
Rémi Verschelde df2a2ae0fc DocData: Fix serialization of Variant default values
Co-authored-by: Bojidar Marinov <bojidar.marinov.bg@gmail.com>
(cherry picked from commit 788765709d)
2020-03-09 11:36:57 +01:00
Rémi Verschelde 398de05dd6 doc: Sync classref with current source 2020-03-09 10:07:59 +01:00
Umang Kalra f9dcc30566 Edited the KinematicBody and KinematicBody2D docs
Explained the reason why move_and_slide should be used in _physics_process

(cherry picked from commit b7dbf41aa5)
2020-03-06 23:54:56 +01:00
Rémi Verschelde d4e6eff2de ConfigFile: Improve error messages and complete docs
(cherry picked from commit f7c87ed3dd)
2020-03-06 23:51:26 +01:00
Michael Alexsander bd2a2a7e40 Turn Rect2's 'intersects_touch()' into an extra argument of 'intersects()'
(cherry picked from commit 8c8c48a7ad)
2020-03-06 23:51:26 +01:00
Aaron Franke 41e385cfac Document EditorPlugin get_plugin_icon and get_plugin_name
The return value's type hint is now accurate.

(cherry picked from commit 68d73ecf60)
2020-03-06 23:51:25 +01:00
fhuya 30d738eda7 Add support for opengl external textures as defined by https://www.khronos.org/registry/OpenGL/extensions/OES/OES_EGL_image_external.txt 2020-03-05 13:09:49 -08:00
Pierre Caye 1350c1371e add a precision about the intended use of the ConcavePolygonShape
(cherry picked from commit 222a934e60)
2020-03-04 14:12:19 +01:00
Bastiaan Olij 0ab8889c0d Exposing get_tracker_id for ARVRPositionalTracker to GDScript
(cherry picked from commit f0b1edef8b)
2020-03-04 12:52:47 +01:00
Aaron Franke fa60e77964 Document that SpringArm exclusions only work with PhysicsBody objects
(cherry picked from commit d961663707)
2020-03-04 12:40:15 +01:00
Danil Alexeev 4bf0c52a30 Minor fix in Node class documentation
The name of the property responsible for physics fps is fixed:
this is `Engine.iterations_per_second`, not `Engine.target_fps`.

(cherry picked from commit 6e5cd36b12)
2020-03-04 12:40:15 +01:00