哥们网

建立下个时代的高清游戏美术资源生产管线(七):动作捕捉|动画|动捕|虚幻引擎

时间:2024-06-14 17:26:21   阅读:66

本文首发知乎,GameRes获授权发布。

原文https://zhuanlan.zhihu.com/p/682230373

总览国内游戏圈子,对于美术生产管线的知识分享少之又少,本文打算从模型,贴图,绑定,动画和动作捕捉,shader,关卡,光照,后期,程序蓝图,优化等全面梳理基于下个时代美术生产管线,也算对这几年自己工作和研究的一个总结.本文是第七篇,动作捕捉篇

动作捕捉工作流重点主要是两个方面,动捕数据采集和动捕数据修正。

之前写过一篇文章简单介绍了下动作捕捉的一些设备和方案。所以关于动捕数据采集的方案这块就不多说了。有兴趣了解的可以移步之前的文章。

聊聊低成本动作捕捉,这里有多套方案供开发团队参考

在之前文章末尾,我提到了基于视频的动捕方案,并且判断,在不久的将来,做动画会和拍视频一样容易。这期间我也一直在和朋友们为实现这个目标努力,目前也终于有了一点小成果,在此奉上我们产品的一个小宣传片。马上就要公开测试了,届时欢迎各位朋友体验指正。

在AI的加持下,动捕数据采集已经变得非常便利,任何人都可以通过随手拍摄的一段视频,提取视频中人物的运动数据,并且运用到虚拟角色上,制作成特效视频或者动画。甚至连视频也可以使用AI生成,demo中就演示了使用sora生成的视频再提取动作数据,应用到新的角色上的效果。通过文生视频,视频生成3D数据,再对3D数据重新加工渲染,整个创作流程可以完全虚拟化,一个人完成一部影片也不是没有可能。

以下是本人测试的一些效果,人物抠像,动捕数据和镜头运动数据提取使用我们自研的AI产品《幻境》提取,实时渲染和合成使用虚幻引擎。如果你没有虚幻引擎,我们的幻境工具也支持生成合成效果,如果对生成效果不满意,也可以将素材文件下载出来导入blender,AE,nuke等工具软件中自行修改。

关于这个产品的论文已经发在了siggrapha,这套工程文件和素材我也会免费放出,感兴趣的朋友可以看一下我们是怎么做的。

数据采集已经唾手可得,因此本文的重点是动捕数据的使用。

在开始之前,我们先了解一下传统的动作捕捉数据的采集和使用流程。

传统动捕的主流模式是光学动捕和惯性动捕,光学动捕只能在室内使用,需要装配一个动捕场地,一般需要至少20平以上空间,4个以上红外摄像头。摄像头价格3——20万不等,动捕服另算。所以搭建一个能用的动捕房,成本差不多30万起。摄像头越多捕捉效果也越好。

惯性动捕使用简单得多,只需要购买买动捕服或者捕捉点即可,价格也很便宜,目前市面上已经有千元级的产品在售,并且可以在室外使用,当然效果也比光学差很多。捕捉点飘移是常态。

捕捉出来的动捕数据是无法直接使用的,一般动捕硬件都有自己的应用软件,常规流程是,数据通过应用软件录制下来,然后使用motionbuilder之类的动画软件进行重定向和数据修正,最后才能被用到最终角色身上。修动捕数据才是动捕流程的成本大头。根据质量要求,报价范围100——500一秒不等。

为什么数据不能直接使用,这就要说到动作捕捉的常见问题了。

  1. 抖动,因为反光球贴得不稳和动作晃动等原因,捕捉出来的动画数据不可避免会抖动。需要进行修正。惯性动捕和视频动捕更不用说。
  2. 体型差异。一般情况下,动捕演员的体型和被驱动的虚拟形象是不可能完美匹配的。举个极端的例子,演员身高1.8米,虚拟角色是一个0.5米高的巨人,那么这个角色步伐和每一步的跨步距离都和现实中的演员存在巨大差异,类似的情况还有臂长的差异,腰围的差异等等,那么捕捉出来的数据套用到虚拟形象上会不可避免的出现穿模,位置对不上等情况。这种都需要人工修正。
  3. 关节数据不正确,人类关节转动轴向是固定的,例如手肘只能超前弯曲,而动捕数据捕出来通常XYZ3个轴像都有值,错误的数据会影响关节修型效果。
  4. 环境匹配。大部分动捕环境是在室内,和最终的游戏或影视中呈现的虚拟环境不一致,所以需要人工修正与环境的匹配。
  5. 项目要求,导演/制作人/主美觉得动捕没有呈现出他们需要的表现力,需要人工修改。

