浅谈动作捕捉在游戏动作制作中的应用

Xsens动作捕捉 2022-11-20 11037

浅谈动作捕捉在游戏动作制作中的应用

引言

近些年来随着3A游戏项目逐渐增多,对应的次世代美术制作工艺也更受重视,渲染方面至少要是PBR渲染,模型制作甚至开始使用3D扫描来实现,而对应的动作制作方面的工艺---动作捕捉被提及次数也明显增加。最近几年工作中,我有幸投身对动作捕捉工艺做了一些探索,通过本文带来一点浅薄的经验跟大家分享。

工艺的革新带来制作方式的变化

近十年来,美术制作工艺的变化大家有目共睹,从游戏渲染结果上来看,最明显的就是模型面数和贴图精度的提升。从本来只有一张固有色贴图到了今日的贴图组:固有色、金属度、粗糙度、法线、高光图等多个贴图共同起效。而制作贴图的方式也有极大的变化,我记得我刚入行大概2007年左右模型组大量应用"body paint"工具手绘固有色贴图,而现在都是Substance的天下了,甚至有部分主动学习的同事开始学习Substance Designer使用程序节点来生成贴图。建模方面从纯Max手工制作,早已经革新到zbrush雕刻流程。虽然现在自动拓扑越来越好,大家总结的多边形编辑经验被模型师吸收为内功。

“他作弊,他用zbrush!”的梗:

美术工艺流程的提升,变化之快之大,这里有个梗:曾在育碧工作的一位模型师,被刚刚上市的zbrush所震惊,主动学习成为第一批使用zbrush的用户,借助这个强有力的工具,他的工作效率和精度明显超于其他模型师,这引来了嫉妒和吐槽,他听到传言议论他“他做得当然快啦,他作弊,他用zbrush。"短短几年过去,这样的说法现在看起来多么可笑,当今没有模型师不能说自己不会用zbrush了。

对应的动作制作工艺,受电影行业影响,动作捕捉这种工艺被慢慢引入到游戏行业中来,并且在一些3A大厂得到了极好应用,起到了关键性作用。

游戏美术师已经证明自己是一群喜欢并且善于改变自己工作方式的艺术家,追求更快更高精度的方式完成美术作品。模型师群体通过十年进取实现了巨大的工艺革新,他们并没有“依依不舍”手绘贴图世界里曾经积累的手艺,反而将这些经验总结成审美素养,体现在新的PBR制作流程中。既然模型师可以做到,我认为游戏动画师当然也是可以做到的。

个人认为,动画师不应抗拒动作捕捉这种新的工艺,也不需要一味崇拜。市面上出现了新的实现动画的方式方法,具备职业精神的动画师需要带着开放心态去学习以提高和积累自己,另一方面需要明白工艺不能替代设计,所以不可因为懂得了这门工艺就忽略了对于动作在设计和审美上的关注。动作捕捉作为一种工艺手段,通过获取演员真实的物理运动得到基本的运动信息,在此基础上继续做艺术加工,本质上还是动画设计类型的工作。只是实现方式有变,相对于传动的手key动画多了采集过程。工作中仍然需要思考动作设计、动作风格、画面效果,打交道的还是动画帧、时间及空间的变化与对比。这和模型师从手绘贴图世界进入PBR世界的工艺升级类似。

应用难度和数据精度的性价比平衡点

以全球头部动捕系统Vicon品牌为参考系,光学动作捕捉技术发展已经有30年了。不得不承认,在动作捕捉刚起步直到2008年左右,动作捕捉系统都是属于比较难以操作、需要长时间培训的工种,捕捉条件也受到各种客观条件的约束。

比如,大概在2003年左右网易采购了第一套光学动作捕捉设备,即使已经选择了最好的品牌。应用起来仍然性价比不高。主要体现在:拍摄前准备时间较长;软件自动化功能相对少;手动修复点阵比较慢等原因,实际应用制作效率提升并不明显。精度方面看,2000年左右摄像头精度和性能都没有经历近几年的巨大提升,得到的数据精度有限,提升动作资源精度不如今日明显。

把易用性和数据精度两个属性画成折线图,我们可以得到如下的图表:


浅谈动作捕捉在游戏动作制作中的应用  第1张


