Joint3D
Abstract base class for all 3D physics joints.
Abstract base class for all 3D physics joints.
Abstract base class for all joints in 3D physics. 3D joints bind together two physics bodies (node_a and node_b) and apply a constraint. If only one body is defined, it is attached to a fixed StaticBody3D without collision shapes.
Declarations checked against C# SDK 1.0.0. Expand a name to see declarations and documentation.
Properties4
EntityAProperty
public EntityPath EntityA { get; set; }Path to the first node (A) attached to the joint. The node must inherit PhysicsBody3D.
If left empty and node_b is set, the body is attached to a fixed StaticBody3D without collision shapes.
EntityBProperty
public EntityPath EntityB { get; set; }Path to the second node (B) attached to the joint. The node must inherit PhysicsBody3D.
If left empty and node_a is set, the body is attached to a fixed StaticBody3D without collision shapes.
ExcludeEntitiesFromCollisionProperty
public bool ExcludeEntitiesFromCollision { get; set; }If true, the two bodies bound together do not collide with each other.
SolverPriorityProperty
public int SolverPriority { get; set; }The priority specifies how accurately a joint is solved. Generally, higher values improve accuracy. This has very different implementations between Reckfell Physics and Jolt Physics:
Reckfell Physics: Values above 1 have a performance impact. Joint is solved max(1, solver_priority) * iterations times. A value of 4 would solve the same joint 4× additional times per physics step.
Jolt Physics: Aside from sorting the joints, there is no performance impact with higher values. Joints with high priorities are solved later. A value of 4 would solve after priorities of 0, 1, 2, and 3. Later joints have the final say between the two bodies they connect.
Negative values are not allowed and will be silently max(0, solver_priority) when set.
Methods9
GetEntityAEntityPath
public EntityPath GetEntityA();EntityPathGetEntityBEntityPath
public EntityPath GetEntityB();EntityPathGetExcludeEntitiesFromCollisionbool
public bool GetExcludeEntitiesFromCollision();boolGetRidRid
public Rid GetRid();Returns the joint's internal Rid from the PhysicsServer3D.
RidGetSolverPriorityint
public int GetSolverPriority();intSetEntityAvoid
public void SetEntityA(EntityPath node);| Name | Type | Default |
|---|---|---|
node | EntityPath | — |
SetEntityBvoid
public void SetEntityB(EntityPath node);| Name | Type | Default |
|---|---|---|
node | EntityPath | — |
SetExcludeEntitiesFromCollisionvoid
public void SetExcludeEntitiesFromCollision(bool enable);| Name | Type | Default |
|---|---|---|
enable | bool | — |
SetSolverPriorityvoid
public void SetSolverPriority(int priority);| Name | Type | Default |
|---|---|---|
priority | int | — |