近日,Unity官方宣布了Unity 2021 LTS已经开放下载和使用。版本的更迭吸引了无数游戏开发者和相关用户的关注。与此同时,随着元宇宙概念的兴起,“柳夜熙”、“AYAYI”等数字人也迅速走红,数字人产业迎来一波新的风口。
构建数字人的工作流程,业内目前仍然没有统一的标准,各家有各家的方法。据笔者了解,Unity大中华区早在去年就成为了首个将数字人制作流程公开分享的公司。同时,Unity强势收购了Weta Digital和Ziva Dynamics两家在视觉特效、实时角色创作方面的领军企业,技术上的强强联合着实值得市场期待。
今年3月,Unity更是发布了全新的电影式预告片《Enemies》,将数字人方面的技术突破展现得淋漓尽致。短片以4k分辨率的实时渲染展示了Unity中可用于打造数字人类的最新图形功能矩阵——包括新的眼球与皮肤仿真技术,以及逼真发丝模拟与着色的一体化解决方案,主角的皮肤毛细血管清晰可见、发丝根根分明随主角的动作而飞扬,高清的画质与逼真的效果极具震撼性。
基于Unity打造的最新数字人短片《Enemies》
今天51CTO有幸采访到 Unity 大中华区平台技术总监杨栋老师,他带来了Unity最新版本的相关信息,并分享其在数字人、元宇宙等领域的思考和见解。
Q:请您先简单介绍一下自己,包括目前的职位,以及所关注的领域。
A:我现在是Unity大中华区平台技术总监,主要负责两块业务,一是技术传播,二是项目管理。
自2016年3月加入Unity,现在已经是第7年了。刚加入时我是国内唯一的讲师,主要工作就是去宣传Unity。因为2016年被称为VR元年,Unity也是构建VR体验最常用的引擎之一,所以当时讲得最多的是VR。现在我主要负责Unity大中华区的讲师团队,这个团队其实就是宣传各种最新技术的。我是一个老码农,之前是开发游戏的,也开发了Web端的服务器,我现在也会写代码。
另外,我也负责Unity大中华区的一些项目管理的事情,因为Unity现在有很多非游戏的业务,所以这块我也是参与的。
Q:我们注意到,Unity最新版本2021 LTS已经开放下载和使用,新版本实现了哪些新功能?能够为开发者带来哪些新体验?
A:Unity最新的版本是2021 LTS,它是专门针对近期刚刚设立的项目,因为这个版本更追求稳定,只会去修复bug,不会去添加新功能。
目前这个版本其实非常杂。因为推出一个版本的话,不仅是新的功能,还有老的功能也要更新、做迭代。这个版本的更新重点有三个方向,第一个方向是在高画质渲染的更新,也就是HDRP的更新,包括云层渲染、光追等功能。
URP 新功能 - 延迟渲染
另一个方向是URP,即通用渲染管线,这个版本增加了很多URP的新功能。虽然URP已经推出了两年多的时间,但是相比于最早的内置渲染管线,它在功能方面还需要进一步完善。
还有一个方向是DOTS,即面向数据的编程技术栈。需要说明的是,本次发布的是DOTS 0.5版本,还不能算正式版。但现在2021 LTS中的UI层面要比之前更完善了。而且基于这个版本,今年下半年我们会发布1.0版本。你可以把DOTS看成是架设在Unity编辑器上的一个模块,需要用的时候,你可以把它加载进来,不需要的时候,则可以把它拿掉。因为它并不是内置的。
主要是以上三个方向。当然,在我们的用户中,有的人也希望去研究一些最新的功能。因此,Unity在LTS版本之外, 还会推出TECH stream beta版本满足这些开发者的需求。在这个版本中,我们会不断地迭代,快速地发布新功能。
Q:Unity在2022年的路线图即将发布,对于技术方面,具体有哪些规划,可以介绍下吗?
A:目前的LTS版本就是2022的基础,2022主要会有四个方向。其一,高画质渲染会增加更多的功能,比如头发的渲染、布料的渲染等。
其二,我们也会在不久的将来正式推出DOTS 1.0版本。这个1.0版本可以让大家在正式的产品里去使用面向数据的编程模式,为多线程的编程,以及更好地使用内存,去运算大量的物体、道具等等,提供更好的框架。
其三,光追应该在2022版本里面会变成正式版,现在是预览版。因为现在的光追都是要依靠NVIDIA的RTX系列显卡来进行支持的,它需要硬件层面的算力支持。所以在2022版本中,有可能NVIDIA 40系列显卡要出了,到时40系列的RTX显卡应该能使光追技术更加普及。
其四,Unity还有一套完整的做多人连线游戏的系统NetCode,目前正在开发之中。因为现在最火的游戏都是多人连线的,而且元宇宙绝大多数都是连线类的应用,是需要基础功能的。但现在去开发多人连线的模块和功能,其实是非常费劲的,一般的中小型工作室是搞不定的。所以我们现在开发的这套NetCode系统,其中包括一些通用的联网类服务,这些都可以变成不需要去开发和维护的云服务。目前我们在做国内的落地工作,把它提供给国内的开发者。
Q:目前Unity除了提供游戏领域的解决方案,还重点聚焦于哪些领域?在业务重心上是否有所侧重?更看好哪个领域的发展契机?
A:目前来说,游戏依然是Unity业务占比最大的板块,也是我们非常重视的业务。与此同时,国内的汽车、建筑、智能制造等行业,也展现出很广阔的发展空间,Unity在这些领域也有布局。需要指出的是,建筑和智能制造这两个领域都是和数字孪生相关的,比如Unity跟海尔和香港机场的合作项目。以海尔的智能制造项目为例,它用Unity打造了和实际的工厂车间一对一的一条数字孪生产线,数据相互联通,工人可以在虚拟产线上进行操作,远程操控物理产线,极大提高了生产效率。香港机场也是同理,Unity模拟了它的新航站楼,新航站楼的数据在数字孪生里也是打通的。
另外像汽车行业,很多造车新势力的电动车大屏三维渲染,其实都是Unity来做的,比如欧尚Z6。事实上,与传统的油车相比,电动车内的大屏幕的作用更容易被发挥出来。而三维渲染恰恰是目前最炫酷的方式,因为引擎做出来的是实时渲染可以交互的内容。在这些车上,应用里必然会有一个车模,这个车模是可以进行交互的。它可以去开窗或者是控制车内的一些东西,还有完整的音乐播放器的体验。
另外,三维地图的整合是非常流行的趋势,各大厂商也都在做。比如三维地图的厂商在外面采集数据,当你使用手机导航,遇到高架出入口的时候,它可以自动地把画面切换到三维的立体模型,让你看得更加直观。如果是应用在这些大屏幕的电动车上就更容易了,借助互联网的优势,它可以即时按照你当前的位置,去地图厂商的服务器上进行索取,用渲染引擎的方式在这个地图应用里实时生成三维模型。
还有就是智能助理。不只是语音服务,现在很多厂商都在考虑做数字人的应用。用语音驱动数字人,它会做即时的反馈。车机系统通过数字人传达给你的信息,会比原来的语音服务更加生动形象。
除此以外,游戏可能也是一个很大的应用场景。当停车的时候,你可以在车内就享受到游戏的快乐。你可以把它当成是一台大的游戏机,能够达到很高的沉浸感,或者把蓝牙,甚至是带USB线的手柄连到车机系统上,就可以玩游戏。
Q:游戏引擎的竞争日益激烈,Unity平台针对差异化竞争做出了哪些努力?未来有什么计划?
A:游戏引擎之间的竞争,目前来看就是对平台支持的竞争,主要看哪家支持的平台更多。因为现在每个人手里的设备五花八门,电脑有Mac、Linux等操作系统;手机有安卓、IOS;还有PlayStation、Xbox、Switch,以及各种电视机顶盒,各种平台千变万化的。因此,你的引擎如果支持平台不够多或者不够全面,或者是用户在为这些平台开发内容的时候,你的工具链不够成熟,那必然会影响大家来选择你的工具。
目前来看,平台的选择或者支持力度,Unity是最大,也是最广的,而且工具链的成熟度是非常高的。所以你能看到像《原神》这种跨平台游戏,既可以在手机上玩,可以在PlayStation上玩,也可以在电脑上玩,甚至可以去它的云游戏平台玩,甚至在不同平台间可以使用同一个账号,因为它的数据都是打通的。
此外,各种设备的算力是逐年增长的。因此,大家更希望看到你的引擎能够帮助开发者更容易地产出高画质的内容。高画质主要分为两类,一类是风格化的高画质,另一类是写实的高画质。在这些方面,Unity与主要竞争对手可以说是不相上下的。并且在跨平台、工作流,以及易用性和市场占有率等方面,Unity做得更加出色。
Q:近期,虚拟数字人突然走红,Unity在这一领域也颇有建树。我们注意到,数字人形象的制作流程目前仍处于成本偏高的状态,如何才能做到降本提效?整个流程中面临哪些难题?
A:其实从十几年前我接触图形渲染的工具时,就已经有很多人在做数字人了,但那时全部采用离线渲染的方式,动画非常少,制作和渲染的成本非常高。随着实时渲染技术的发展,现在想渲染出一个高画质的数字人形象已经不是问题了,Unity就能以每秒至少30帧的速度来渲染高画质的数字人。
但是目前的制作难点主要有三个。首先是数字人的形象,也就是我们所说的模型,其实还是要用传统的建模方式去做。
其次是数字人身上的附件,比如毛发和布料,通过实时渲染的方式去制作这两个部分还是比较困难的。我们最新的demo里是用到了Maya的X-gen数据,去生成头发的引导线的数据,然后到Unity用毛发系统把头发按照引导线给造出来。但是整个过程还是需要专业人员来完成才行,使用门槛并没有达到简单易用的程度。最理想的状态是,我们正在研发没有头发的人头模型,导入到引擎之后,在引擎里梳头发,做各种色泽、各种动力学的设置。
还有就是布料的模拟、渲染,把它建模出来不是问题,但是要让它真实动起来是比较困难的。比如《异教徒》跟《Enemies》的demo,这两个数字人身上的衣服都是用Marvelous Designer这家韩国公司的软件模拟好了以后,用缓存布料顶点移动的数据给导出,然后放到Unity里播放。但问题是所播放的是一个固定的动画,比如以骨骼的方式去绑定衣服,不仅不能实时地驱动,而且会限制衣服的种类;再比如做贴身的衣服,可能你只能以模型的方式来做。所以布料的模拟是一个难点,特别是要模拟出真实,可以实时互动的布料。不过针对毛发和布料的问题,Unity也将会拿出相应的解决方案。
数字人 - 《异教徒》
最后就是脸部的表情。脸部表情是每个人最熟悉的动作,如果模拟得不真实就不行。Unity在今年春节前后收购了Ziva Dynamics,它的技术可以解决人脸动画使用传统方式不够真实的问题,运用AI训练人头、人脸的方式,使模型拥有逼真的脸部动画。所以最终是可以在引擎里把数字人的问题给完整解决掉的。也许一两年后,就可以在引擎里面做一个完整的数字人,而且比现在更容易驱动它的动作、表情,当然也包括所有的渲染。这也是业界未来需要克服的一个难点。
Q:要想实现真正的元宇宙,不仅要提供“沉浸式”体验,还要保证用户“低延迟”获得这些体验,Unity是如何帮助开发者迅速构建这些体验的?
A:这其实跟前文提到的NetCode多人连线的套件有关系,因为现在做多人连线的应用或游戏是比较困难的。因为要搞服务器不仅是成本问题,现成的工具也并不丰富。大厂能够做好多人连线游戏,是因为它有很大的团队在做这些事情,但它的工具是不公开的。而对于普通用户来讲,做多人连线不仅要知道如何使用远程服务器,如何管理它,还要在远程服务器上编程,还要保证客户端连上远程服务器,其实门槛是非常高的。Unity正在做的是通过NetCode、DOTS这两套技术的结合,帮助大家把门槛降下来。
Q:对于游戏领域的技术人员或管理者,您有哪些建议?
A:作为一名技术人,专精于某一领域是你的工作需要,同时也要开拓自己的视野、拓展自己的思维,多去看一些其他领域的书。比如你是游戏的编程,可能你不太懂美术方面的东西,但是可以和美术同事多沟通,看看他运用到的技术是什么样的。这显然有助于开拓你的上升空间。
如果只是管好自己的一亩三分地,那么你的路会越走越窄。随着年龄的增长,可能在体力上比不上年轻人,但是我们有更多的经验。这些经验并不只是你朝九晚五去做那些技术能够获得的,还是要去做更多感兴趣的事情。因为从公司的层面来讲,如果想提拔你,肯定要考验你的技术实力、交流能力,做项目时还会需要你的协调能力。整个项目的质量高低,并不仅仅是一个人或两个人的事情,而是一个整体的概念。整体的产品体验不好,单独的模块写得再好,其实也是没有用的,所以要树立全局性的思维。当你参与到并不熟悉的领域时,你才能有感受、才能去碰壁、才能够成长。
嘉宾介绍:
杨栋,目前担任Unity大中华区平台技术总监,负责管理技术讲师团队和Unity产品管理团队。拥有丰富的Unity开发经验,致力于将Unity的最新技术推广给广大开发者。