从这些问题可以看出,在大部分情况下,动捕通常并不能节省制作成本。只是为了提高表现效果和生产效率的一种制作手段,可以说动作捕捉是某些项目中动画生产流程的前置环节。随着项目要求的提高,动作捕捉的应用也越来越广泛,很多项目对动捕的需求是刚性的。比如对动画效果真实性有高度要求的项目,如体育类,舞蹈类,军事类游戏和动画的制作,或者需要使用motionmatch技术的项目,都需要大量使用动捕。目前动捕设备的成本已经大大降低了,那么有没有方法可以简化后续的动画数据修复流程,让动捕结果所见即所得呢?

其实不少3A厂商已经在这个流程优化上做了一些尝试,下面是卡普空关于RE引擎中使用实时动捕的技术演示:

卡普空演示在RE引擎中直接运行动捕技术

https://www.bilibili.com/video/BV1bH4y1r73K

里面主要涉及了几个点:

1:物理模拟——实现动捕数据和虚拟道具的交互



2:环境匹配——被动捕驱动的角色行为自动适应虚拟环境,案例中展示了演员在平地表演,但是虚拟角色是在下楼梯。



3:实时重定向和体型匹配——展示了一套动捕数据驱动不同体型的角色,但是姿势能够完美贴合



4:镜头系统——实时预览引擎内过场动画效果



5:一些引擎和DCC软件的编辑功能——如引擎内录制数据,回放,和DCC软件数据互通等等。



整套看下来,Capcom的这套动捕方案基本上等于一个实时虚拟直播方案。而其中大部分功能,现在的虚幻引擎内都提供了。要实现capcom的这套方案,只需要拆解一下里面的技术链和学习使用引擎内对应的模块。实现起来并不是很难。

动捕数据的实时流送。这个比较简单。引擎内livelink基本都实现了。可以和maya等主流DCC软件实现数据互通。引擎和maya,blender也有这样的插件。max有没有我不清楚,好像没有。

动捕数据实时平滑和过滤一般会用到各种平滑算法,这块不是我擅长的所以不讲了,一般来讲,平滑算法会对实时效果造成较大影响,会出现延迟,或者动画不到位等情况。如果追求实时性的这个需要谨慎添加。

实时重定向和体型匹配:引擎内自带的IK重定向和fullbodyIK可以实现这个功能,更复杂的效果也支持,可以用control rig实现。

  • 地形匹配,主要就是一个简单的角色movement模块(角色移动被pelvis数据驱动),加上fullbodyIK实现脚步与地面的地形贴合。
  • 和虚拟道具交互,功能上和普通gameplay交互需求差不多,触发拾取,启用物理模拟等。
  • 镜头交互控制有三种方式,一种是通过gameplay实现,做一个镜头切换功能。第二种是用sequence做好分镜。预算充足或者追求B格可以使用第三种,使用手机,或者vr设备的控制器控制镜头运动,可以实现手持拍摄效果。

动画数据录制:引擎内的take recorder就可以实现。

部分功能如何实现在我4年前的文章中也有提到

UE4实现交互式动作捕捉

https://zhuanlan.zhihu.com/p/250671359

因为一套工作流涉及到的技术面很广,一篇文章是不可能写完的,其他部分有时间了另开一篇展开细说。

可以看到,如今游戏开发的边界越来越模糊,各种软件的功能正在往游戏化发展。游戏领域的实时性和交互性,与影视工作流和AI相结合,能发挥出意想不到的威力,并拓展出更多的产业和工作机会。

上一篇:灵犀新游《灵魂面甲》,拉开国产2A游戏爆款序幕|arpg|国服战网|地平线:零之黎明

下一篇:闭门攀科技,不怕鬼敲门 - 《躺平发育》产品分析|塔防|金币|小游戏|国服战网

网友评论