Unity大中华区平台技术总监杨栋 开启元宇宙的数字人之旅

作为构建元宇宙内容的基石,数字人是最早可落地且可继续开展的元宇宙细分红熟场景,目前,虚构偶像、电商带货、电视掌管、虚构主播等商业运行已被群众认可。在元宇宙环球中,最外围的内容之一非数字人莫属,由于数字人不光是实在环球人类在元宇宙中的“化身”,也是咱们在元宇宙中启动各种交互的关键载具之一。

妇孺皆知,创立和渲染真切的数字人类角色是计算机图形学中最艰巨的疑问之一。近日,在由主办的MetaCon元宇宙技术大会《游戏与AI交互》分会场中,Unity大中华区平台技术总监杨栋经过一系列的Demo演示,在《Unity数字人技术—开启元宇宙之旅》的主题分享中详细引见了Unity高清渲染管线技术。

一、Unity引见

Unity目前谢环球范围内是允许最多的计算平台,如今允许将近30个计算平台,包含PC、Mac、Linux、iOS、安卓、Switch、PlayStation、Xbox以及一切的AR/VR、MMAT这些设施。假设是制造三维互动式内容,Unity目前来讲确实是最好的一个选用。咱们知道高画质渲染,在一些装备独立显卡的机器上去渲染高画质的内容,如今所说的写实类的数字人的技术是要附丽高画质渲染技术的。

目前Unity中国团队领有300多名全职员工,全环球将近7000人,70%以上是工程师。总部在上海,在北京跟广州都有办公室,也有相应的员工在那里办公。

二、Unity引擎的弱小之处在哪些方面?

目前Unity只管不是一个开元的引擎,但模块是高可定制化的。

图中是Unity目前允许的平台,可以在这些图标上找到最经常出现的一些平台。这些或许是这些年最火的一些游戏,这些图标有些比拟相熟,像王者荣耀、CALL DUTY、英雄联盟、原神、糖豆人、闪耀暖暖……。实践上在国际、国外环球的安卓及iOS榜单上,前1000位最赚钱的游戏,70%以上都是由Unity创作的。超越一半的switch游戏都是由Unity制造的。大家或许无法置信一款高画质看起来十分复杂的游戏,而且是在Xbox上首发的爆款游戏居然是一团体开发的,充沛说明Unity引擎的灵敏性、工具链的弱小之处。

Unity在向性能高效的方向启动开展,区分说明一下三个关键的dots系统的组件,C#Job System、ECS、Burst Compiler。C#Job System实践上是可以让开发的游戏或许运行去充沛应用综合CPU的并发运算的算力,由于如今面向对象的编成形式是制造的内容,是运转在主线程上方。第二个是Entity Component System(ECS),经过Entity Component System可以把数据跟系统,也就是游戏逻辑启动分别,更易于保养,关于内存上的经常使用也更友好。Burst Compiler可以针对指标平台去生成运转运转更高的机器码。

另外一方面,高画质也是Unity十分好的特色。假设仅仅说要去经常使用很贵的PC或许是Xbox、Play station很贵的机器能力渲染精巧的画面的话,实践抢先戏的通用性就太差了。Unity经过XRP,就是所谓的可变量渲染管线,为大家做了两套开箱即用的渲染管线, 一套是通用渲染管线URP,第二套是HDRP(高清渲染管线) 。望文生义,URP所谓的通用渲染管线就是一切的平台都是允许的,不论是开发VR游戏、AR游戏还是像移动端的游戏,都是可以用URP来启动渲染方面的上班。HDRP是指PC mac Linux、Xbox1跟basestation4及以上的这些平台,它也允许实光阴线追踪。

三、高清渲染管线如何成功数字人的高画质渲染?

《异教徒》数字人实践上并不是Unity制造的第一个数字人,然而《异教徒》这个数字人有它的共同之处,由于这个数字人是十分真切的,而且是构成了一套完整的上班流。要想成功像《异教徒》的高画质渲染,高清渲染管线是必无法少的。

《异教徒》这个数字人实践上是有原型的,他是英国在伦敦的一个戏剧演员,叫Jack,经过扫描他的数据,这是他全身的数据,重点须要扫描他的头部数据,而后做成了整个数字人,表情是十分真切的,经常使用到的是一个4D的Volumetric Video的技术来制造表情动画,其适用这种技术只管可以制造十分真切的表情,然而它也有一个毛病,就是并不能启动实时的驱动,它可以做影视类的角色表情动画是没有疑问的,却无法做到实时地驱动。

在一些成功的案例中,可以看看 眼睛的渲染和皮肤渲染 ,咱们区分来看一下。

为了优化皮肤的品质,参与了以下几项技术,Detail Map是细节贴图。Secondary Specular Lobe是第二层的高光,Cavity Specular Occlusion是指凸起处,可以遮盖掉高光,Screen Space Subsurface Scattering指屏幕空间的次外表散射。

第一个细节贴图关键是用于模拟皮肤外表的细节等纹理,这张纹理并不大,是1K的纹理。

