Skip to content

BallSocketConstraint

概览

字段
KindUnit · 单位 Unit
Realmcommon

继承关系

  • Unit(4 属性 / 25 函数 / 6 事件)
    • [BallSocketConstraint](12 属性)

继承成员

1 个来源 / 4 属性 / 25 函数 / 6 事件

BallSocketConstraint 描述两个 Attachment 实例之间的球形关节;当前公开契约可通过 Attachment0/Attachment1 直接引用端点。

适用场景

仅建议检查或有限调整编辑器中已经绑定完成、并在目标运行包验证过的球形关节。

使用要点

从场景中查找预配置的 BallSocketConstraint,读取状态或调整已验证安全的限制参数;不要在正式逻辑中动态创建或反复施加高强度物理作用。

注意事项

Attachment0 和 Attachment1 使用已存在的 Attachment 实例引用,不需要读取 UnitId。当前运行包仍实测出现动态球窝约束触发执行上限、持续踩踏后断开或物理卡顿等问题;修复前请优先使用编辑器预配置并验证过的 BallSocketConstraint

代码示例

读取编辑器预配置的球窝约束

lua
-- @runtime server
local World = game:GetService("World")
local constraint = World:FindFirstChild("MyBallSocketConstraint", true)
if constraint == nil or not constraint:IsA("BallSocketConstraint") then
    print("请先在编辑器中配置 BallSocketConstraint")
    return
end
print("已找到球窝约束:", constraint.Name)

属性 (12)

Name类型默认值说明
EnabledBooltrue是否启用该约束。
Attachment0Attachment-球窝约束连接的第一个附件。该属性引用场景中的一个附件实例,用于确定约束的一个连接端在空间中的位置与方向。
Attachment1Attachment-球窝约束连接的第二个附件。该属性引用场景中的一个附件实例,与另一端的附件共同确定约束施加的连接范围。
LimitsEnabledBoolfalse是否启用摆动角限制。
UpperAngleFloat45.0最大摆动角,单位为度。
TwistLimitsEnabledBoolfalse是否启用扭转角限制。
TwistLowerAngleFloat-45.0最小扭转角,单位为度。
TwistUpperAngleFloat45.0最大扭转角,单位为度。
RestitutionFloat0.0约束的弹性系数,取值范围 0 到 1。
MaxFrictionTorqueFloat0.0最大摩擦扭矩,当前仅用于存储。
RadiusFloat0.15约束的可视化半径。
ActiveBoolfalse当前约束是否处于激活状态。

关联类型