我们可以看到,随着动作捕捉技术的发展,使用难度在逐年减低,数据精度在逐年增高,大概在2015年左右动作捕捉的易用性,对应动作捕捉的数据精度,已经形成了某种正向的性价比。那么2015年之后,动作捕捉技术的引入成为了一个越来越优的选择。

这些年,革命性的升级有两个大因素:

Vicon以发布硬件Vantage系列摄像头,和配套软件Shogun的革新。解决了动捕过程中大量的问题,动作捕捉变得更容易操作,精度也更上台阶。多年迭代积累的量变促成质变。


浅谈动作捕捉在游戏动作制作中的应用  第2张
Vicon 2015年发布的Vantage系列摄像头
浅谈动作捕捉在游戏动作制作中的应用  第3张
Vicon2017年发布的软件Shōgun

这两个革命性的提升,Vicon将它的对手品牌(如Motion Analysis,OptiTrack等)甩开了更大差距。

Vantage摄像头分辨率达到1600万像素,每秒钟采集120帧,综合性能更稳定,更好的LED显示屏幕可以给使用者显示更多镜头信息。这个版本继续发展红外线波段采集,让捕捉可以在阳光下进行。我们还记得老式的动作捕捉室通过窗帘隔绝外部光线,而新的系统完全不再有这样的场地要求了。另外演员也不用长时间面对摄像头LED补充的红色可见光,眼睛的舒适度提升,更少的影响表演效果。

软件版本Shōgun大大提升了录制效率,解决了之前动捕的几大痛点:

l 场地校准时间从原来的30分钟缩短到5分钟

? 之前的软件在开始录制之前,因为每天的光影不同,需要对每一个摄像头单独调试它们的曝光度对比度等阈值,而新的软件再也不需要做这一步了,所有参数自动调整到最佳状态并且没有感觉到任何错误机率,扫场和摄像机定位算法速度也大大提升。

l 现场创建角色骨骼从原来的10分钟缩短到1分钟

? 之前的版本需要将演员的Rom数据进行后期解算,修复个别骨骼约束才可以创建完成,而新的版本不需要后期解算,演员在场地中简单运动一下,角色的骨架就被实时创建了。

l 捕捉时摄像头被震动后无需重新校准

? 之前捕捉过程中如果摄像头被意外碰撞或移动震动后,需要从场地校准重新开始所有准备工作,而新版本不需要重新校准,被震动的摄像头可以以演员场内运动为数据支点,从其他摄像头的方位信息反算出新的位置方位。

l 标记点被遮挡后,动作数据可通过周围的标记点推算出正确信息

? 在实际表演中,不可避免的演员身上的标记点被特殊姿态所遮挡,过去的解算很容易因为丢点,失去真实运动数据,而新的软件版本通过智能推算,可以非常准确的还原真实运动。

l 实时捕捉数据流mcp格式的引入,让捕捉回看减少80%的等待时间

? 在捕捉现场,审核人员需要反复查看捕捉数据,而之前的版本如果需要查看需要进行至少30秒左右解算,而新的软件版本直接可以查看动作,不需要等待解算了,这给一整天的捕捉进度带来了很大提升。

l Shōgun1.3版本,开始支持手指动作捕捉,这是光学动作捕捉不曾达到的技术高度

? 光学动作捕捉老工艺是基本不考虑手指捕捉的,因为手指的标记点距离很近容易被软件误解成手腕的点,即使捕获到手指数据,精度不够的情况下也是难以使用的。而2019年底最新发布的Shōgun1.3可以做到手指数据的高精度捕捉,因为它的系统中摄像头分辨率足够高,同时软件算法更智能,可以捕获手指的微小运动。


浅谈动作捕捉在游戏动作制作中的应用  第4张
手指捕捉

Vicon官方 :https://www.vicon.com/

Motion Analysis官方:https://www.motionanalysis.com/

OptiTrack :https://www.optitrack.com/

光学动作捕捉vs惯性动作捕捉

前面提到的系统都属于光学动作捕捉。光学动作捕捉原理是基于光从演员身上标记点的反射到多个不同位置的摄像机,通过不同位置的成像信息测算出标记点的空间运动。而惯性动作捕捉则是通过感知演员身上陀螺仪的旋转信息推算出演员的肢体运动。光学动作捕捉发展时间比较久,广泛应用于电影行业,已经达到了非常高的精度。而惯性动作捕捉发展还处在比较早期的阶段,目前主要的劣势是推算误差会被积累,捕捉一定时间后容易出现动作姿态偏斜,而它的优势是比光学动作捕捉系统便宜,对捕捉场地要求低。效果上相对可以信任的惯性动作捕捉系统是Xsens。

