PIAvatar: Physically Interactive Avatars via Deformation Gradient Decoupling
PIAvatar 是一个新颖的框架,它通过将运动学速度与变形梯度解耦,并集成用于复杂的人机及人与环境交互过程中实时姿态追踪的骨架框架,实现了具有非刚性变形模拟的可进行物理交互的 3D 人类数字人。
原始论文采用 CC BY 4.0 许可(http://creativecommons.org/licenses/by/4.0/)。 这是对下方论文的AI生成解释。它不是由作者撰写或认可的。如需技术准确性,请参阅原始论文。 阅读完整免责声明
想象一下你正在观看一个游戏角色。通常情况下,当那个角色奔跑、跳跃或被球击中时,他们的身体动作看起来就像一个僵硬的雕像或一个橡胶模特。如果一个重球撞向他们,他们可能会向后滑动,但他们的肚子不会颤动,头发不会飞舞,衣服也不会飘动。他们看起来很真实,但感觉并不真实。
PIAvatar 论文介绍了一种全新的方式,让这些 3D 角色拥有一个能对世界做出反应的、真实的、富有弹性的身体。以下是他们实现这一目标的原理,通过简单的语言进行解释:
1. 问题所在:“僵硬橡胶”故障
在传统的计算机模拟中,存在着角色想要做的事(比如跳一段特定的舞蹈)与物理定律想要发生的事(比如被撞击时被挤压)之间的冲突。
这就像是你穿着一套由僵硬橡胶制成的西装试图穿过人群。如果你试图向前走,人群会向后推。在旧的计算机模型中,“向后推”(物理压力)会与你的“向前走”(动画指令)发生对抗。结果就是?角色会卡住、产生奇怪的晃动,或者无法达到动画师预期的姿势。这就像是在开车时,有人一直在踩刹车。
2. 解决方案:“双轨”系统
作者创造了一个被称为**变形梯度解耦(Deformation Gradient Decoupling)**的巧妙技巧。想象一下,角色的运动被分成了两条独立的轨道:
- 轨道 A(驾驶员): 这是“运动学速度(Kinematic Velocity)”。它是纯粹的指令,例如“把手臂移到这里”。计算机完美地执行这条指令,忽略任何阻力。
- 轨道 B(乘客): 这是“变形(Deformation)”。这是物理效果发生的地方。当角色被球击中时,身体会挤压、颤动和弯曲。
通过将两者分离,角色可以在完美执行舞蹈动作(轨道 A)的同时,同步经历被球挤压的过程(轨道 B),而这种挤压不会阻碍舞蹈的进行。这就像驾驶一辆汽车,方向盘(姿势)连接着引擎,但悬挂系统(富有弹性的身体)连接着路面。即使路面颠簸,你也能精准地控制转向。
3. 骨架:“X 射线”追踪器
当角色受到撞击并发生形变时,计算机很难知道他们的关节在哪里。这就像试图在一团果冻里寻找骨头。
为了解决这个问题,研究人员在角色内部放置了一个隐藏的骨架,就像一个 X 射线视图。即使在果冻状的皮肤被挤压和拉伸时,这个内部骨架也会持续追踪关节的位置。计算机利用这个骨架来即时判断角色的姿势,即使在他们被物理推挤的过程中也是如此。这使得系统能够精确掌握角色在实时的运动状态。
4. 引擎:“雪与沙”模拟器
为了让所有的挤压和碰撞效果生效,他们使用了一种名为**物质点法(Material Point Method, MPM)**的物理引擎。你可能在模拟雪或沙子的视频游戏中见过它。它处理角色身体的方式不是将其视为一个坚固的整体,而是由数百万个微小的粒子(就像尘埃云或一堆沙子)组成,这些粒子可以流动、拉伸和弹跳。
因此,当角色跳跃时:
- 他们的肚子会自然地颤动。
- 他们的头发会随之飞舞。
- 如果他们撞到一个重球,球会弹开,而角色的身体会向内凹陷。
- 如果两个角色击掌,他们的手会在撞击时发生形变。
5. “智能相机”测试
研究人员还测试了他们的模拟是否在人类看来是“真实”的。他们使用了一个充当评委的 AI(视觉语言模型)。他们向 AI 展示角色被球击中的视频,并询问:“这是一个轻球还是一个重球?”
AI 学会了根据角色肚子的挤压程度来进行判断。如果肚子挤压了很多,AI 会说“重”;如果几乎没动,AI 则会说“轻”。系统随后会自动调整物理设置,直到 AI 的判断符合人类的预期。这证明了该模拟表现出的行为方式在物理感官上是正确的。
总结
PIAvatar 是一个全新的系统,它让 3D 角色拥有真实的、富有弹性的身体,能够对世界做出反应(比如被球击中),同时还能执行特定的动作(比如跳舞),而不会出现卡顿或故障。它通过将“移动”与“挤压”分离,并使用隐藏的骨架来追踪角色的姿势来实现这一点。
您所在领域的论文太多了?
获取与您研究关键词匹配的最新论文每日摘要——附技术摘要,使用您的语言。