summaryrefslogtreecommitdiff
path: root/doc/classes/CollisionPolygon3D.xml
blob: 39f77bde391c6afe4007ffbee055412dfa92fc43 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
<?xml version="1.0" encoding="UTF-8" ?>
<class name="CollisionPolygon3D" inherits="Node3D" version="4.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../class.xsd">
	<brief_description>
		Node that represents a 3D collision polygon, given by the thickening of a 2D polygon in the local XY plane along the local Z axis.
	</brief_description>
	<description>
		Provides a 3D collision polygon to a [CollisionObject3D] parent, by thickening a 2D (convex or concave) polygon in the local XY plane along the local Z axis. The 2D polygon in the local XY plane can be drawn in the editor or specified by a list of vertices. That 2D polygon is thickened evenly in the local Z and -Z directions.
		This node has the same effect as several [ConvexPolygonShape3D] nodes, created by thickening the 2D convex polygons in the convex decomposition of the given 2D polygon (but without the overhead of multiple nodes).
		[b]Warning:[/b] A non-uniformly scaled CollisionPolygon3D node will probably not function as expected. Please make sure to keep its scale uniform (i.e. the same on all axes), and change its [member polygon]'s vertices instead.
	</description>
	<tutorials>
	</tutorials>
	<members>
		<member name="depth" type="float" setter="set_depth" getter="get_depth" default="1.0">
			Length that the resulting collision extends in either direction perpendicular to its 2D polygon.
		</member>
		<member name="disabled" type="bool" setter="set_disabled" getter="is_disabled" default="false">
			If [code]true[/code], no collision will be produced.
		</member>
		<member name="margin" type="float" setter="set_margin" getter="get_margin" default="0.04">
			The collision margin for the generated [Shape3D]. See [member Shape3D.margin] for more details.
		</member>
		<member name="polygon" type="PackedVector2Array" setter="set_polygon" getter="get_polygon" default="PackedVector2Array()">
			Array of vertices which define the 2D polygon in the local XY plane.
			[b]Note:[/b] The returned value is a copy of the original. Methods which mutate the size or properties of the return value will not impact the original polygon. To change properties of the polygon, assign it to a temporary variable and make changes before reassigning the [code]polygon[/code] member.
		</member>
	</members>
</class>