Xsens 官方:https://www.xsens.com/

3A游戏的必备工艺

3A游戏项目和传统的中小型项目相比有很多不同的地方,而在动作制作领域,动作捕捉解决3A游戏项目中动作制作的痛点具备天然优势。

大数量动画制作问题

3A游戏的动作资源数量是远大于传统规模的游戏项目的。举一个简单例子:传统游戏项目中,角色不需要制作起步动作(角色从站立待机动作到行走循环动作之间的过渡动作)传统游戏一般选择不制作这类动作,通过一个简单的待机与行走之间的融合就能满足了。而3A游戏项目为了追求更细腻真实的运动效果,起步动作变成标配。而为了表达出不同起步角度的运动细节,起步动作往往不仅仅是一个单一动作,而是一组动作,在起步过程中,根据起步的角度,融合出一个带角度细节的起步结果。仅从这个例子中我们就可以发现,3A动作制作实际上是通过大量的动作序列堆积出来更多运动细节,而相对于传统游戏项目,动作的资源量是指数级增加的。

动作捕捉工艺恰恰是一种大大提高动作制作效率的选择。动作捕捉虽然仍需要后期加工,但在手工制作之前,动画师已经得到了真实的运动数据作为基础运动,在这个基础上进行艺术加工,制作速度相比纯手KEY,有非常巨大的效率提升。如果以写实作为风格要求,动捕动画师普遍认为,动作捕捉的效率应该是一个高级动画师纯手KEY制作的十倍。

从项目成本和开发进度来看,动作捕捉通过天然的效率优势抵消了3A游戏带来的巨大工作量,项目中的动画团队人力数量可能和非3A项目人数相差不大,但是却可以支撑3A游戏的动作制作量级。

保证写实度

追求写实成为了3A游戏的重要标签。从动作真实度上来说,动作捕捉基于真实世界的物理运动得到的数据自然是非常写实的,具有天然优势。从团队建设的角度来看,是一个捷径。极其写实的手KEY动画往往只有高级动画师才可以掌控,而团队可能并没有时间等待动画师技能慢慢提高,也没有机会引入大量的高级动画师。使用动作捕捉的真实动作数据,这给制作写实的游戏动作减轻了压力。

动作捕捉应用于游戏的基本流程

1,需求确认

相比传统的手KEY工作流,需求确认在动作捕捉流程中会显得更加重要。因为后期会引入拍摄和表演的环节,大部分时候需要预定场地和演员,如果前期没有明确目标,会让整个流程混乱不堪。传统的手KEY流程制作相对线性,需求不确认随时可以停下来做调整,而动作捕捉流程启动后,计划都已经安排好了,中期调整会让动捕变成噩梦。

我的做法是预先解构动作需求,将游戏策划的文字描述拆解成具体单个文件,并且预先设计动作融合/切换机制。动作状态机需要提前被设计出来。以这些信息作为基础,动画师在指导演员表演的时候非常清楚哪些动作是融合关系,哪些动作是打断关系。这让捕捉现场的表演审核和反馈有所依据。同一个动作的多次拍摄容易让资产混乱,预先做命名规划,可以让捕捉文件和最终文件有非常清晰的对应关系。动作拆解表,也成为捕捉现场的“拍摄表”方便现场逐条跟进确认。

这是我的动捕拍摄表格式:

浅谈动作捕捉在游戏动作制作中的应用  第5张

我将有融合关系动作放到同一类“动作细分”中,这样在拍摄时可以提醒自己,这几个动作实际上是一组,表演需要注意可融合性。捕捉名字和正式名字非常接近,这是为了方式后期修数据的时候方便在海量的动作数据库中方便找到对应的动作文件。后边几个竖列在动捕现场不会被用到,但在整个流程中可以记录每个动作具体到哪一个制作环节。

预先设计动作融合/切换机制可以在拍摄前与程序策划确认方案的可行性,避免浪费捕捉。而清晰的融合/切换机制也帮助捕捉现场判断捕捉是否达到要求。


