# Ep.25 — Fast-Ref vs 竞品对比

> 如果您需要在 3ds Max 中**管理角色参考资产**、**即使骨骼绑定更新也能保护动画**，并拥有**将资产发送到引擎**的完整流程，这份文档将对您有所帮助。  
> 我们对 Fast-Ref 与 **S 产品**等其他参考工具的区别进行了诚实的梳理，帮助您判断 Fast-Ref 是否适合您。

## 一句话总结

**Fast-Ref** 是专为游戏角色管线打造的参考工具。

- 按插槽加载骨骼 `.max` 文件
- 骨骼师更新文件后，**一次 Replace** 即可通过 **3ds Max 官方还原 API** 和 **OtakuSolutions 自研还原算法** 重新匹配动画、Constraint、IK 等
- 整合至 Unity / Unreal 的 **FBX 导出**和**批量处理**

**S 产品**同样面向动画参考，但采用 Maya 式的**增量（差分）覆写**方式，在主场景中将关键帧、控制器、材质、修改器等**变更以图层方式叠加**，更接近于可与原始数据共存的**通用参考**。

**同样是"动画参考"，但实现方式截然不同。**

## 两种方式——有何不同

| | **S 产品** | **Fast-Ref** |
|---|----------|-------------|
| **核心问题** | "原始数据更新后，**我的本地修改**还在吗？" | "骨骼更新后，**我的动画和 Constraint** 还在吗？" |
| **数据方式** | 主场景只保存差分（Delta） | 以原始文件为基准进行 Reload/Replace + 动画和 Constraint 专用备份/还原 |
| **原始数据更新** | 保留本地覆写 + 反映原始结构 | Replace 后合并新骨骼，再通过 **3ds Max 官方还原 API + OtakuSolutions 自研算法**还原 |
| **适合的工作** | 需要对动画、材质、修改器进行**增量覆写**的通用协作 | 以**骨骼 Replace** 为核心的游戏角色动画 → FBX 导出 |

Fast-Ref 并非旨在"替代" 3ds Max 内置 XRef 的通用工具，而是专门针对**游戏工作室的角色参考管线**。

## Fast-Ref 的突出优势

### 1. 骨骼更新后的动画保留（Replace）

专为骨骼师添加骨骼或上传 Rig_v02 时，动画师设置的关键帧不能丢失的场景而设计。

Replace 时，结合 **3ds Max 官方还原 API** 和 **OtakuSolutions 自研还原算法**，可保存和还原以下内容：

- Biped、Bone 和 Prop 动画
- **TCB、Position List、Rotation List** 等复杂控制器形式**完整支持**（包括子通道和层级单元还原）
- Constraint（内部/外部，包括角色到道具连接）
- 包含 IK 和 Script Controller 的复杂骨骼
- **Selection Set**（使用 Rig Info 节点时，Replace / Reload 后依然保留）

> 这是实际生产环境中选择 Fast-Ref 最常见的原因。可将数十到数百个动作场景中手动迁移关键帧的工作量，减少到一次 Replace。

### 2. 游戏引擎导出

- Reset Root、Remove Namespace
- Unity / Unreal / Unreal_Skel / Unreal_Ani 预设
- 按插槽或全场景 FBX 导出
- **Fast Ref Batch** — 对多个 `.max` 文件依次执行 Reload / Export

### 3. 单文件交付和管线独立性

**Merge** 后，参考数据会**完全合并为单个独立的 `.max`** 文件，无需原始路径即可打开。

S 产品是 **C++ 插件**，**要求团队所有成员安装**，未安装的环境下打开文件可能导致场景损坏。由于其 Maya 式增量结构，简单交付单个 Max 文件也比较困难（需要 Embedded 等额外功能）。

Fast-Ref 在 `Merge` / `Unpack` 后会恢复为**纯粹的 3ds Max 节点**，将文件发送给**未安装插件的外包团队**也能**正常打开**。  
（还另外提供适用于客户 TA 团队的**场景重置脚本**）

### 4. 多角色和命名空间

通过 `Character_01:Head` 形式的 **Namespace + `.r1` suffix** 方案，在同一场景中多次放置相同骨骼时，可减少命名冲突。  
**Smart Switch + Safe Mode** 可在 Space OFF 参考作业时自动处理 Unpack/Repack。

### 5. 脚本自动化

**Script API v2.1**（**Python**，UI 独立）——可在管线脚本中直接调用 Add / Replace / Export 等操作。  
（S 产品提供 **MaxScript** API。）

## 有意为之的设计差异

以下内容并非 Fast-Ref 的"不足"，而是出于**管线安全性的设计选择**。

### 嵌套参考（A→B→C）

Fast-Ref **不推荐**嵌套参考。

- 无论使用哪种参考工具，嵌套结构在追踪、调试和团队协作方面风险都很高。
- 在游戏**角色**管线中，实际上几乎不需要 A→B→C 链式结构。
- 将已经 Fast-Ref 化的文件 Add 进来时，会显示 **`N` 警告**。

→ 如果需要将环境和道具以嵌套方式组织，S 产品或专门的管线可能更合适。

