Table of Contents

Namespace Jitter2.Dynamics.Constraints

Classes

AngularMotor

Drives relative angular velocity about an axis attached to each body.

AngularServo

Drives body 2 toward a target orientation relative to body 1 using limited torque. Controls three angular degrees of freedom; translation remains free.

BallSocket

Keeps an anchor point on each body together while allowing all relative rotation.

ConeLimit

Limits the angle between axes attached to two bodies, leaving twist and translation free.

Constraint

Base class for constraints that connect two rigid bodies and restrict their relative motion.

Constraint<T>

Generic base class for constraints that store custom data of type T.

DistanceLimit

Keeps the distance between two body anchors within a range, or at a fixed value. For a fixed distance of zero, use BallSocket.

EllipticalConeLimit

Restricts relative swing to the region between two elliptical cones, leaving twist free.

FixedAngle

Preserves the relative orientation of two bodies while leaving translation free.

HingeAngle

Allows relative rotation around a single axis, with optional angular limits. Does not keep the bodies at a shared anchor; use HingeJoint for a complete hinge.

HingeJoint

Connects two bodies at a shared anchor, allowing relative rotation around one axis. Supports angular limits and an optional motor or servo.

Joint

Groups constraints into a joint that can be enabled, disabled, removed, or drawn as a whole.

LinearAxisServo

Drives the signed separation of two anchors along an axis attached to body 1 using limited force. Controls one translational degree of freedom; perpendicular movement and rotation remain free.

LinearMotor

Drives relative linear velocity along an axis attached to each body.

LinearServo

Drives an anchor on body 2 toward a target position attached to body 1 using limited force. Controls three translational degrees of freedom; relative orientation remains free.

PointOnLine

Keeps an anchor on body 2 on a line attached to body 1, with optional limits along the line. Relative rotation remains free.

PointOnPlane

Limits an anchor on body 2 to a plane or a range of distances from a plane attached to body 1. Movement along the plane and relative rotation remain free.

PrismaticJoint

Allows two bodies to slide along an axis, with optional distance limits and a motor or servo. Relative rotation can be locked or allowed around the sliding axis.

TwistAngle

Limits relative twist around axes attached to two bodies, leaving swing and translation free.

TwistServo

Drives relative twist toward a target angle using limited torque. Controls one angular degree of freedom; translation and swing remain free.

UniversalJoint

Connects two bodies at a shared anchor, allowing rotation about two axes while constraining twist. Supports an optional motor or servo.

WeldJoint

Holds two bodies together at a shared anchor and preserves their relative orientation.

Structs

AngularLimit

Represents an angular limit defined by a minimum and maximum angle. Used by constraints to restrict rotational motion within a specified range.

AngularMotor.AngularMotorData
AngularServo.AngularServoData
BallSocket.BallSocketData
ConeLimit.ConeLimitData
ConstraintData

Low-level data for constraints, stored in unmanaged memory.

DistanceLimit.DistanceLimitData
EllipticalConeLimit.EllipticalConeLimitData
FixedAngle.FixedAngleData
HingeAngle.HingeAngleData
LinearAxisServo.LinearAxisServoData
LinearLimit

Represents a linear limit defined by a minimum and maximum distance. Used by constraints to restrict translational motion within a specified range.

LinearMotor.LinearMotorData
LinearServo.LinearServoData
PointOnLine.PointOnLineData
PointOnPlane.SliderData
SmallConstraintData

Low-level data for constraints that fit within ConstraintSizeSmall bytes.

TwistAngle.TwistLimitData
TwistServo.TwistServoData

Enums

JointDrive

Selects the optional drive created with a joint.