浅谈动作捕捉在游戏动作制作中的应用  第6张
预先设计的动作融合/切换的示意图

明确了需要什么样的动作之后,仍不能盲目开工。我们需要确认角色性格以帮助我们选择演员和帮助演员排练。这一步如果不做,即使数据精确,得到的动画也可能并不是美术风格所需要的效果,很可能全部浪费。

我的做法是通过一个二维坐标,把角色的性格目标在维度中标记出来:


浅谈动作捕捉在游戏动作制作中的应用  第7张
这是一张描述场景风格坐标图(黄框区域为目标区域),同样格式可以用来描述角色动作风格

或者用文字加参考图片来描述角色性格:

浅谈动作捕捉在游戏动作制作中的应用  第8张
这是一张描述场景风格的指导图,同样的格式可以描述角色动作风格

2,选角和排练

明确了需要的动作和角色动作风格之后,我们就可以转身变成选角导演了。这一步在传统的游戏制作中并没有,更接近影视制作,这确实是动捕特性自然需要的步骤。

当我刚刚开始接触动捕的时候,并不重视选角,我们试着让动画师亲自表演,但我们很快发现动画师无法将他脑海中想象的动作通过肢体表演出来。“这是我刚才的表演吗?”动画师看到自己的表演数据一般会发出这样的感叹。

尤其是一些需要特殊技能表演,更需要选择专业细分领域的演员。舞蹈类、武术类、军事类、表演类、运动类,这些不同类型的捕捉需求,需要选择对应专长的演员。同是舞蹈类演员也需要区分舞种,不同舞种的舞感完全不同,一般的舞蹈演员无法表演他所不擅长的舞种。

而即使是最简单的生活动作,比如说话、坐下这样的动作我也不会随便找同事去演,因为表演是一门艺术,高标准的表演需要多年积累专业知识和表演方法,当我尝试使用话剧演员表演生活中最简单的动作表演后,我更加确信专业演员的重要性了。

即使以塑造同一个游戏角色为目的,也因为表演的专业性选择不同类型的演员。比如这个角色的生活类动作用话剧演员,运动类动作用跑酷演员,武打类动作用武术演员。这样相当于多个演员共同塑造一个角色,而动画师在其中需要统一不同演员的表演,让不同类型的动作仿佛是同一个角色的感觉。

我选择演员的方式是两步:海选和面试。海选是在比较多的演员资料中筛选,确定几个相对合适的人员。面试,我会要求和演员面对面沟通,简单说戏之后,让演员现场进行一段表演,帮助我最终确定人选。

表演能力固然是最重要的,但如果有更多选择,我会考虑另一个因素:身高和比例。优先选择接近游戏角色身体比例的演员,这样得到的肢体运动数据不太容易出现模型穿插或指向不正确的情况。更接近的身材比例,在后期animation retargeting的环节自然会减少不少肢体运动错位。


浅谈动作捕捉在游戏动作制作中的应用  第9张
演员身材越接近模型身材,接触位置越准确,后期修复工作量越少

确定演员之后,需要提前让演员清楚角色定位,给时间揣摩角色性格,在正式录制前进行一定试演并给予一定反馈。演员也需要提前大体了解动作内容,以便对要做出的动作更有肢体准备。如果进行的是运动量比较大的捕捉,演员可以提前进行体能恢复训练。

在正式捕捉之前进行排练,可以大大地提高捕捉当天效率。现场创作需要花时间跟演员现场沟通,或许会碰撞出一些火花,而录制进度就变得没有保障了。长期占用动作捕捉室进行现场创作,对于捕捉资源也是一种浪费。

3,捕捉环节

3.1,场地准备

动作捕捉拍摄需要场地校准,在新型的动作捕捉系统场地中,场地准备需要在正式表演前半小时开始给予特殊情况留出处理时间。比较老的动作捕捉系统,至少留够1小时提前调试。

一些特殊剧情或许需要一些场景搭建,这需要几天时间准备。比如曾经经历的跑酷动作捕捉,提前设计跑酷场景施工图给施工队时间搭建跑酷场景:


浅谈动作捕捉在游戏动作制作中的应用  第10张
跑酷场地搭建

3.2,演员角色创建

