【技术分享】Xsens MVN动捕系统在虚幻引擎中的设置指南
本文将介绍有关拍摄专业级内容的基础知识之一:动作捕捉系统。在“形体动捕解决方案和设置”章节中,对Movella旗下的Xsens方案做详细介绍,它可为形体捕捉带来出色质量,提供数据供您在制片全过程中使用。其MVN软件提供额外后期处理,可清理数据,消除滑步。
动作捕捉系统
市面上有成本各异的动作捕捉系统,其中使用惯性系统的产品最便宜。光学捕捉系统通常会达到12000美金以上的价位,由于需要更大的捕捉量,因此会非常昂贵。
昂贵的系统会随附更多功能和更高保真度的解算数据。但是,这些系统常常需要更多硬件和人力资源,而且学习和使用起来还可能很复杂。根据你最终要创建的内容,确定哪种类型的系统比较合适。
此小节介绍了热门的动作捕捉解决方案,并提供了相关的设置指南。
形体动作捕捉解决方案和设置
形体动作捕捉是指使用专门的传感器捕捉演员的移动和动作,然后将捕捉到的内容转换为数字数据,用于为虚拟角色或对象制作动画。
市面上有许多价位不同但价值斐然的形体动作捕捉解决方案。本文档仅着重介绍一些热门选项,因为光学选项超出了大部分工作室的价格承受范围。常见的行业标准套件有Movella推出的Xsens。
流送输入
对于所有动作捕捉套件,通用的数据流送基本工作流程如下:
1打开电源并将所有必需传感器硬件和带子连接起来。
2将这些传感器连接到对应的供应商软件,以将动作解译为数字形式。
3运行特定虚幻引擎版本的相应供应商插件。
4在虚幻引擎中添加该插件并重启编辑器。
5使用Live Link协议将该数据流发送到在你的网络上运行虚幻引擎的计算机的IP地址。
6在虚幻引擎中,使用Live Link窗口“添加Live Link源”用于接收。
(这对于每个动作捕捉供应商和每个自定义虚幻骨架都不同,此步骤需要自定义的T姿势。)
10看动作
离线处理和录制
对于所有动作捕捉套件,数据流送基本工作流程如下:
1打开电源并将所有必需传感器硬件和带子连接起来。 开电源并将所有必需传感器硬件和带子连接起来。
2将这些传感器连接到对应的供应商软件,以将动作解译为数字形式。
3在计算机或手机上本地处理并保存该数据。
4导出一个.fbx动画文件,以导入虚幻引擎中。
Xsens规格
Xsens动捕套装可为形体捕捉带来出色的质量。此套件能够提供数据,供你在制片的整个过程中使用。其MVN软件提供了一些额外的后期处理,可清理数据,消除滑步。
设置和校准官方资源
1形体测量
形体测量 - Xsens视频教程
2连接套件
准备硬件MVN链接 - Xsens视频教程
https://tutorial.movella.com/video/preparing-hardware-mvn-link/
3将ASUS连接到计算机
WPS连接 - Xsens视频教程
4ALT将ASUS路由器连接到计算机
Asus最佳实践和故障排除技术 - Xsens视频教程
https://tutorial.movella.com/video/link-router-setup-best-practices/
5ALT连接到你的家庭WiFi,跳过ASUS路由器
将Link Body包连接到家庭或办公室路由器 - Xsens视频教程
https://tutorial.movella.com/video/link-router-setup-best-practices/
6WPS连接
WPS连接 - Xsens视频教程
7校准套件——推荐将T姿势用于虚幻引擎
校准链接 - Xsens视频教程
流送到虚幻引擎资源
下面是制造商提供的设置软件和流送的官方步骤:
https://base.xsens.com/s/article/MVN-Unreal-Live-Link-Plugin-UE5?language=en_US
下面是另一个可能有用的参考资料: 适用于虚幻引擎的Live Link - Xsens视频教程
此链接适合用于查找较旧版本虚幻引擎的插件版本,以及包含官方MVN “puppet”的示例项目:
https://base.xsens.com/s/article/Unreal-MVN-Live-Link-Plugin-Overview?language=en_U
此处你可以看到示例项目的内容,其中包含带有和不带手指骨骼的出色兼容骨架。如需更新已流送的动作,让动作达到套件可以提供的最高质量,则最好也使用MVN puppet从MVN导入.fbx动画。
故障排除
如果Live Link窗口中看不到动作捕捉数据,请双击你的IP地址和端口号。9764是默认值,但如果MVN中添加了额外的流,新端口可以是9763。
如果你在虚幻引擎场景中看到滑步/抬脚,而MVN中并未发生此情况,这可能是因为骨架的比例不同。
修复步骤如下:
-
从MVN导出以0帧为T姿势的.fbx
-
从第一个帧创建新的1帧动画
-
将该动画导出为骨骼网格体
-
重新导入骨骼网格体,用作该演员所有动作的默认Puppet
流送到MetaHuman上
最近增加了Live Link形体和面部变量(已添加到主蓝图),可以更加轻松地直接将动画放到MetaHuman上。你不必为骨架创建自定义动画蓝图,而可以直接选择对应的Xsens源,并选中“使用Live Link形体(Use Live Link Body)”框。
务必注意,需要打开蓝图并设置Live Link形体重定向变量。这是正常映射骨骼的必需操作,但未设置为实例可编辑,因此未公开为编辑器中显示的变量。
同样,如果角色看起来没有对传入动作做出回应,增加Live Link骨骼动画组件将强制动画在编辑器中更新。
注意:你的动作捕捉演员的形体比例有可能与MetaHuman不同,因此该方法可能会在官方puppet上引入自定义导入的MVN .fbx中不存在的滑步。可以使用高级重定向来修复此问题,具体详见未来章节。
在MVN中录制和导出
1你可能想在引擎中进行镜头试拍录制,以及在MVN中捕捉你的镜头试拍。MVN有一个重新处理步骤,会试图清理你不会从引擎获取的数据。
2可能需要将动作重新导入回MVN中,以重新处理。
3从MVN导出的.fbx格式只会包含动画数据,而没有骨骼网格体。因此,请务必将虚幻引擎中的官方MVN puppet骨架作为基础骨架。此puppet可从上方链接的官方示例项目文件中取得。
4在虚幻引擎5.1中,增加了新的.fbx动画导入选项。请务必选中“对齐到最接近的帧边界(Snap to Closest Frame Boundary)”。这应该会确保采用任何取样率都能成功导入。