### 修改器和材质——并非在主场景中覆写

Fast-Ref **不会**在主场景中叠加 Edit Poly 或本地覆写材质。

- **原始 `.max` 文件是唯一权威来源。**
- Reload / Replace 时，原始文件的**修改器、材质和网格结构会自然反映**。
- 骨骼结构和着色的更改都在**原始骨骼文件**中进行——这是基本前提。

→ 如果在主场景中本地覆写材质或修改器的工作比重较大，S 产品的增量覆写方式可能更合适。

## 功能比较——实际生产标准

### 参考资产和场景管理

| 功能 | S 产品 | Fast-Ref |
|------|:-----:|:--------:|
| 多插槽参考管理 | ✅ | ✅ |
| 嵌套参考（A→B→C） | ✅ | △ 不推荐（显示 `N` 警告） |
| Namespace / Suffix | △ 以名称和 Prefix 为主 | ✅ Namespace + suffix 体系 |
| 嵌套/重复文件检测 | — | ✅ `N` / `D` 标签 |
| 文件状态追踪 | 按 Reload 选项 | ✅ OUTDATED / MISSING / CONVERTED |
| Convert to Reference | — | ✅ |
| **无原始路径单文件交付** | △ 由于增量结构较困难（需 Embedded 等） | ✅ 通过 **Merge** 实现单 `.max` 交付 |

### 动画和骨骼绑定

| 功能 | S 产品 | Fast-Ref |
|------|:-----:|:--------:|
| **主场景中的关键帧和控制器操作** | ✅ 轨道级别覆写 | ✅ 主场景中可进行关键帧和动画操作。<br />Replace 时通过 **3ds Max 官方 API + OtakuSolutions 自研算法**还原 |
| **TCB、Position List、Rotation List** | △ TCB 部分需确认 | ✅ **完整支持**（List 子通道和层级单元还原） |
| Biped IK 和 IK Blend 保留 | △（因环境和骨骼存在差异） | ✅ 自研还原算法 |
| Script Controller 骨骼 | △ 原始变量结构更改时有风险 | ✅ 自研还原算法 |
| 外部 Constraint（角色到道具） | ✅ 覆写 | ✅ 自研还原算法 |
| **Selection Set** | ✅ | ✅ 使用 Rig Info 节点时 Replace / Reload 后依然保留 |
| CAT 骨骼 | ✅ 官方支持 | △ 以 Biped / Bone / Custom 为核心（建议 CAT 先行实测） |
| 修改器和材质 | ✅ 主场景本地覆写 | ✅ **自动从原始文件反映**（非本地覆写） |

### 管线和支持

| 功能 | S 产品 | Fast-Ref |
|------|:-----:|:--------:|
| **定价（永久许可，单席位）** | **$189** | **$95**（含 Fast Ref Batch） |
| FBX 导出（引擎预设） | △ Max 默认导出 | ✅ 内置 + Batch |
| 批量 Reload / Export | △ 需自行编写脚本 | ✅ Fast Ref Batch |
| **脚本 API** | **MaxScript** | **Python**（Script API v2.0 / 即将发布） |
| 多语言 UI | — | ✅ 中 / 英 / 韩 / 日 |
| **全员安装插件** | ❌ **必须**（C++ 插件——未安装的 PC 打开文件可能场景损坏） | ✅ **无需安装** |
| **向外包/未安装环境交付文件** | ❌ 接收方也必须安装 | ✅ **无需安装即可交付** |
| 支持的 Max 版本 | 2020~2027 | 2022~2027 |
| 网络渲染节点 | 免费 | 免费 |

## 坦诚的局限性——购买前请了解

Fast-Ref 并非万能工具。以下内容基于官方指南和实际生产反馈。