演员进行肢体极限动作运动,将捕捉实时预览用的角色骨骼创建出来。

通过motion builder 预览游戏模型(Shōgun1.2版本开始支持自定义模型预览可以不再用motion builder了,只是操作有点繁琐,后期我会再观察下Shōgun1.3对这方面的改善),从捕捉骨骼retargeting到游戏模型骨骼需要尽可能做到准确,这样拍摄时动画师通过游戏角色模型预览,运动还原得更好,可以更好地判断表演优劣。

3.3,拍摄

拍摄根据前期准备的“拍摄表”逐个推进,互相融合的动作安排到相邻的时间捕捉以保证可融合性。

追求完美表演,如果演员表演有瑕疵应不吝啬多次尝试。因为不完美的表演会给后期修复带来很大工作量,而演员再拍一次只需要短短几分钟时间。

现场确定最优版本,同一个动作多次拍摄后,应该尽可能地现场决定用哪一个版本,这样可以控制后期修复总体工作量,如果没有现场决定,后期的数据clear up和修复就得制作多个版本,这样制作成本就会翻几倍。

现场同期录制视频可以帮助后期修复更好地还原演员当时的表演,修复人员不一定亲自跟进录制,附上视频让后期制作人员更容易理解演员的表演意图。

拍摄现场最好带上后期修复的动画师,虽然会浪费他几天时间,但当他亲自经历了录制过程之后,对于后期要修复的内容会有更好的认识。

拍摄时需要注意一些带有衔接姿态需求的动作,让演员的表演尽量接近标准姿态,正确的姿态开始运动会得到正确的过渡动作,同时也减少了后期加入大量手key的情况。

3.4,场记

场记工作不可以没有,最终确认的版本应该在现场做记录,后期再从大量的数据中找就会非常费时间,也可能误用错误版本。

4,数据导出

将动捕原始数据做clear up修复,并导出成通用格式。动捕最原始的3d数据是一组空间中运动的点阵,录制时遮挡标记点是难易避免的情况,点的不连续和点的飞飘抖动是经常发生的。动捕自带的软件一般会提供一个修复遮挡点的后期环节。Shōgun提供了很智能的工具组Shōgun post,修复起来比较方便,一般情况下不会浪费太长时间。但是如果将没有经过clear up 的点阵数据直接导出为骨骼动画文件,因为点动画的不连续性会影响骨骼不时出现抖动的情况,这类问题如果放到后期在MotionBuilder或者MAX、MAYA中去修复是比修复标记点繁琐的,所以点抖动和丢失点应该在这一步解决。另外,一个专业的clear up修复,对于运动数据的保真是非常有意义的。

一般流程会在clear up完成之后导出为fbx通用数据,再在MotionBuilder中将动作捕捉骨骼animation retargeting 到游戏骨骼,这样动捕数据就还原到游戏角色之上了。

5,后期修复

动捕修复正规军使用的都是MotionBuilder,而国内部分动画师由手key动画转职到动捕,最习惯的工具还是MAX。在MAX中修复也不是不可以,不过和MAX相比,MotionBuilder作为因动捕而开发的软件可以更好地解决动捕数据的痛点,它有更好的动画曲线编辑器,动画层支持ik、更快速的层编辑、层塌陷和更强大的非线编story模式。。。优势是非常明显的。

动捕后期修复和传统的手key动画技法有所不同。动捕数据修复工作开始前,拿到的数据是逐帧动画,这和传统的手key动画默认空帧是完全相反的。这有时会让手key动画师非常不适应,一些刚刚进入动捕修复的手key动画师第一反应是删除过渡帧,只留关键帧,而这样做无非将真实细节也一并删除了,动捕的高精度意义就不大了。所以动捕修复几乎所有操作都是在动画层中解决的,通过在动画层中手key,将需要调整的姿态信息增量叠加到原有的动捕数据中。反复这个过程动作会根据动画师的需要慢慢优化到最好的效果,又不丢失真实的运动细节。而调整动画节奏也不会像手key动画师那样从时间线上直接拖动帧来调整,因为数据是逐帧的,直接拖动帧软件不会重新插值生成新的关键帧。正确的方式是使用mixer工具,MotionBuilder中使用story模式。通过这样的非线编调整动作节奏,塌陷时软件会将动画帧重新插值,这样得到的运动会仍然保持流畅的效果。

