Blender插件Sculpt Rewind:每个物体万步撤销历史
Undo History for Each Blender Object 10,000 Times with This Add-On
Sculpt Rewind是一款Blender插件,灵感来自ZBrush的历史回溯笔刷,可为每个物体独立记录最多10000步撤销历史。它仅保存变化的顶点数据,大幅节省内存,支持雕刻、编辑模式、顶点绘制、遮罩等操作,还能用Morph History笔刷局部恢复,并支持Movie Mode生成延时视频。目前暂不支持多分辨率和动态拓扑。
深度解读
Blender 长期缺失的“逐对象、可持久化、万级步数”撤销历史,被一个名为 Sculpt Rewind 的插件补上了,它把 ZBrush 的 History Recall Brush 逻辑搬进了 Blender,并且用增量存储把内存开销压到了可用的量级。
这件事的核心价值不在于“能撤销更多步”,而在于它改变了 Blender 撤销系统的三个底层假设:撤销是全局的、撤销是易失的、撤销是昂贵的。Sculpt Rewind 逐条拆掉了这三个假设。
它到底做了什么
Blender 原生撤销是全局栈,按 `Ctrl+Z` 回退的是整个场景状态,而不是某个物体的状态。这意味着你在雕刻角色头部时误操作了身体,撤销会同时影响两者。Sculpt Rewind 把撤销历史绑定到每个 object 上,每个物体拥有独立的记录流,用滑块就能在单个物体的时间线上前后拖动。
更关键的是持久化。原生撤销在关闭文件后清零,而 Sculpt Rewind 的历史跨会话保存。对于动辄数小时甚至数天的雕刻工作,这意味你第二天打开文件,仍然可以回到昨天下午三点那个“还没毁掉鼻子”的状态。
增量存储是它能做到 10,000 步的真正原因
“This is possible because Sculpt Rewind doesn’t save a complete copy of the mesh for every step. Instead, it records only the vertices that changed, using full copies when necessary, such as during topology changes like remeshing.”
这是整篇报道里技术含量最高的一句话。如果每一步都存完整网格快照,一个 100 万顶点的模型走 6,000 步,存储量会是天文数字。Sculpt Rewind 只记录发生变化的顶点,仅在拓扑变更(如 remesh)时才存完整副本。
创作者给出的实测数据:一个约 100 万顶点的动漫女孩模型,从开始到完成共 6,000 步,总占用 1.8 GB。平均每步约 300 KB。这个数字放在今天的硬盘和内存条件下,完全可接受。
这也解释了为什么它能“不炸内存”——它压根没打算把整个网格塞进历史里。
它和 Blender 原生撤销是并行关系,不是替代关系
插件明确说明它“works in parallel with Blender's native undo”,键盘 `Ctrl+Z` 的行为不变。这是一个聪明的工程决策:不去篡改 Blender 核心的撤销机制,而是叠加一层独立的历史记录层。好处是兼容性风险低,坏处是两套系统并存可能让用户产生认知负担——什么时候用 `Ctrl+Z`,什么时候拖滑块,需要适应。
Morph History Brush 才是真正区别于“撤销”的功能
普通撤销是全局回退,而 Morph History Brush 允许你把选定区域恢复到之前的某个状态。这不是撤销,这是局部时间旅行。你在模型上刷一笔,那个区域就回到历史中的某个时刻,而其他区域保持不变。
这个功能的工作流意义远大于“后悔药”。它意味着雕刻过程中的中间状态变成了可复用的素材——你可以把某个阶段的细节“刷”到最终模型上,而不需要重新雕刻。
合并物体的历史也能回溯,这打破了 Blender 的破坏性操作边界
“if you sculpted a character with separate arms and torso and merged them, you can still go back to a point before they were merged, undoing what would normally be a destructive operation.”
在 Blender 里,join 操作通常是不可逆的(除非你提前备份)。Sculpt Rewind 保留了合并前的历史,让你可以回到手臂和躯干还是独立物体的状态。这对角色建模流程影响很大——你不再需要为了“保留退路”而刻意不合并物体,工作流可以更激进。
它记录的不只是雕刻
插件覆盖的范围包括:sculpting、Edit Mode 变更、vertex painting、masks、face sets。这基本上涵盖了建模和雕刻阶段所有会产生状态变化的操作类型。覆盖面越广,它作为“项目时间线”的价值就越大。
Movie Mode 是一个被低估的附加价值
用记录的历史直接生成 time-lapse,这意味着你不需要额外开录屏软件。对于需要制作 breakdown 或教程内容的创作者,这是一个零成本的产出渠道。80 Level 这类平台本身就是靠 breakdown 内容驱动的社区,这个功能的存在不是偶然。
当前的硬伤:Multires 和 Dyntopo 不支持
创作者自己承认,Multiresolution 和 Dynamic Topology 雕刻目前不被支持。这两个恰恰是 Blender 雕刻工作流中使用频率极高的功能。Multires 用于分层细节雕刻,Dyntopo 用于动态拓扑雕刻。不支持这两个,意味着 Sculpt Rewind 目前只能覆盖一部分雕刻场景,而不是全部。
这不是小问题。很多专业雕刻师的整个工作流就建立在 Multires 之上。如果插件在这个模式下不记录历史,那它的实用性会打对折。创作者说“working on improving the workflow”,但在支持之前,这是一个明确的采用障碍。
对行业和从业者意味着什么
对独立艺术家和小型工作室,Sculpt Rewind 降低的是心理成本。知道每一步都可回溯,雕刻时的犹豫会减少,尝试更激进造型的意愿会提高。这种心理效应在创作工具中往往被低估,但它真实存在。
对 Blender 生态,这个插件指出了一个方向:Blender 的核心撤销系统已经跟不上专业雕刻工作流的需求,而社区正在用插件填补这个缺口。如果 Blender 官方不在后续版本中改进原生撤销的粒度和持久性,这类插件会变得越来越重要。
对 ZBrush 用户,Sculpt Rewind 的存在削弱了“ZBrush 有 History Recall,Blender 没有”这个转换障碍。它不会让 Blender 的雕刻体验等同于 ZBrush,但它移除了一个具体的、可被指认的功能差距。
值得关注的不是 10,000 这个数字
10,000 步听起来很夸张,但真正重要的是增量存储 + 逐对象 + 持久化 + 局部恢复这四个特性的组合。单独看任何一个都不新鲜,但组合在一起,它改变的是雕刻工作流的时间结构——你不再需要在一个线性、不可逆的时间线上工作,而是可以在多个物体的多条时间线上自由穿梭。
这才是 Sculpt Rewind 真正在做的事。
