rainyeve
  • 首页
  • 编程
  • 涂鸦
  • 其他
  • 关于
2019年10月20日
编程

【Animation Rigging】Damped Transform Constraint实现头发晃动模拟

【Animation Rigging】Damped Transform Constraint实现头发晃动模拟
2019年10月20日
编程

实现效果

在runtime模拟头发晃动,用Unity2019的新特性Animation Rigging实现。 对于此类物理效果模拟,建模的时候就设置好动画是做法之一,但是在runtime环境中就会变得脱离了物理世界的交互(World Interaction),显得死板。unity有cloth system和rigid body的Joint组件可以使用,但是我需要的是比较偏向动画播放,而不是完全的物理世界模拟。Animation Rigging Package正好能丰富动画的物理计算,而且设置起来简单,没有cloth system那么黑盒子,甚至可以在unity editor中做Animation Authoring。

马尾效果
头盔后面马尾会跟随运动晃动
对比未加入效果
未做处理前的对比,马尾是不会动的

过程摘要

原模型是low poly风格,网格和骨骼都比较简单,自然也没有绑定“头发骨骼”。做Rigging之前先用Maya给头发部分新增骨骼蒙皮。

用Maya绑定骨骼
为了使晃动时细节更丰富,骨骼节点从同一位置出发分成三股

Rig过程相对简单,使用的预设的Damped Transform做约束,package本身的demo以及官方文档中有很好的说明和演示。

官方demo
官方文档对Damped Transform Constraint的演示

用Damped Transform按一条链式Rig好之后,还要设置节点的权重,中间最长的骨骼的rig权重设为最大,其余两条骨骼权重值设较小的值。否则设置动画clip时会发现无法晃动同一层级的某些骨骼。

设置Rig Builder和Rig,然后添加和配置约束

最后给3条骨骼的根节点设置一个简单的上下小幅度转动的动画,即使得头发在idle状态下也有小幅度的晃动,至于在角色跑动的时候,在Damped Transform Constraint的作用下,会自动模拟物理世界的带有阻尼的晃动效果。

设置简单的旋转动画
Post Views: 2,971

animation modeling rigging unity3d

上一篇【Unity网格编程】SkinnedMeshRenderer Decal 实现斩击伤痕贴花效果下一篇 【涂鸦】祢豆子

发表评论 取消回复

邮箱地址不会被公开。 必填项已用*标注

分类目录

  • 其他 (2)
  • 旅行 (1)
  • 涂鸦 (6)
  • 编程 (28)
Email: wuch441692@163.com