diff --git a/doc/classes/PhysicsServer3D.xml b/doc/classes/PhysicsServer3D.xml
index 36758619783..b603161ecce 100644
--- a/doc/classes/PhysicsServer3D.xml
+++ b/doc/classes/PhysicsServer3D.xml
@@ -701,16 +701,19 @@
+ Creates a 3D box shape in the physics server, and returns the [RID] that identifies it. Use [method shape_set_data] to set the box's half-extents.
+ Creates a 3D capsule shape in the physics server, and returns the [RID] that identifies it. Use [method shape_set_data] to set the capsule's height and radius.
+ Creates a 3D concave polygon shape in the physics server, and returns the [RID] that identifies it. Use [method shape_set_data] to set the concave polygon's triangles.
@@ -733,16 +736,20 @@
+ Creates a 3D convex polygon shape in the physics server, and returns the [RID] that identifies it. Use [method shape_set_data] to set the convex polygon's points.
+ Creates a custom shape in the physics server, and returns the [RID] that identifies it. Use [method shape_set_data] to set the shape's data.
+ [b]Note:[/b] Custom shapes are not supported by the built-in physics servers, so calling this method always produces an error when using Godot Physics or Jolt Physics. Custom physics servers implemented as GDExtensions may support a custom shape.
+ Creates a 3D cylinder shape in the physics server, and returns the [RID] that identifies it. Use [method shape_set_data] to set the cylinder's height and radius.
@@ -800,6 +807,7 @@
+ Creates a 3D heightmap shape in the physics server, and returns the [RID] that identifies it. Use [method shape_set_data] to set the heightmap's data.
@@ -985,6 +993,7 @@
+ Creates a 3D separation ray shape in the physics server, and returns the [RID] that identifies it. Use [method shape_set_data] to set the shape's [code]length[/code] and [code]slide_on_slope[/code] properties.
@@ -998,7 +1007,7 @@
- Returns the shape data.
+ Returns the shape data that configures the shape, such as the half-extents of a box or the triangles of a concave (trimesh) shape. See [method shape_set_data] for the precise format of this data in each case.
@@ -1013,7 +1022,7 @@
- Returns the type of shape.
+ Returns the shape's type.
@@ -1021,7 +1030,18 @@
- Sets the shape data that defines its shape and size. The data to be passed depends on the kind of shape created [method shape_get_type].
+ Sets the shape data that configures the shape. The [param data] to be passed depends on the shape's type (see [method shape_get_type]):
+ - [constant SHAPE_WORLD_BOUNDARY]: a [Plane],
+ - [constant SHAPE_SEPARATION_RAY]: a dictionary containing the key [code]"length"[/code] with a [float] value and the key [code]"slide_on_slope"[/code] with a [bool] value,
+ - [constant SHAPE_SPHERE]: a [float] that is the radius of the sphere,
+ - [constant SHAPE_BOX]: a [Vector3] containing the half-extents of the box,
+ - [constant SHAPE_CAPSULE]: a dictionary containing the keys [code]"height"[/code] and [code]"radius"[/code] with [float] values,
+ - [constant SHAPE_CYLINDER]: a dictionary containing the keys [code]"height"[/code] and [code]"radius"[/code] with [float] values,
+ - [constant SHAPE_CONVEX_POLYGON]: a [PackedVector3Array] of points defining a convex polygon (the shape will be the convex hull of the points),
+ - [constant SHAPE_CONCAVE_POLYGON]: a dictionary containing the key [code]"faces"[/code] with a [PackedVector3Array] value (with a length divisible by 3, so that each 3-tuple of points forms a face) and the key [code]"backface_collision"[/code] with a [bool] value,
+ - [constant SHAPE_HEIGHTMAP]: a dictionary containing the keys [code]"width"[/code] and [code]"depth"[/code] with [int] values, and the key [code]"heights"[/code] with a value that is a packed array of [float]s of length [code]width * depth[/code] (that is a [PackedFloat32Array], or a [PackedFloat64Array] if Godot was compiled with the [code]precision=double[/code] option), and optionally the keys [code]"min_height"[/code] and [code]"max_height"[/code] with [float] values,
+ - [constant SHAPE_SOFT_BODY]: the input [param data] is ignored and this method has no effect,
+ - [constant SHAPE_CUSTOM]: the input [param data] is interpreted by a custom physics server, if it supports custom shapes.
@@ -1407,11 +1427,13 @@
+ Creates a 3D sphere shape in the physics server, and returns the [RID] that identifies it. Use [method shape_set_data] to set the sphere's radius.
+ Creates a 3D world boundary shape in the physics server, and returns the [RID] that identifies it. Use [method shape_set_data] to set the shape's normal direction and distance properties.
@@ -1646,37 +1668,37 @@
Represents the size of the [enum G6DOFJointAxisFlag] enum.
- The [Shape3D] is a [WorldBoundaryShape3D].
+ Constant for creating a world boundary shape (used by the [WorldBoundaryShape3D] resource).
- The [Shape3D] is a [SeparationRayShape3D].
+ Constant for creating a separation ray shape (used by the [SeparationRayShape3D] resource).
- The [Shape3D] is a [SphereShape3D].
+ Constant for creating a sphere shape (used by the [SphereShape3D] resource).
- The [Shape3D] is a [BoxShape3D].
+ Constant for creating a box shape (used by the [BoxShape3D] resource).
- The [Shape3D] is a [CapsuleShape3D].
+ Constant for creating a capsule shape (used by the [CapsuleShape3D] resource).
- The [Shape3D] is a [CylinderShape3D].
+ Constant for creating a cylinder shape (used by the [CylinderShape3D] resource).
- The [Shape3D] is a [ConvexPolygonShape3D].
+ Constant for creating a convex polygon shape (used by the [ConvexPolygonShape3D] resource).
- The [Shape3D] is a [ConcavePolygonShape3D].
+ Constant for creating a concave polygon (trimesh) shape (used by the [ConcavePolygonShape3D] resource).
- The [Shape3D] is a [HeightMapShape3D].
+ Constant for creating a heightmap shape (used by the [HeightMapShape3D] resource).
- The [Shape3D] is used internally for a soft body. Any attempt to create this kind of shape results in an error.
+ Constant used internally for a soft body shape. Any attempt to create this kind of shape results in an error.
- This constant is used internally by the engine. Any attempt to create this kind of shape results in an error.
+ Constant used internally for a custom shape. Any attempt to create this kind of shape results in an error when using Godot Physics or Jolt Physics.
Constant to set/get gravity override mode in an area. See [enum AreaSpaceOverrideMode] for possible values.