世界最大的3D实景扫描库 Megascans -- Unite2017 分享实录

发表于2017-06-13
评论0 3.8k浏览

 

说明: http://forum.china.unity3d.com/data/attachment/forum/201705/05/101608vcf5wc8f8s7kxxhq.jpg.thumb.jpg

Teddy BergsmanQuixel的创始人兼CEO,也是全球最大的3D实景扫描库Megascans的创始人。十几年来,他在CG行业发挥了积极作用,并开发了一系列突破性的艺术工具,影响了现代CG生产。他发明的扫描技术,用于当今大多数大型游戏和电影环境的创建工作。

 

说明: http://forum.china.unity3d.com/data/attachment/forum/201703/24/075619uf8x7sh6car87rc6.jpg.thumb.jpg

关于Unite

Unite大会是由Unity举办的全球开发者大会,至今已有10年的历史。Unite现已成为游戏行业,VR/AR行业中最具有权威性和影响力的活动。

 

 

Teddy Bergsman:大家早上好,非常高兴见到各位。正如主持人的介绍,我是这家公司的创始人。我们公司在瑞典,我过去十年里都是在和游戏打交道。一开始,我们做了一系列图像自动化的工具,并且在过去几年里做了很多非常有意思的项目。我们也是在紧密地研发游戏新品,后面我也会在不同项目当中介绍,包括使命召唤、变形金刚等等。

 

非常有意思的是,我们和Unity一直合作,提供高端图形处理工具。很多知名大企业都是我们的客户。今天我会谈谈过去六年里涉足的大项目,也就是Quixel Megascans。这是世界上最大的扫描库,有全世界不同地方的贴图,我们建造了这个全球库。过去6年里,我们50个人遍布五大洲,每天不断扫描取景,通过扫描的数据做一些创意的工作。你能够把不同的服务内容组合混合,以快速的方式产生新内容。这件事做起来并不是很复杂,就算你之前没有使用过这些工具,你也能够打造一个非常好的效果。所有丛林都是通过Megascans来做的,在知名的电影里面可以得到使用,这些场景大家可能非常熟悉。不仅在电影方面,我们在游戏方面也有涉足。Unity的图像处理工具越来越强大,除了奇幻森林的例子,还能够提供高解析度的项目,通过实时渲染引擎来获得。大家都知道这个短片,它的创建也是在Megascans的帮助下,在这里整个背后的环境,在很短的时间内就完成。在这里你可以免费下载图形和美术工具,在Unity的网站上,可以选择各种不同的资源。

 

此外还有很多电影画面,比如说这个电影,是在很短的时间内,两天就打造了电影画面。光辉岁月进击的巨人,背后有很多创意的美术工作能够在短时间内获得高质量的结果。这是在奇幻森林当中的介绍的幕后场景。这些真的是真假难辨的世界,他们都是在洛杉矶做的,没有去过其他的地方,都是在好莱坞大本营做的。

 

这是线上的库,这是比较常规的项目。在项目里面你可以浏览数以万计的资源,其中跨越各种不同的材质、纹理。同样,你下载的资料里面,能够找到不同的渲染引擎、不同清晰度等。我也想在这里跟大家继续分享一些幕后故事,这些故事有的很早就开始了,78年之前可能就开始了。我们最早开始打造一系列有用的引擎来做数据的扫描,这个库里面所有的捕获技术,都是我们自己开发的,能够获得高解析度的结果,而且能够实现自动的捕获。这样我们就能够快速的实现库的扩容。这是我们现在在中东进行的扫描之旅。我们在全球各地都在做这个工作,创建真实世界当中的内容,把它扫描下来,录到我们的电脑里面。这是现场做的搭建,这是最早的样机,我们现在用的设备更先进,这是我们如何开始Megascans的扫描之旅。

 

