Skip to main content

VRMSpringBone

概要

关于 摆动物体设置 的相关组件群

VRMSpringBone(VRM弹簧骨骼)

如果希望 尾巴、头发、服装 等部位可以随动作而摆动。 
请将要摆动的部位的最上层骨骼指定为 RootBones。 
这样一来,指定为 RootBones 的部位的子骨骼也会随着动作而摆动。

VRMSpringBone.png

防止在移动时摆动

VRMSpringBone 通常以世界原点为基准进行摆动计算。
另一方面,通过利用 VRMSpringBone 的 Center 功能,可以将摆动计算的基准点更改为骨骼等对象。
在下面这种的情况下,使用 Center(中心) 会非常有用。

  • 当模型因为行走等原因进行平行移动时,SpringBone 可能会过度摇晃。
  • 希望只在头部活动时,头发和头饰这些头上的 SpringBone 才会晃动。

在VRM 1.0中,可以设置为Center节点的限制已经确定,但在VRM 0.X版本中,可以设置为Center节点的限制尚未确定。

Center 节点必须是其 SpringChain(骨骼链) 的第0个 Joint(关节) 或者其上层节点。此外,Center 节点不能指定为其他 SpringChain的 Joint 节点及其次级。

 

VRMSpringBoneColliderGroup(VRM弹簧骨骼碰撞组)

为了防止 摇摆物 穿透特定部位,可以为骨骼添加碰撞检测。
在单个骨骼上添加的 VRMSpringBoneColliderGroup(弹簧骨骼碰撞组) 可以同时拥有多个碰撞目标。

collider.png

在头上添加碰撞检测(VRMSpringBoneColliderGroup)

在添加了 VRMSpringBoneColliderGroup之后,请将其注册到 VRMSpringBone 的 ColliderGroups 中。
例如,点击 Add Component 为 head添加 VRMSpringBoneColliderGroup 脚本,并将head拖拽到 Collider Groups 中的 Element 0 字段。你可以通过双击 Collider Groups中的 Element 0字段来更改其偏移量和半径值。

set_collider.png

在头部添加VRMSpringBoneColliderGroup,并将其指定给VRMSpringBone的ColliderGroups。

spring_gizmo.png

活动时的Gizmo

 

添加组件的位置

VRMSpringBone

在导入 VRM 模型时,会自动生成一个名为 secondary 的 GameObject(游戏对象) ,VRMSpringBone 组件会被添加到这个对象中。
请注意,与导出时不同,有时可能找不到 VRMSpringBone 组件。

VRMSpringBoneColliderGroup

在导入VRM时,VRMSpringBoneColliderGroup 将被添加到导出时添加的 GameObject(游戏对象) 中。

vrm_settings.png