Optional
options: RigidBodyOptions物理分类,用于碰撞检测
摩擦系数,范围 0-1,默认为 0.2
脚本唯一标识符,通常由编辑器指定
是否为传感器,传感器只检测碰撞但不产生物理反馈
关节列表,描述刚体之间的连接关系
脚本标签,用于快速识别和查找
Optional
on碰撞结束回调
Optional
on碰撞开始回调
弹性系数,范围 0-1,默认为 0
物理类型,static(静态)、kinematic(运动学) 或 dynamic(动态),至少一个物体为 dynamic 才能产生碰撞
物理形状列表,描述碰撞区域,为空则默认使用与节点同大小的矩形
是否允许旋转,设为 false 则物体保持固定方向
是否允许休眠,休眠状态下物体不参与物理计算以提高性能
角阻尼系数,影响物体旋转的减速率,值越大减速越快
角速度,物体旋转速度,单位为弧度/秒
脚本是否已被激活(添加到场景后触发)
是否为子弹,高速物体设为 true 可减少穿透问题,但会增加性能开销
接受碰撞的分类列表,为空则与所有物体碰撞
脚本是否已被销毁
脚本是否启用,禁用时不执行更新且触发 onDisable
重力缩放系数,默认为 1,可设为负值使物体上浮
线性阻尼系数,影响物体线性运动的减速率,值越大减速越快
刚体质量,由形状和密度决定(只读)
目标节点所在的场景引用(建议缓存为局部变量以提高性能)
是否处于休眠状态,休眠时物体暂停物理计算
目标节点所在的舞台引用
Protected
_$awake激活脚本(第一次执行),回调 onAwake
施加角冲量,立即改变物体角速度
仅对 dynamic 类型且 allowRotation 为 true 的物体有效
角冲量值
施加扭矩,会逐渐产生角速度变化
仅对 dynamic 类型且 allowRotation 为 true 的物体有效
扭矩值
销毁指定标签的关节
关节标签
获取刚体当前旋转角度
旋转角度(弧度)
组件唤醒时初始化物理刚体
设置刚体类型、添加形状、设置初始位置和角度,并注册碰撞事件和关节
target 被设置时触发
组件销毁时清理物理刚体和关联的关节
组件禁用时停用物理刚体
组件启用时激活物理刚体
每帧更新物体位置和旋转
同步物理引擎计算结果到游戏对象,并检测边界。如果物体超出边界则销毁
设置刚体线性速度
Optional
x: numberx 方向速度,为 undefined 则保持当前速度
Optional
y: numbery 方向速度,为 undefined 则保持当前速度
设置刚体位置
注意:如果物体使用了刚体,直接修改 node.position 是无效的,需要使用此方法
x 轴坐标
y 轴坐标
设置属性
属性名
属性值
通过数据设置属性
Optional
props: Record<string, unknown>属性列表
当前实例,支持链式调用
设置刚体旋转角度
旋转角度(弧度)
物理刚体组件,实现物理属性描述和碰撞区域定义。 物理坐标系以场景根节点为基础进行计算。两个物体相撞条件:
注意:RigidBody 为一个脚本,挂载到节点后,需要添加到场景中才能被激活