背后的一些想法是什么呢?我们希望不仅仅只让艺术美术人员可以使用,让一些工程师也可以很容易创建你所在的环境,而且保证非常高的质量。这个美术工具非常强大。我们做扫描的时候,有各种不同的映射,和各种不同基础的渲染器,完全是基于扫描的,真实感非常高。对于内容我们也实现了标准化,这代表着所有东西都是以相同的方式得到了优化。包括整个纹理的密度,包括大小的缩放,能够确保符合大家的预期进行处理。还有很多其他世界各地采集来的3D扫描,很多是表面的贴图,这真的是数以千万计的各种不同的植被,森林里面的取材。同样在平台上我们还可以做优化,比如你使用Unity发布的电影也可以带来高质量电影里面的短片沉浸感,包括使用架构的重新实现,包括VRAR,也包括能够用在手游上。新一代手机上的GPU力量非常强劲,未来几年会有越来越多人在手机上用我们这个材料。扫描库里面有很多实时植被资源,这都是实时渲染的,而且完全可以进行动画设置。做动画,这些都是现场具体的例子。不同的顶点,这些位置,性能非常好。其实这个内容,我们在电影里面所看到的和实时现场拍摄的扫描效果一致,但是它播放出来有非常好的感受。

 

我想通过一段短片,来解释在我们开放世界里它有很好的fps值。这里是各种不同资源,Megascans和光照有不同的相互作用,甚至和风呼应,每单个资源会有6组,能够保持非常好的性能和表现。这是美术人员在美术工具上用两个小时来做的。当我们做程序性世界的生成,也非常的有意思。我们会进行更多的整合工作,在这里又做了一系列的截图供大家参考。这同样是一个实时解析,或者一个非常高保真度画面。还有一些其他的例子,一个真实世界和使用Megascans的画面进行了对比。我们希望以一个尽可能高的保真度方式,来保留这个真实世界的内容。但是也能够让艺术家们、美术家们,基于创新打造一个崭新的世界。左边是照片,右边是我们做扫描的,做了对比之后,谁知道哪个是真的哪个是扫描的,其实右手边是扫描的,左边是照片。这个例子是一个火山环境,左边是Megascans,右边是照片,在这里又是等等的,我会比较快的过一下这些照片,一个是用来对比的照片,一个是扫描的。

 

我对此最振奋的是,我个人深入参与到了这些图形。我10岁开始就和图形打交道,我的妈妈也是游戏行业,她是做图形美术的。我年轻的时候,就花了很多时间和我妈妈以及她的同事学习了解图形美术工具,这也是我每天非常希望的。之后我也有一个梦想,希望能够实现实时非常真实高保真的图像结果。现在这一天终于到来,我现在还是非常激动。

 

因为有了Unity,带来的可能性可以说是无限的,我们能够持续以非常快速的方式打造好的环境。在过去这个流程是非常耗时的。基于此,我们打造的是生态系统的理念。我们无论在世界何处,也许我们走到一块丛林、在大的峡谷,我们希望把那里每一个细节点点滴滴都可以扫描出来,并且根据他们进行特征化的处理,然后把整个大的生态系统细分成每一个部分,也许是最小的一块苔藓,也许是最大的悬崖峭壁。这里有例子,大的生态系统分成小例子,内容还是非常丰富多彩的。这同样是一些预览,左上方是苔藓,然后有大的叶子、花花草草包括植被,然后进入比较大的石块,甚至整个悬崖。这些其实都可以说是现成的,都能够在Unity商店里面可以获得。这里非常小的,我们扫描出来,可能像火柴一样,对比大一点像拳头那么大,再大一点像车一样大,再放大会更大。有些坚果壳,是程序系统做出来的,这效果感觉是非常自然真实的,我们希望能够让你的效果尽可能做的逼真。在根本上我们想要做的是,以乐高玩具为例,整个乐高世界都是由乐高小朋友组成,以各种不同方式来组合创建你的环境。这是其他不同的环境,来自世界各个不同的地区,这些场景一般我们在一天以内都能搞定,长一点的可能是50个小时或者2天,这里是来自我们的中东扫描之旅带来的结果。同样我们在这样的层面上扫描材质,给它一个非常近距离的特写。

 

