六月份的时候,博士和大家分享了文章《<赛博朋克2077>官方:NPC会有自己的作息、行程和工作》,讲述了CD Projekt Red 的高层在德国接受了广播节目的访谈时,表示:《赛博朋克2077》中有超过1000位NPC,他们每天都会有自己的生活行程与工作,还有各式各样的变动!
一方面,我们惊叹于《赛博朋克2077》的内容量之丰富,毕竟为上千位NPC安排生活行程与工作,这在其他的游戏中是很罕见的;另一方面,博士也有疑问:波兰蠢驴有限的开发人力可以完成上述这么多工作吗?虽然我们知道CD Projekt Red的员工们都在加班,但是上千个角色的“喜怒哀乐”、“吃喝拉撒”哪里是那么好完成的!
近期,博士发现了答案!CDPR接受了“PC Gamer”杂志的采访,首先开发人员介绍了一下《赛博朋克2077》的光线追踪全局照明与常规全局照明的区别。他们用混合的方案在引擎中实现了光线追踪,这意味着可以用光线追踪来替代某些系统。比如:游戏的核心全局照明系统使用来自天空、太阳和所有位置光源的光来动态地产生反射光。
这并不是本文的重点。重要的是:接下来,开发人员阐述了《赛博朋克2077》对于“JALI”创新的应用。“JALI”是一个基于机器学习的自动化脸部动画软件,它可以为游戏中每个NPC制定特殊的表情!因为开发人员不可能为每个NPC都去做脸部动作捕捉,而使用“JALI”能够帮助波兰蠢驴为上千个NPC安装上“喜怒哀乐”的表情!
除了表情呈现外,“JALI”还可以给NPC配上相应的口型动画!我们知道:《赛博朋克2077》是支持中文、英语、日语、德语、法语等等10多种不同语言的。每种语言的口型自然是不一样的,而针对语言去捕捉配音演员的口型显然是不可能的,工作量太大了!而“JALI”却可以轻松的完成!
“JALI”是CD Projekt Red与来自加拿大的“Jali Research Inc.”合作开发的软件,不仅可以让NPC呈现各种表情,同时也提供自动化对应口型这一功能,该技术允许将音频跟踪和标记动画数据输入到模型中,从而产生脸部口型动画,通过相应的模型脸部运动精确地对应说话的部分。我们可以清楚地看到:相同的NPC用十种不同的语言在说话时,有不同的口型,极具代入感!
官方并没有介绍该软件具体的实现方式,不过博士推测:官方应该是有一个表情动画的大数据库,他们在全球范围内收集了足够数量的表情动作,然后机器就可以自己学习、自我进化了。然后可以把一系列表情根据性格、剧情与指定的NPC进行匹配,达到开发目的。至于语言口型,也是表情动作的一部分。
看完了上述博士的介绍,大家应该清楚了波兰蠢驴是如何为上千位NPC“做表情”的。随着游戏技术的发展,游戏中的角色(NPC)越来越拟真了,《头号玩家》里描述的游戏世界可能离我们不远了!