这款软体模拟可实时切割、剥离&破坏物体
This Soft-Body Simulation Can Cut, Peel & Break Objects in Real Time
KAIST计算机图形学硕士学生
采访人
2026年10月12日
KAIST研究员Jewoo Shin解释了OmniBody如何结合椭球粒子、局部XPBD约束和GPU并行化来模拟可变形和可破坏物体,而无需全局求解器或重网格化。
创建一个可以压扁或拉伸的软体物体已经是一项挑战;要让它能够被切割、剥离、碎裂并在实时中自由操控,则困难得多。基于网格的仿真方法在物体拓扑发生变化时往往需要代价高昂的重网格化,而物理上严格的方法可能依赖于难以在交互帧率下运行的全局求解器。
由韩国科学技术院(KAIST)研究员 Jewoo Shin 和 Jinah Park 开发的OmniBody用体素对齐的定向椭球粒子取代了传统的连接网格。局部扩展基于位置的动力学约束控制接触、弯曲、弹性、体积保持和断裂,使全局行为得以涌现,而无需矩阵组装或线性方程组求解。该项目作为SIGGRAPH 2026动画与仿真海报的一部分进行了展示。
该 GPU 框架可在 NVIDIA GeForce RTX 3080 Ti 上以约 3.1 毫秒模拟一个 64,000 粒子的物体,而一项高难度的切割测试耗时保持在 10 毫秒以内。我们与 Shin 就通过模块化约束设计材料、无需重新网格化即可破碎物体、暴露的内表面仍面临的挑战,以及自由可变形物体为何对 XR 和沙盒游戏尤其有价值等话题进行了交流。
请介绍一下你们自己、你们的研究背景,以及促使你们开发 OmniBody 的模拟挑战。
Jewoo Shin:我叫 Jewoo Shin,目前是韩国科学技术院(KAIST)的硕士研究生,在 Jinah Park 教授的指导下学习。我还没有丰富的研究背景,但我对计算机图形学和物理模拟有着浓厚的兴趣。我本科主修计算机科学,OmniBody 是我作为研究生第一个取得有意义成果的项目。
促使我开发这个仿真模型的主要挑战是易用性不足和实现的复杂性。传统的软体仿真方法需要深厚的领域知识才能进行设置和控制,而要达到期望的物理状态往往并非易事。更具体地说,我的动力来自于构建一个实时交互仿真的目标,它要超越在许多环境中常见的简单软体——一个能够支持更真实的物理行为和交互(如切割和剥皮)的仿真。
此外,粒子级形变在交互式仿真技术中起着核心作用。在我参与的研究项目中,需要一个能够处理各种材料行为的可变形体模型。关键在于同时处理用于视觉连贯性的全局形变以及接触点处的局部响应。
因此,OmniBody 基于扩展位置动力学(XPBD)构建,因其简洁性和稳定性而被选用,并展示了通过组合简单约束可以产生大量有趣的场景。
OmniBody 通过对齐体素的椭球粒子之间完全局部的相互作用来构建全局形变。这种表示方法是如何工作的?与四面体网格、传统粒子系统或有限元方法相比,它有哪些优势?
Jewoo Shin:定向椭球粒子表示比传统质点粒子携带更多信息,这使得复杂且分布式的 XPBD 约束配置成为可能。从概念上讲,它更接近有限元方法而非传统粒子系统,因为物体被细分为显式单元,每个粒子作为一个独立单元,其属性在局部计算。然而,与 FEM 不同,它不需要矩阵组装或线性方程组求解等昂贵操作。相反,局部约束在相邻粒子之间被求解并连接,从而在保持物理一致性的同时使计算保持轻量级。
与四面体或六面体网格不同,椭球粒子在拓扑发生变化时(例如破坏或切割过程中)的开销要小得多。基于网格的方法在这些情况下通常需要进行顶点复制和重新网格化,这在交互式实时场景中可能代价高昂。OmniBody 通过简单地停用受影响粒子之间的接触约束来解决这一问题,且该操作易于并行化。
我们表示方法的另一个优势在于碰撞处理。由于粒子本身充当碰撞边界,与其他 OmniBody 对象、基于粒子的材料或物体自身之间的碰撞检测和解决,远比网格之间的碰撞处理要简单直接得多。
该框架将接触、弯曲、各向异性弹性、体积保持和断裂分别拆分为独立的约束条件。这些约束条件如何组合而不会产生不稳定或相互矛盾的行为?艺术家可以使用哪些控制参数来定义不同的材料?
Jewoo Shin:这些约束分为两个层级:粒子级约束和邻域级约束。粒子级约束由各向异性弹性和体积保持组成,它们决定了每个椭球体在应力作用下如何变形以及如何恢复到其静止形状。弹性的刚度参数控制沿各轴应变的敏感度,而体积保持的柔度则表明物体对体积拉伸与压缩的容忍程度。
另一方面,邻居级约束决定了哪些粒子彼此相连,以及它们被束缚得有多紧密。接触约束通过将粒子表面之间的距离限制为零来强制粒子之间的几何附着,而弯曲约束则防止相邻粒子相对于彼此过度自由旋转,类似于球关节。
将这些要素综合起来,每个求解器步骤以顺序方式遍历各约束以产生全局行为。遵循基于位置动力学的预测-投影-更新方案,求解器首先解决位置约束并预测每个椭球体的缩放和朝向。逐粒子约束随后确定每个粒子的形状,当所有粒子都稳定到其构型后,若相邻粒子被拉得过远,断裂约束便可停用它们之间的连接。由于每个步骤都通过子步处理——即将每个时间步划分为更短的区间——只要粒子之间没有严重错位,系统就会缓慢而稳定地趋向平衡。
得益于基于约束的公式化方法,每个约束都可以通过其柔度参数轻松解耦和调节。艺术家只需选择哪些约束作用于某个对象,并设置每个约束的刚度,即可在运行时调整材料行为。例如,增加接触约束的柔度会产生更流畅、类似果冻的行为,而体积保持的柔度更高则会使对象更具可拉伸性。
破坏效果通常需要重新网格化或显式追踪裂纹。OmniBody 的基于距离的断裂模型如何使对象无需重新网格化即可撕裂和断裂?它能多好地再现特定的断裂模式,而非一般的碎裂?
Jewoo Shin:我们的基于距离的断裂模型为软体提供了一项简单而有效的剥离功能。粒子表面之间的距离理想情况下始终保持在零,但如果超过某个阈值,约束将被永久解耦,使物体得以分离。重要的是,该阈值可以沿各轴变化,从而支持更多样化的场景。例如,一块在特定方向上更容易撕裂的肉可以被自然地表示出来。
另一种破坏形式是切割,它通过直接禁用接触约束来实现。虚拟切割对象(如平面)在穿过几何时,会断开它所经过的任何约束。其效果类似于在体素化的果冻块中切断一根弹簧。
话虽如此,复现特定的断裂模式目前仍不如实现一般性碎裂可靠。由于所有粒子都被视为具有相同质量,它们倾向于对外力做出均匀响应。这意味着,例如,一次捏合交互只会使最靠近接触点的粒子脱离,而非以受控方式向内传播。要解决这一问题,需要对每个粒子的逆质量进行差异化处理,以引导断裂沿预期路径传播,这可能需要一种可微分的方法。我们将此留作未来工作的方向。
在不同物体分辨率、粒子数量和破坏场景下,你们实现了怎样的性能表现?模拟的哪些部分最受益于 GPU 并行化,当前的计算瓶颈出现在哪里?
Jewoo Shin:对于标准立方体网格,每帧模拟时间随粒子数量的增加扩展性相当好。在 NVIDIA RTX 3080 Ti 上,20³ 网格配合 8,000 个粒子每帧运行时间为 0.9ms,即使是 40³ 网格配合 64,000 个粒子也能保持在 3.1ms 以内。对于更复杂的场景,例如切割一个拉伸的 40³ 立方体,峰值帧时间保持在 10ms 以内,我们认为这对于实时交互使用已经足够。
这一性能的关键在于体素化邻域结构如何沿 x、y 和 z 轴将约束自然地分解为三个独立集合。这使得 Gauss-Seidel 求解仅需三次遍历即可完成,将模拟方法中计算量最大的部分降低到接近线性的复杂度,从而很好地映射到 GPU 并行化。
即便如此,仍有我们正在积极改进的方面。由于 OmniBody 仍处于积极开发阶段,我们有意将每个约束保持为模块化且易于修改的形式,这意味着 GPU 目前将它们作为大量小型顺序操作来处理。由于其中许多操作访问相同的数据,硬件必须等待每一个操作完成才能开始下一个,这累积起来构成了一个显著的开销来源。类似地,每个粒子的内存布局目前是以灵活性为设计考量,而非完全优化。随着系统趋于成熟且约束设计趋于稳定,整合这些操作并收紧内存布局将是我们优化的主要方向。
还有哪些局限性或视觉瑕疵仍然存在?要将 OmniBody 集成到生产级游戏引擎中,以实现可变形环境、可破坏生物、类布料物体或软体玩法等效果,还需要满足哪些条件?
Jewoo Shin:在模拟和视觉表现两方面仍然存在局限性。在模拟方面,OmniBody 的约束并非严格基于物理方程或能量公式推导而来,因此其行为有时可能与物理精确模拟的预期结果不同。例如,由于当前公式不包含角量项,物体无法像钟摆那样反复摆动。
在视觉方面,渲染目前要么直接显示单个粒子,要么对网格进行蒙皮以跟随粒子位置。这对于许多可变形物体效果很好,但对于完全可破坏的模型则更具挑战性。当物体被切割或破碎时,新暴露的内部表面并未以能够干净渲染的方式被明确定义。体积表示,例如基于纹理的表示或高斯泼溅,可能是可视化这些新暴露区域的更好方式。
在 OmniBody 能够集成到生产级游戏引擎之前,还有若干工程挑战需要解决。游戏环境通常包含大量动态物体,因此模拟需要在广泛的交互范围内保持稳定和高效。由于 OmniBody 仍然只是对真实物理行为的近似,在某些情况下可能会出现意外行为。多个物体之间的稳健交互以及进一步的优化也是必要的。
Jewoo Shin:同时,我认为 OmniBody 并不需要取代所有使用场景中的现有方案。如果完全可破坏的软体并非必需,成熟的基于网格的软体或布料模拟方法很可能能提供更好的性能。对于许多类型的游戏内容,预定义的碎片化系统或网格切割技术已经足够。我认为 OmniBody 特别有趣的地方在于高度交互的环境,例如 XR,用户可以用手自由地操作物体,而不是局限于预定义或脚本化的交互。
作为一个真正热爱游戏的人,我认为行为更接近真实世界的模拟能够带来更丰富、更具沉浸感的体验。让玩家能够以意想不到的方式与物体互动,而不是将他们限制在预设的动作中,可以为富有创意和趣味性的游戏玩法开辟新的可能性。
我一直被模拟类和沙盒类游戏所吸引,也长久以来想象过这样的虚拟环境:其中的物体可以像在现实世界中一样被探索和操控。想象一下,你能在虚拟厨房里真正地揉面团、切面包、做一顿饭。这种体验是我最感到兴奋的,也是最终驱动这项工作的动力。
订阅 80 Level 通讯
最新新闻、精选文章和更新
来源:80 Level · 游戏美术与技术 · 80.lv