此小节将介绍在虚幻引擎中使用虚拟摄像机的基础知识。我们回顾了所需的最低规格。Vcam快速入门以及文档中没有介绍的其他信息的链接。此外,还介绍了虚拟摄像机设备和装置:其他虚拟摄像机解决方案、专业提示和最佳实践。
在UE5.1中,我们引入了新的虚拟摄像机(VCam),提高了性能,并支持更复杂的自定义和操作员技术。
新的VCam利用ARKit(或任何启用Live Link的跟踪源)。这是开箱即用的解决方案,本着开放的态度合并物理和虚拟。用户不仅可以控制摄像机,还可以利用UI设计和输入映射框架,为几乎所有用例创建工具集,包括虚拟堪景、布景、建筑可视化导览、增强现实,等等。
装备
下面是UE5.1中虚拟摄像机的示例理想硬件设置:
Apple iPad Pro(11英寸)
无线路由器
可以运行虚幻引擎的台式机或笔记本电脑
台式机(推荐最低规格)
你还可以访问以下链接,获得关于如何在场景中使用VCam Actor的逐步指南。https://docs.unrealengine.com/5.1/en-US/using-virtual-cameras-in-unreal-engine/- 使用虚拟摄像机Actor的内置界面来更改摄像机的参数
镜头试拍录制器多用户同步插件很适合用于在多用户会话中进行镜头试拍录制。1. 要打开插件(Plugins)菜单,请单击设置(Settings)> 插件(Plugins)。
2. 搜索VirtualCamera、镜头试拍录制器、镜头试拍录制器多用户同步和Live Link插件,并将其启用。
3. 重启你的计算机(如有提示)
你的计算机可能有多个IPv4地址,因此请确保你使用属于你的Wi-Fi连接的地址。你的iPad需要连接到与你的虚幻引擎工作站相同的Wi-Fi网络,以便成功通信。例如,我在家里将我的计算机通过以太网电缆连接到我的Wi-Fi路由器。但是,我的计算机有多个以太网适配器。下面的步骤可确认你的计算机是否硬连线到相同的无线网络。3. 查看所有IPv4地址,并选取你确信通过以太网电缆连接到Wi-Fi的以太网适配器。4. 如果你不确定该如何识别适配器,请查找有“默认网关(Default Gateway)”值的以太网适配器。在我的示例中,它是192.168.4.1。如果你看到多个以太网适配器有默认网关值,你必须逐个尝试。在下面的示例中,我们会看到列出了两个IPv4地址,其中192.168.4.45是正确的地址。在Live Link VCam iOS应用上输入相同的IP地址。如果我使用其他IPv4地址,就会收到消息“错误 无法连接:无法连接到服务器(Error Couldn’t connect: Could not connect to the server)”。如果你看到此消息,请单击“确定(OK)”,并尝试其他IPv4地址,直至可以连接为止。另外请务必记住,你必须始终先启用VCam组件,然后再尝试将你的“Live Link VCam iOS应用”与你的虚幻引擎会话连接。即使你在iPad中有工作站的正确IP地址,如果你的VCam组件未启用,你也会收到“错误 无法连接:无法连接到服务器(Error Couldn’t connect: Could not connect to the server)”消息。UE5.1 VCam可即插即用。只需加载插件添加VCam Actor,并启用VCam组件,你就可以开始在场景中操作虚拟摄像机。在3D空间中移动iOS设备时,编辑器视图会变化以反映你的移动。此外,你现在可以在你的iOS设备上使用VCam界面,其中包含许多功能按钮,用于管理场景中虚拟摄像机的外观和行为。组件会自动创建Live Link源,但你可以根据需要选取其他Live Link源。UE5.1中的VCam可以用于基于WebRTC的像素流送,以显著改善延迟和性能。
编辑器必须以24+ fps运行,VCam才能流畅运行像素流送。- 流送到Live Link VCam应用的远程会话通过使用jpeg-turbo来编码的JPEG流送进行处理。
新的UI设计为使最大数量的摄像机功能来适应单个UX进行单独操作。一些用户可能会觉得它太拥挤,开箱即用太复杂;其他用户可能觉得它没有显示所有必要的功能。因此,我们将其设为高度可自定义。我们研究了多个专业UI并取其精华。下面是其他一些优秀VCam UI的示例。相较于UE4.27中的版本,UE5.1中的新VCam已大幅改进UI。2. VCam修饰符允许用户嵌入C++或蓝图逻辑。你还可以使用非Live Link输入对Gameplay设备进行输入映射,例如:在UE5.1中,多用户会话目前不能选择操作。因此,并非所有虚幻引擎实例都可获得相同的输入。这可能导致不同的结果,例如:注意:如果你选取VCam组件下的角色,只有使用该角色的虚幻引擎实例才会获得VCam HUD和输入。强烈推荐使用Switchboard来管理多用户会话和VP角色。下面是完整的虚拟摄像机多用户快速入门指南和虚拟摄像机多用户技术参考指南在UE5.1中,你可以在“项目设置(Project Settings)> 引擎(Engine)> 过场动画摄像机(Cinematic Camera)”下轻松创建镜头、胶片背板和裁剪预设。 这些会在所有CineCamera Actor或VCam Actor上自动可用。如果你在某个地方有.ini文件中存储的自定义胶片背板,你会在UE5.1中看到此警告:虚幻引擎的VCam是模块化的,很灵活。它支持各种VCam硬件解决方案,从最简单的iPad设置到制片级负重VCam肩扛装置。来看一些示例:VCam的基本最低硬件要求是某种形式的显示器和跟踪设备位置的解决方案。iPad和iPhone基本上是显示器,ARKit可以实时跟踪其位置,因此它们是简单明了、易于获取的VCam解决方案。此外,由于它们有触摸屏和API,不需要其他外围设备来获取用户输入。缺点:表演可能感觉像是在手机/平板电脑上拍摄的。延迟更高。跟踪不是绝对的世界空间。iOS设备提供了轻松的硬件平台,但也可轻松自定义,将其物理功能扩展到平板电脑的外形规格之外。我们会在下面的示例中探讨这些情况,因为VCam的人体工程学和外形规格不仅与舒适度和易用性密切相关,而且会直接影响VCam录制的创意风格和表演。在这两个示例中,我们将平板电脑与手持装置和轻量级肩架组合起来。尤其是对于肩架的示例,你的形体移动的性质会完全改变,直接影响VCam工作的创意表演。例如,这可能会帮助你实现更好的摄像机表演,使观众能够更近距离地观看动作,因为你的形体移动源自髋部和上半身,而不是手臂和手。它可以复制第一人称摄像机表演的感觉,通常会在高能纪录片和特写动作序列中使用。与我们的第一示例既不同又有联系的是,如果你所需的电影风格是捕捉拍照手机的感觉,使用iPhone作为VCam硬件解决方案就能达到最真实的捕捉效果。优点:带来各种各样的表演风格,避免让人感觉是“用iPad拍摄的”。成本低廉,易于获取。可以从各个单独的模块化部分打造完全自定义的VCam装置。在此示例中,我们打造了基于视频的VCam装置,可以手持、肩扛或放在三脚架上。这也是使用光学跟踪系统(Vicon)跟踪的。我们来了解一下这些组件以及选择它们的理由:若使用基于视频的VCam,就不需要通过网络进行像素流送,这减少了延迟。小型制片监视器和导演显示箱非常适合用作打造操控和人体工程学设备的基础。视频信号是无线的,在本例中直接从VCam PC上的GPU流送1080p HDMI。这基本上相当于将Windows台式机扩展到无线监视器。由于我们失去了触摸屏的输入优势,我们会将Nintendo Joy-Con安装到量身定制的把手上,以此处理用户输入。Joy-Con会与VCam PC进行蓝牙配对。按钮和摇杆接着会分配到各种功能按钮,例如焦距、光圈、镜头选择和其他移动功能按钮。Joy-Con的定制托架很容易制作,你可以使用3D打印,或像本例一样使用硬木材来制作。你可以为Joy-Con托架购买Nintendo Switch维修工具包,该托架可以改装为手柄的滑入式托架。若使用Vicon等专业光学跟踪系统,可带来绝对世界比例跟踪的优势,这意味着你的移动方向和比例直接与真实世界1:1相关,因此每次都是一致的。这些系统支持时间码和同步锁定,并且延迟很低。事实上,如果你的VCam会话在动作捕捉工作室进行,很可能已经有光学跟踪系统可以利用。这种跟踪的其他优势是,跟踪冠可以安装在活动支架上,这样摄像机的方向可以从监视器的角度偏移。这就相当于能够在真实摄像机上自由地调整Viewfinder。使用触控板、鸠尾榫和奶酪盘等专业操控平台,可带来各种各样的硬件配置选项,你可以将VCam固定到任何物体上!在此示例中,我们利用了一系列专业操控工具包,支持我们的VCam在以下固定方式之间快速切换:所有这些组合起来,构成非常灵活的模块化装置。不过,这总体上仍然比其他解决方案沉重,会影响风格和可实现的表演。优点:非常稳健,可以处理最严苛的表演。延迟很低。有负重,惯性大。准确的绝对真实世界跟踪。虚幻引擎还有其他虚拟摄像机插件,例如Glassbox Tech的专业虚拟摄像机DragonFly。推荐用空的Actor作为VCam Actor的父节点。这样如果VCam Actor需要进入虚幻引擎关卡中的特定位置,你可以轻松将其重新定位。此外,如果你需要用车辆等移动中的对象作为VCam Actor的父节点,具备该VCam层级就可以附加父VCam Actor,并且VCam可以独立移动,但仍跟随移动中的对象。 一些团队(如Magnopus团队)会利用堆栈。他们表示:“我们有一个分层Actor堆栈,基本上它的各个组成部分会接收硬件输入,并将其推向该Actor。摄像机位于堆栈底部,并获得所有应用的变换。我们会组合使用Live Link和编码内容,将该数据放入这些Actor中,然后使用OSC传递给其他所有计算机。有一个编辑器工具控件会流程性地生成此摄像机堆栈,并且每个组件可以根据需要启用。 在移动VCam时,进行机架调焦可能非常困难。VCam主操作员在进行主要的运镜时,另一个操作员可以控制焦距。焦距可以映射到Xbox或MIDI手柄,例如字母组合图案,或在编辑器中调整。 在对主要运镜的录制感到满意后,你还可以将焦距设为关键帧。一些团队(如MPC)喜欢优化运镜: “我们很难在一次镜头试拍中完成摄像工作。我们想要准确获得所需的焦点,还有准确获得所需的变换,以及流畅的机制和时间码。就好像反复锤打武士刀。我们会经历多个镜头试拍,找到所有内容。哪怕是要获得完好的摄像,有时也像是锤打铁器一样。”“我认为主要有两大类VCam风格。对于第一个版本,你可以尝试一次性获得一切。具体做法是,在舞台上委派更多角色。你得有人推移动车,有人进行机架调焦,有人操纵轮子。所有人都尽力按时按点完成任务。你会使用屏幕上的Sequencer标记或图标等工具,告诉大家何时开始或何时结束。他们需要关于移动车轨道进度的读数。通常是操纵虚拟摄像机的人员不想过度抠细节,以免见树不见林,失去电影拍摄的精髓。他们喜欢无形的东西。”“有人认为这种风格会产生更逼真的运镜。第二个版本更适合规模较小的团队。它更强大、更精确、更快速。你需要使用一堆镜头试拍,最终构成运镜。在第一个镜头试拍中,你刚好让摄像机到达所需的精准位置。在下一个镜头试拍中,你会舍弃旋转。你可以移动该定位,将其转换到移动车,并使用一堆不同的工具做出细微的变更。你会打造完美的移动车位移。然后你再去操纵轮子。就只要一个人对吧?!然后你继续录制旋转。也许只需在已有的旋转中增加一点,因为一切都已经很流畅。也许你要完全替换。这就需要第二个镜头试拍。接着可能第三个镜头试拍是聚焦。”最好选择你或摄影指导会在VCam会话期间使用的镜头,这样就不会选择错误的镜头或实际拍摄中将无法取得的镜头。你可以在“项目设置(Project Settings)> 引擎(Engine)> 过场动画摄像机(Cinematic Camera)”下轻松创建镜头预设,如“镜头和摄像机机身预设(Lens and Camera body presets)”小节中所述。连接到相同网络的设备都可以查看虚拟摄像机流。托管虚拟摄像机会话的虚幻引擎编辑器将通过像素流进行流送,这意味着如果你在Web浏览器中输入该计算机的IP地址,连接到该相同网络的设备都能够查看虚拟摄像机内容。如果你希望其他人能够查看虚拟摄像机正在执行的操作,而此人不在虚幻引擎编辑器前,那么这会非常有用。例如,你可以从智能手机或其他计算机观看虚拟摄像机流。最好将iPad连接到未拥塞且Wi-Fi信号良好的Wi-Fi路由器。
确保iPad电量充满,然后再开始VCam会话。
在“项目设置(Project Settings)/ UDP消息传递(UDP Messaging)”中,设置iOS设备上的静态IP地址,并将该IP添加为固定终端,可以帮助在设备和虚幻引擎之间建立连接。
选取有大量净空间的区域,以便可自动移动并模拟复杂的运镜。如果你所在的房间较小,无法进行大动作的运镜,可将大规模值用于VCam平移。这样你可以执行远距离操作,而不用大幅度移动。
录制快动作序列时,如果你减慢动画序列的播放速度,会更轻松一些。动作会更慢,你可以高效地执行所需运镜。然后你会按正常速度播放录制的摄像机和动画序列。
在预先录制的动画序列上录制运镜时,你必须将动画序列添加到等待进行镜头试拍录制的镜头试拍。你可以在镜头试拍录制时间轴的开头或特定时间开始。你还可以使用“Sequencer播放列表”工具在执行镜头试拍录制的同时触发动画序列。
播放带有英雄角色的动画时,焦距方法可以设置为“跟踪(Tracked)”,以在使用VCam四处移动时始终聚焦于英雄。
如果你恰好在视角摄像机视口上显示VCam HUD,并且以为已经禁用了所有VCam Actor组件,结果VCam HUD仍然显示在视角摄像机视口中,请检查你是否有可视性选择了“关闭(OFF)”的子关卡。如果有,其中可能有将VCam组件“打开(ON)”的VCam Actor。
我们会在“虚拟摄像机拍摄”一章中介绍更多提示和最佳实践。
本章介绍了虚幻引擎的新IK重定向工具。此工具支持在各种各样的骨架之间共享动画,无论其大小差异或骨骼结构如何。它还可以实时用于在各种各样的生物和非人形角色上直观地显示标准人类动作捕捉。在虚幻引擎中重定向角色,可能对虚拟制片可视化非常有用,原因有多种:实时视觉反馈:按最终角色的形状和比例实时查看演员,可就角色在虚拟环境中的显示方式提供即时的视觉反馈。这样演员可以更好地理解并查看其动作、移动以及与虚拟场景的交互,带来更自然可信的表演。而且导演、电影摄影技师和其他创意利益相关者也可以就摄像机角度、取景和镜头构图做出明智的决定,带来更有效的叙述方式。
提高了表演精确性:演员在虚拟环境中观看自己作为最终角色的情况时,这可以帮助他们精确表现角色的物理属性,例如大小、比例和姿势。这会带来更真实的表演,密切匹配计划的角色设计,增强虚拟制片的总体视觉质量和一致性。
改进了角色交互:虚拟制片常常需要角色与虚拟对象或其他角色交互。以最终角色的形状和比例观看演员,可以获得更好的空间意识,并理解虚拟对象或角色如何与演员的移动和动作发生关联。
节省成本和时间:以最终角色的形状和比例观看演员,有助于在虚拟制片过程早期发现和解决任何视觉差异或问题,省去代价高昂的后期制作修复。演员还可以在制片阶段更好地理解和体现角色,这有可能减少大量修改或重新拍摄的需要,从而节省时间。
灵活构建动作库:并非所有制片都从动作捕捉表演开始,许多制片都必须将来自各种源(例如在线商城和动作库)的动画汇集到一起。拥有稳健的重定向管道,就能将来自许多不同比例的角色的动画放入相同的目标中。如果最终角色必须经历比例变化而不丢失已经执行的所有工作,这也会很有用。
https://docs.unrealengine.com/5.2/en-US/ik-rig-animation-retargeting-in-unreal-engine/对于Xsens动作捕捉输入的情况,MVN puppet就是良好的源骨架示例。这很可能是流送或导入的MVN数据将附加到的地方。请记住,可以只执行FK重定向,其中骨骼会根据关节长度来传输旋转。根据形体比例差异,手的最终结果可能位于不同的最终位置。选择链目标、启用IK和调整混合到源(Blend to Source)参数,可带来更精确的世界位置结果。IK重定向器会持续演化,并有许多选项和设置。要想理解所有不同的功能和滑块,可能相当困难,用户可能要花一些时间去熟悉。 可视化中的常见目标IK Rig将是MetaHuman。幸好,导入MetaHuman时,在MetaHumans/Common/Common目录中自动提供了全功能IK Rig。2.不管你想将动画应用到哪个肢体,都需要在两个IK Rig中创建重定向链。例如,如果你想让手部动画出现,必须为每个手指定义链,如果不需要手部动作捕捉,就可以省掉这个步骤。请参阅官方文档,了解关于创建链的详细说明。3.在IK重定向资产中,这两个IK Rig汇集在一起,并且会映射其对应的关节链。还必须创建重定向姿势,以便两个骨架位于相同的通用位置。这样虚幻引擎就可以了解源骨架的动作如何应用于目标骨架。与类似名称和骨骼结构兼容的骨架可以共享相同的IK Rig资产和相同的IK重定向资产,即使它们的比例不同。
(请注意,此IK重定向资产使用相同的源IK Rig,并分配了相同的关节链)
4.对于运行时重定向,创建此IK重定向资产后,必须在所有目标骨架的动画蓝图中分配。此处你可以看到Retarget Pose From Mesh节点连接到输出姿势,并且分配了正确的IK重定向器资产。如果磁盘上有动画库,则可以批量转换动画并稍后在Sequencer中分配。请参阅官方文档的“批量重定向(Batch Retargeting)”小节了解此过程:https://docs.unrealengine.com/5.2/en-US/ik-rig-animation-retargeting-in-unreal-engine/如果MetaHuman用作目标,并且选中了使用实时重定向模式(Use Live Retarget Mode),蓝图会自动分配正确的动画蓝图(Animation Blueprint)。注意:在默认情况下,Live Link形体重定向(Live Link Body Retarget)变量可能未公开为实例可编辑,并可能需要在蓝图本身上设置。通常,项目上只需要一个重定向映射,因为很少有多个不同的动作捕捉解决方案同时运行。如果是这种情况,每个MetaHuman必须为对应的输入解决方案分配正确的重定向映射。5.将源骨架放在关卡中,并将目标角色附加到该骨架。动画数据现在将流入目标,并使用分配的动画蓝图运行IK重定向器。此处你可以看到,一个源骨架在重定向两个迥异的目标骨架。利用此设置,非常容易交换不同的目标,甚至是创建执行相同操作的大量角色。在编辑器关卡中采用动态父重定向解决方案,非常适合快速试验并获取角色上的动作。但是,有时需要采用可放入Sequencer中并加载到关卡中的单个稳健蓝图解决方案。此方法采用上述所有相同的IK Rig和IK重定向资产步骤,但并不是使用编辑器关卡来管理父子关系,而是将两个骨骼网格体组件都放入单个蓝图中。这是官方文档会建议的标准方法,也可以由运行时角色使用。如果角色在编辑器中似乎没有移动,可采用的一个技巧是,将Live Link骨骼动画组件添加到蓝图中,强制更新编辑器中的动画。如果只应该看到目标,就务必要在蓝图中关闭源骨架的可视性。注意: IK重定向器不会检查源骨架与应用的动画之间的骨骼长度差异。这意味着,为实现最佳结果,应该为每个不同比例的动作捕捉演员创建自定义MVN Puppet骨骼网格体。默认情况下,从MVN软件导出的.fbx只是动画数据,因此捕捉的T姿势需要在选中“导出预览网格体(Export Preview Mesh)”的情况下从虚幻引擎重新导出。 然后,可以将其重新导入为新的骨架和骨骼网格体。 正是这个骨骼网格体应该接受所有动作捕捉数据并用作IK Rig源。原始MVN Puppet应该视为用于创建所有正确比例角色的模板。这是MVN中校准的动作捕捉T姿势(右)旁边的默认puppet(左)。髋骨不仅与右侧骨架的大腿内联,而且有不同的形体比例。仅仅将自定义T姿势的帧作为“重定向姿势”提供到IK重定向器中是不够的。它不会计算比例差异,IK目标计算可能会关闭。 对于每个动作捕捉演员,最好生成自定义骨骼网格体,并仅将该网格体用于其对应动作。 这可以通过切换目标链的启用IK(Enable IK)来进行测试。 如果“混合到源(Blend to Source)”设置为0,IK目标应该恰好在FK位置。
在上述示例中,启用IK时,手臂会弯曲。 这是因为,重定向的源动画的骨骼长度不同于IK Rig中的源骨骼网格体。在可视化中使用重定向资产是常见的做法。这样可确保大家都专注于需要解决的问题,例如比例、摄影工作、角色/道具交互和眼线,从而获得成功结果。它还支持从各种源导入动画,以便可以在装上动作捕捉套件之前进行预可视化。在此小节中,我们会介绍关卡快照。关卡快照使你能够在关卡的世界大纲视图中保存Actor的特定配置,并立即将场景恢复到该状态。这样可以大幅简化复杂的设置,并避免对不同场景同一关卡的多个变体进行复制和管理。关卡快照特别适用于虚拟制片,因为它们使用户能够将虚拟环境重置到镜头试拍之间的起始位置,并跟踪拍摄期间可能发生的每个镜头的变化,同时保留关卡的基础起点。在各种各样的虚拟制片中,常用的另一个工具是关卡快照。该工具会将Actor配置保存在关卡中,而不必在每次你想挪动此镜头的树木或特定虚拟摄像机镜头试拍的建筑物时保存整个新关卡。事实上,许多虚拟制片工作室都编写了工具来自动对每个镜头试拍录制拍摄一个关卡快照。 你可以设置为基于通配符的保存位置,以便可以将其发送到项目目录中所需的位置。而且可以添加会附加到.uasset的说明来节省时间,以便任何场记都可以做必要的笔记。关卡快照是一种轻松的轻量级解决方案,可确保你可以加载回之前保存的关卡序列以及关联的关卡快照,并在编辑器中查看与录制当天所见相同的结果。正是出于这些原因,关卡快照广泛用于ICVFX和表演捕捉舞台。 培训团队的Sean Spitzer十分乐意与我们分享他的课程幻灯片。