A deformable 3D physics mesh. Used to create elastic or deformable objects such as cloth, rubber, or other flexible materials.
Additionally, SoftBody3D is subject to wind forces defined in Area3D (see Area3D.wind_source_path, Area3D.wind_force_magnitude, and Area3D.wind_attenuation_factor).
DISABLE_MODE_REMOVE = 0
When Node.process_mode is set to Node.PROCESS_MODE_DISABLED, remove from the physics simulation to stop all physics interactions with this SoftBody3D.
DISABLE_MODE_KEEP_ACTIVE = 1
When Node.process_mode is set to Node.PROCESS_MODE_DISABLED, do not affect the physics simulation.
The physics layers this SoftBody3D is in. Collision objects can exist in one or more of 32 different layers. See also collision_mask.
Note: Object A can detect a contact with object B only if object B is in any of the layers that object A scans. See Collision layers and masks in the documentation for more information.
The physics layers this SoftBody3D scans. Collision objects can scan one or more of 32 different layers. See also collision_layer.
Note: Object A can detect a contact with object B only if object B is in any of the layers that object A scans. See Collision layers and masks in the documentation for more information.
The body's damping coefficient. Higher values will slow down the body more noticeably when forces are applied.
Defines the behavior in physics when Node.process_mode is set to Node.PROCESS_MODE_DISABLED. See DisableMode for more details about the different modes.
The body's drag coefficient. Higher values increase this body's air resistance.
Note: This value is currently unused by Godot's default physics implementation.
Higher values will result in a stiffer body, while lower values will increase the body's ability to bend. The value can be between 0.0
and 1.0
(inclusive).
NodePath to a CollisionObject3D this SoftBody3D should avoid clipping.
The pressure coefficient of this soft body. Simulate pressure build-up from inside this body. Higher values increase the strength of this effect.
If true
, the SoftBody3D will respond to RayCast3Ds.
Increasing this value will improve the resulting simulation, but can affect performance. Use with care.
The SoftBody3D's mass.
Adds a body to the list of bodies that this body can't collide with.
Returns an array of nodes that were added as collision exceptions for this body.
Returns whether or not the specified layer of the collision_layer is enabled, given a layer_number
between 1 and 32.
Returns whether or not the specified layer of the collision_mask is enabled, given a layer_number
between 1 and 32.
Returns the internal RID used by the PhysicsServer3D for this body.
Returns local translation of a vertex in the surface array.
Returns true
if vertex is set to pinned.
Removes a body from the list of bodies that this body can't collide with.
Based on value
, enables or disables the specified layer in the collision_layer, given a layer_number
between 1 and 32.
Based on value
, enables or disables the specified layer in the collision_mask, given a layer_number
between 1 and 32.
Sets the pinned state of a surface vertex. When set to true
, the optional attachment_path
can define a Node3D the pinned vertex will be attached to.