Reference API Roblox

Engine API

Website

Related

Reference API Roblox

SlidingBallConstraint

The base class for constraints that allow their attachments to slide along an axis but not rotate.

This class is not creatable. Instances of this class cannot be created with Instance.new.
Tags: [NotCreatable]

Member index 15

HistoryMember
731ActuatorType: ActuatorType
731CurrentPosition: float
731LimitsEnabled: bool
731LinearResponsiveness: float
731LowerLimit: float
731MotorMaxAcceleration: float
731MotorMaxForce: float
731Restitution: float
731ServoMaxForce: float
731Size: float
731SoftlockServoUponReachingTarget: bool
731Speed: float
731TargetPosition: float
731UpperLimit: float
731Velocity: float
inherited from Constraint
731Active: bool
731Attachment0: Attachment
731Attachment1: Attachment
731Color: BrickColor
731Enabled: bool
731Visible: bool
604GetDebugAppliedForce(bodyId: int): Vector3
604GetDebugAppliedTorque(bodyId: int): Vector3
inherited from Instance
731Archivable: bool
731Capabilities: SecurityCapabilities
731IsInSandbox: bool
731Name: string
731Parent: Instance
731PredictionMode: PredictionMode
731Sandboxed: bool
731UniqueId: UniqueId
576AddTag(tag: string): null
573ClearAllChildren(): null
462Clone(): Instance
573Destroy(): null
486FindFirstAncestor(name: string): Instance
486FindFirstAncestorOfClass(className: string): Instance
486FindFirstAncestorWhichIsA(className: string): Instance
486FindFirstChild(name: string, recursive: bool = false): Instance
486FindFirstChildOfClass(className: string): Instance
486FindFirstChildWhichIsA(className: string, recursive: bool = false): Instance
486FindFirstDescendant(name: string): Instance
563GetActor(): Actor
486GetAttribute(attribute: string): Variant
462GetAttributeChangedSignal(attribute: string): RBXScriptSignal
631GetAttributes(): Dictionary
648GetChildren(): Instances
462GetDebugId(scopeLength: int = 4): string
707GetDescendants(): Instances
486GetFullName(): string
706GetStyled(name: string, selector: string?): Variant
657GetStyledPropertyChangedSignal(property: string): RBXScriptSignal
576GetTags(): Array
576HasTag(tag: string): bool
486IsAncestorOf(descendant: Instance): bool
486IsDescendantOf(ancestor: Instance): bool
664IsPropertyModified(property: string): bool
698QueryDescendants(selector: string): Instances
573Remove(): null
576RemoveTag(tag: string): null
664ResetPropertyToDefault(property: string): null
573SetAttribute(attribute: string, value: Variant): null
462WaitForChild(childName: string, timeOut: double): Instance
731children(): Instances
731clone(): Instance
731destroy(): null
731findFirstChild(name: string, recursive: bool = false): Instance
731getChildren(): Instances
731isDescendantOf(ancestor: Instance): bool
731remove(): null
462AncestryChanged(child: Instance, parent: Instance)
462AttributeChanged(attribute: string)
462ChildAdded(child: Instance)
462ChildRemoved(child: Instance)
462DescendantAdded(descendant: Instance)
462DescendantRemoving(descendant: Instance)
500Destroying()
657StyledPropertiesChanged()
731childAdded(child: Instance)
inherited from Object
731ClassName: string
731className: string
647GetPropertyChangedSignal(property: string): RBXScriptSignal
647IsA(className: string): bool
731isA(className: string): bool
647Changed(property: string)

Description

SlidingBallConstraint is the base class for constraints that allow their attachments to slide along an axis but not rotate, including PrismaticConstraint and CylindricalConstraint. This constrains the attachments so that their X axes are collinear but pointing in opposite directions. It also constrains the attachments so that their Y axes are parallel.

When configuring this constraint, it may be helpful to study Roblox Units to understand how Roblox units compare to metric units.

Linear Power

If this constraint's ActuatorType is set to Motor, it attempts to translate the attachments with the goal of reaching Velocity. You can further control this translation through both MotorMaxAcceleration and MotorMaxForce.

If this constraint's ActuatorType is set to Servo, it attempts to translate the attachments to a set separation specified by TargetPosition. This translation is controlled by Speed, LinearResponsiveness, and ServoMaxForce.

Limits

You can set limits to restrict this constraint's sliding range. Enabling the LimitsEnabled property exposes the LowerLimit and UpperLimit values, as well as Restitution which defines the elasticity of the attachments when they reach either limit.

History 92

Members 15

ActuatorType

TypeDefault
ActuatorType

Sets whether the translation of the SlidingBallConstraint is actuated and, if so, what kind of actuation.

History 6

CurrentPosition

TypeDefault
float

The current offset between the constraint's Attachments.

This property is not replicated. Its interface does not cross the network boundary.
This property is read-only. Its value can be read, but it cannot be modified.

History 6

Tags: [ReadOnly, NotReplicated]

LimitsEnabled

TypeDefault
bool

Sets whether the SlidingBallConstraint will limit the range of translation. If true, this property exposes the LowerLimit and UpperLimit values, as well as Restitution which defines the elasticity of the attachments when they reach either limit.

History 6

LinearResponsiveness

TypeDefault
float

Specifies the "sharpness" of the linear servo motor in reaching the TargetPosition when the derived classes' actuator type is set to Servo. Larger values correspond to faster a response and smaller values results in more damping and a slower response.

History 5

LowerLimit

TypeDefault
float

The lower positional limit along the X axis of Attachment0 if LimitsEnabled is true.

History 6

MotorMaxAcceleration

TypeDefault
float

The constraint's maximum acceleration when ActuatorType is set to Motor, as the constraint attempts to reach its desired Velocity.

History 6

MotorMaxForce

TypeDefault
float

The constraint's maximum force when ActuatorType is set to Motor, as the constraint attempts to reach its desired Velocity.

History 6

Restitution

TypeDefault
float

The elasticity of the constraint's Attachments when they reach the end of the range specified by UpperLimit and LowerLimit, assuming LimitsEnabled is set to true. The valid range is between 0–1.

History 6

ServoMaxForce

TypeDefault
float

The constraint's maximum force when ActuatorType is set to Servo, as the constraint attempts to reach its desired Speed.

History 6

Size

TypeDefault
float

The constraint's visualized size.

History 6

  • 731 Change Default of Size from to
  • 726 Change Default of Size from to
  • 553 Change Default of Size from to
  • 486 Change ThreadSafety of Size from ReadOnly to ReadSafe
  • 462 Change ThreadSafety of Size from to ReadOnly
  • 261 Add Size

SoftlockServoUponReachingTarget

TypeDefault
bool
This property is deprecated. It exists only for backward compatibility, and should not be used for new work.

History 4

Tags: [Deprecated]

Speed

TypeDefault
float

The constraint's desired speed when ActuatorType is set to Servo, as the constraint translates towards its TargetPosition. Measured in studs per second.

History 6

TargetPosition

TypeDefault
float

The constraint's attempted target position when ActuatorType is set to Servo Measured in studs.

History 6

UpperLimit

TypeDefault
float

The upper positional limit along the X axis of Attachment0 if LimitsEnabled is true.

History 6

Velocity

TypeDefault
float

The constraint's attempted velocity when ActuatorType is set to Motor. Measured in studs per second.

History 6

Settings