summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--doc/classes/@GDScript.xml12
-rw-r--r--doc/classes/AnimatedSprite.xml2
-rw-r--r--doc/classes/Bone2D.xml39
-rw-r--r--doc/classes/CanvasItem.xml3
-rw-r--r--doc/classes/CanvasItemMaterial.xml3
-rw-r--r--doc/classes/ColorPickerButton.xml4
-rw-r--r--doc/classes/Curve2D.xml16
-rw-r--r--doc/classes/Curve3D.xml16
-rw-r--r--doc/classes/DynamicFont.xml4
-rw-r--r--doc/classes/EditorPlugin.xml10
-rw-r--r--doc/classes/Engine.xml2
-rw-r--r--doc/classes/Font.xml10
-rw-r--r--doc/classes/Geometry.xml30
-rw-r--r--doc/classes/GridContainer.xml10
-rw-r--r--doc/classes/Image.xml20
-rw-r--r--doc/classes/Input.xml16
-rw-r--r--doc/classes/InputEvent.xml15
-rw-r--r--doc/classes/InputMap.xml23
-rw-r--r--doc/classes/InstancePlaceholder.xml10
-rw-r--r--doc/classes/Label.xml2
-rw-r--r--doc/classes/LineEdit.xml2
-rw-r--r--doc/classes/OS.xml10
-rw-r--r--doc/classes/OptionButton.xml2
-rw-r--r--doc/classes/Path.xml6
-rw-r--r--doc/classes/PhysicalBone.xml55
-rw-r--r--doc/classes/Polygon2D.xml70
-rw-r--r--doc/classes/Popup.xml2
-rw-r--r--doc/classes/PrimitiveMesh.xml4
-rw-r--r--doc/classes/RichTextLabel.xml26
-rw-r--r--doc/classes/Skeleton.xml24
-rw-r--r--doc/classes/Skeleton2D.xml35
-rw-r--r--doc/classes/SpatialMaterial.xml6
-rw-r--r--doc/classes/TileSet.xml18
-rw-r--r--doc/classes/Timer.xml2
-rw-r--r--doc/classes/Tween.xml2
-rw-r--r--doc/classes/Vector2.xml12
-rw-r--r--doc/classes/Vector3.xml6
-rw-r--r--doc/classes/VisualServer.xml37
-rw-r--r--editor/plugins/asset_library_editor_plugin.cpp11
-rw-r--r--modules/csg/config.py16
-rw-r--r--modules/csg/doc_classes/CSGBox.xml25
-rw-r--r--modules/csg/doc_classes/CSGCombiner.xml15
-rw-r--r--modules/csg/doc_classes/CSGCylinder.xml29
-rw-r--r--modules/csg/doc_classes/CSGMesh.xml19
-rw-r--r--modules/csg/doc_classes/CSGPolygon.xml49
-rw-r--r--modules/csg/doc_classes/CSGPrimitive.xml19
-rw-r--r--modules/csg/doc_classes/CSGShape.xml35
-rw-r--r--modules/csg/doc_classes/CSGSphere.xml27
-rw-r--r--modules/csg/doc_classes/CSGTorus.xml29
49 files changed, 780 insertions, 60 deletions
diff --git a/doc/classes/@GDScript.xml b/doc/classes/@GDScript.xml
index acece05510..cddc59ab71 100644
--- a/doc/classes/@GDScript.xml
+++ b/doc/classes/@GDScript.xml
@@ -485,6 +485,14 @@
Returns True/False whether [code]s[/code] is an infinity value (either positive infinity or negative infinity).
</description>
</method>
+ <method name="is_instance_valid">
+ <return type="bool">
+ </return>
+ <argument index="0" name="instance" type="Object">
+ </argument>
+ <description>
+ </description>
+ </method>
<method name="is_nan">
<return type="bool">
</return>
@@ -510,9 +518,9 @@
<method name="lerp">
<return type="float">
</return>
- <argument index="0" name="from" type="float">
+ <argument index="0" name="from" type="Variant">
</argument>
- <argument index="1" name="to" type="float">
+ <argument index="1" name="to" type="Variant">
</argument>
<argument index="2" name="weight" type="float">
</argument>
diff --git a/doc/classes/AnimatedSprite.xml b/doc/classes/AnimatedSprite.xml
index a6521c0cd1..a41ed0e689 100644
--- a/doc/classes/AnimatedSprite.xml
+++ b/doc/classes/AnimatedSprite.xml
@@ -60,6 +60,8 @@
<member name="playing" type="bool" setter="_set_playing" getter="_is_playing">
If [code]true[/code] the [member animation] is currently playing.
</member>
+ <member name="speed_scale" type="float" setter="set_speed_scale" getter="get_speed_scale">
+ </member>
</members>
<signals>
<signal name="animation_finished">
diff --git a/doc/classes/Bone2D.xml b/doc/classes/Bone2D.xml
new file mode 100644
index 0000000000..7e714305cd
--- /dev/null
+++ b/doc/classes/Bone2D.xml
@@ -0,0 +1,39 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<class name="Bone2D" inherits="Node2D" category="Core" version="3.1">
+ <brief_description>
+ </brief_description>
+ <description>
+ </description>
+ <tutorials>
+ </tutorials>
+ <demos>
+ </demos>
+ <methods>
+ <method name="apply_rest">
+ <return type="void">
+ </return>
+ <description>
+ </description>
+ </method>
+ <method name="get_index_in_skeleton" qualifiers="const">
+ <return type="int">
+ </return>
+ <description>
+ </description>
+ </method>
+ <method name="get_skeleton_rest" qualifiers="const">
+ <return type="Transform2D">
+ </return>
+ <description>
+ </description>
+ </method>
+ </methods>
+ <members>
+ <member name="default_length" type="float" setter="set_default_length" getter="get_default_length">
+ </member>
+ <member name="rest" type="Transform2D" setter="set_rest" getter="get_rest">
+ </member>
+ </members>
+ <constants>
+ </constants>
+</class>
diff --git a/doc/classes/CanvasItem.xml b/doc/classes/CanvasItem.xml
index 1705808c04..c8622be4ad 100644
--- a/doc/classes/CanvasItem.xml
+++ b/doc/classes/CanvasItem.xml
@@ -566,6 +566,9 @@
<constant name="BLEND_MODE_PREMULT_ALPHA" value="4" enum="BlendMode">
Mix blending mode. Colors are assumed to be premultiplied by the alpha (opacity) value.
</constant>
+ <constant name="BLEND_MODE_DISABLED" value="5" enum="BlendMode">
+ Disable blending mode. Colors including alpha are written as is. Only applicable for render targets with a transparent background. No lighting will be applied.
+ </constant>
<constant name="NOTIFICATION_TRANSFORM_CHANGED" value="29">
Canvas item transform has changed. Only received if requested.
</constant>
diff --git a/doc/classes/CanvasItemMaterial.xml b/doc/classes/CanvasItemMaterial.xml
index 354bc10cd2..fe7194dcfe 100644
--- a/doc/classes/CanvasItemMaterial.xml
+++ b/doc/classes/CanvasItemMaterial.xml
@@ -36,9 +36,6 @@
<constant name="BLEND_MODE_PREMULT_ALPHA" value="4" enum="BlendMode">
Mix blending mode. Colors are assumed to be premultiplied by the alpha (opacity) value.
</constant>
- <constant name="BLEND_MODE_DISABLED" value="5" enum="BlendMode">
- Disable blending mode. Colors including alpha are written as is. Only applicable for render targets with a transparent background. No lighting will be applied.
- </constant>
<constant name="LIGHT_MODE_NORMAL" value="0" enum="LightMode">
Render the material using both light and non-light sensitive material properties.
</constant>
diff --git a/doc/classes/ColorPickerButton.xml b/doc/classes/ColorPickerButton.xml
index eb86dc8af8..656fce587f 100644
--- a/doc/classes/ColorPickerButton.xml
+++ b/doc/classes/ColorPickerButton.xml
@@ -42,6 +42,10 @@
Emitted when the color changes.
</description>
</signal>
+ <signal name="popup_closed">
+ <description>
+ </description>
+ </signal>
</signals>
<constants>
</constants>
diff --git a/doc/classes/Curve2D.xml b/doc/classes/Curve2D.xml
index 03db9c2ea1..71bdaff688 100644
--- a/doc/classes/Curve2D.xml
+++ b/doc/classes/Curve2D.xml
@@ -49,6 +49,22 @@
Returns the cache of points as a [PoolVector2Array].
</description>
</method>
+ <method name="get_closest_offset" qualifiers="const">
+ <return type="float">
+ </return>
+ <argument index="0" name="to_point" type="Vector2">
+ </argument>
+ <description>
+ </description>
+ </method>
+ <method name="get_closest_point" qualifiers="const">
+ <return type="Vector2">
+ </return>
+ <argument index="0" name="to_point" type="Vector2">
+ </argument>
+ <description>
+ </description>
+ </method>
<method name="get_point_count" qualifiers="const">
<return type="int">
</return>
diff --git a/doc/classes/Curve3D.xml b/doc/classes/Curve3D.xml
index f2308de12c..c012e2794e 100644
--- a/doc/classes/Curve3D.xml
+++ b/doc/classes/Curve3D.xml
@@ -56,6 +56,22 @@
Returns the cache of tilts as a [RealArray].
</description>
</method>
+ <method name="get_closest_offset" qualifiers="const">
+ <return type="float">
+ </return>
+ <argument index="0" name="to_point" type="Vector3">
+ </argument>
+ <description>
+ </description>
+ </method>
+ <method name="get_closest_point" qualifiers="const">
+ <return type="Vector3">
+ </return>
+ <argument index="0" name="to_point" type="Vector3">
+ </argument>
+ <description>
+ </description>
+ </method>
<method name="get_point_count" qualifiers="const">
<return type="int">
</return>
diff --git a/doc/classes/DynamicFont.xml b/doc/classes/DynamicFont.xml
index 03752c6e89..2e2904c16c 100644
--- a/doc/classes/DynamicFont.xml
+++ b/doc/classes/DynamicFont.xml
@@ -73,6 +73,10 @@
<member name="font_data" type="DynamicFontData" setter="set_font_data" getter="get_font_data">
The font data.
</member>
+ <member name="outline_color" type="Color" setter="set_outline_color" getter="get_outline_color">
+ </member>
+ <member name="outline_size" type="int" setter="set_outline_size" getter="get_outline_size">
+ </member>
<member name="size" type="int" setter="set_size" getter="get_size">
The font size.
</member>
diff --git a/doc/classes/EditorPlugin.xml b/doc/classes/EditorPlugin.xml
index 846d6f18ff..e8e2c4fd74 100644
--- a/doc/classes/EditorPlugin.xml
+++ b/doc/classes/EditorPlugin.xml
@@ -114,7 +114,7 @@
<argument index="3" name="ud" type="Variant" default="null">
</argument>
<description>
- Adds a custom menu to 'Project > Tools' as [code]name[/code] that calls [code]callback[/code] on an instance of [code]handler[/code] with a parameter [code]ud[/code] when user activates it.
+ Adds a custom menu to 'Project &gt; Tools' as [code]name[/code] that calls [code]callback[/code] on an instance of [code]handler[/code] with a parameter [code]ud[/code] when user activates it.
</description>
</method>
<method name="add_tool_submenu_item">
@@ -368,7 +368,7 @@
<argument index="0" name="name" type="String">
</argument>
<description>
- Removes a menu [code]name[/code] from 'Project > Tools'.
+ Removes a menu [code]name[/code] from 'Project &gt; Tools'.
</description>
</method>
<method name="save_external_data" qualifiers="virtual">
@@ -424,6 +424,12 @@
Emitted when user change main screen view (2D, 3D, Script, AssetLib). Works also with screens which are defined by plugins.
</description>
</signal>
+ <signal name="resource_saved">
+ <argument index="0" name="resource" type="Object">
+ </argument>
+ <description>
+ </description>
+ </signal>
<signal name="scene_changed">
<argument index="0" name="scene_root" type="Object">
</argument>
diff --git a/doc/classes/Engine.xml b/doc/classes/Engine.xml
index 6384b4d0fd..cc2ae4e768 100644
--- a/doc/classes/Engine.xml
+++ b/doc/classes/Engine.xml
@@ -77,6 +77,8 @@
<member name="iterations_per_second" type="int" setter="set_iterations_per_second" getter="get_iterations_per_second">
The number of fixed iterations per second (for fixed process and physics).
</member>
+ <member name="physics_jitter_fix" type="float" setter="set_physics_jitter_fix" getter="get_physics_jitter_fix">
+ </member>
<member name="target_fps" type="int" setter="set_target_fps" getter="get_target_fps">
The desired frames per second. If the hardware cannot keep up, this setting may not be respected. Defaults to 0, which indicates no limit.
</member>
diff --git a/doc/classes/Font.xml b/doc/classes/Font.xml
index 376d234ec3..3e47b167ef 100644
--- a/doc/classes/Font.xml
+++ b/doc/classes/Font.xml
@@ -24,6 +24,8 @@
</argument>
<argument index="4" name="clip_w" type="int" default="-1">
</argument>
+ <argument index="5" name="outline_modulate" type="Color" default="Color( 1, 1, 1, 1 )">
+ </argument>
<description>
Draw "string" into a canvas item using the font at a given position, with "modulate" color, and optionally clipping the width. "position" specifies the baseline, not the top. To draw from the top, [i]ascent[/i] must be added to the Y axis.
</description>
@@ -41,6 +43,8 @@
</argument>
<argument index="4" name="modulate" type="Color" default="Color( 1, 1, 1, 1 )">
</argument>
+ <argument index="5" name="outline" type="bool" default="false">
+ </argument>
<description>
Draw character "char" into a canvas item using the font at a given position, with "modulate" color, and optionally kerning if "next" is passed. clipping the width. "position" specifies the baseline, not the top. To draw from the top, [i]ascent[/i] must be added to the Y axis. The width used by the character is returned, making this function useful for drawing strings character by character.
</description>
@@ -75,6 +79,12 @@
Return the size of a string, taking kerning and advance into account.
</description>
</method>
+ <method name="has_outline" qualifiers="const">
+ <return type="bool">
+ </return>
+ <description>
+ </description>
+ </method>
<method name="is_distance_field_hint" qualifiers="const">
<return type="bool">
</return>
diff --git a/doc/classes/Geometry.xml b/doc/classes/Geometry.xml
index 78496700dc..ea2e2f7595 100644
--- a/doc/classes/Geometry.xml
+++ b/doc/classes/Geometry.xml
@@ -160,6 +160,21 @@
<description>
</description>
</method>
+ <method name="line_intersects_line_2d">
+ <return type="Variant">
+ </return>
+ <argument index="0" name="from_a" type="Vector2">
+ </argument>
+ <argument index="1" name="dir_a" type="Vector2">
+ </argument>
+ <argument index="2" name="from_b" type="Vector2">
+ </argument>
+ <argument index="3" name="dir_b" type="Vector2">
+ </argument>
+ <description>
+ Checks if the two lines ([code]from_a[/code], [code]dir_a[/code]) and ([code]from_b[/code], [code]dir_b[/code]) intersect. If yes, return the point of intersection as [Vector2]. If no intersection takes place, returns an empty [Variant]. Note that the lines are specified using direction vectors, not end points.
+ </description>
+ </method>
<method name="make_atlas">
<return type="Dictionary">
</return>
@@ -259,21 +274,6 @@
Checks if the two segments ([code]from_a[/code], [code]to_a[/code]) and ([code]from_b[/code], [code]to_b[/code]) intersect. If yes, return the point of intersection as [Vector2]. If no intersection takes place, returns an empty [Variant].
</description>
</method>
- <method name="line_intersects_line_2d">
- <return type="Variant">
- </return>
- <argument index="0" name="from_a" type="Vector2">
- </argument>
- <argument index="1" name="dir_a" type="Vector2">
- </argument>
- <argument index="2" name="from_b" type="Vector2">
- </argument>
- <argument index="3" name="dir_b" type="Vector2">
- </argument>
- <description>
- Checks if the two lines ([code]from_a[/code], [code]dir_a[/code]) and ([code]from_b[/code], [code]dir_b[/code]) intersect. If yes, return the point of intersection as [Vector2]. If no intersection takes place, returns an empty [Variant]. Note that the lines are specified using direction vectors, not end points.
- </description>
- </method>
<method name="segment_intersects_sphere">
<return type="PoolVector3Array">
</return>
diff --git a/doc/classes/GridContainer.xml b/doc/classes/GridContainer.xml
index 346ab9d357..8a8a9a2d24 100644
--- a/doc/classes/GridContainer.xml
+++ b/doc/classes/GridContainer.xml
@@ -11,6 +11,16 @@
<demos>
</demos>
<methods>
+ <method name="get_child_control_at_cell">
+ <return type="Control">
+ </return>
+ <argument index="0" name="row" type="int">
+ </argument>
+ <argument index="1" name="column" type="int">
+ </argument>
+ <description>
+ </description>
+ </method>
</methods>
<members>
<member name="columns" type="int" setter="set_columns" getter="get_columns">
diff --git a/doc/classes/Image.xml b/doc/classes/Image.xml
index ea61aced83..ca2d519e8a 100644
--- a/doc/classes/Image.xml
+++ b/doc/classes/Image.xml
@@ -210,6 +210,8 @@
<method name="generate_mipmaps">
<return type="int" enum="Error">
</return>
+ <argument index="0" name="renormalize" type="bool" default="false">
+ </argument>
<description>
Generates mipmaps for the image. Mipmaps are pre-calculated and lower resolution copies of the image. Mipmaps are automatically used if the image needs to be scaled down when rendered. This improves image quality and the performance of the rendering. Returns an error if the image is compressed, in a custom format or if the image's width/height is 0.
</description>
@@ -255,6 +257,14 @@
Returns the color of the pixel at [code](x, y)[/code] if the image is locked. If the image is unlocked it always returns a [Color] with the value [code](0, 0, 0, 1.0)[/code].
</description>
</method>
+ <method name="get_pixelv" qualifiers="const">
+ <return type="Color">
+ </return>
+ <argument index="0" name="src" type="Vector2">
+ </argument>
+ <description>
+ </description>
+ </method>
<method name="get_rect" qualifiers="const">
<return type="Image">
</return>
@@ -411,6 +421,16 @@
[/codeblock]
</description>
</method>
+ <method name="set_pixelv">
+ <return type="void">
+ </return>
+ <argument index="0" name="dst" type="Vector2">
+ </argument>
+ <argument index="1" name="color" type="Color">
+ </argument>
+ <description>
+ </description>
+ </method>
<method name="shrink_x2">
<return type="void">
</return>
diff --git a/doc/classes/Input.xml b/doc/classes/Input.xml
index 58cee7b556..f92f8da5dd 100644
--- a/doc/classes/Input.xml
+++ b/doc/classes/Input.xml
@@ -48,6 +48,14 @@
If the device has an accelerometer, this will return the acceleration. Otherwise, it returns an empty [Vector3].
</description>
</method>
+ <method name="get_action_strength" qualifiers="const">
+ <return type="float">
+ </return>
+ <argument index="0" name="action" type="String">
+ </argument>
+ <description>
+ </description>
+ </method>
<method name="get_connected_joypads">
<return type="Array">
</return>
@@ -287,6 +295,14 @@
Set a custom mouse cursor image, which is only visible inside the game window. The hotspot can also be specified. Passing [code]null[/code] to the image parameter resets to the system cursor. See enum [code]CURSOR_*[/code] for the list of shapes.
</description>
</method>
+ <method name="set_default_cursor_shape">
+ <return type="void">
+ </return>
+ <argument index="0" name="shape" type="int" enum="Input.CursorShape" default="0">
+ </argument>
+ <description>
+ </description>
+ </method>
<method name="set_mouse_mode">
<return type="void">
</return>
diff --git a/doc/classes/InputEvent.xml b/doc/classes/InputEvent.xml
index b30b144614..cbed2285df 100644
--- a/doc/classes/InputEvent.xml
+++ b/doc/classes/InputEvent.xml
@@ -13,20 +13,19 @@
<demos>
</demos>
<methods>
- <method name="action_match" qualifiers="const">
- <return type="bool">
+ <method name="as_text" qualifiers="const">
+ <return type="String">
</return>
- <argument index="0" name="event" type="InputEvent">
- </argument>
<description>
- Returns [code]true[/code] if this event matches [code]event[/code].
+ Returns a [String] representation of the event.
</description>
</method>
- <method name="as_text" qualifiers="const">
- <return type="String">
+ <method name="get_action_strength" qualifiers="const">
+ <return type="float">
</return>
+ <argument index="0" name="action" type="String">
+ </argument>
<description>
- Returns a [String] representation of the event.
</description>
</method>
<method name="is_action" qualifiers="const">
diff --git a/doc/classes/InputMap.xml b/doc/classes/InputMap.xml
index eeb225d445..3399a3f096 100644
--- a/doc/classes/InputMap.xml
+++ b/doc/classes/InputMap.xml
@@ -34,6 +34,14 @@
Removes an [InputEvent] from an action.
</description>
</method>
+ <method name="action_erase_events">
+ <return type="void">
+ </return>
+ <argument index="0" name="action" type="String">
+ </argument>
+ <description>
+ </description>
+ </method>
<method name="action_has_event">
<return type="bool">
</return>
@@ -45,13 +53,26 @@
Returns [true] if an action has an [InputEvent] associated with it.
</description>
</method>
+ <method name="action_set_deadzone">
+ <return type="void">
+ </return>
+ <argument index="0" name="deadzone" type="String">
+ </argument>
+ <argument index="1" name="arg1" type="float">
+ </argument>
+ <description>
+ </description>
+ </method>
<method name="add_action">
<return type="void">
</return>
<argument index="0" name="action" type="String">
</argument>
+ <argument index="1" name="deadzone" type="float" default="0.5">
+ </argument>
<description>
- Adds an (empty) action to the [code]InputMap[/code]. An [InputEvent] can then be added to this action with [method action_add_event].
+ Adds an (empty) action to the [code]InputMap[/code], with a configurable [code]deadzone[/code].
+ An [InputEvent] can then be added to this action with [method action_add_event].
</description>
</method>
<method name="erase_action">
diff --git a/doc/classes/InstancePlaceholder.xml b/doc/classes/InstancePlaceholder.xml
index 5945e1068f..71c859fd9e 100644
--- a/doc/classes/InstancePlaceholder.xml
+++ b/doc/classes/InstancePlaceholder.xml
@@ -12,6 +12,16 @@
<demos>
</demos>
<methods>
+ <method name="create_instance">
+ <return type="Node">
+ </return>
+ <argument index="0" name="replace" type="bool" default="false">
+ </argument>
+ <argument index="1" name="custom_scene" type="PackedScene" default="null">
+ </argument>
+ <description>
+ </description>
+ </method>
<method name="get_instance_path" qualifiers="const">
<return type="String">
</return>
diff --git a/doc/classes/Label.xml b/doc/classes/Label.xml
index 24c28fc810..1e78a196b1 100644
--- a/doc/classes/Label.xml
+++ b/doc/classes/Label.xml
@@ -106,6 +106,8 @@
</theme_item>
<theme_item name="font_color_shadow" type="Color">
</theme_item>
+ <theme_item name="font_outline_modulate" type="Color">
+ </theme_item>
<theme_item name="line_spacing" type="int">
</theme_item>
<theme_item name="normal" type="StyleBox">
diff --git a/doc/classes/LineEdit.xml b/doc/classes/LineEdit.xml
index c31438283e..d7a0385bb3 100644
--- a/doc/classes/LineEdit.xml
+++ b/doc/classes/LineEdit.xml
@@ -112,7 +112,7 @@
<member name="secret" type="bool" setter="set_secret" getter="is_secret">
If [code]true[/code], every character is replaced with the secret character (see [member secret_character]).
</member>
- <member name="secret_character" type="string" setter="set_secret_character" getter="get_secret_character">
+ <member name="secret_character" type="String" setter="set_secret_character" getter="get_secret_character">
The character to use to mask secret input (defaults to "*"). Only a single character can be used as the secret character.
</member>
<member name="text" type="String" setter="set_text" getter="get_text">
diff --git a/doc/classes/OS.xml b/doc/classes/OS.xml
index d38a89874c..e4375cfb79 100644
--- a/doc/classes/OS.xml
+++ b/doc/classes/OS.xml
@@ -430,6 +430,12 @@
Returns the on-screen keyboard's height in pixels. Returns 0 if there is no keyboard or it is currently hidden.
</description>
</method>
+ <method name="get_window_safe_area" qualifiers="const">
+ <return type="Rect2">
+ </return>
+ <description>
+ </description>
+ </method>
<method name="has_environment" qualifiers="const">
<return type="bool">
</return>
@@ -698,7 +704,7 @@
<member name="low_processor_usage_mode" type="bool" setter="set_low_processor_usage_mode" getter="is_in_low_processor_usage_mode">
If [code]true[/code] the engine optimizes for low processor usage by only refreshing the screen if needed. Can improve battery consumption on mobile.
</member>
- <member name="screen_orientation" type="int" setter="set_screen_orientation" getter="get_screen_orientation" enum="OS.ScreenOrientation">
+ <member name="screen_orientation" type="int" setter="set_screen_orientation" getter="get_screen_orientation" enum="_OS.ScreenOrientation">
The current screen orientation.
</member>
<member name="vsync_enabled" type="bool" setter="set_use_vsync" getter="is_vsync_enabled">
@@ -716,6 +722,8 @@
<member name="window_minimized" type="bool" setter="set_window_minimized" getter="is_window_minimized">
If [code]true[/code] the window is minimized.
</member>
+ <member name="window_per_pixel_transparency_enabled" type="bool" setter="set_window_per_pixel_transparency_enabled" getter="get_window_per_pixel_transparency_enabled">
+ </member>
<member name="window_position" type="Vector2" setter="set_window_position" getter="get_window_position">
The window position relative to the screen, the origin is the top left corner, +Y axis goes to the bottom and +X axis goes to the right.
</member>
diff --git a/doc/classes/OptionButton.xml b/doc/classes/OptionButton.xml
index 8cb53dd98e..c58c932b61 100644
--- a/doc/classes/OptionButton.xml
+++ b/doc/classes/OptionButton.xml
@@ -18,7 +18,7 @@
</argument>
<argument index="1" name="label" type="String">
</argument>
- <argument index="2" name="id" type="int">
+ <argument index="2" name="id" type="int" default="-1">
</argument>
<description>
Add an item, with a "texture" icon, text "label" and (optionally) id. If no "id" is passed, "id" becomes the item index. New items are appended at the end.
diff --git a/doc/classes/Path.xml b/doc/classes/Path.xml
index 621a513da3..5ece747aaf 100644
--- a/doc/classes/Path.xml
+++ b/doc/classes/Path.xml
@@ -16,6 +16,12 @@
<member name="curve" type="Curve3D" setter="set_curve" getter="get_curve">
</member>
</members>
+ <signals>
+ <signal name="curve_changed">
+ <description>
+ </description>
+ </signal>
+ </signals>
<constants>
</constants>
</class>
diff --git a/doc/classes/PhysicalBone.xml b/doc/classes/PhysicalBone.xml
new file mode 100644
index 0000000000..80b3c11270
--- /dev/null
+++ b/doc/classes/PhysicalBone.xml
@@ -0,0 +1,55 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<class name="PhysicalBone" inherits="PhysicsBody" category="Core" version="3.1">
+ <brief_description>
+ </brief_description>
+ <description>
+ </description>
+ <tutorials>
+ </tutorials>
+ <demos>
+ </demos>
+ <methods>
+ <method name="is_simulating_physics">
+ <return type="bool">
+ </return>
+ <description>
+ </description>
+ </method>
+ </methods>
+ <members>
+ <member name="body_offset" type="Transform" setter="set_body_offset" getter="get_body_offset">
+ </member>
+ <member name="bounce" type="float" setter="set_bounce" getter="get_bounce">
+ </member>
+ <member name="friction" type="float" setter="set_friction" getter="get_friction">
+ </member>
+ <member name="gravity_scale" type="float" setter="set_gravity_scale" getter="get_gravity_scale">
+ </member>
+ <member name="joint_offset" type="Transform" setter="set_joint_offset" getter="get_joint_offset">
+ </member>
+ <member name="joint_type" type="int" setter="set_joint_type" getter="get_joint_type" enum="PhysicalBone.JointType">
+ </member>
+ <member name="mass" type="float" setter="set_mass" getter="get_mass">
+ </member>
+ <member name="simulate_physics" type="bool" setter="set_simulate_physics" getter="get_simulate_physics">
+ </member>
+ <member name="static_body" type="bool" setter="set_static_body" getter="is_static_body">
+ </member>
+ <member name="weight" type="float" setter="set_weight" getter="get_weight">
+ </member>
+ </members>
+ <constants>
+ <constant name="JOINT_TYPE_NONE" value="0" enum="JointType">
+ </constant>
+ <constant name="JOINT_TYPE_PIN" value="1" enum="JointType">
+ </constant>
+ <constant name="JOINT_TYPE_CONE" value="2" enum="JointType">
+ </constant>
+ <constant name="JOINT_TYPE_HINGE" value="3" enum="JointType">
+ </constant>
+ <constant name="JOINT_TYPE_SLIDER" value="4" enum="JointType">
+ </constant>
+ <constant name="JOINT_TYPE_6DOF" value="5" enum="JointType">
+ </constant>
+ </constants>
+</class>
diff --git a/doc/classes/Polygon2D.xml b/doc/classes/Polygon2D.xml
index 429114a128..bf4519fd0a 100644
--- a/doc/classes/Polygon2D.xml
+++ b/doc/classes/Polygon2D.xml
@@ -11,11 +11,79 @@
<demos>
</demos>
<methods>
+ <method name="add_bone">
+ <return type="void">
+ </return>
+ <argument index="0" name="path" type="NodePath">
+ </argument>
+ <argument index="1" name="weights" type="PoolRealArray">
+ </argument>
+ <description>
+ </description>
+ </method>
+ <method name="clear_bones">
+ <return type="void">
+ </return>
+ <description>
+ </description>
+ </method>
+ <method name="erase_bone">
+ <return type="void">
+ </return>
+ <argument index="0" name="index" type="int">
+ </argument>
+ <description>
+ </description>
+ </method>
+ <method name="get_bone_count" qualifiers="const">
+ <return type="int">
+ </return>
+ <description>
+ </description>
+ </method>
+ <method name="get_bone_path" qualifiers="const">
+ <return type="NodePath">
+ </return>
+ <argument index="0" name="index" type="int">
+ </argument>
+ <description>
+ </description>
+ </method>
+ <method name="get_bone_weights" qualifiers="const">
+ <return type="PoolRealArray">
+ </return>
+ <argument index="0" name="index" type="int">
+ </argument>
+ <description>
+ </description>
+ </method>
+ <method name="set_bone_path">
+ <return type="void">
+ </return>
+ <argument index="0" name="index" type="int">
+ </argument>
+ <argument index="1" name="path" type="NodePath">
+ </argument>
+ <description>
+ </description>
+ </method>
+ <method name="set_bone_weights">
+ <return type="void">
+ </return>
+ <argument index="0" name="index" type="int">
+ </argument>
+ <argument index="1" name="weights" type="PoolRealArray">
+ </argument>
+ <description>
+ </description>
+ </method>
</methods>
<members>
<member name="antialiased" type="bool" setter="set_antialiased" getter="get_antialiased">
If [code]true[/code] polygon edges will be anti-aliased. Default value: [code]false[/code].
</member>
+ <member name="bones" type="Array" setter="_set_bones" getter="_get_bones">
+ </member>
<member name="color" type="Color" setter="set_color" getter="get_color">
The polygon's fill color. If [code]texture[/code] is defined, it will be multiplied by this color. It will also be the default color for vertices not set in [code]vertex_colors[/code].
</member>
@@ -31,6 +99,8 @@
<member name="polygon" type="PoolVector2Array" setter="set_polygon" getter="get_polygon">
The polygon's list of vertices. The final point will be connected to the first.
</member>
+ <member name="skeleton" type="NodePath" setter="set_skeleton" getter="get_skeleton">
+ </member>
<member name="splits" type="PoolIntArray" setter="set_splits" getter="get_splits">
</member>
<member name="texture" type="Texture" setter="set_texture" getter="get_texture">
diff --git a/doc/classes/Popup.xml b/doc/classes/Popup.xml
index db8d927c9e..ae5bce5d7d 100644
--- a/doc/classes/Popup.xml
+++ b/doc/classes/Popup.xml
@@ -50,7 +50,7 @@
</methods>
<members>
<member name="popup_exclusive" type="bool" setter="set_exclusive" getter="is_exclusive">
- If [code]true[/code] the popup will not be hidden when a click event occurs outside of it, or when it receives the [code]ui_cancel[/code] action event.
+ If [code]true[/code] the popup will not be hidden when a click event occurs outside of it, or when it receives the [code]ui_cancel[/code] action event.
</member>
</members>
<signals>
diff --git a/doc/classes/PrimitiveMesh.xml b/doc/classes/PrimitiveMesh.xml
index c5bc3d6e47..0f0511258b 100644
--- a/doc/classes/PrimitiveMesh.xml
+++ b/doc/classes/PrimitiveMesh.xml
@@ -19,6 +19,10 @@
</method>
</methods>
<members>
+ <member name="custom_aabb" type="AABB" setter="set_custom_aabb" getter="get_custom_aabb">
+ </member>
+ <member name="flip_faces" type="bool" setter="set_flip_faces" getter="get_flip_faces">
+ </member>
<member name="material" type="Material" setter="set_material" getter="get_material">
The current [Material] of the primitive mesh.
</member>
diff --git a/doc/classes/RichTextLabel.xml b/doc/classes/RichTextLabel.xml
index a6c63cfb76..4ec4bbee4f 100644
--- a/doc/classes/RichTextLabel.xml
+++ b/doc/classes/RichTextLabel.xml
@@ -47,6 +47,13 @@
Clears the tag stack and sets [member bbcode_text] to an empty string.
</description>
</method>
+ <method name="get_content_height">
+ <return type="int">
+ </return>
+ <description>
+ Returns the height of the content.
+ </description>
+ </method>
<method name="get_line_count" qualifiers="const">
<return type="int">
</return>
@@ -75,13 +82,6 @@
Returns the number of visible lines.
</description>
</method>
- <method name="get_content_height">
- <return type="int">
- </return>
- <description>
- Returns the height of the content.
- </description>
- </method>
<method name="newline">
<return type="void">
</return>
@@ -328,12 +328,6 @@
</theme_item>
<theme_item name="font_color_shadow" type="Color">
</theme_item>
- <theme_item name="shadow_as_outline" type="int">
- </theme_item>
- <theme_item name="shadow_offset_x" type="int">
- </theme_item>
- <theme_item name="shadow_offset_y" type="int">
- </theme_item>
<theme_item name="italics_font" type="Font">
</theme_item>
<theme_item name="line_separation" type="int">
@@ -346,6 +340,12 @@
</theme_item>
<theme_item name="selection_color" type="Color">
</theme_item>
+ <theme_item name="shadow_as_outline" type="int">
+ </theme_item>
+ <theme_item name="shadow_offset_x" type="int">
+ </theme_item>
+ <theme_item name="shadow_offset_y" type="int">
+ </theme_item>
<theme_item name="table_hseparation" type="int">
</theme_item>
<theme_item name="table_vseparation" type="int">
diff --git a/doc/classes/Skeleton.xml b/doc/classes/Skeleton.xml
index 0208d56cfa..67e10e8f0a 100644
--- a/doc/classes/Skeleton.xml
+++ b/doc/classes/Skeleton.xml
@@ -131,6 +131,30 @@
<description>
</description>
</method>
+ <method name="physical_bones_add_collision_exception">
+ <return type="void">
+ </return>
+ <argument index="0" name="exception" type="RID">
+ </argument>
+ <description>
+ </description>
+ </method>
+ <method name="physical_bones_remove_collision_exception">
+ <return type="void">
+ </return>
+ <argument index="0" name="exception" type="RID">
+ </argument>
+ <description>
+ </description>
+ </method>
+ <method name="physical_bones_simulation">
+ <return type="void">
+ </return>
+ <argument index="0" name="start" type="bool">
+ </argument>
+ <description>
+ </description>
+ </method>
<method name="set_bone_custom_pose">
<return type="void">
</return>
diff --git a/doc/classes/Skeleton2D.xml b/doc/classes/Skeleton2D.xml
new file mode 100644
index 0000000000..654c816ba8
--- /dev/null
+++ b/doc/classes/Skeleton2D.xml
@@ -0,0 +1,35 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<class name="Skeleton2D" inherits="Node2D" category="Core" version="3.1">
+ <brief_description>
+ </brief_description>
+ <description>
+ </description>
+ <tutorials>
+ </tutorials>
+ <demos>
+ </demos>
+ <methods>
+ <method name="get_bone">
+ <return type="Bone2D">
+ </return>
+ <argument index="0" name="arg0" type="int">
+ </argument>
+ <description>
+ </description>
+ </method>
+ <method name="get_bone_count" qualifiers="const">
+ <return type="int">
+ </return>
+ <description>
+ </description>
+ </method>
+ <method name="get_skeleton" qualifiers="const">
+ <return type="RID">
+ </return>
+ <description>
+ </description>
+ </method>
+ </methods>
+ <constants>
+ </constants>
+</class>
diff --git a/doc/classes/SpatialMaterial.xml b/doc/classes/SpatialMaterial.xml
index ace1aa846e..5feaf70e9d 100644
--- a/doc/classes/SpatialMaterial.xml
+++ b/doc/classes/SpatialMaterial.xml
@@ -84,6 +84,8 @@
</member>
<member name="flags_albedo_tex_force_srgb" type="bool" setter="set_flag" getter="get_flag">
</member>
+ <member name="flags_do_not_receive_shadows" type="bool" setter="set_flag" getter="get_flag">
+ </member>
<member name="flags_fixed_size" type="bool" setter="set_flag" getter="get_flag">
</member>
<member name="flags_no_depth_test" type="bool" setter="set_flag" getter="get_flag">
@@ -316,7 +318,9 @@
</constant>
<constant name="FLAG_ALBEDO_TEXTURE_FORCE_SRGB" value="13" enum="Flags">
</constant>
- <constant name="FLAG_MAX" value="14" enum="Flags">
+ <constant name="FLAG_DONT_RECEIVE_SHADOWS" value="14" enum="Flags">
+ </constant>
+ <constant name="FLAG_MAX" value="15" enum="Flags">
</constant>
<constant name="DIFFUSE_BURLEY" value="0" enum="DiffuseMode">
</constant>
diff --git a/doc/classes/TileSet.xml b/doc/classes/TileSet.xml
index 4e218f5595..8f7969505e 100644
--- a/doc/classes/TileSet.xml
+++ b/doc/classes/TileSet.xml
@@ -262,6 +262,14 @@
<description>
</description>
</method>
+ <method name="tile_get_z_index" qualifiers="const">
+ <return type="int">
+ </return>
+ <argument index="0" name="id" type="int">
+ </argument>
+ <description>
+ </description>
+ </method>
<method name="tile_set_light_occluder">
<return type="void">
</return>
@@ -428,6 +436,16 @@
<description>
</description>
</method>
+ <method name="tile_set_z_index">
+ <return type="void">
+ </return>
+ <argument index="0" name="id" type="int">
+ </argument>
+ <argument index="1" name="z_index" type="int">
+ </argument>
+ <description>
+ </description>
+ </method>
</methods>
<constants>
<constant name="BITMASK_2X2" value="0" enum="BitmaskMode">
diff --git a/doc/classes/Timer.xml b/doc/classes/Timer.xml
index c51a52d911..d1c8722901 100644
--- a/doc/classes/Timer.xml
+++ b/doc/classes/Timer.xml
@@ -24,7 +24,7 @@
<argument index="0" name="time_sec" type="float" default="-1">
</argument>
<description>
- Starts the timer. Sets [code]wait_time[/code] to [code]time_sec[/code] if [code]time_sec[/code] > 0. This also resets the remaining time to [code]wait_time[/code].
+ Starts the timer. Sets [code]wait_time[/code] to [code]time_sec[/code] if [code]time_sec[/code] &gt; 0. This also resets the remaining time to [code]wait_time[/code].
Note: this method will not resume a paused timer. See [method set_paused].
</description>
</method>
diff --git a/doc/classes/Tween.xml b/doc/classes/Tween.xml
index 95405cc4f6..2332c1a7aa 100644
--- a/doc/classes/Tween.xml
+++ b/doc/classes/Tween.xml
@@ -340,7 +340,7 @@
</methods>
<members>
<member name="playback_process_mode" type="int" setter="set_tween_process_mode" getter="get_tween_process_mode" enum="Tween.TweenProcessMode">
- The tween's animation process thread. See [enum TweenProcessMode]. Default value: [enum TWEEN_PROCESS_IDLE].
+ The tween's animation process thread. See [enum TweenProcessMode]. Default value: [enum TWEEN_PROCESS_IDLE].
</member>
<member name="playback_speed" type="float" setter="set_speed_scale" getter="get_speed_scale">
The tween's speed multiplier. For example, set it to [code]1.0[/code] for normal speed, [code]2.0[/code] for two times normal speed, or [code]0.5[/code] for half of the normal speed. A value of [code]0[/code] pauses the animation, but see also [method set_active] or [method stop_all] for this.
diff --git a/doc/classes/Vector2.xml b/doc/classes/Vector2.xml
index 5ffe807606..66563dc5a4 100644
--- a/doc/classes/Vector2.xml
+++ b/doc/classes/Vector2.xml
@@ -72,6 +72,12 @@
Bounce returns the vector "bounced off" from the given plane, specified by its normal vector.
</description>
</method>
+ <method name="ceil">
+ <return type="Vector2">
+ </return>
+ <description>
+ </description>
+ </method>
<method name="clamped">
<return type="Vector2">
</return>
@@ -196,6 +202,12 @@
Rotates the vector by "phi" radians.
</description>
</method>
+ <method name="round">
+ <return type="Vector2">
+ </return>
+ <description>
+ </description>
+ </method>
<method name="slide">
<return type="Vector2">
</return>
diff --git a/doc/classes/Vector3.xml b/doc/classes/Vector3.xml
index 940d4dd6cf..0ffb5603c7 100644
--- a/doc/classes/Vector3.xml
+++ b/doc/classes/Vector3.xml
@@ -204,6 +204,12 @@
Rotates the vector around some axis by phi radians. The axis must be a normalized vector.
</description>
</method>
+ <method name="round">
+ <return type="Vector3">
+ </return>
+ <description>
+ </description>
+ </method>
<method name="slide">
<return type="Vector3">
</return>
diff --git a/doc/classes/VisualServer.xml b/doc/classes/VisualServer.xml
index baebddf3e0..893db84640 100644
--- a/doc/classes/VisualServer.xml
+++ b/doc/classes/VisualServer.xml
@@ -388,14 +388,17 @@
</argument>
<argument index="4" name="uvs" type="PoolVector2Array" default="PoolVector2Array( )">
</argument>
- <argument index="5" name="texture" type="RID">
+ <argument index="5" name="bones" type="PoolIntArray" default="PoolIntArray( )">
</argument>
- <argument index="6" name="count" type="int" default="-1">
+ <argument index="6" name="weights" type="PoolRealArray" default="PoolRealArray( )">
</argument>
- <argument index="7" name="normal_map" type="RID">
+ <argument index="7" name="texture" type="RID">
+ </argument>
+ <argument index="8" name="count" type="int" default="-1">
+ </argument>
+ <argument index="9" name="normal_map" type="RID">
</argument>
<description>
- Adds a triangle array to the [CanvasItem]'s draw commands.
</description>
</method>
<method name="canvas_item_clear">
@@ -3330,6 +3333,32 @@
Sets the texture's image data. If it's a CubeMap, it sets the image data at a cube side.
</description>
</method>
+ <method name="texture_set_data_partial">
+ <return type="void">
+ </return>
+ <argument index="0" name="texture" type="RID">
+ </argument>
+ <argument index="1" name="image" type="Image">
+ </argument>
+ <argument index="2" name="src_x" type="int">
+ </argument>
+ <argument index="3" name="src_y" type="int">
+ </argument>
+ <argument index="4" name="src_w" type="int">
+ </argument>
+ <argument index="5" name="src_h" type="int">
+ </argument>
+ <argument index="6" name="dst_x" type="int">
+ </argument>
+ <argument index="7" name="dst_y" type="int">
+ </argument>
+ <argument index="8" name="dst_mip" type="int">
+ </argument>
+ <argument index="9" name="cube_side" type="int" enum="VisualServer.CubeMapSide" default="0">
+ </argument>
+ <description>
+ </description>
+ </method>
<method name="texture_set_flags">
<return type="void">
</return>
diff --git a/editor/plugins/asset_library_editor_plugin.cpp b/editor/plugins/asset_library_editor_plugin.cpp
index 05833704d1..eef72a8b3e 100644
--- a/editor/plugins/asset_library_editor_plugin.cpp
+++ b/editor/plugins/asset_library_editor_plugin.cpp
@@ -65,7 +65,7 @@ void EditorAssetLibraryItem::_notification(int p_what) {
if (p_what == NOTIFICATION_ENTER_TREE) {
- icon->set_normal_texture(get_icon("GodotAssetDefault", "EditorIcons"));
+ icon->set_normal_texture(get_icon("DefaultProjectIcon", "EditorIcons"));
category->add_color_override("font_color", Color(0.5, 0.5, 0.5));
author->add_color_override("font_color", Color(0.5, 0.5, 0.5));
}
@@ -110,6 +110,7 @@ EditorAssetLibraryItem::EditorAssetLibraryItem() {
add_child(hb);
icon = memnew(TextureButton);
+ icon->set_custom_minimum_size(Size2(64, 64));
icon->set_default_cursor_shape(CURSOR_POINTING_HAND);
icon->connect("pressed", this, "_asset_clicked");
@@ -383,7 +384,7 @@ void EditorAssetLibraryItemDownload::configure(const String &p_title, int p_asse
icon->set_texture(p_preview);
asset_id = p_asset_id;
if (!p_preview.is_valid())
- icon->set_texture(get_icon("GodotAssetDefault", "EditorIcons"));
+ icon->set_texture(get_icon("DefaultProjectIcon", "EditorIcons"));
host = p_download_url;
sha256 = p_sha256_hash;
asset_installer->connect("confirmed", this, "_close");
@@ -694,7 +695,7 @@ void EditorAssetLibrary::_image_update(bool use_cache, bool final, const PoolByt
switch (image_queue[p_queue_id].image_type) {
case IMAGE_QUEUE_ICON:
- image->resize(80 * EDSCALE, 80 * EDSCALE, Image::INTERPOLATE_CUBIC);
+ image->resize(64 * EDSCALE, 64 * EDSCALE, Image::INTERPOLATE_CUBIC);
break;
case IMAGE_QUEUE_THUMBNAIL: {
@@ -724,7 +725,7 @@ void EditorAssetLibrary::_image_update(bool use_cache, bool final, const PoolByt
}
if (!image_set && final) {
- obj->call("set_image", image_queue[p_queue_id].image_type, image_queue[p_queue_id].image_index, get_icon("ErrorSign", "EditorIcons"));
+ obj->call("set_image", image_queue[p_queue_id].image_type, image_queue[p_queue_id].image_index, get_icon("DefaultProjectIcon", "EditorIcons"));
}
}
}
@@ -767,7 +768,7 @@ void EditorAssetLibrary::_image_request_completed(int p_status, int p_code, cons
WARN_PRINTS("Error getting PNG file from URL: " + image_queue[p_queue_id].image_url);
Object *obj = ObjectDB::get_instance(image_queue[p_queue_id].target);
if (obj) {
- obj->call("set_image", image_queue[p_queue_id].image_type, image_queue[p_queue_id].image_index, get_icon("ErrorSign", "EditorIcons"));
+ obj->call("set_image", image_queue[p_queue_id].image_type, image_queue[p_queue_id].image_index, get_icon("DefaultProjectIcon", "EditorIcons"));
}
}
diff --git a/modules/csg/config.py b/modules/csg/config.py
index 5f133eba90..5e1d916790 100644
--- a/modules/csg/config.py
+++ b/modules/csg/config.py
@@ -3,3 +3,19 @@ def can_build(platform):
def configure(env):
pass
+
+def get_doc_classes():
+ return [
+ "CSGBox",
+ "CSGCombiner",
+ "CSGCylinder",
+ "CSGMesh",
+ "CSGPolygon",
+ "CSGPrimitive",
+ "CSGShape",
+ "CSGSphere",
+ "CSGTorus",
+ ]
+
+def get_doc_path():
+ return "doc_classes"
diff --git a/modules/csg/doc_classes/CSGBox.xml b/modules/csg/doc_classes/CSGBox.xml
new file mode 100644
index 0000000000..80455fda80
--- /dev/null
+++ b/modules/csg/doc_classes/CSGBox.xml
@@ -0,0 +1,25 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<class name="CSGBox" inherits="CSGPrimitive" category="Core" version="3.1">
+ <brief_description>
+ </brief_description>
+ <description>
+ </description>
+ <tutorials>
+ </tutorials>
+ <demos>
+ </demos>
+ <methods>
+ </methods>
+ <members>
+ <member name="depth" type="float" setter="set_depth" getter="get_depth">
+ </member>
+ <member name="height" type="float" setter="set_height" getter="get_height">
+ </member>
+ <member name="material" type="Material" setter="set_material" getter="get_material">
+ </member>
+ <member name="width" type="float" setter="set_width" getter="get_width">
+ </member>
+ </members>
+ <constants>
+ </constants>
+</class>
diff --git a/modules/csg/doc_classes/CSGCombiner.xml b/modules/csg/doc_classes/CSGCombiner.xml
new file mode 100644
index 0000000000..b2265d7703
--- /dev/null
+++ b/modules/csg/doc_classes/CSGCombiner.xml
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<class name="CSGCombiner" inherits="CSGShape" category="Core" version="3.1">
+ <brief_description>
+ </brief_description>
+ <description>
+ </description>
+ <tutorials>
+ </tutorials>
+ <demos>
+ </demos>
+ <methods>
+ </methods>
+ <constants>
+ </constants>
+</class>
diff --git a/modules/csg/doc_classes/CSGCylinder.xml b/modules/csg/doc_classes/CSGCylinder.xml
new file mode 100644
index 0000000000..0cab26ad3d
--- /dev/null
+++ b/modules/csg/doc_classes/CSGCylinder.xml
@@ -0,0 +1,29 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<class name="CSGCylinder" inherits="CSGPrimitive" category="Core" version="3.1">
+ <brief_description>
+ </brief_description>
+ <description>
+ </description>
+ <tutorials>
+ </tutorials>
+ <demos>
+ </demos>
+ <methods>
+ </methods>
+ <members>
+ <member name="cone" type="bool" setter="set_cone" getter="is_cone">
+ </member>
+ <member name="height" type="float" setter="set_height" getter="get_height">
+ </member>
+ <member name="material" type="Material" setter="set_material" getter="get_material">
+ </member>
+ <member name="radius" type="float" setter="set_radius" getter="get_radius">
+ </member>
+ <member name="sides" type="int" setter="set_sides" getter="get_sides">
+ </member>
+ <member name="smooth_faces" type="bool" setter="set_smooth_faces" getter="get_smooth_faces">
+ </member>
+ </members>
+ <constants>
+ </constants>
+</class>
diff --git a/modules/csg/doc_classes/CSGMesh.xml b/modules/csg/doc_classes/CSGMesh.xml
new file mode 100644
index 0000000000..e5c3e5ccf3
--- /dev/null
+++ b/modules/csg/doc_classes/CSGMesh.xml
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<class name="CSGMesh" inherits="CSGPrimitive" category="Core" version="3.1">
+ <brief_description>
+ </brief_description>
+ <description>
+ </description>
+ <tutorials>
+ </tutorials>
+ <demos>
+ </demos>
+ <methods>
+ </methods>
+ <members>
+ <member name="mesh" type="Mesh" setter="set_mesh" getter="get_mesh">
+ </member>
+ </members>
+ <constants>
+ </constants>
+</class>
diff --git a/modules/csg/doc_classes/CSGPolygon.xml b/modules/csg/doc_classes/CSGPolygon.xml
new file mode 100644
index 0000000000..379c512d6a
--- /dev/null
+++ b/modules/csg/doc_classes/CSGPolygon.xml
@@ -0,0 +1,49 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<class name="CSGPolygon" inherits="CSGPrimitive" category="Core" version="3.1">
+ <brief_description>
+ </brief_description>
+ <description>
+ </description>
+ <tutorials>
+ </tutorials>
+ <demos>
+ </demos>
+ <methods>
+ </methods>
+ <members>
+ <member name="depth" type="float" setter="set_depth" getter="get_depth">
+ </member>
+ <member name="material" type="Material" setter="set_material" getter="get_material">
+ </member>
+ <member name="mode" type="int" setter="set_mode" getter="get_mode" enum="CSGPolygon.Mode">
+ </member>
+ <member name="path_interval" type="float" setter="set_path_interval" getter="get_path_interval">
+ </member>
+ <member name="path_node" type="NodePath" setter="set_path_node" getter="get_path_node">
+ </member>
+ <member name="path_rotation" type="int" setter="set_path_rotation" getter="get_path_rotation" enum="CSGPolygon.PathRotation">
+ </member>
+ <member name="polygon" type="PoolVector2Array" setter="set_polygon" getter="get_polygon">
+ </member>
+ <member name="smooth_faces" type="bool" setter="set_smooth_faces" getter="get_smooth_faces">
+ </member>
+ <member name="spin_degrees" type="float" setter="set_spin_degrees" getter="get_spin_degrees">
+ </member>
+ <member name="spin_sides" type="int" setter="set_spin_sides" getter="get_spin_sides">
+ </member>
+ </members>
+ <constants>
+ <constant name="MODE_DEPTH" value="0" enum="Mode">
+ </constant>
+ <constant name="MODE_SPIN" value="1" enum="Mode">
+ </constant>
+ <constant name="MODE_PATH" value="2" enum="Mode">
+ </constant>
+ <constant name="PATH_ROTATION_POLYGON" value="0" enum="PathRotation">
+ </constant>
+ <constant name="PATH_ROTATION_PATH" value="1" enum="PathRotation">
+ </constant>
+ <constant name="PATH_ROTATION_PATH_FOLLOW" value="2" enum="PathRotation">
+ </constant>
+ </constants>
+</class>
diff --git a/modules/csg/doc_classes/CSGPrimitive.xml b/modules/csg/doc_classes/CSGPrimitive.xml
new file mode 100644
index 0000000000..bf41c40f22
--- /dev/null
+++ b/modules/csg/doc_classes/CSGPrimitive.xml
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<class name="CSGPrimitive" inherits="CSGShape" category="Core" version="3.1">
+ <brief_description>
+ </brief_description>
+ <description>
+ </description>
+ <tutorials>
+ </tutorials>
+ <demos>
+ </demos>
+ <methods>
+ </methods>
+ <members>
+ <member name="invert_faces" type="bool" setter="set_invert_faces" getter="is_inverting_faces">
+ </member>
+ </members>
+ <constants>
+ </constants>
+</class>
diff --git a/modules/csg/doc_classes/CSGShape.xml b/modules/csg/doc_classes/CSGShape.xml
new file mode 100644
index 0000000000..cf236a4207
--- /dev/null
+++ b/modules/csg/doc_classes/CSGShape.xml
@@ -0,0 +1,35 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<class name="CSGShape" inherits="VisualInstance" category="Core" version="3.1">
+ <brief_description>
+ </brief_description>
+ <description>
+ </description>
+ <tutorials>
+ </tutorials>
+ <demos>
+ </demos>
+ <methods>
+ <method name="is_root_shape" qualifiers="const">
+ <return type="bool">
+ </return>
+ <description>
+ </description>
+ </method>
+ </methods>
+ <members>
+ <member name="operation" type="int" setter="set_operation" getter="get_operation" enum="CSGShape.Operation">
+ </member>
+ <member name="snap" type="float" setter="set_snap" getter="get_snap">
+ </member>
+ <member name="use_collision" type="bool" setter="set_use_collision" getter="is_using_collision">
+ </member>
+ </members>
+ <constants>
+ <constant name="OPERATION_UNION" value="0" enum="Operation">
+ </constant>
+ <constant name="OPERATION_INTERSECTION" value="1" enum="Operation">
+ </constant>
+ <constant name="OPERATION_SUBTRACTION" value="2" enum="Operation">
+ </constant>
+ </constants>
+</class>
diff --git a/modules/csg/doc_classes/CSGSphere.xml b/modules/csg/doc_classes/CSGSphere.xml
new file mode 100644
index 0000000000..520368506e
--- /dev/null
+++ b/modules/csg/doc_classes/CSGSphere.xml
@@ -0,0 +1,27 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<class name="CSGSphere" inherits="CSGPrimitive" category="Core" version="3.1">
+ <brief_description>
+ </brief_description>
+ <description>
+ </description>
+ <tutorials>
+ </tutorials>
+ <demos>
+ </demos>
+ <methods>
+ </methods>
+ <members>
+ <member name="material" type="Material" setter="set_material" getter="get_material">
+ </member>
+ <member name="radial_segments" type="int" setter="set_radial_segments" getter="get_radial_segments">
+ </member>
+ <member name="radius" type="float" setter="set_radius" getter="get_radius">
+ </member>
+ <member name="rings" type="int" setter="set_rings" getter="get_rings">
+ </member>
+ <member name="smooth_faces" type="bool" setter="set_smooth_faces" getter="get_smooth_faces">
+ </member>
+ </members>
+ <constants>
+ </constants>
+</class>
diff --git a/modules/csg/doc_classes/CSGTorus.xml b/modules/csg/doc_classes/CSGTorus.xml
new file mode 100644
index 0000000000..58bbef2600
--- /dev/null
+++ b/modules/csg/doc_classes/CSGTorus.xml
@@ -0,0 +1,29 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<class name="CSGTorus" inherits="CSGPrimitive" category="Core" version="3.1">
+ <brief_description>
+ </brief_description>
+ <description>
+ </description>
+ <tutorials>
+ </tutorials>
+ <demos>
+ </demos>
+ <methods>
+ </methods>
+ <members>
+ <member name="inner_radius" type="float" setter="set_inner_radius" getter="get_inner_radius">
+ </member>
+ <member name="material" type="Material" setter="set_material" getter="get_material">
+ </member>
+ <member name="outer_radius" type="float" setter="set_outer_radius" getter="get_outer_radius">
+ </member>
+ <member name="ring_sides" type="int" setter="set_ring_sides" getter="get_ring_sides">
+ </member>
+ <member name="sides" type="int" setter="set_sides" getter="get_sides">
+ </member>
+ <member name="smooth_faces" type="bool" setter="set_smooth_faces" getter="get_smooth_faces">
+ </member>
+ </members>
+ <constants>
+ </constants>
+</class>