← 最新论文
💻 计算机科学

Temporally Coherent Hierarchical Distance Queries for Deformable Triangle Meshes

本文提出了一种用于可变形三角网格符号距离查询的时间相干分层方法,该方法通过选择性地刷新各向异性边界并重用前一帧的最邻近三角形种子,在保持数值准确性的同时实现了高达 2.5 倍的性能提升。

原作者: Jong-Hyun Kim

发布于 2026-10-29
📖 1 分钟阅读☕ 轻松阅读

原作者: Jong-Hyun Kim

原始论文采用 CC BY 4.0 许可(https://creativecommons.org/licenses/by/4.0/)。 ✨ 这是对下方论文的AI生成解释。它不是由作者撰写或认可的。如需技术准确性,请参阅原始论文。 阅读完整免责声明

在计算机图形学和科学模拟的数字世界中,物体通常由大量的微小三角形组成,形成一个可以弯曲、扭转和拉伸的网格,以模拟布料、皮肤或水等现实世界的材料。为了让这些模拟看起来真实,计算机必须不断回答一个简单但要求极高的问题:空间中的一个特定点距离物体的表面有多远。这种被称为“符号距离”(signed distance)的测量,不仅告诉程序点到表面的距离,还告知该点是在物体内部还是外部。这一信息是碰撞检测(确保虚拟角色不会穿墙而过)和物理模拟(允许流体绕过障碍物流动)的核心支柱。然而,随着物体的变形,其表面每秒钟都在改变形状。为场景中的每一个点在每一帧都从头开始计算距离,是一项巨大的计算负担,会让即使是最强大的计算机也变得极其缓慢。

仁荷大学的研究人员开发了一种新方法来解决这个问题,通过教计算机记住它在上一时刻学到的知识,而不是每次都从头开始。他们的方法不是在每一瞬间都重建整个物体的形状图谱,而是追踪物体的移动和拉伸,仅更新图中发生显著变化的部分。他们发现,通过记录上一帧中最接近的表面特征并将其作为当前帧的初始猜测值,计算机可以跳过大量的无效工作。在测试中,这种方法使得系统计算距离的速度比传统方法快了大约两倍半,且没有牺牲任何精度。其结果是,这是一种让复杂的动态3D世界保持流畅运行的方法,使变形物体的实时模拟更加高效且具有响应性。

这项创新的核心在于计算机如何组织关于物体表面的信息。想象一下,3D物体周围的空间被划分为一个格子的网格,每个格子都保存着可能对该格子内任何点最近的三角形列表。在一个静态的世界里,这个列表永远不会改变。但当物体移动时,三角形会发生位移,旧的列表可能会变得错误或具有误导性。传统的解决方案是为每一帧都丢弃旧列表并重新构建,这个过程既慢又耗能。研究人员意识到,在大多数动画中,前后两个时刻之间的变化是微小且平滑的。三角形不会瞬间移动,而是平滑地滑动。因此,上一帧中附近的三角形列表很可能仍然非常接近当前帧的真实情况。

为了利用这种平滑性,团队创建了一个维持“时间边界”(temporal bound)的系统,即在每个格子周围建立一个安全区,该区域只需扩张到足以捕捉移动中的三角形即可。他们并没有简单地在所有方向上扩大格子,因为那样会创建一个笨重且过大的安全网。相反,他们仅在物体实际移动的特定方向上拉伸这些安全区。如果物体的某个部分向右拉伸,安全区就会向右扩张,但在上下和前后方向保持紧凑。这种各向异性的(或方向特定的)扩张保持了安全区的紧凑与高效。此外,他们还添加了一个智能过滤器:如果物体的某部分移动量极小,系统会保留原有的三角形列表,并仅稍微扩大安全区。只有当运动量大到足以打破旧的安全区时,系统才会重建列表。这种选择性的更新意味着,对于大部分物体,计算机无需承担重建内部地图的繁重任务。

第二个主要技巧涉及实际的距离搜索。当计算机需要知道一个点的距离时,它通常必须检查许多三角形才能找到最近的一个。研究人员注意到,如果他们询问网格中某个特定位置的距离,那么离该位置最近的三角形几乎肯定与上一帧中离该位置最近的三角形是同一个。他们为网格的小块区域存储了这个“种子”三角形ID。当新的查询到达时,系统首先根据物体的当前形状检查这个被记住的三角形。这提供了一个即时的、非常好的最大可能距离估计。有了这个紧凑的上界,计算机可以立即忽略掉那些明显太远的三角形,从而完全跳过它们。这一过程结合了一种避免复杂内存栈的流线型网格导航方式,使得系统在开始详细计算之前就能剔除掉大量的无关数据。

研究人员在几个复杂的3D模型上测试了他们的方法,包括一条龙、一只�uku鼠(armadillo)以及一组协同移动的角色。他们将新方法与每一步都重建整个地图的标准方法进行了对比。结果显示,新方法生成的距离值与标准方法完全一致,精确到了最小的小数位,证明了这些快捷方式并不会引入误差。然而,速度上的差异是巨大的。平均而言,新方法完成距离计算的时间不到原来的一半,在某些场景中,提速甚至达到了2.5倍。测试表明,该系统节省时间的主要原因在于访问了其内部地图中更少的格子,并且检查了更少的三角形。在一组测试中,它需要检查的三角形数量降到了标准方法要求的不到一半。

这种效率来自于对“记住过去”与“检查现在”之间的平衡。系统并不会盲目信任旧数据;它会不断验证被记住的三角形对于当前形状是否仍然有效。如果物体移动过大,系统会刷新该特定区域的记忆。这种适应性意味着即使物体经历了剧烈且复杂的变形(如龙身体的扭转或角色的肢体关节运动),该方法依然有效。研究人员还发现,即使在同一场景中有多个物体移动时,该方法依然有效,这表明它可以处理拥挤的动态环境。该方法失去优势的唯一情况是当物体移动得过于剧烈或不可预测,导致上一帧的数据变得毫无用处,但即便如此,系统依然保持准确,只是退回到标准的搜索模式。

这项工作证明,在计算机模拟领域,速度并不总是以牺牲精度为代价。通过仔细管理信息的复用与更新,完全可以在实现精确结果的同时大幅提升速度。该方法依赖于物体拓扑结构(即三角形连接方式)保持不变的假设,这对于大多数变形模拟(如布料或软体)是成立的,但不适用于会撕裂或破碎的物体。在这些限制范围内,该方法为处理3D世界的连续、流体运动提供了一种稳健的方式。研究人员总结道,通过将这些时间记忆技术与现代图形硬件相结合,使得变形物体的这种高保真模拟在视频游戏、工程分析等对计算时间要求极高的实时应用中变得切实可行。

您所在领域的论文太多了?

获取与您研究关键词匹配的最新论文每日摘要——附技术摘要,使用您的语言。

试用 Digest →