Spring Max

Spring Max is a tool that use to create dynamic bone chain animation in 3Ds Max

Features:

  • Waving, twisting and stretch animation on bone chain, can loop animation
  • Bone chain can collision with capsule and plane with it’s shape
  • Apply wind and explosion force onto bone chain

Note:

  1. Calculate bone should NOT have duplicate name object in scene, and should NOT have negtive scale value
  2. Cannot undo calculation with Ctrl+Z, but can roll back with tool function, make sure you saved file before calculation.
  3. Only support standard bone object, please use Sprng Magic if you want to apply spring effect on Biped or CAT bone
  4. Developing was mainly working on 3Ds Max 2014, test made on 2012 and 2016 as well, but if you found any version cannot working well, please let me know.

Tutorials

 

Download Spring Max v1.9

 

There is Spring Magic in MotionBuilder as well!

Version History:

1.9:
add CAT auto attachement when creat capsule

1.8:
add pin end
draw view point when calculation

1.71:
improve inertia result when loop

1.7:
add inertia
bug fix
open source code

1.6:
can set keyframe for baisc values

1.5:
add Japanese support (Thanks Ken Taguma)
adjust language setting function

1.4:
fix bug: loop result poping when wind or explosion applied
fix bug: script error when fail to visit update site

1.3:
add roll back function
shirk misc buttons
fix bug: “Bone On” cause bone display issue
fix bug: keyframe been set out of calculation range
fix bug: error message when first time use connection bone function

1.2:
Add pose match
Add bone relation
Fix bug that keyframe out of current animation rage missing after calculation
Fix bug that start pose changed when redo same calculation

1.1:
Add bone shape function to solve skirt collision better

1.0:
First public version

