Autodesk展示TimeTunnel为VR角色动画提供时空运动编辑
为VR角色动画集成时空运动编辑
(映维网Nweon 2024年09月23日)随着新技术和创作工具的普及,3D动画正变得越来越大众化。除了动捕数据之外,创作3D动画对于缺乏领域专业知识的个人来说依然十分困难。专业动画软件通常依赖于使用关键帧来定义对象在特定时间点的属性,但新人学习起来并不容易。通常,具有至少15个关节的人形模型将为每个关节提供至少三条动画曲线,代表其x,y和z位置,每个曲线包含一组不同的控制键。鉴于关键帧和动画曲线的复杂性,诸如Maya等桌面动画软件通常都具有复杂的界面,图标,视图和工具。另外,曲线和关键帧是抽象的,新手需要进行广泛的培训,以了解对2D曲线的改动将如何影响3D模型。
尽管逆运动学(IK)等技术允许用户直接操作关节,但包含空间信息的3D模型与时间轴分离。所以,基于关键帧的方法划分了空间和时间控制,使得很难随着时间的推移协调姿势。
VR方法使得用户能够通过直接使用控制器或裸手操纵3D关以编辑3D姿势,从而为新手提供了从事3D动画创作的机会。不过,目前大多数工具依然利用了从桌面界面继承来的关键帧和动画曲线,这占用了额外的屏幕空间,并阻止沉浸式动画工具充分受益于3D界面。新手依然需要克服理解关键帧和动画曲线的困难。另外,要编辑多个帧,你需要在3D模型和时间轴编辑器之间交替使用以应用更改。更重要的是,时间轴和3D模型的分离要求用户在心理上跟踪时间上下文,并理解当前帧的变化如何影响相邻帧,以便创建流畅和理想的动画。
为了应对这一挑战,Autodesk提出了集成了空间和时间控制的沉浸式运动编辑界面TimeTunnel。团队将TimeTunnel设想为一种与沉浸式动捕等其他方法共存的补充技术。
介绍
TimeTunnel渲染Trajectory和Keypose来表示空间中的运动,以提供平易近人的编辑体验。Keypose是一组有代表性的姿势,它们都是经过仔细计算,可以在简洁的视图中描绘运动。Trajectory则是帮助用户可视化在Keypose之间发生的运动的3D动画曲线。
这个工具集成了空间和时间控制。它在一个轴上表示时间,TimeTunnel的路径表示时间的流逝。由于动捕数据不包含关键帧等高级控件,所以通过分析TimeTunnel可以自动从运动中提取Keypose。
TimeTunnel的设计基于三个设计原理:
-
整合时空控制:传统动画软件将空间和时间控制分开,要求动画师在用于空间姿势的角色视图和用于曲线和关键帧的时间变化的时间轴视图之间切换。这使得随着时间的推移协调身体形状和跟踪编辑上下文变得具有挑战性。为了解决这个问题,团队的目标是使用无缝集成空间和时间控制的运动表示。
-
为角色动画提供平易近人的编辑体验:人体运动数据是多变量的,具有诸多空间和时间变化。编辑具有关键帧的人形动画可能具有挑战性,因为它涉及导航复杂的界面和操纵高维空间中的多个控制手柄以实现所需的改动。对于初学者来说,预测结果可能非常困难,因为关键帧和曲线控制通常是间接应用于角色。所以,团队着手简化界面和交互,使得角色动画平易近人。
-
与动捕数据兼容:动捕一个值得注意的挑战是捕获数据的编辑。动捕系统通常为每帧记录一个姿势,而不仅仅是特定时间点的基本姿势,导致大量数据没有描述动作属性的高级结构。随着动捕技术变得越来越广泛,团队目标是简化这种非结构化数据的编辑。
基于这三个考虑,团队介绍了旨在提供平易近人的编辑体验的TimeTunnel。他们使用Trajectory作为动画曲线的3D替代方案,并渲染代表关键帧的Keypose。
与之前通常将动画曲线和关键帧从角色中分离出来的研究不同,Trajectory和Keypose叠加到角色之上,以集成空间和时间控制。Trajectory是关节随时间的有序位置的集合。你可以把它看作是一个3D动画曲线,将一个关键帧连接到另一个关键帧,并定义单个关节之间的插值。
与在场景中渲染关节3D位置的运动路径不同,Trajectory在横向轴映射时间,所以可以视为拉伸的运动路径,以解开位置之间随时间的潜在重叠。
尽管Trajectory提供了一种解开了位置之间潜在重叠的视图,但它同时引入了扭曲的原始运动路径,人为地拉伸路径,所以可能无法太直接地解释弯曲路径所代表的运动。因此,研究人员引入Keypose来提高其可解释性。每个Keypose都是曲线关键帧点的合并。另外,Keypose通过定义边界来实现局部运动控制,这样移动一个控制点只会改变Trajectory的有限范围,由相邻的Keypose限定。
为了使TimeTunnel与动捕数据兼容,研究人员通过检测Trajectory的极值点,从动捕数据中提取Keypose。
为了提供平易近人的编辑体验,团队开发了一个VR用户界面,允许用户使用控制器或手部追踪直接编辑运动。
这个界面由主角、Keypose、Trajectory和支持性UI组成。用户可以通过选择和移动关节来操纵主角的姿势。用户可以通过选择和移动关节来操纵主角的姿势。团队使用全身逆运动学(IK)方法来支持10个效应器(手,脚,上臂,大腿,头部和脊柱)的姿势。
为了帮助用户选择关节,为每个激活的关节显示一个带有局部轴的球形小组件。用户可以移动和旋转小组件来控制当前帧中的姿态。在当前帧中所做的改动将传播到由一对预定义Keypose限定的相邻帧。
Keypose是在重要帧中与主角并排放置的3D模型,以显示具有代表性的姿势。可以选择Keypose来指定动画的范围,而动画将受到对主角活动姿势的任何改动的影响。
位置和旋转变化的传播使用加权线性和球面插值。默认情况下,改动将传播到主角两侧最接近的Keypose(在上图中使用透明纹理突出显示)。为了扩展将受改动影响的运动范围,用户可以选择不同的Keypose作为开始或结束帧。
Keypose同时可以用于调整运动片段的时间。用户可以选择一个左Keypose作为开始帧,一个右Keypose作为结束帧,以指定将受到改动影响的运动范围。要修改片段的时间,用户可以通过收缩或扩展两个Keypose之间的轨迹来调整它们的长度,以加速或减慢运动。
这个重新计时过程包括一个适用于所选段的无缝速度调整的功能。角色和Keypose之间的物理位置差异反映了时间持续时间(以帧为单位)。每个Keypose下面的按钮都显示一个帧号,按下按钮会将用户导航到特定帧。
另外,用户可以通过导航到帧并按下当前帧的按钮来添加或删除Keypose。为了防止视觉混乱,Keypose在动画播放期间不显示,只有在动画暂停时可见。轨迹是3D线条,
Trajectory表示关节沿着Keypose的运动。Trajectory穿过所有Keypose和主角。轨迹线同时表示时间的流动,以水平方向作为时间的参考。Trajectory不能独立修改,但当主角的姿势发生变化并传播到相邻的帧时,它们会自动更新。
颜色传达了重新计时操作的信息,绿色表示加速,红色表示减速,颜色的深浅反映了改变的程度。Trajectory在动画回放和动画暂停时都是可见的。附加的UI控件包括关节地图和导航按钮。使用关节地图,用户可以激活或停用关节,并通过按指定的按钮查看相应的轨迹Trajectory。
关节地图根据激活的关节确定显示哪些Keypose。这允许用户通过激活相应的关节并查看由运动生成的Keypose来专注于特定的关节运动。当启用多个关节时,具有较大运动的关节将对Keypose的选择产生更大的影响。
除了关节地图之外,界面同时提供了允许播放或暂停动画以及在帧之间导航的导航按钮。团队为导航提供了额外的控制:旋转按钮可以旋转所有Keypose和主要角色,为他们提供从不同角度的运动视图;放大/缩小按钮则允许调整界面中可见的帧数。
示例
研究人员在TimeTunnel中编辑了三个运动序列。这三种运动代表了编辑CMU动捕数据集中捕获的动作的三种不同用例。
-
修正运动伪影。当将捕获到的动作应用于角色时,一个常见的问题是身体穿插,即角色的身体部位相互重叠和相交。为了解决这个问题,用户可以激活关节图中的俯仰手来显示相应的Trajectory。当手最接近躯干时,Trajectory对应的点识别为一个极值点。所以,系统在最深的碰撞点创建Keypose。
-
支持对象接触。TimeTunnel可以用来确保身体击中场景中的特定目标。例如,在踢足球的动作中,角色的脚需要与球接触。为了准确定位足部,用户可以在关节图中激活足部关节,显示相应的Trajectory。通过擦洗Trajectory,用户可以找到脚与球接触的点。然后,用户可以选择并将脚移向球,以确保它击中目标。
-
应用预期原则。尽管动捕数据是真实的,但它通常缺乏手绘动画的生动性。为了使平淡的跳跃动作程式化,用户可以应用预期原则。用户首先激活多个关节并在跳跃之前定位Keypose。然后,用户可以通过缩回双手和向下弯曲身体来调整预期姿势。通过选择着陆Keypose作为结束帧,对预期姿势所做的更改将应用于整个跳跃,以确保平稳过渡。然后,用户可以选择预期Keypose作为开始帧,着陆Keypose作为结束帧,并将跳跃的时间调整为快1.2倍。
用户研究
团队进行了两次用户研究来评估TimeTunnel。第一个研究是在受控环境下的两个任务(姿态搜索和操纵任务)的定量研究。本研究的目的是验证TimeTunnel中关键组件在支持新手用户运动编辑方面的有效性。之所以选择研究新手,是因为他们是系统的目标用户,并且他们不具有可能干扰系统使用的先入为主观念或专业知识。
为了进一步界定所提出研究的界限,团队与动画领域的专家进行了第二次基于访谈的定性研究。本研究的目的是了解TimeTunnel界面在更自然和生态有效的背景下的优势和劣势。之所以选择研究动画领域的专家,是因为他们拥有专业的培训、成熟的实践和对领域最新技术的了解。这两项研究共同帮助我团队形成对TimeTunnel界面的整体理解。
通过对使用TimeTunnel的新手用户和领域专家的观察,研究人员重新审视了设计原理,讨论了方法的普遍性,并将吸取的宝贵经验教训纳入未来的改进中。
团队使用姿势搜索任务和操纵任务来评估Trajectory和KeyPose在支持新手用户运动编辑方面的有效性。
在搜索任务中,向被试提供了一个目标姿势,并指示在动画片段中尽可能快地找到具有所述姿势的帧。在操纵任务中,被试需要编辑跳跃动画,以避开角色在跳跃过程中碰到障碍物的障碍物。
所有被试都发现KeyPose在搜索姿势时非常有用。在操纵姿势时,大多数参与者(10/12)发现KeyPose很有用。另外,大多数参与者(8/12)发现Trajectory在操纵姿势时很有用,但在搜索姿势时没有那么有用(5/12)。
总体而言,KeyPose和Trajectory的组合在具有较少错误和所需操作的姿势搜索任务以及需要较少时间和较少编辑帧的姿势操纵任务中都证明了其有效性。团队将这种有效性主要归因于KeyPose,同时考虑到Trajectory可能起到次要的支持作用。
使用KeyPose,参与者能够用更少的帧更快地编辑运动,从而在姿势操纵任务中获得最终结果(图7.4)。在姿势搜索任务中,KeyPose似乎没有加快搜索过程,但它确实减少了操作次数(图7.2),错误更少(图7.3)。
在实践中,研究人员观察到被试经常暂停动画,并仔细地将每个关键姿势与目标姿势进行比较,而在没有KeyPose的条件下,他们会在注意到感兴趣的时刻时播放并暂停动画,然后穷尽性地遍历相邻帧来定位目标姿势。在给定的帧上,KeyPose提供了更多的信息,因此避免了频繁暂停和在时间线上来回移动的工作量。显示多个KeyPose的一个潜在缺点是视觉混乱,四名参与者将界面描述为“有点让人不知所措”(P2)。
尽管没有观察到单独使用Trajectory在任务表现上有显著改善,但当与KeyPoses组合时,它们可能在运动感知中起到支持作用。四名参与者提到,Trajectory对KeyPose(P0、P3、P9、P10)最有用:“当只有Trajectory时,我发现它很难,但把它和KeyPose结合在一起是一个有用的指南”(P3)。”
在第二项研究中,团队通过访谈方式征求了专家对TimeTunnel概念的整体印象,并对其当前用户界面进行了反馈,以探索使用TimeTunnel进行运动编辑的优点和缺点。
从访谈数据来看,专家普遍认为认为直接性和简单性是优势,而精确性和可视化混乱则是未来需要改进的弱点。
重新审视设计原理
团队重新审视了之前提出的设计原理,并反思它们已经实现的程度。他们同时讨论了设计未来编辑工具的机遇和挑战。
-
整合时空控制:TimeTunnel引入了一种新的方法,通过将关键帧转换为Keypose并将Trajectory叠加到角色上来整合时空控制。在研究1中,Keypose和Trajectory的组合在两个任务中证明了有效性,所需的错误和操作更少,或者更少的时间和更少的帧编辑。在研究2中,五分之四的领域专家表示喜欢使用叠加Trajectory,因为它提供了“曲线和角色之间更直接的联系”(E1),同时发现Keypose是一种直观的方法来表示关键帧。在空间和时间的整合过程中遇到的一个主要挑战是视觉混乱,但研究2的结果表明,相关问题可以通过在动画播放期间隐藏它们或通过调整透明度来进行应对。
-
为角色动画提供平易近人的编辑体验:使用Keypose和Trajectory,所有新手用户都能够编辑跳跃动画以避开障碍物。研究2可以确定简单性是TimeTunnel的优势。桌面动画软件通常有一个复杂的界面,而TimeTunnel有一个简单的界面。大多数领域专家(4/5)都证实了这一点,并强调了节省在桌面和VR环境之间切换的时间和精力。另外,TimeTunnel对动画师而言同时是平易近人。由于Keypose和Trajectory用来表示关键帧和动画曲线,动画师拥有的关于现有概念的知识和经验可转移到TimeTunnel。TimeTunnel采用3D交互,通过控制器或手部追踪来支持对3D关节的直观操作。尽管直接操作使编辑更容易接近,但它可能缺乏精度。研究2的结果表明,需要支持更精确的输入设备,如键盘和鼠标。
-
支持易于编辑捕获数据:TimeTunnel从Trajectory中提取Keypose,使编辑动作捕获数据变得容易。生成的Keypose节省了寻找目标姿势的工作量,并使研究1的两个任务的编辑速度更快。在研究2中,E2评论说Keypose看起来很自然,当被告知它们是由捕获的数据生成时,E2表示惊讶:“这非常自然。”
除了全身运动之外,TimeTunnel同时可以作为其他类型动画的通用工具,包括面部动画和手指运动。然而,随着角色复杂性的增加,手指关节和面部肌肉控制点和曲线的数量增加,视觉混乱的潜在问题就出现了。
为了帮助用户处理这种复杂性,重要的是提供一种有效的方法来轻松地隐藏和显示所需的元素。在桌面动画软件中,这通常是使用热键实现。
研究使用了来自CMU动捕数据集的示例运动。由于捕获量的限制,相关示例运动具有有限的根运动。对于场景中具有较大根运动路径的运动序列,例如跑步或跑酷动画,可以应用相同的技术从场景中的运动路径检测Keypose。
上图左显示了从跑酷动画的运动路径中检测到的所有Keypose,其中角色爬上楼梯,从顶部跳下来,从栏杆上摆动,然后跑向楼梯。尽管可以直接编辑场景中的运动,但Keypose可能会很密集,并会导致视觉混乱。
对于这一点,用户可以对选定的段进行放大和增大,以拉伸运动路径和编辑运动(上图右)。
另外,TimeTunnel当前的作用域是虚拟现实界面。默认情况下,VR界面解决了基于桌面的范例的主要挑战。首先,用户可以在VR中捕获自己的动作,所以它有望提供一个无缝的工作流程来允许用户在VR中记录和编辑运动。
同时,用户在VR中可以轻松移动,快速改变他们的视角。然后,在3D空间中使用手使摆姿势操作更类似于木偶,支持不同操纵准模式之间的隐式切换。
局限
尽管TimeTunnel和相关的Keypose和Trajectory很有前景,但目前的设计存在一定的限制。解决相关问题可以增强界面的可用性和整体体验。
-
时间和空间复用:TimeTunnel通过在横向轴表示时间来集成空间和时间控制。这意味着时间和空间沿着同一轴是多路复用的,这可能会造成混淆,尤其是在感知TimeTunnel时。默认情况下,将运动的主要移动方向设置为与时间轴对齐。当对齐时,逆时间移动(180°)和顺时间移动(0°)是有区别的。逆时间移动会导致轨迹压缩,而顺时间移动会使轨迹被扩展(上图)。压缩和扩展的程度取决于拉伸的规模。移动方向和时间轴之间的一致性需要进一步的研究。
-
Trajectory的旋转:当前的Trajectory设计只显示关节沿时间的位置。关节的方向在Trajectory中是不可见的,这有时会导致用户对方向的插值方式感到困惑。尽管之前的研究已经提出了在3DTrajectory结合方向的方法,但确保界面不混乱同样非常重要,因为界面已经存在许多视觉元素。未来的研究需要探索在不造成视觉混乱的情况下可视化方向的方法。
总的来说,为了进一步开发动捕数据动画的可行性,团队提出了集成时空控制的运动编辑界面TimeTunnel。TimeTunnel引入了一种使用Keypose和Trajectory来表示和编辑运动的新方法。
相关论文:
团队同时展示了两项用户研究的结果。实验表明,与没有Keypose和Trajectory的情况相比,TimeTunnel减少了编辑运动所需的时间,节省了定位目标姿势的工作量。研究结果证明了Keypose和Trajectory在动态编辑方面的有效性,并突出了这种方法的优势和挑战。