| 注意事项 | 说明 |
|----------|------|
| **推荐使用英文路径** | UI 支持中/英/韩/日。由于基于 Python，文件夹和文件路径中包含中文、韩文、日文或特殊字符可能会导致错误。建议将路径统一为英文，例如 `C:\project\rig\`。 |
| **Replace 处理时间** | 节点和动画数据较多时，备份/还原计算可能耗费数十秒。根据场景规模和是否使用 IK 有所不同。 |
| **节点改名** | 在原始文件中更改骨骼名称可能导致映射损坏。Namespace 可以减少冲突，但名称变更本身应通过原始文件和管线规范来管理。 |
| **CAT 和 smartAnim 骨骼** | 以 Biped / Custom Bone 为核心开发。强烈建议 CAT 和 smartAnim 用户通过 **14 天试用版**提前确认。 |
| **通用增量覆写** | 如果需要用单一工具在主场景中管理材质、修改器和环境布局的增量变更，请考虑 S 产品。 |

## 适合您吗？——30 秒检测

| 如果您的团队或工作是这样的 | 请考虑 Fast-Ref |
|-----------------|------------------------|
| Biped / Custom 骨骼 + 数十到数百个动作场景 | ✅ |
| 骨骼更新后保留动画、Constraint、IK 是首要任务 | ✅ |
| Unity / Unreal FBX + 批量导出 | ✅ |
| 向外包或内部工具交付无插件 .max 或单文件 | ✅ |
| 同一场景中有多个相同角色（Namespace） | ✅ |

| 如果您的工作以此为重心 | 请先考虑 S 产品等其他方式 |
|---------------------|-----------------------------------|
| 通过增量覆写在单一工具中管理动画和材质/修改器 | S 产品 |
| A→B→C 嵌套参考链 | S 产品或独立结构 |
| **基于 smartAnim 的骨骼绑定** | **请考虑 S 产品** |
| CAT 专用管线 | 先通过试用版确认，或参阅下方 FAQ |

## 常见问题（FAQ）

---

**Q. 应该用 Fast-Ref 替代 S 产品吗？**

A. **两者都处理动画参考**——区别在于方式。  
S 产品通过主场景的增量覆写保留关键帧、材质、修改器等变更，Fast-Ref 则在骨骼 Replace 时通过专用还原引擎恢复 Biped IK、TCB List、FBX 导出等，专为游戏角色管线而设计。  
如果您的核心是频繁更新骨骼的游戏角色动画，请选择 Fast-Ref；如果希望将动画、外观和环境通过单一工具的增量方式统一管理，请考虑 S 产品。

---

**Q. 可以在主场景中设置动画关键帧吗？**

A. **可以。** Fast-Ref 支持在主场景中进行关键帧和控制器操作。骨骼文件更新后，Replace 时会通过 **3ds Max 官方还原 API** 和 **OtakuSolutions 自研还原算法**重新匹配动画、Constraint、IK 等。**TCB、Position List、Rotation List** 等复杂控制器形式也完全支持。使用 Rig Info 节点时，**Selection Set** 在 Replace / Reload 后依然保留。

---

**Q. 可以在没有原始文件的情况下只交付一个 Max 文件吗？**

A. **Fast-Ref 通过 Merge 可以实现。** 参考数据完全合并后成为单独的 `.max` 文件，可以在不需要原始路径的情况下直接交付。S 产品由于 Maya 式的增量结构，单文件交付较为困难，需要 Embedded 等额外步骤。

---

**Q. 没有插件能打开文件吗？可以发给外包团队吗？**

A. **Fast-Ref 可以。** `Merge` / `Unpack` 后仅剩纯粹的 Max 节点，即使发送给未安装插件的外包团队也能正常打开。  
而 S 产品是 C++ 插件，所有团队成员都必须安装，在未安装的环境下场景可能损坏。

---

**Q. 为什么不推荐嵌套参考？**

A. 嵌套结构在任何工具中风险都很高，在角色管线中的实际收益也很少。我们推荐单层参考，嵌套文件会以 `N` 警告标记。

---

**Q. 无法更改修改器或材质吗？**

A. Fast-Ref 并非采用在主场景中覆写的方式。**原始文件有变更时，Reload/Replace 时会自动反映**。修改在原始骨骼文件中进行。

---

**Q. 如何通过脚本实现自动化？**

A. Fast-Ref 提供 **Python** API（v2.1）。S 产品提供 **MaxScript** API。请根据工作室的管线语言选择。

---

**Q. 是否支持 smartAnim 和 CAT？**

A. Fast-Ref 的开发和验证重点聚焦于 **Biped / Custom Bone**，因为大多数 3ds Max 骨骼绑定基于 Biped。  
CAT 和 smartAnim 管线不在主要支持范围内。但如果确认有足够的需求，将考虑提供支持。

- 如果 smartAnim 骨骼绑定是您的核心工作流，建议优先考虑 S 产品。
- 购买前请务必通过 **14 天试用版**，使用您实际的骨骼文件测试 Replace / Reload。
- 如果试用版仍不够且必须获得支持，请携带骨骼样本通过 [contact@otakusolutions.com](mailto:contact@otakusolutions.com) 联系我们。

---

**Q. 可以使用中文、日文或韩文吗？**

A. **UI 支持中文、英文、韩文和日文。** 工具界面和说明文字均可以使用对应语言。  
但为了避免 Python 编码问题，建议将项目的文件夹和文件路径统一使用英文。（例：`C:\project\rig\character.max`）

## 总结

```
┌──────────────────────────────────────────────────────────────┐
│  S 产品   →  将动画、材质、修改器等变更以增量方式叠加，       │
│              即使原始数据更新也能保留的通用参考 (MaxScript)   │
│                                                              │
│  Fast-Ref →  以原始骨骼为基准进行管理，                      │
│              即使骨骼更新，也通过 3ds Max API + 自研算法      │
│              还原动画等内容                                   │
│              (Rig Info 时保留 Selection Set)                  │
│              Merge · Export                                  │
└──────────────────────────────────────────────────────────────┘
```

Fast-Ref 专为**游戏角色动画制作**而生。  
它并非所有 3ds Max 参考需求的最优解——我们坚信，明确说明这一点，才是提高用户购买后满意度的正确做法。

*OtakuSolutions · 基于 Fast-Ref v1.2.3 · 联系方式：[otakusolutions.com](https://www.otakusolutions.com)*