184 thoughts on “Spring Max”

      1. 提示无法加载按钮
        未发现数据!
        未发现数据!
        Error ocourred in anenymous codeblock : filemame : C .\ UserslAdninistrator \ Desktop ) Sprina os pesition 1102e0 Lim 2so MAXSoript Rollout Hundler Exception :
        Runtime error Can ‘ t load Button images bitmap :” C Wsers \ Adainistrater ) Desktup \ sprindha ,200ns papel pae
        MAXSeript callstack
        thread data threadID 11464
        [ stack level :0]
        Error ocourred in anotymous codeblook , filename : C Wsers \ Adhinistrator \ DesktoplSpriadie as : pesitim 110009 linm 1524
        In top – lerel
        MAXSeript Kollout Handler Exception
        · Runtime error : Can ‘ t load Button images , bitmap C : Users Administrator Wesktoplospriadle
        MAXSoript callstack
        thread data threadID 11464
        [ stack level :0]
        In top – level

  1. 好久没过来看过了。不知道白老师主要交流的地方是在国内还是国外。
    国内好像看不到白老师发布东西了。如果不知道这个地址,很容易被遗忘。
    1.9发布了都不知道。。今天才看到。。
    不知道白老师有没有QQ群之类的交流群。
    今天才认真看了下18年建站的文章,颇有感触。
    期望以后能在B站经常看到白老师的经验分享,哪怕只是日常也好。最近的也是去年五月份了。能在CG JOY这些地方继续看到白老师还是很开心了。

    1. 是这样的,我近年来工作忙碌了许多,所以没时间像之前那样来慢慢磨一个好玩的东西分享给大家
      迄今为止发布的一些工具和技巧,能够帮到其他有需要的人,提高大家的工作效率和心情,让这个世界变得更美好了一点点,对我来说这就够了
      今后有闲暇了,会继续更新发布新文章和视频的,谢谢关注

  2. 你好,我在使用1.9版本创建胶囊体时,总报如下错误,中文版,英文版都试过,能帮忙看下吗
    不兼容的类型:9.03605 ,和undefined
    代码1910行
    colCapsule.height = childTX+2*colCapsule.radius*capRadiusRate

      1. 不好意思,这么晚才回复

        操作方式:新建了一个cs骨架,然后选中大腿骨骼创建胶囊体,就会报这个错误
        版本号:3dmax2017

      1. Hey would it be possible for you to add CAT Bones Support for creating the collision capsule?
        Because i would like to use the Script with my CAT Rig but the collision capsule does not create automatically like for BIPED

          1. thanks for adding my request with the CAT BONES!!! Really appreciate it. I hope if i have more ideas in the future, you would be up to adding them =D Because i had a idea of giving Bone chains a special kind of weight. Like you have an extra button and can choose from Chains, Leather, fabric and some more. Like shortcuts, that Spring max will change the value if you choose one of these options. Or you could create profils with own changes. Like shortcuts

  3. 1.8的末端固定我尝试用来做了一个触手的指向攻击,因为插件可能固定设置循环计算两次,并且不可逆。我似乎在插件进行第二次计算看到第一次计算结果似乎是比较符合我的预期的。反而第二次计算后的跳动更大了,再试问后面会对末端固定计算进行一个可选性循环计算的一个增加吗。

    1. 嗯… 它其实不是循环计算两次,因为通常第一次计算的结果会有抖动,并不是和计算中的预览效果完全一致,所以我又加了一次消除抖动的操作,也就是你看到的第二次计算,通常这个消除抖动不会改变整体动态,但也许在某些情况下会有改变,具体没测试到
      如果你把源文件发我邮箱,我有时间可以排查一下
      [email protected]

  4. MAX14基本不能用1.71,最基础的飘带计算,循环都会出现问题。教程里面的1.0感觉好像都好点。
    出现的问题大多是循环不回来,跳帧。
    还有就是,计算完之后创建的看不见的虚拟体太多了,就是污染了工程文件,还需要手动重新删除计算完的东西。
    不过功能很强大,期望出现一个简单易用的版本。

    先不说1.71能不能用的问题,个人感觉这个插件还可以优化的地方。
    1.计算完后没有多余的物体,计算完后自动删除多余的物体。
    2.碰撞效果再优化,能像引擎一样,碰撞体之间的计算就好了。看了教程,似乎是骨骼去碰撞插件建出来的模型。
    3.像sprinmagic简单易用就好了。主要是可以ctrl+z,可以反复计算,虽然有时候会破坏文件。体验来说,好很多。
    4.似乎不能够像sprinmagic一样,选一根骨骼,后面的骨骼就一起计算了。

    嗯,用完的感觉就像是练手的插件,还很不成熟。要是能正常使用,效果好,也很不错了。。哈哈

    1. 根据你的描述,大概率你是中病毒了,建议清理自己的 Max 软件,正常情况下关闭工具后,是不会有多余虚拟体的
      不过只是用来练手倒也不必在意这些,开心就好

      1. 过了一年才回来看到。。。
        14已经被我抛弃了。。哈哈。。。
        官方杀毒最低只支持15.因为便利性的问题,还没好好用过白老师的插件,说实话有点惭愧。可能是因为已经熟悉了,普遍流行的另外一款插件。

        虽然在另一条留言表达过了。。
        但是我还是想说,如果时间允许的话,希望在国内的社交平台能经常见到您,分享经验。实在是宝藏UP。。

    1. 给BIP骨骼加胶囊体应该是没问题的,我视频里也演示过这样的操作
      你开一个新场景,创建个BIP试试能不能加
      如果还是不行,可以把源文件发我看看
      但只能是 MAX2014 版,我新版本的MAX软件出问题了暂时没法用

    1. 嗯,这个可以考虑,但不是高优先级的需求,而且要支持 dummy 的话,有些功能需要调整,比如如何判定骨骼大小等
      或者可以做成像 Maya 版那样,生成一条辅助骨骼链来计算,再把结果烘焙回去,这样不光是 dummy,cs 和 cat 骨骼也可以支持了
      看看有没有更多人想要吧

    1. 你发的项目我看了,很高兴知道有人做了类似的 UE4 插件,并且开放给需要的人,实现了我力所不能及的事情
      希望有越来越多这样的人,让我们的世界变得更美好一些

      最后,谢谢分享

      1. 首先谢谢大神,确实觉得你的插件好用,首先中文,其次效果也好一些,就是觉得为啥没有设置重力呢,风力还是有点区别的,你有啥QQ群没有,跟着跟你多多交流

        1. 设置一个向下的风力,然后把最大和最小风力值设成同一个数值,即可模拟重力。不清楚你说的区别具体是指什么?

    1. 嗯… 从设计上讲,“回退”功能会将计算前存储的骨骼动画重新应用到骨骼上,来模拟“撤销”操作,因此如果计算前骨骼没有任何关键帧的话,也许会出现你说的问题
      如果要避免这种情况,最简单的办法就是给骨骼随便设置个关键帧再计算吧
      如果我要修复这个缺陷,做法也很可能是在检测到骨骼没有任何关键帧的情况下,自动于起始帧补上一个关键帧,仅此而已

    1. Spring Max 仅限于计算骨骼的飘动和碰撞,如果你需要计算复杂几何体之间的物理效果,请使用 Max 自带的物理功能,比如 MassFX 等

    1. 有些虚拟体是为了记录原始动画用的,以便可以撤销计算返回原来动画,这些在关闭工具后会被一并清除
      如果你关闭工具面板后仍然有残余虚拟体,则是病毒导致的

    1. 好的我记一下,等我有了 2019 再测试吧
      话说你们真的很热爱拥抱新科技啊,我自己还在用 2014
      新版本里鼠标移到物体上会显示高亮边框,看着好难受,尤其骨骼多的时候

  5. 白老师您好,我是一名美术艺术家。用过插件感觉很好,唯一美中不足就是碰撞还不够完美,能否基于模型的部分面生成 对应形状的碰撞体 或者直接与面发生碰撞呢(比如屁股与两条大腿的形状),这样应该会减少骨骼进入碰撞体的概率吧,否则手动休整的工作量还是不小的。

    1. 通过适当放大胶囊体和调整计算参数,可以改善碰撞效果
      但如果想要严格的根据模型多边形来计算碰撞,请使用 Max 自带的物理系统
      作为一个脚本工具,如果用来实现多边形碰撞,速度会慢到你怀疑人生

Leave a Reply to 首席游骑兵 Cancel reply

Your email address will not be published. Required fields are marked *