summaryrefslogtreecommitdiff
path: root/doc
diff options
context:
space:
mode:
Diffstat (limited to 'doc')
-rw-r--r--doc/classes/@GlobalScope.xml3
-rw-r--r--doc/classes/Area2D.xml4
-rw-r--r--doc/classes/Area3D.xml4
-rw-r--r--doc/classes/ArrayMesh.xml3
-rw-r--r--doc/classes/AudioStreamPlayer.xml2
-rw-r--r--doc/classes/AudioStreamPlayer2D.xml2
-rw-r--r--doc/classes/AudioStreamPlayer3D.xml2
-rw-r--r--doc/classes/CameraEffects.xml12
-rw-r--r--doc/classes/EditorFileSystem.xml1
-rw-r--r--doc/classes/EditorInspector.xml1
-rw-r--r--doc/classes/EditorInterface.xml1
-rw-r--r--doc/classes/EditorResourcePreview.xml1
-rw-r--r--doc/classes/EditorSelection.xml3
-rw-r--r--doc/classes/EditorSettings.xml1
-rw-r--r--doc/classes/ImmediateGeometry3D.xml3
-rw-r--r--doc/classes/MeshDataTool.xml2
-rw-r--r--doc/classes/Node.xml2
-rw-r--r--doc/classes/PhysicsBody2D.xml2
-rw-r--r--doc/classes/PhysicsBody3D.xml2
-rw-r--r--doc/classes/ProjectSettings.xml22
-rw-r--r--doc/classes/RDPipelineColorBlendState.xml34
-rw-r--r--doc/classes/RDPipelineColorBlendStateAttachment.xml6
-rw-r--r--doc/classes/RDPipelineMultisampleState.xml22
-rw-r--r--doc/classes/RDVertexAttribute.xml (renamed from doc/classes/RDVertexDescription.xml)2
-rw-r--r--doc/classes/RenderingDevice.xml10
-rw-r--r--doc/classes/RigidBody2D.xml2
-rw-r--r--doc/classes/ScriptEditor.xml1
-rw-r--r--doc/classes/Skeleton3D.xml2
-rw-r--r--doc/classes/SurfaceTool.xml2
-rw-r--r--doc/classes/TileMap.xml4
-rw-r--r--doc/classes/Tween.xml5
-rwxr-xr-xdoc/tools/makerst.py13
32 files changed, 90 insertions, 86 deletions
diff --git a/doc/classes/@GlobalScope.xml b/doc/classes/@GlobalScope.xml
index 71bbc271e2..602d0e4d0e 100644
--- a/doc/classes/@GlobalScope.xml
+++ b/doc/classes/@GlobalScope.xml
@@ -21,6 +21,9 @@
<member name="ClassDB" type="ClassDB" setter="" getter="">
The [ClassDB] singleton.
</member>
+ <member name="DisplayServer" type="DisplayServer" setter="" getter="">
+ The [DisplayServer] singleton.
+ </member>
<member name="Engine" type="Engine" setter="" getter="">
The [Engine] singleton.
</member>
diff --git a/doc/classes/Area2D.xml b/doc/classes/Area2D.xml
index 0c1317f19d..4190cbe6b9 100644
--- a/doc/classes/Area2D.xml
+++ b/doc/classes/Area2D.xml
@@ -29,14 +29,14 @@
</description>
</method>
<method name="get_overlapping_areas" qualifiers="const">
- <return type="Array">
+ <return type="Area2D[]">
</return>
<description>
Returns a list of intersecting [Area2D]s. For performance reasons (collisions are all processed at the same time) this list is modified once during the physics step, not immediately after objects are moved. Consider using signals instead.
</description>
</method>
<method name="get_overlapping_bodies" qualifiers="const">
- <return type="Array">
+ <return type="Node2D[]">
</return>
<description>
Returns a list of intersecting [PhysicsBody2D]s. For performance reasons (collisions are all processed at the same time) this list is modified once during the physics step, not immediately after objects are moved. Consider using signals instead.
diff --git a/doc/classes/Area3D.xml b/doc/classes/Area3D.xml
index 1adfc878e2..a94cecd879 100644
--- a/doc/classes/Area3D.xml
+++ b/doc/classes/Area3D.xml
@@ -28,14 +28,14 @@
</description>
</method>
<method name="get_overlapping_areas" qualifiers="const">
- <return type="Array">
+ <return type="Area3D[]">
</return>
<description>
Returns a list of intersecting [Area3D]s. For performance reasons (collisions are all processed at the same time) this list is modified once during the physics step, not immediately after objects are moved. Consider using signals instead.
</description>
</method>
<method name="get_overlapping_bodies" qualifiers="const">
- <return type="Array">
+ <return type="Node3D[]">
</return>
<description>
Returns a list of intersecting [PhysicsBody3D]s. For performance reasons (collisions are all processed at the same time) this list is modified once during the physics step, not immediately after objects are moved. Consider using signals instead.
diff --git a/doc/classes/ArrayMesh.xml b/doc/classes/ArrayMesh.xml
index 9e742ea581..b45716544a 100644
--- a/doc/classes/ArrayMesh.xml
+++ b/doc/classes/ArrayMesh.xml
@@ -22,6 +22,8 @@
m.mesh = arr_mesh
[/codeblock]
The [MeshInstance3D] is ready to be added to the [SceneTree] to be shown.
+ See also [ImmediateGeometry3D], [MeshDataTool] and [SurfaceTool] for procedural geometry generation.
+ [b]Note:[/b] Godot uses clockwise [url=https://learnopengl.com/Advanced-OpenGL/Face-culling]winding order[/url] for front faces of triangle primitive modes.
</description>
<tutorials>
<link>https://docs.godotengine.org/en/latest/tutorials/content/procedural_geometry/arraymesh.html</link>
@@ -56,7 +58,6 @@
Surfaces are created to be rendered using a [code]primitive[/code], which may be any of the types defined in [enum Mesh.PrimitiveType]. (As a note, when using indices, it is recommended to only use points, lines or triangles.) [method Mesh.get_surface_count] will become the [code]surf_idx[/code] for this new surface.
The [code]arrays[/code] argument is an array of arrays. See [enum ArrayType] for the values used in this array. For example, [code]arrays[0][/code] is the array of vertices. That first vertex sub-array is always required; the others are optional. Adding an index array puts this function into "index mode" where the vertex and other arrays become the sources of data and the index array defines the vertex order. All sub-arrays must have the same length as the vertex array or be empty, except for [constant ARRAY_INDEX] if it is used.
Adding an index array puts this function into "index mode" where the vertex and other arrays become the sources of data, and the index array defines the order of the vertices.
- Godot uses clockwise winding order for front faces of triangle primitive modes.
</description>
</method>
<method name="clear_blend_shapes">
diff --git a/doc/classes/AudioStreamPlayer.xml b/doc/classes/AudioStreamPlayer.xml
index eab6505734..dbc3d3e21b 100644
--- a/doc/classes/AudioStreamPlayer.xml
+++ b/doc/classes/AudioStreamPlayer.xml
@@ -61,7 +61,7 @@
If the audio configuration has more than two speakers, this sets the target channels. See [enum MixTarget] constants.
</member>
<member name="pitch_scale" type="float" setter="set_pitch_scale" getter="get_pitch_scale" default="1.0">
- Changes the pitch and the tempo of the audio.
+ The pitch and the tempo of the audio, as a multiplier of the audio sample's sample rate.
</member>
<member name="playing" type="bool" setter="_set_playing" getter="is_playing" default="false">
If [code]true[/code], audio is playing.
diff --git a/doc/classes/AudioStreamPlayer2D.xml b/doc/classes/AudioStreamPlayer2D.xml
index fdbef1b89e..844e2316ba 100644
--- a/doc/classes/AudioStreamPlayer2D.xml
+++ b/doc/classes/AudioStreamPlayer2D.xml
@@ -67,7 +67,7 @@
Maximum distance from which audio is still hearable.
</member>
<member name="pitch_scale" type="float" setter="set_pitch_scale" getter="get_pitch_scale" default="1.0">
- Changes the pitch and the tempo of the audio.
+ The pitch and the tempo of the audio, as a multiplier of the audio sample's sample rate.
</member>
<member name="playing" type="bool" setter="_set_playing" getter="is_playing" default="false">
If [code]true[/code], audio is playing.
diff --git a/doc/classes/AudioStreamPlayer3D.xml b/doc/classes/AudioStreamPlayer3D.xml
index 3eeb524e9c..bd90e3bd1a 100644
--- a/doc/classes/AudioStreamPlayer3D.xml
+++ b/doc/classes/AudioStreamPlayer3D.xml
@@ -91,7 +91,7 @@
Decides if audio should pause when source is outside of [member max_distance] range.
</member>
<member name="pitch_scale" type="float" setter="set_pitch_scale" getter="get_pitch_scale" default="1.0">
- Changes the pitch and the tempo of the audio.
+ The pitch and the tempo of the audio, as a multiplier of the audio sample's sample rate.
</member>
<member name="playing" type="bool" setter="_set_playing" getter="is_playing" default="false">
If [code]true[/code], audio is playing.
diff --git a/doc/classes/CameraEffects.xml b/doc/classes/CameraEffects.xml
index 23f0a1c7af..ea9ab85b80 100644
--- a/doc/classes/CameraEffects.xml
+++ b/doc/classes/CameraEffects.xml
@@ -1,8 +1,11 @@
<?xml version="1.0" encoding="UTF-8" ?>
<class name="CameraEffects" inherits="Resource" version="4.0">
<brief_description>
+ Contains camera-specific effects such as depth of field and exposure override.
</brief_description>
<description>
+ Contains camera-specific effects such as depth of field and exposure override.
+ See also [Environment] for general 3D environment settings.
</description>
<tutorials>
</tutorials>
@@ -10,22 +13,31 @@
</methods>
<members>
<member name="dof_blur_amount" type="float" setter="set_dof_blur_amount" getter="get_dof_blur_amount" default="0.1">
+ The amount of blur for both near and far depth-of-field effects. The amount of blur increases the radius of the blur effect, making the affected area blurrier. However, If the amount is too high, you might start to see lines appearing, especially when using a low quality blur.
</member>
<member name="dof_blur_far_distance" type="float" setter="set_dof_blur_far_distance" getter="get_dof_blur_far_distance" default="10.0">
+ The distance from the camera where the far blur effect affects the rendering.
</member>
<member name="dof_blur_far_enabled" type="bool" setter="set_dof_blur_far_enabled" getter="is_dof_blur_far_enabled" default="false">
+ If [code]true[/code], enables the depth-of-field far blur effect. This has a significant performance cost. Consider disabling it in scenes where there are no far away objects.
</member>
<member name="dof_blur_far_transition" type="float" setter="set_dof_blur_far_transition" getter="get_dof_blur_far_transition" default="5.0">
+ The length of the transition between the no-blur area and far blur.
</member>
<member name="dof_blur_near_distance" type="float" setter="set_dof_blur_near_distance" getter="get_dof_blur_near_distance" default="2.0">
+ Distance from the camera where the near blur effect affects the rendering.
</member>
<member name="dof_blur_near_enabled" type="bool" setter="set_dof_blur_near_enabled" getter="is_dof_blur_near_enabled" default="false">
+ If [code]true[/code], enables the depth-of-field near blur effect. This has a significant performance cost. Consider disabling it in scenes where there are no nearby objects.
</member>
<member name="dof_blur_near_transition" type="float" setter="set_dof_blur_near_transition" getter="get_dof_blur_near_transition" default="1.0">
+ The length of the transition between the near blur and no-blur area.
</member>
<member name="override_exposure" type="float" setter="set_override_exposure" getter="get_override_exposure" default="1.0">
+ The exposure override value to use. Higher values will result in a brighter scene. Only effective if [member override_exposure_enable] is [code]true[/code].
</member>
<member name="override_exposure_enable" type="bool" setter="set_override_exposure_enabled" getter="is_override_exposure_enabled" default="false">
+ If [code]true[/code], overrides the manual or automatic exposure defined in the [Environment] with the value in [member override_exposure].
</member>
</members>
<constants>
diff --git a/doc/classes/EditorFileSystem.xml b/doc/classes/EditorFileSystem.xml
index 30e1de1f5e..9bb51af2d0 100644
--- a/doc/classes/EditorFileSystem.xml
+++ b/doc/classes/EditorFileSystem.xml
@@ -5,6 +5,7 @@
</brief_description>
<description>
This object holds information of all resources in the filesystem, their types, etc.
+ [b]Note:[/b] This class shouldn't be instantiated directly. Instead, access the singleton using [method EditorInterface.get_resource_filesystem].
</description>
<tutorials>
</tutorials>
diff --git a/doc/classes/EditorInspector.xml b/doc/classes/EditorInspector.xml
index 99a78d147c..2f62fe9e40 100644
--- a/doc/classes/EditorInspector.xml
+++ b/doc/classes/EditorInspector.xml
@@ -5,6 +5,7 @@
</brief_description>
<description>
The editor inspector is by default located on the right-hand side of the editor. It's used to edit the properties of the selected node. For example, you can select a node such as the Sprite2D then edit its transform through the inspector tool. The editor inspector is an essential tool in the game development workflow.
+ [b]Note:[/b] This class shouldn't be instantiated directly. Instead, access the singleton using [method EditorInterface.get_inspector].
</description>
<tutorials>
</tutorials>
diff --git a/doc/classes/EditorInterface.xml b/doc/classes/EditorInterface.xml
index 5e76f90fc4..499c3b8271 100644
--- a/doc/classes/EditorInterface.xml
+++ b/doc/classes/EditorInterface.xml
@@ -5,6 +5,7 @@
</brief_description>
<description>
EditorInterface gives you control over Godot editor's window. It allows customizing the window, saving and (re-)loading scenes, rendering mesh previews, inspecting and editing resources and objects, and provides access to [EditorSettings], [EditorFileSystem], [EditorResourcePreview], [ScriptEditor], the editor viewport, and information about scenes.
+ [b]Note:[/b] This class shouldn't be instantiated directly. Instead, access the singleton using [method EditorPlugin.get_editor_interface].
</description>
<tutorials>
</tutorials>
diff --git a/doc/classes/EditorResourcePreview.xml b/doc/classes/EditorResourcePreview.xml
index aac75c5c8e..0c1d969518 100644
--- a/doc/classes/EditorResourcePreview.xml
+++ b/doc/classes/EditorResourcePreview.xml
@@ -5,6 +5,7 @@
</brief_description>
<description>
This object is used to generate previews for resources of files.
+ [b]Note:[/b] This class shouldn't be instantiated directly. Instead, access the singleton using [method EditorInterface.get_resource_previewer].
</description>
<tutorials>
</tutorials>
diff --git a/doc/classes/EditorSelection.xml b/doc/classes/EditorSelection.xml
index caafd3c15f..1ff9744b70 100644
--- a/doc/classes/EditorSelection.xml
+++ b/doc/classes/EditorSelection.xml
@@ -5,6 +5,7 @@
</brief_description>
<description>
This object manages the SceneTree selection in the editor.
+ [b]Note:[/b] This class shouldn't be instantiated directly. Instead, access the singleton using [method EditorInterface.get_selection].
</description>
<tutorials>
</tutorials>
@@ -26,7 +27,7 @@
</description>
</method>
<method name="get_selected_nodes">
- <return type="Array">
+ <return type="Node[]">
</return>
<description>
Gets the list of selected nodes.
diff --git a/doc/classes/EditorSettings.xml b/doc/classes/EditorSettings.xml
index 73ef807c5f..19921ff5c8 100644
--- a/doc/classes/EditorSettings.xml
+++ b/doc/classes/EditorSettings.xml
@@ -11,6 +11,7 @@
settings.get(prop)
list_of_settings = settings.get_property_list()
[/codeblock]
+ [b]Note:[/b] This class shouldn't be instantiated directly. Instead, access the singleton using [method EditorInterface.get_editor_settings].
</description>
<tutorials>
</tutorials>
diff --git a/doc/classes/ImmediateGeometry3D.xml b/doc/classes/ImmediateGeometry3D.xml
index 1c0831c922..d2d663847f 100644
--- a/doc/classes/ImmediateGeometry3D.xml
+++ b/doc/classes/ImmediateGeometry3D.xml
@@ -5,6 +5,9 @@
</brief_description>
<description>
Draws simple geometry from code. Uses a drawing mode similar to OpenGL 1.x.
+ See also [ArrayMesh], [MeshDataTool] and [SurfaceTool] for procedural geometry generation.
+ [b]Note:[/b] ImmediateGeometry3D is best suited to small amounts of mesh data that change every frame. It will be slow when handling large amounts of mesh data. If mesh data doesn't change often, use [ArrayMesh], [MeshDataTool] or [SurfaceTool] instead.
+ [b]Note:[/b] Godot uses clockwise [url=https://learnopengl.com/Advanced-OpenGL/Face-culling]winding order[/url] for front faces of triangle primitive modes.
</description>
<tutorials>
</tutorials>
diff --git a/doc/classes/MeshDataTool.xml b/doc/classes/MeshDataTool.xml
index 81ff5969e3..dcc3bbf2a6 100644
--- a/doc/classes/MeshDataTool.xml
+++ b/doc/classes/MeshDataTool.xml
@@ -17,6 +17,8 @@
mesh.surface_remove(0)
mdt.commit_to_surface(mesh)
[/codeblock]
+ See also [ArrayMesh], [ImmediateGeometry3D] and [SurfaceTool] for procedural geometry generation.
+ [b]Note:[/b] Godot uses clockwise [url=https://learnopengl.com/Advanced-OpenGL/Face-culling]winding order[/url] for front faces of triangle primitive modes.
</description>
<tutorials>
</tutorials>
diff --git a/doc/classes/Node.xml b/doc/classes/Node.xml
index 8c588f0373..1c745de7f0 100644
--- a/doc/classes/Node.xml
+++ b/doc/classes/Node.xml
@@ -221,7 +221,7 @@
</description>
</method>
<method name="get_children" qualifiers="const">
- <return type="Array">
+ <return type="Node[]">
</return>
<description>
Returns an array of references to node's children.
diff --git a/doc/classes/PhysicsBody2D.xml b/doc/classes/PhysicsBody2D.xml
index 28d6ce7048..6afbd1ee8e 100644
--- a/doc/classes/PhysicsBody2D.xml
+++ b/doc/classes/PhysicsBody2D.xml
@@ -20,7 +20,7 @@
</description>
</method>
<method name="get_collision_exceptions">
- <return type="Array">
+ <return type="PhysicsBody2D[]">
</return>
<description>
Returns an array of nodes that were added as collision exceptions for this body.
diff --git a/doc/classes/PhysicsBody3D.xml b/doc/classes/PhysicsBody3D.xml
index f0ba2a7f5f..2301a07a5c 100644
--- a/doc/classes/PhysicsBody3D.xml
+++ b/doc/classes/PhysicsBody3D.xml
@@ -20,7 +20,7 @@
</description>
</method>
<method name="get_collision_exceptions">
- <return type="Array">
+ <return type="PhysicsBody3D[]">
</return>
<description>
Returns an array of nodes that were added as collision exceptions for this body.
diff --git a/doc/classes/ProjectSettings.xml b/doc/classes/ProjectSettings.xml
index 4eb089e511..6dae3209b9 100644
--- a/doc/classes/ProjectSettings.xml
+++ b/doc/classes/ProjectSettings.xml
@@ -260,19 +260,19 @@
Setting to hardcode audio delay when playing video. Best to leave this untouched unless you know what you are doing.
</member>
<member name="compression/formats/gzip/compression_level" type="int" setter="" getter="" default="-1">
- Default compression level for gzip. Affects compressed scenes and resources.
+ The default compression level for gzip. Affects compressed scenes and resources. Higher levels result in smaller files at the cost of compression speed. Decompression speed is mostly unaffected by the compression level. [code]-1[/code] uses the default gzip compression level, which is identical to [code]6[/code] but could change in the future due to underlying zlib updates.
</member>
<member name="compression/formats/zlib/compression_level" type="int" setter="" getter="" default="-1">
- Default compression level for Zlib. Affects compressed scenes and resources.
+ The default compression level for Zlib. Affects compressed scenes and resources. Higher levels result in smaller files at the cost of compression speed. Decompression speed is mostly unaffected by the compression level. [code]-1[/code] uses the default gzip compression level, which is identical to [code]6[/code] but could change in the future due to underlying zlib updates.
</member>
<member name="compression/formats/zstd/compression_level" type="int" setter="" getter="" default="3">
- Default compression level for Zstandard. Affects compressed scenes and resources.
+ The default compression level for Zstandard. Affects compressed scenes and resources. Higher levels result in smaller files at the cost of compression speed. Decompression speed is mostly unaffected by the compression level.
</member>
<member name="compression/formats/zstd/long_distance_matching" type="bool" setter="" getter="" default="false">
- Enables long-distance matching in Zstandard.
+ Enables [url=https://github.com/facebook/zstd/releases/tag/v1.3.2]long-distance matching[/url] in Zstandard.
</member>
<member name="compression/formats/zstd/window_log_size" type="int" setter="" getter="" default="27">
- Largest size limit (in power of 2) allowed when compressing using long-distance matching with Zstandard.
+ Largest size limit (in power of 2) allowed when compressing using long-distance matching with Zstandard. Higher values can result in better compression, but will require more memory when compressing and decompressing.
</member>
<member name="debug/gdscript/completion/autocomplete_setters_and_getters" type="bool" setter="" getter="" default="false">
If [code]true[/code], displays getters and setters in autocompletion results in the script editor. This setting is meant to be used when porting old projects (Godot 2), as using member variables is the preferred style from Godot 3 onwards.
@@ -806,6 +806,18 @@
<member name="memory/limits/multithreaded_server/rid_pool_prealloc" type="int" setter="" getter="" default="60">
This is used by servers when used in multi-threading mode (servers and visual). RIDs are preallocated to avoid stalling the server requesting them on threads. If servers get stalled too often when loading resources in a thread, increase this number.
</member>
+ <member name="mono/debugger_agent/port" type="int" setter="" getter="" default="23685">
+ </member>
+ <member name="mono/debugger_agent/wait_for_debugger" type="bool" setter="" getter="" default="false">
+ </member>
+ <member name="mono/debugger_agent/wait_timeout" type="int" setter="" getter="" default="3000">
+ </member>
+ <member name="mono/profiler/args" type="String" setter="" getter="" default="&quot;log:calls,alloc,sample,output=output.mlpd&quot;">
+ </member>
+ <member name="mono/profiler/enabled" type="bool" setter="" getter="" default="false">
+ </member>
+ <member name="mono/unhandled_exception_policy" type="int" setter="" getter="" default="0">
+ </member>
<member name="network/limits/debugger/max_chars_per_second" type="int" setter="" getter="" default="32768">
Maximum amount of characters allowed to send as output from the debugger. Over this value, content is dropped. This helps not to stall the debugger connection.
</member>
diff --git a/doc/classes/RDPipelineColorBlendState.xml b/doc/classes/RDPipelineColorBlendState.xml
index 7cb31f6986..adc6f1f6a3 100644
--- a/doc/classes/RDPipelineColorBlendState.xml
+++ b/doc/classes/RDPipelineColorBlendState.xml
@@ -7,40 +7,10 @@
<tutorials>
</tutorials>
<methods>
- <method name="add_attachment">
- <return type="void">
- </return>
- <argument index="0" name="atachment" type="RDPipelineColorBlendStateAttachment">
- </argument>
- <description>
- </description>
- </method>
- <method name="add_blend_mix_attachment">
- <return type="void">
- </return>
- <description>
- </description>
- </method>
- <method name="add_no_blend_attachment">
- <return type="void">
- </return>
- <description>
- </description>
- </method>
- <method name="clear_attachments">
- <return type="void">
- </return>
- <description>
- </description>
- </method>
- <method name="get_attachments" qualifiers="const">
- <return type="Array">
- </return>
- <description>
- </description>
- </method>
</methods>
<members>
+ <member name="attachments" type="RDPipelineColorBlendStateAttachment[]" setter="set_attachments" getter="get_attachments" default="[ ]">
+ </member>
<member name="blend_constant" type="Color" setter="set_blend_constant" getter="get_blend_constant" default="Color( 0, 0, 0, 1 )">
</member>
<member name="enable_logic_op" type="bool" setter="set_enable_logic_op" getter="get_enable_logic_op" default="false">
diff --git a/doc/classes/RDPipelineColorBlendStateAttachment.xml b/doc/classes/RDPipelineColorBlendStateAttachment.xml
index a4caa622aa..7f118b5f0b 100644
--- a/doc/classes/RDPipelineColorBlendStateAttachment.xml
+++ b/doc/classes/RDPipelineColorBlendStateAttachment.xml
@@ -7,6 +7,12 @@
<tutorials>
</tutorials>
<methods>
+ <method name="set_as_mix">
+ <return type="void">
+ </return>
+ <description>
+ </description>
+ </method>
</methods>
<members>
<member name="alpha_blend_op" type="int" setter="set_alpha_blend_op" getter="get_alpha_blend_op" enum="RenderingDevice.BlendOperation" default="0">
diff --git a/doc/classes/RDPipelineMultisampleState.xml b/doc/classes/RDPipelineMultisampleState.xml
index b936ded4fe..4658c7d9ba 100644
--- a/doc/classes/RDPipelineMultisampleState.xml
+++ b/doc/classes/RDPipelineMultisampleState.xml
@@ -7,26 +7,6 @@
<tutorials>
</tutorials>
<methods>
- <method name="add_sample_mask">
- <return type="void">
- </return>
- <argument index="0" name="mask" type="int">
- </argument>
- <description>
- </description>
- </method>
- <method name="clear_sample_masks">
- <return type="void">
- </return>
- <description>
- </description>
- </method>
- <method name="get_sample_masks" qualifiers="const">
- <return type="PackedInt64Array">
- </return>
- <description>
- </description>
- </method>
</methods>
<members>
<member name="enable_alpha_to_coverage" type="bool" setter="set_enable_alpha_to_coverage" getter="get_enable_alpha_to_coverage" default="false">
@@ -39,6 +19,8 @@
</member>
<member name="sample_count" type="int" setter="set_sample_count" getter="get_sample_count" enum="RenderingDevice.TextureSamples" default="0">
</member>
+ <member name="sample_masks" type="int[]" setter="set_sample_masks" getter="get_sample_masks" default="[ ]">
+ </member>
</members>
<constants>
</constants>
diff --git a/doc/classes/RDVertexDescription.xml b/doc/classes/RDVertexAttribute.xml
index 90e37ee023..56fe40b51d 100644
--- a/doc/classes/RDVertexDescription.xml
+++ b/doc/classes/RDVertexAttribute.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8" ?>
-<class name="RDVertexDescription" inherits="Reference" version="4.0">
+<class name="RDVertexAttribute" inherits="Reference" version="4.0">
<brief_description>
</brief_description>
<description>
diff --git a/doc/classes/RenderingDevice.xml b/doc/classes/RenderingDevice.xml
index 6d68eafc70..8a44d213e8 100644
--- a/doc/classes/RenderingDevice.xml
+++ b/doc/classes/RenderingDevice.xml
@@ -296,7 +296,7 @@
<method name="framebuffer_format_create">
<return type="int">
</return>
- <argument index="0" name="attachments" type="Array">
+ <argument index="0" name="attachments" type="RDAttachmentFormat[]">
</argument>
<description>
</description>
@@ -386,9 +386,9 @@
</argument>
<argument index="1" name="format" type="int" enum="RenderingDevice.IndexBufferFormat">
</argument>
- <argument index="2" name="data" type="PackedByteArray">
+ <argument index="2" name="data" type="PackedByteArray" default="PackedByteArray( )">
</argument>
- <argument index="3" name="arg3" type="bool" default="PackedByteArray( )">
+ <argument index="3" name="arg3" type="bool" default="false">
</argument>
<description>
</description>
@@ -576,7 +576,7 @@
</argument>
<argument index="1" name="view" type="RDTextureView">
</argument>
- <argument index="2" name="data" type="Array" default="[ ]">
+ <argument index="2" name="data" type="PackedByteArray[]" default="[ ]">
</argument>
<description>
</description>
@@ -712,7 +712,7 @@
<method name="vertex_format_create">
<return type="int">
</return>
- <argument index="0" name="vertex_descriptions" type="Array">
+ <argument index="0" name="vertex_descriptions" type="RDVertexAttribute[]">
</argument>
<description>
</description>
diff --git a/doc/classes/RigidBody2D.xml b/doc/classes/RigidBody2D.xml
index e746d7fc96..8379fc5b58 100644
--- a/doc/classes/RigidBody2D.xml
+++ b/doc/classes/RigidBody2D.xml
@@ -81,7 +81,7 @@
</description>
</method>
<method name="get_colliding_bodies" qualifiers="const">
- <return type="Array">
+ <return type="Node2D[]">
</return>
<description>
Returns a list of the bodies colliding with this one. Use [member contacts_reported] to set the maximum number reported. You must also set [member contact_monitor] to [code]true[/code].
diff --git a/doc/classes/ScriptEditor.xml b/doc/classes/ScriptEditor.xml
index 10d6e5f578..f0ad781f77 100644
--- a/doc/classes/ScriptEditor.xml
+++ b/doc/classes/ScriptEditor.xml
@@ -4,6 +4,7 @@
Godot editor's script editor.
</brief_description>
<description>
+ [b]Note:[/b] This class shouldn't be instantiated directly. Instead, access the singleton using [method EditorInterface.get_script_editor].
</description>
<tutorials>
</tutorials>
diff --git a/doc/classes/Skeleton3D.xml b/doc/classes/Skeleton3D.xml
index 08404fb467..4460b519fc 100644
--- a/doc/classes/Skeleton3D.xml
+++ b/doc/classes/Skeleton3D.xml
@@ -157,7 +157,7 @@
<method name="physical_bones_start_simulation">
<return type="void">
</return>
- <argument index="0" name="bones" type="Array" default="[ ]">
+ <argument index="0" name="bones" type="StringName[]" default="[ ]">
</argument>
<description>
</description>
diff --git a/doc/classes/SurfaceTool.xml b/doc/classes/SurfaceTool.xml
index 4304a8df5e..eeb6b6cd9d 100644
--- a/doc/classes/SurfaceTool.xml
+++ b/doc/classes/SurfaceTool.xml
@@ -15,6 +15,8 @@
The above [SurfaceTool] now contains one vertex of a triangle which has a UV coordinate and a specified [Color]. If another vertex were added without calling [method add_uv] or [method add_color], then the last values would be used.
Vertex attributes must be passed [b]before[/b] calling [method add_vertex]. Failure to do so will result in an error when committing the vertex information to a mesh.
Additionally, the attributes used before the first vertex is added determine the format of the mesh. For example, if you only add UVs to the first vertex, you cannot add color to any of the subsequent vertices.
+ See also [ArrayMesh], [ImmediateGeometry3D] and [MeshDataTool] for procedural geometry generation.
+ [b]Note:[/b] Godot uses clockwise [url=https://learnopengl.com/Advanced-OpenGL/Face-culling]winding order[/url] for front faces of triangle primitive modes.
</description>
<tutorials>
</tutorials>
diff --git a/doc/classes/TileMap.xml b/doc/classes/TileMap.xml
index 5b7694b775..bfe6983f06 100644
--- a/doc/classes/TileMap.xml
+++ b/doc/classes/TileMap.xml
@@ -74,14 +74,14 @@
</description>
</method>
<method name="get_used_cells" qualifiers="const">
- <return type="Array">
+ <return type="Vector2i[]">
</return>
<description>
Returns a [Vector2] array with the positions of all cells containing a tile from the tileset (i.e. a tile index different from [code]-1[/code]).
</description>
</method>
<method name="get_used_cells_by_id" qualifiers="const">
- <return type="Array">
+ <return type="Vector2i[]">
</return>
<argument index="0" name="id" type="int">
</argument>
diff --git a/doc/classes/Tween.xml b/doc/classes/Tween.xml
index 371b027534..f9320ac55e 100644
--- a/doc/classes/Tween.xml
+++ b/doc/classes/Tween.xml
@@ -6,7 +6,7 @@
<description>
Tweens are useful for animations requiring a numerical property to be interpolated over a range of values. The name [i]tween[/i] comes from [i]in-betweening[/i], an animation technique where you specify [i]keyframes[/i] and the computer interpolates the frames that appear between them.
[Tween] is more suited than [AnimationPlayer] for animations where you don't know the final values in advance. For example, interpolating a dynamically-chosen camera zoom value is best done with a [Tween] node; it would be difficult to do the same thing with an [AnimationPlayer] node.
- Here is a brief usage example that causes a 2D node to move smoothly between two positions:
+ Here is a brief usage example that makes a 2D node move smoothly between two positions:
[codeblock]
var tween = get_node("Tween")
tween.interpolate_property($Node2D, "position",
@@ -15,7 +15,8 @@
tween.start()
[/codeblock]
Many methods require a property name, such as [code]"position"[/code] above. You can find the correct property name by hovering over the property in the Inspector. You can also provide the components of a property directly by using [code]"property:component"[/code] (eg. [code]position:x[/code]), where it would only apply to that particular component.
- Many of the methods accept [code]trans_type[/code] and [code]ease_type[/code]. The first accepts an [enum TransitionType] constant, and refers to the way the timing of the animation is handled (see [code]http://easings.net/[/code] for some examples). The second accepts an [enum EaseType] constant, and controls the where [code]trans_type[/code] is applied to the interpolation (in the beginning, the end, or both). If you don't know which transition and easing to pick, you can try different [enum TransitionType] constants with [constant EASE_IN_OUT], and use the one that looks best.
+ Many of the methods accept [code]trans_type[/code] and [code]ease_type[/code]. The first accepts an [enum TransitionType] constant, and refers to the way the timing of the animation is handled (see [url=https://easings.net/]easings.net[/url] for some examples). The second accepts an [enum EaseType] constant, and controls the where [code]trans_type[/code] is applied to the interpolation (in the beginning, the end, or both). If you don't know which transition and easing to pick, you can try different [enum TransitionType] constants with [constant EASE_IN_OUT], and use the one that looks best.
+ [b][url=https://raw.githubusercontent.com/godotengine/godot-docs/master/img/tween_cheatsheet.png]Tween easing and transition types cheatsheet[/url][/b]
</description>
<tutorials>
</tutorials>
diff --git a/doc/tools/makerst.py b/doc/tools/makerst.py
index c6c6cae6c0..5ceab52523 100755
--- a/doc/tools/makerst.py
+++ b/doc/tools/makerst.py
@@ -973,11 +973,14 @@ def format_table(f, data, remove_empty_columns=False): # type: (TextIO, Iterabl
f.write("\n")
-def make_type(t, state): # type: (str, State) -> str
- if t in state.classes:
- return ":ref:`{0}<class_{0}>`".format(t)
- print_error("Unresolved type '{}', file: {}".format(t, state.current_class), state)
- return t
+def make_type(klass, state): # type: (str, State) -> str
+ link_type = klass
+ if link_type.endswith("[]"): # Typed array, strip [] to link to contained type.
+ link_type = link_type[:-2]
+ if link_type in state.classes:
+ return ":ref:`{}<class_{}>`".format(klass, link_type)
+ print_error("Unresolved type '{}', file: {}".format(klass, state.current_class), state)
+ return klass
def make_enum(t, state): # type: (str, State) -> str