virtualx-engine/doc/classes/Shape2D.xml
PouleyKetchoupp 8682adcb87 Add physics solver settings to project settings
Helps with discovery and setup of physics solver settings, in a specific
project settings section for both 2D and 3D.

Other changes for cleanup:
-Removed unused space parameters in 3D
SPACE_PARAM_BODY_ANGULAR_VELOCITY_DAMP_RATIO
SPACE_PARAM_CONSTRAINT_DEFAULT_BIAS
-Added custom solver bias for Shape3D (same as Shape2D)
-Improved documentation for solver settings
2021-12-07 12:08:04 -07:00

72 lines
4.2 KiB
XML

<?xml version="1.0" encoding="UTF-8" ?>
<class name="Shape2D" inherits="Resource" version="4.0">
<brief_description>
Base class for all 2D shapes.
</brief_description>
<description>
Base class for all 2D shapes. All 2D shape types inherit from this.
</description>
<tutorials>
<link title="Physics introduction">$DOCS_URL/tutorials/physics/physics_introduction.html</link>
</tutorials>
<methods>
<method name="collide">
<return type="bool" />
<argument index="0" name="local_xform" type="Transform2D" />
<argument index="1" name="with_shape" type="Shape2D" />
<argument index="2" name="shape_xform" type="Transform2D" />
<description>
Returns [code]true[/code] if this shape is colliding with another.
This method needs the transformation matrix for this shape ([code]local_xform[/code]), the shape to check collisions with ([code]with_shape[/code]), and the transformation matrix of that shape ([code]shape_xform[/code]).
</description>
</method>
<method name="collide_and_get_contacts">
<return type="Array" />
<argument index="0" name="local_xform" type="Transform2D" />
<argument index="1" name="with_shape" type="Shape2D" />
<argument index="2" name="shape_xform" type="Transform2D" />
<description>
Returns a list of the points where this shape touches another. If there are no collisions the list is empty.
This method needs the transformation matrix for this shape ([code]local_xform[/code]), the shape to check collisions with ([code]with_shape[/code]), and the transformation matrix of that shape ([code]shape_xform[/code]).
</description>
</method>
<method name="collide_with_motion">
<return type="bool" />
<argument index="0" name="local_xform" type="Transform2D" />
<argument index="1" name="local_motion" type="Vector2" />
<argument index="2" name="with_shape" type="Shape2D" />
<argument index="3" name="shape_xform" type="Transform2D" />
<argument index="4" name="shape_motion" type="Vector2" />
<description>
Returns whether this shape would collide with another, if a given movement was applied.
This method needs the transformation matrix for this shape ([code]local_xform[/code]), the movement to test on this shape ([code]local_motion[/code]), the shape to check collisions with ([code]with_shape[/code]), the transformation matrix of that shape ([code]shape_xform[/code]), and the movement to test onto the other object ([code]shape_motion[/code]).
</description>
</method>
<method name="collide_with_motion_and_get_contacts">
<return type="Array" />
<argument index="0" name="local_xform" type="Transform2D" />
<argument index="1" name="local_motion" type="Vector2" />
<argument index="2" name="with_shape" type="Shape2D" />
<argument index="3" name="shape_xform" type="Transform2D" />
<argument index="4" name="shape_motion" type="Vector2" />
<description>
Returns a list of the points where this shape would touch another, if a given movement was applied. If there are no collisions the list is empty.
This method needs the transformation matrix for this shape ([code]local_xform[/code]), the movement to test on this shape ([code]local_motion[/code]), the shape to check collisions with ([code]with_shape[/code]), the transformation matrix of that shape ([code]shape_xform[/code]), and the movement to test onto the other object ([code]shape_motion[/code]).
</description>
</method>
<method name="draw">
<return type="void" />
<argument index="0" name="canvas_item" type="RID" />
<argument index="1" name="color" type="Color" />
<description>
Draws a solid shape onto a [CanvasItem] with the [RenderingServer] API filled with the specified [code]color[/code]. The exact drawing method is specific for each shape and cannot be configured.
</description>
</method>
</methods>
<members>
<member name="custom_solver_bias" type="float" setter="set_custom_solver_bias" getter="get_custom_solver_bias" default="0.0">
The shape's custom solver bias. Defines how much bodies react to enforce contact separation when this shape is involved.
When set to [code]0[/code], the default value from [member ProjectSettings.physics/2d/solver/default_contact_bias] is used.
</member>
</members>
</class>