Contacts
前言
交互系统(Contacts)允许角色检测与自己或其他人的信号,然后可以使用这些信号产生的参数来触发动画
注意:交互系统和动骨系统是不同的(我刚开始看搞混了)
交互系统分为发送端(VRCContactSender)和接收端(VRCContactReceiver)。发送端是为了被检测而存在,即一直在广播自己的参数(Collision Tags),接收端检测发送端,如果和发送端参数(Collision Tags)相同,则更新参数
添加交互系统的组件
在物体或骨骼上添加组件搜索“vrc”,找到相应组件点击即可
VRC Contact Sender(发送端)
定义发送信号的体积和参数(Collision Tags)
Root Transform
此组件所在位置,若为空则为组件所在物品
Shape(形状)
Shape Type:形状类型,可选“球体”和“胶囊”
半径、位置、高度(“胶囊”):字面意思
Rotation:旋转
Filtering(过滤)
调整和定义发送端如何与接收端交互
此处可选择默认的一些参数或者自定义参数,注意:字母区分大小写
注意
在“VRC Avatar Descriptor”里有“Collidees”会设置头部、身体、手部和脚部的一些碰撞,这些设置默认是会有发送端的,发送参数为名字,例如“头部”为“Head”,因此无需将这些部位设置上发送端
VRC Contact Receiver(接收端)
定义接受信号的体积与参数(Collision Tags),然后输出相应参数
Root Transform
此组件所在位置,若为空则为组件所在物品
Shape(形状)
Shape Type:形状类型,可选“球体”和“胶囊”
半径、位置、高度(“胶囊”):字面意思
Rotation:旋转
Filtering(过滤)
定义如何与发送端交互
Allow Self:允许自己触发,勾选即可以自己与自己交互
Allow Others:允许他人触发,勾选即他人可以与自己交互
Local Only:仅在本地客户端上运行
Receiver
定义接受到信号后所改变的参数,参数后填入名字即为要改变的参数
Receiver Type(类型) | 描述 | 数值 |
常量(Constant) | 发生交互则改变参数 | 建议Bool,触发时为True 其他Float为1.0,Int为1 |
OnEnter | 当进入速度大于Min Velocity时触发 | 建议Bool,触发时为True 其他Float为1.0,Int为1 |
Proximity | 发送端到接收端中心的接近程度 如果多个发送端,值为最近的 | Float,0.0~1.0 |
第三种“Proximity”如需要很高精准度,需要将发送端半径调到非常小
No Comments