后期修复的动画师应具备一定的手key经验,如果是完全没有手key经验的动画新手,我们认为是无法胜任动捕修复的工作的。因为修复动作捕捉数据一样需要理解运动规律并灵活运用,动画制作的技法很多也是相通的,同时动作捕捉修复也需要像手key动画师一样具备一定的审美能力。

我喜欢把后期修复再分为两个阶段:

草稿阶段:这个过程主要关注动作长度正确(确认使用的开始帧和结束帧)、动作整体节奏正确,角色表演位置和方向基本正确。这个过程并不关注手指动画,模型穿插,也无需对齐标准姿态。这样我们可以快速把动捕数据导入游戏,这个过程同时创建对应状态机,将动作融合起来看大体效果。尽早提供给策划和程序将游戏运行起来,也可以尽早验证动作的大方向正确性,出现的问题可以第一时间反馈到下一个阶段的精修过程。

精修阶段:这个过程是基于草稿阶段的半成品,进行细致完成品化的修复。姿态偏差、手指动画、节奏感调整、姿态衔接等所有游戏和动画需要的部分全部修复得到接近最终的版本。

6,游戏验证与返修

游戏运行开始使用精修版本后,动画师进入游戏去体验,从游戏角度看到动画的问题,返回软件返修,这一步和传统的手key动画流程是一样的,这是反复迭代动画的过程。

更匹配游戏需要的动作可能和动捕真实的运动是矛盾的,这时需要在游戏机制需要和动作真实度之间找一个平衡。调整游戏机制尽可能地不影响真实动作是一种需要追求的完美情况,如果做不到只能损失一部分动作表现,这会让最终的游戏动作效果相对于动作捕捉有一定的效果折扣。

浅谈动作捕捉在游戏动作制作中的应用  第11张
捕捉数据流程图

面部动画的捕捉

随着游戏画面品质要求越来越高,传统游戏制作忽略面部动画的情况越来越不可被容忍。一样的情况,面部动画如果做得不够逼真甚至比肢体不自然更容易被玩家察觉。手key是可以改善的,而面部动作捕捉也可以大大提升真实度和制作效率。

市面上面部捕捉系统有很多,据我了解Cubic Motion面部动画捕捉系统是非常棒的,但这家公司只提供服务,不出售系统,使用起来非常昂贵。市面上能买到的又达到游戏精度要求的面部系统应该就是Dynamixyz了,这个来自法国的技术曾经在《刺客信条3》中被使用。国内网易和西山居工作室也选择了这个系统。

浅谈动作捕捉在游戏动作制作中的应用  第12张

这个系统的优势是无需在演员的面部画点,算法可以识别人类五官,对于各种软件兼容也做得非常好。一旦演员的基础信息被创建出来,用它来批量生成面部动画效率极高。

游戏机制动画中的面部表情和肢体运动一般没有很强的交互,所以可以选择肢体捕捉和面部捕捉先后进行。制作完成肢体动作之后,演员按照肢体动作进行面部动画表演,面部动画合并到肢体动画中进行节奏匹配和精修。

Dynamixyz官方:http://dynamixyz.com/

游戏过场动画捕捉

游戏过场动画是3A游戏的重头戏,制作流程更接近影视工业,使用动作捕捉可以更方便地得到真实表演。个人认为《战神4》的过场动画捕捉方式是最具标杆化的实例。动作捕捉现场同时录制四份数据:肢体运动、面部表情、摄像机运动和前期录音。这样一次录制过场动画四类数据的长度、节奏、幅度、情绪等是匹配的,表演更容易接近导演要求,也更方便后期合成和修复。

虚拟摄像机是动捕场地中一种特殊的“摄像机“设备,实际上物理世界没有这个摄像机,是通过在支架上固定几个标记点,组成的一个可运动的虚拟道具。动捕系统在场景中追踪这组标记点的运动,转化为摄像机道具在场景中的运动,处理后可导入到游戏中得到摄像机动画。一般虚拟摄像机配置一个显示屏,从而让摄像师可以通过动作捕捉的实时渲染在摄像机角度看到角色的表演。

浅谈动作捕捉在游戏动作制作中的应用  第13张
动作捕捉使用的虚拟摄像机

The End