近期热门
SpringMagic1.23版本更新-飘带计算脚本插件

SpringMagic1.23版本更新-飘带计算脚本插件

 !heats_icon! [复制链接]
2608 1 33 21 3天前
软件插件脚本
软件类型: 3dsmax » 动画
分类: 脚本
版本与适用版本: 2016+

SpringMagic_v1.23.ms 已购买

523.61 KB 下载次数: 60 售价: 2 张CG券 [记录]
下载

1.22版本的插件有解算后骨骼会消失问题,这边做了下简易修复。

这个插件的bug还挺多的,后面有时间再慢慢修吧

目前发布的版本是无混淆源码版本,如果有能力的大神可以自行修复~

这边久象征性的收2个券赚点辛苦费了~



# SpringMagic v1.23 更新日志



- 维护基线:`SpringMagic_Enhanced_v1.22_deobfuscated_full.ms`

- 当前源码:`SpringMagic_v1.23.ms`

- 源码 SHA-256:`7E3FFFF322EBC88308F9ADDF365BD311A9EAD587C19EAFF1D96D33439EF7BFAC`

- 维护记录日期:2026-07-24


## 版本定位


v1.23 是求解稳定性维护版。它保留 v1.22 的界面、求解参数和旧动画层工作流,重点修复退化向量、非法矩阵、非有限四元数以及时间值混用可能导致的 NaN、异常旋转或无效关键帧写入。


## 新增


### 数值安全检查


- 新增有限数、`Point3`、四元数和 `Matrix3` 检查。

- 新增安全向量归一化,拒绝零长度、近零长度和非有限向量。

- 新增矩阵可用性检查,通过归一化基向量和相对行列式识别退化矩阵。

- 新增安全四元数归一化,阻止零长度或非有限四元数进入写入阶段。

- 角度计算会先归一化向量,并把点积限制在 `[-1, 1]` 后再执行 `acos`

- 当两个有效方向需要旋转但叉积退化时,使用稳定的正交基构造备用旋转轴。


### 可定位的失败信息


- 求解检测到非法数据时,在写入该无效变换前停止。

- 错误信息包含骨骼名称、目标帧和失败阶段,例如 Twist X、Twist Y、Aim、Solved Matrix 或 Local Rotation,便于定位具体输入问题。


## 修复与调整


### 求解时间步


- 子帧步长改为显式帧值:`1f / Substeps`

- 自定义起止帧统一转换为帧值,不再混用普通数值与 `time`

- Bake 主循环改为按明确的整数帧数量迭代,保持起止帧包含语义。

- 新增无效或反向 Bake 帧范围检查。

- Loop 起始过渡使用明确的帧偏移,并在有效循环帧数小于等于零时提前停止,避免除零。


### 旋转求解


- Twist X、Twist Y 和 Aim 阶段不再直接对未经验证的向量调用 `normalize``cross``acos`

- 每个关键中间矩阵写回前都会检查有限性与非退化性。

- Biped、CAT 和普通 PRS 节点写入前统一验证目标四元数;普通 PRS 节点还会验证父级旋转及最终局部旋转。

- 零角度情况下跳过无意义的旋转轴计算和旋转写入。


## 兼容性与行为变化


- 未引入新的场景所有权协议或自动迁移;v1.23 仍使用旧 `SMAnimLayer``ANIMLAYEROBJCOLOR` 和 Position/Rotation/Scale 全变换动画层结构。

- 界面布局和主要交互保持不变。

- 对退化输入的处理由“继续计算并可能产生非法值”改为“在检测点明确报错并停止”。依赖旧版容错副作用的异常场景可能因此更早失败,这是预期的安全行为。







33
点赞
+10
打赏
21
添加到收藏夹

24

点击复制链接

使用微信扫码分享
一次扣10个券
全部评论1
您需要登录后才可以回帖 登录

SpringMagic v1.24 dev 飘带计算脚本插件
https://www.cgjoy.com/forum.php? ... 0&shareuid=9734
3天前  ·  2楼
回复

使用道具 举报

您当前使用的浏览器IE内核版本过低会导致网站显示错误

请使用高速内核浏览器或其他浏览器