Table of Contents

Class GravitasConstraint2DService

Namespace
Gravitas
Assembly
Gravitas.dll

Owns deterministic pure 2D joints and ragdoll articulation state for one world context.

public sealed class GravitasConstraint2DService
Inheritance
GravitasConstraint2DService
Inherited Members

Properties

Context

Gets the owning world context.

public GravitasWorldContext Context { get; }

Property Value

GravitasWorldContext

PeakJointCount

Gets the highest joint ID allocated in this context.

public int PeakJointCount { get; }

Property Value

int

RegisteredJointCount

Gets the number of registered active joints.

public int RegisteredJointCount { get; }

Property Value

int

RegisteredRagdollCount

Gets the number of registered ragdoll runtimes.

public int RegisteredRagdollCount { get; }

Property Value

int

Methods

ClearJointMotorTarget(int)

Disables a pure 2D joint motor target and clears its cached solver impulses.

public bool ClearJointMotorTarget(int jointId)

Parameters

jointId int

Returns

bool

GetJoint(int)

Gets a registered pure 2D joint by context-local ID.

public Joint2D GetJoint(int jointId)

Parameters

jointId int

Returns

Joint2D

RegisterJoint(in JointDefinition2D)

Registers a context-owned deterministic pure 2D joint.

public Joint2D RegisterJoint(in JointDefinition2D definition)

Parameters

definition JointDefinition2D

Returns

Joint2D

RegisterRagdoll(RagdollDefinition2D)

Registers a pure 2D ragdoll articulation and its owned joints.

public RagdollRuntime2D RegisterRagdoll(RagdollDefinition2D definition)

Parameters

definition RagdollDefinition2D

Returns

RagdollRuntime2D

RemoveJoint(int)

Removes a context-owned pure 2D joint and releases its filter state.

public bool RemoveJoint(int jointId)

Parameters

jointId int

Returns

bool

RemoveRagdoll(int)

Removes a registered pure 2D ragdoll and every joint and collision suppression it owns.

public bool RemoveRagdoll(int ragdollId)

Parameters

ragdollId int

Returns

bool

SetJointMotorTarget(int, Fixed64)

Updates a pure 2D joint motor target while preserving the motor's gains and impulse cap.

public bool SetJointMotorTarget(int jointId, Fixed64 target)

Parameters

jointId int
target Fixed64

Returns

bool

SetRagdollPoseTargets(RagdollRuntime2D, ReadOnlySpan<JointMotor2D>)

Applies caller-owned motor payloads to every joint in a pure 2D ragdoll runtime.

public void SetRagdollPoseTargets(RagdollRuntime2D ragdoll, ReadOnlySpan<JointMotor2D> motors)

Parameters

ragdoll RagdollRuntime2D
motors ReadOnlySpan<JointMotor2D>

ShouldExcludeLinkedCollision(LSCollider2D, LSCollider2D)

Gets whether the supplied pure 2D colliders should be excluded because a registered articulation links them.

public bool ShouldExcludeLinkedCollision(LSCollider2D colliderA, LSCollider2D colliderB)

Parameters

colliderA LSCollider2D
colliderB LSCollider2D

Returns

bool

TryGetJoint(int, out Joint2D?)

Tries to get a registered pure 2D joint by context-local ID.

public bool TryGetJoint(int jointId, out Joint2D? joint)

Parameters

jointId int
joint Joint2D

Returns

bool