在这个动画中,大家看到的雨林,这里面100%的素材都是电脑生成的,素材100%都是来自于我们的素材库。没有任何的技巧,它就是过去6年当中我们在实地扫描的素材。这里是一个实时渲染的动画,它使用的所有的素材都在是我们的生态素材包里面。事实上部件都可以进行手动的拼接,虽然说手动拼接,但是做起来也是非常快的,不管是游戏设置还是光源的位置,都是可以很快的进行设置。可以说是动动手指就能完成,大家都可以来使用,并且能够做成这样的视频。这个是把它做成一个简单虚拟现实的体验,好像你是行进在其中一样。当然,如果你要进行互动的话,你可以选择其中一个对象去做互动。

 

这个是Megascans另外一个特点,我们有SDK这样一个工具包。这个工具包可以让你选择任何一个扫描素材与你自己导入的素材进行混合。你可以从外面导入素材来进行处理,并且能够很快的生成新素材内容。这个工作流和图层工作流几乎是一样的,你可以用你做的一个小素描把它扩大,比如这是1米乘1米的大小,你可以自动把它做成4米乘4米,甚至最大尺寸是100100,你可以得到实时的结果。而且可以改变它的分辨率,可以到4K的高清,都是可以改变的,Unity都是支持的。我们来看一下在一个优化过的设置当中,它看上去会怎么样。还有一点,这个工具就像我们所有其他的工具。以前在我们用Unity之前,我们想要自己做渲染引擎或者是我们专属的技术。我自己花了一年写了3D的渲染引擎,后来我发现了Unity,我花了两天就用Unity完成了我一年的工作量。由此可以看到,Unity给我们的提供工具包的强大。

 

这个是在Unity编辑器之内的,对于我们开发周期来说是大大提高了效率,而且我们在整个Unity设计中,也是收获了很多支持。我们有很多新的功能都可以用,如果大家要开发工具包的话,请大家真的去选择Unity,因为它可以把你的速度提高到很快。我们也使用Unity的分析功能,这些对我们来说也是非常重要的,可以用来衡量我们的用户行为。这是我们最早α测试阶段,你可以看到哪些用户最新,哪块他们用的最多最频繁,对于我们精细化工作流来说是非常重要的,这也让我们能够有的放矢的来做整个工具的优化。

 

这个场景是完全自动生成的,我们把它叫做程序化生成。有一个基础的场景,写一些简单的脚本。比如说在这颗树上面,我希望在什么情况下触发什么样的树叶飘落等等。我们扫描之后,你就可以去使用,比如说有自动化的树叶变化,因为一切都是在同一个场景所采集的,你可以把这个场景的四季变化纳入其中。另外,我们扫描的素材都是用高分辨率的,对于我们来说给到大家高质量的素材是我们的诉求。这个效果还是非常好的,你可以看到这是一种进程式的生成,你可以做很酷的事情。比如说我希望树木能够更茂盛一些,那么就可以改一些参数,它就会生成更为繁茂的环境。你可能会说我想换一个季节,比如同一个场景在冬天,只是通过进程式的生成就可以自动生成一个冬天模式的场景。通过这样的做法,你可以不断的去改变同一个场景的参数设定。

 

我们也会扫描更简单的一些素材,比如说材质的表面,比如说木质材质的、金属的、纹理的、纺织物的,这些可以用于环境背景素材,包括不同的背景、不同的纹理、不同的材质。特别像建筑可视化的设计,你只需要非常简单的一些可视化背景来用于可视化的目的。比如说大理石纹,很多不同的喷漆涂面。还有有机物的纹理,比如说你要设计怪物、怪兽,这个看上去有一点恶心,但是这个素材库也是有的,有各种不同的纹理,而且也是可以随着光线变化的,你也可以有很多很恶心的画面。

 

还有另外一个进程式生成的场景,这个是沙漠的场景。大家也要注意到,这个场景中所有的表面材质和纹理,都是用这个工具包来完成的。你甚至可以重新定义,可以重新在原有素材上面进行新的发挥,来构筑你自己想象中的环境。这是一个树桩的特写,可以看到细节非常清晰。这是另外一个进程式生成的环境,它是一个北欧式的环境。这个是更具有魔幻感的魔法蘑菇特写。这里我就不想花大家更多的时间了。

 

最后再给大家看一个新的技术,已经完全嵌入了Unity,很快就可以获取;

如社区发表内容存在侵权行为,您可以点击这里查看侵权投诉指引