Dynamic Bone是一款可以集成到unity 3d中的动态骨骼绑定插件,这款插件可以帮你轻松绑骨骼。插件使用相当简单,只需要在解压后将DynamicBone脚本放到角色上面,然后将Root放到要进行动力学的根骨骼上,再将要进行碰撞的骨骼数组添加Colliders,其他参数设置都比较简单。
1.把DynamicBone脚本放到角色上。
2.Root放入要进行动力学的根骨骼。
3.Colliders放入要进行碰撞的骨骼数组,该骨骼上要放上DynamicBoneCollider组建。
其他的参数都很简单,一看就知道怎么用了,这个插件东西不多但是效果不错,很好用。
DynamicBone是一个Unity的插件,可以用于针对骨骼进行物理模拟。由于开放源码并且工具链集成方便,因此颇受项目青睐 —— 我也是通过直接阅读该插件的源码来逐渐接触Unity开发的。
DynamicBone开放了Damping,Elasticity,Stiffness,Inert等物理属性接口,并且开发者可以通过配置DynamicBoneCollider来配置相应的碰撞体,来进行碰撞结算。
DynamicBone允许开发者指定对应的根骨骼,从而允许该骨骼的子骨骼进行物理结算,而根骨骼将不进行物理结算。换句话说,这样的物理模型更加适用于例如尾巴、马尾、Ragdoll等带有明显层级结构的物理模拟。
直到我入职为止,DynamicBone已经更新到了1.1.7版本。需要吐槽的是……在阅读源码之后,我个人认为对应的物理模型和结算逻辑经过作者的多次改动后,似乎已经比较混乱了。例如对应的Force和Gravity结算、外力结算的Integration都不太好阅读。
UpdateRate:更新数率
damping:阻尼系数
Elasticty:弹力
stiffness:僵硬度
inert:迟钝系数