summaryrefslogtreecommitdiff
path: root/doc/classes/StaticBody2D.xml
blob: 21c160b7800ae3a5ad25516e5d005632658cc049 (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
<?xml version="1.0" encoding="UTF-8" ?>
<class name="StaticBody2D" inherits="PhysicsBody2D" version="4.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../class.xsd">
	<brief_description>
		Physics body for 2D physics which is static or moves only by script. Useful for floor and walls.
	</brief_description>
	<description>
		Static body for 2D physics.
		A static body is a simple body that can't be moved by external forces or contacts. It is ideal for implementing objects in the environment, such as walls or platforms. In contrast to [RigidBody2D], it doesn't consume any CPU resources as long as they don't move.
		They have extra functionalities to move and affect other bodies:
		[b]Static transform change:[/b] Static bodies can be moved by animation or script. In this case, they are just teleported and don't affect other bodies on their path.
		[b]Constant velocity:[/b] When [member constant_linear_velocity] or [member constant_angular_velocity] is set, static bodies don't move themselves but affect touching bodies as if they were moving. This is useful for simulating conveyor belts or conveyor wheels.
	</description>
	<tutorials>
	</tutorials>
	<members>
		<member name="constant_angular_velocity" type="float" setter="set_constant_angular_velocity" getter="get_constant_angular_velocity" default="0.0">
			The body's constant angular velocity. This does not rotate the body, but affects touching bodies, as if it were rotating.
		</member>
		<member name="constant_linear_velocity" type="Vector2" setter="set_constant_linear_velocity" getter="get_constant_linear_velocity" default="Vector2(0, 0)">
			The body's constant linear velocity. This does not move the body, but affects touching bodies, as if it were moving.
		</member>
		<member name="physics_material_override" type="PhysicsMaterial" setter="set_physics_material_override" getter="get_physics_material_override">
			The physics material override for the body.
			If a material is assigned to this property, it will be used instead of any other physics material, such as an inherited one.
		</member>
	</members>
</class>