动态骨骼(DynamicBone)插件专用贴

介绍

什么是动态骨骼?
ani

Cocos动态骨骼

商店地址

通过简单的设置,即可在胸部、衣服、头发、尾巴等部位,通过物理模拟出晃动或者飘动的动画。

线上体验:
DEMO1
DEMO2
带小姐姐的项目地址

  • 此项目为两个demo项目源码,下载后用cocos分别加载项目;
  • 项目加载后安装动态骨骼(扩展/动态骨骼/安装;不用安装内置项目,否则有脚本重复定义);
  • Demo项目中的警告可以忽略,都是些动画问题,与项目无关;
  • Demo中的模型为网上下载,请勿商用;

功能:

  • 开箱即用,通过组件参数设置即可;
  • 性能优异的物理模拟,所有向量与矩阵均使用对象池;
  • 包含完整的代码;

快速开始:

  1. 下载并安装插件;
  2. 点击菜单“扩展/动态骨骼/安装”,即可将源码拷贝至项目中;
  3. 点击菜单“扩展/动态骨骼/安装示例”,即可将简单的示例拷贝至项目中;
  4. 打开demo中的场景即可快速运行;
    demo.png
    image.png

自定义摇摇:
dance.gif

  1. 导入模型,放入自建空节点下
    tech1.png
  2. 关闭 烘焙动画 Use Bake Animation [非常重要]
    tech4.png
  3. 在空节点下添加DynamicBone组件
  4. 设置主要参数:
  • root: 骨骼节点
  • end node(end offset): 如果只有一个节点,比如有些胸部动画,必须添加尾结点(优先)或者尾部偏移值;
  • 调节其他物理参数
  1. 可打开编辑器模拟,移动模型即时看到效果
    tech3.png

注:示例模型带有错误示范,胸部由两个结点控制后,造成了模型抖动,一般胸部第二个结点不能有动作权重。

hit.gif
参数值:

  • root:
    需要模拟的骨骼根节点;
    • update rate:
      模拟计算帧率;
    • damping:
      阻尼(0-1),值越大越阻力越大,模拟时间越长;
    • damping distrib:
      阻尼散布曲线,默认常量表示不使用曲线;
      曲线时,横轴为动态骨骼节点在总长度所占百分比,起点值为damping值;
      其他散布曲线类似,将不在单独描述;
    • elasticity
      弹性值(0-1), 值越大弹性越大;
    • stiffness
      硬度值(0-1), 值越大硬度越大,1类似木棍;
    • 惰性,延迟
      惰性值(0-1), 值越大,追踪位移的时间越长;
    • radius
      (0,)用于碰撞的半径
      spheredemo.png
    • endNode
      尾部延长节点,用于单节点动画物理模拟;
    • endOffset
      局部坐标系下的尾部延长向量,用于单节点动画物理模拟,优先使用尾部节点;
    • gravity
      世界坐标系下的重力值;
    • force
      世界坐标系下的常驻外力;
    • freezeAxis
      动画限制平面,设置轴表示方向;
    • colliders
      碰撞器,防止模拟时穿模;
      planedemo.png
    • excludeNodes
      排除节点,从排除节点中断模拟;
    • distantDisable
      是否开启距离测试;
    • refenceObject
      距离测试参考目标,空时按相机计算;
    • distanceToObject
      距离测试阈值;
    • enableEditorDebug
      是否允许在编辑器模式下运行模拟;
      editor.gif
    • showDebugGizmos
      是否显示调式图形,3.5以上版本支持;

碰撞模型:

  1. 平面碰撞
    plane.png
  2. 胶囊体碰撞
    sphere.png

完成配置后,直接播放动画即可,关闭组件即可关闭物理模拟。

Tips:
此版本在cocoscreator3.5上开发,但也只是为了使用图形显示功能用于debug,如果项目在3.5以下,理论上也是可以使用的,只是不能正常显示测试图形,不利于参数调试;
动态骨骼节点链中,不应包含锁节点的不必要节点,否则可能出现模拟错误(抖动、失效等问题);

用户交流:
QQ群:341315364

9赞

牛蛙牛蛙牛蛙F574D44A90CF1B41B6DEE9C78D066ACB

已冲,很香

点个赞,插个眼。

这个支持3.7.1吗?导入项目显示无法导入呢?

3.7改变导入方式了。直接放到插件目录吧

嗯嗯,已解决