DynamicBone模拟真实翅膀

2016年07月23日

声明:版权所有,禁止匿名转载;禁止商业使用。

fbx文件要求

  • 模型需要蒙皮,且骨骼不能使用复制对称的,否则会出现以下异样。

在下图中,蒙皮文件后的效果是对的。下图第一张是引擎内未播放时,右边的点已经有些不对了。第二张图是播放后,点已经被挪到别的地方了。

蒙皮后不需要K动画,直接导出即可。导出时不需要勾选动画。

Unity设置

导出的翅膀文件需要挂在一个空集上,并在该空集上挂上脚本DynamicBone,并在Root上添加该翅膀。

翅膀文件可以将Animatro或者Animation组件删掉

DynamicBone脚本的各项属性功能

  • 常用参数:Damping、Elasticity、Stiffness、Inert、Distant Disable、Distance To Object

Root    根文件
Update Rate    更新频率,默认60。更新率越高越耗性能。
Damping    阻尼
Damping Distrib    阻尼分布,简单的效果建议不使用。
Elasticity    弹力
Elasticity Distrib    弹力分布
Stiffness    硬度
Stiffness Distrib    硬度分布
Inert    迟缓
Inert Distrib    迟缓分布
Radius    半径
Radius Distrib    半径分布
End Length    末端长度
End Offset    末端补偿,使用了末端长度,就不需要使用补偿。
Gravity    重力
Force    推力
Colliders    碰撞,添加会被碰撞的物体
Exclusions    排除,忽略某个地方的碰撞
Freeze Axis    冻结轴向,冻结住后,该轴向运动时就不会产生计算
Distant Disable 远距离禁用。需要配合参照物距离使用。当该物体离开超过这个距离,该脚本失效。当有参照物时,是根据参照物距离计算。当没有参照物时,则根据相机计算。建议勾上此选项,并不使用参照物,让其根据相机去计算。
Reference Object    参照物。
Distance To Object    与参照物的距离。

DynamicBoneCollider脚本的各项属性功能

Center    中心偏移值
Radius    半径
Height    高度
Direction    高度的方向
Bound    范围
Outside    使其阻挡在外面
Inside    使其吸收到里面

附件

Dynamic Bone 1.1.8.unitypackage