第二层高光Secondary Specular Lobe,它是用于模拟皮肤外表的油脂层,由于皮肤要出油,甚至皮肤看上去干巴巴的,所以须要用这个形式来参与一个第二层的高光。

第三个是凸起高光,是为了遮盖凸起中央的高光。在加了第二层高光,皮肤凸起的中央也产生高光,显然是不实在的,须要把它的高光遮盖掉,凸起处不产生高光。

第四个是屏幕空间的次外表散射,用于制造皮肤自身的效果。咱们知道皮肤自身是有一个所谓的3S效果,这就是所谓的次外表散射效果。皮肤显然是须要用到次外表散射的,然而传统的当咱们用MAYA或3Dmax这样的离线渲染的软件去模拟这个皮肤的时刻,假设是渲染次外表散射的效果是十分耗时的。在Unity,实践上有两种渲染次外表散射效果的技术。第一个是Screen Space Subsurface Scattering的技术,它渲染得比拟快,第二种是经过光飞的形式,显然光飞的形式更实在。

这个角色是《发条乐师》短片外面的小女孩的角色,小女孩的这个角色也是用到了屏幕空间的次外表散射的效果。左边的树叶,其实也是用到了次外表散射的效果。

接上去说说针对眼睛的渲染。实践上眼睛是一个十分复杂的物体,它由很多局部组成,在实时渲染外面去模拟实在的眼球,模拟4个局部:角膜、瞳孔、虹膜、巩膜,就曾经能够取得十分实在的效果。

如图所示,咱们的眼球自身是一个十分复杂的物体,正面看跟正面看实践上是有区别的,特意是虹膜视角折射现象,假设是反常地去渲染,这张图是十分有名的GDC上的数字人的角色。

数字人眼球实践上是依照实在的眼球的外形来建模的,它会有一些不凡的涂色器来体现这个眼球的各个参数。包含它的反射,巩膜跟虹膜上的法线贴图,区分运行不同的法线的数值能够出现的效果,甚至也做了眼睑的遮挡,经过一个独自的控制器来启动控制,就可以控制眼睑的效果。

总结一下,经过真人的扫描数据,经过blend shape、Wrinkle Map、Colour Map、Facial Rigging的形式启动表情制造,用控制器来驱动这个表情。当然咱们也知道有很多其它的形式可以来驱动这个表情,其实当咱们去渲染皮肤、眼睛或许是毛发的时刻,相对来说是比拟容易的,然而表情驱动实践上是一个十分大的难点。

经常会听到开发者说经常使用的Unity为什么做不进去Unity能够做的效果?由于Unity出现的demo的效果都是由一群人经过很大的精神打造进去的,而且他们所用的技术在他们制造这个版本外面其实还没有,做完这个demo,有了这些技术之后,会缓缓合到下个版本里,最终构成一切人都能经常使用的一个配置版本。

四、数字人制造环节是怎样样的?

在做完《异教徒》,Unity中国团队实践上也做了一个自己的数字人,运行《异教徒》的技术,坐姿4D扫描等技术。

这是一个实践的名目,环节实践上跟《异教徒》的环节是如出一辙的。包含做数据的清算,做相应的blend shape,做Wrinkle Map,做Rig,而后驱动表情,在ASSETStore里的控制器,用Animation Clip、用BlendShape的形式来出现表情动画。当然了面部捕捉实践上有更多的形式,比如说用Market来跟踪,用ARKit来跟踪,用图像数据驱动。

在做实践开发的时刻,用相机捕捉表情来做人头的表情的测试,还有另外一种形式,用图像数据驱动。有一个十分渺小的区别就是她有一头飘逸的长发,这个飘逸的长发是Unity中国团队自己研发的一个处置方案,它是适宜于URP、HDRP,既适用于通用的渲染管线,也适用于高画质的渲染管线来制造头发。头发的渲染跟传统的插片式的形式是很不一样的,是可以十分柔顺的,甚至觉得像海飞丝广告的效果。表情实践上是经过AR cade来实时驱动的,当然用AR cade来驱动表情。

Unity的一个数字人叫艾玛,这个数字人的表情是齐全用Ziva Dynamics的技术来灵活驱动的,外围技术实践上是去模拟模型上方或许是动物皮肤上方的这些肌肉群,既可以去模拟恐龙实在的身材肌肉的移动,也可以把这套技术运行到比如说十分真切的数字人脸部表情举措的模拟。传统来讲一个模型就是一个空壳,它外面就是一层壳,然而在Ziva Dynamics的技术里,前面实践上是有实在的基于解剖学的肌肉在那里,当实在地移动这些肌肉的时刻,外面的这些皮就可以比传统的用blend shape或许是用骨骼绑定的形式取得另一个或许是更上档次的实在感。

往年3月份,Unity在GDC上发布的《Enemies》的最新数字人的预报片,这个数字人的表情是十分十分实在的。值得一提的是她的头发是一套Unity行将地下的毛皮渲染技术,运行于HDRP高清渲染管线的一套毛发。

您可能还会对下面的文章感兴趣: