今天在EGSR 2018年上,华特迪士尼动画工作室宣布发布两个用于渲染研究的大型制作质量/比例数据集。数据集可在迪士尼动画官方网站的新数据集页面上找到。第一个数据集是云数据集,其中包含一个大型且高度详细的体云数据集,我们在SIGGRAPH 2017论文中使用了该数据集,第二个数据集是莫阿纳岛场景,这是Moana的完整制作场景。
在这篇文章中,我将分享一些个人的想法、观察和笔记。今天,我的队友拉尔夫·哈贝尔(Ralf Habel)在EGSR宣布了这些数据集的发布,但这个发布已经筹备了很长时间,这是迪士尼动画公司大量人员集体努力的结果。有一些人值得强调:拉斯穆斯·坦斯托夫是整个工作的先锋,在获得莫阿纳岛场景所需的资源和法律批准方面发挥了重要作用。希瑟·普里切特是TD,他完成了从迪士尼动画的制作流程中提取莫阿纳岛场景,并将其从专有数据格式转换为可用的、行业标准的数据格式的实际困难工作。肖恩·帕尔默和乔纳森·加西亚也帮助从莫阿纳恢复了数据。Hyperion的开发者拉尔夫·哈贝尔和彼得·库茨领导了云数据集的批准和发布工作。云本身是由艺术家Henrik Falt和Alex Nijmeh制作的。在管理方面,技术经理Rajesh Sharma和迪士尼动画CTO Nick Cannon提供了至关重要的支持和鼓励。Matt Pharr在与我们合作发布这些数据集方面起到了至关重要的作用。Matt非常乐于帮助我们将莫阿纳岛的场景引入PBRT场景;稍后我会更多地谈到这一点。英特尔的Embree团队也提供了重要的反馈。我的角色实际上很小;与Hyperion开发团队的其他成员一起,我只是在整个过程中提供了一些咨询。
请注意数据集附带的许可证。云数据集使用Creative Commons Attribution ShareAlike 3.0 Unport许可证;实际的云基于Kevin Udy在他的Colorado Clouds博客上的一张照片,该博客也使用相同的Creative Commons许可证。莫阿纳岛场景采用更严格、定制的迪士尼企业研究许可证。这是因为莫阿纳岛场景是真实的制作场景;它实际上用于制作最终电影中的实际帧。因此,数据集仅用于纯粹的研究和开发目的;它不是用于艺术项目。请坚持并遵循这些数据集的发布许可;如果人们最终滥用这些数据集,那么这将使我们在未来向社区发布更多的数据集变得更加困难。
这整个努力是在两年前的SIGGRAPH 2016大会上引发的,当时Matt Pharr呼吁业界向研究界提供具有代表性的生产规模的数据集。我不知道有多少次我谈论过多少次关于新技术、新论文或新技术将如何扩展到生产案例的讨论,但由于缺乏任何真正的生产数据集供研究界测试,进一步的讨论受到阻碍。我们决定作为一个工作室来回应Matt的呼吁,去年在SIGGRAPH 2017上,布伦特·伯利和拉斯穆斯·坦斯托夫宣布,我们打算同时发布云端和莫阿纳岛的数据集。由于过程复杂,从宣布到发布花了近一年的时间,确保发布正确对制片厂非常重要。
最大的挑战之一是将所有的数据从生产流水线和我们的各种专有数据格式转换成研究界可以实际解析和利用的数据格式。Matt Pharr在这方面非常有用;在过去的一年里,Matt增加了对Ptex纹理的支持,并在PBRT v3中实现了Disney BSDF。PBRT v3中提供的Ptex和Disney BSDF使PBRT v3成为到Hyperion以外的渲染器的初始端口的自然目标,因为在内部,Hyperion的所有着色都使用Disney BSDF,而我们的所有纹理都是通过PTexture完成的。我们的纹理也在很大程度上依赖于过程性SeExpr表达式;所有表情驱动的纹理都必须烘焙到Ptex中才能最终发布。
坦率地说,云和莫阿纳岛数据集都非常庞大。云数据集包含一个2.93 GB的OpenVDB云;该数据集还提供缩小到一半、四分之一、八分之一和十六分之一比例分辨率的VDB文件版本。莫阿纳岛数据集分为三个部分:包含原始几何图形和纹理的基包
Hyperion渲染和PBRT渲染之间主要区别的另一个示例是在水中,Hyperion使用光子贴图进行渲染以获取焦散。提供的PBRT场景对包括水在内的一切使用单向路径跟踪,因此焦散非常不同。类似地,PBRT和Hyperion摄影机角度中的棕榈树看起来非常不同,因为Hyperion的照明控制与PBRT非常不同;Hyperion的灯光包括各种艺术控件,用于自定义形状和诸如此类的东西,不一定是完全物理的。此外,棕榈叶是使用曲线建模的,着色取决于沿曲线长度和宽度的不同颜色和属性,这是PBRT尚不支持的(如果释放更多资源来改进数据集发布,获得棕榈叶实际上是最重要的)。渲染器之间的这些差异并不一定意味着某个渲染器比另一个渲染器更好;它们只是意味着渲染器不同。对于任何一对想要比较的渲染器都是如此。
云数据集包括来自Hyperion的示例渲染,它在其体积渲染系统中实现了我们的光谱和分解跟踪纸,以高效地渲染具有数千个反弹的云。该渲染不包含后处理;您在提供的图像中看到的正是Hyperion输出的内容。vdb文件将云表示为异构密度的场。还提供了一个示例Mitsuba场景,可使用Github上的Mitsuba-VDB插件进行渲染。有关渲染云所需的Mitsuba中的一些修改,请参考自述文件。此外,请注意,Mitsuba示例渲染将花费极长的时间,因为Mitsuba实际上并不打算渲染高反差的异构体积。使用正确的加速结构和算法,渲染云只需要几分钟,在任何现代产品级渲染器中都应该同样快。
有人可能会想,为什么一般的制作数据集这么大。这是一个有趣的问题;整个行业的简短答案基本上可以归结为“艺术家的时间比计算机硬件更昂贵、更有价值”。如果我们愿意让我们的艺术家花费大量时间积极优化资产和场景等等,这样我们可以将这些场景放入更小的磁盘、内存和计算足迹中,那么我们就可以让这些场景适应更小的足迹。然而,这实际上并不总是很好地利用艺术家的时间;与浪费艺术家的时间相比,计算机硬件更便宜,这些时间通常可以更好地花在其他地方,让电影变得更好。相对而言,在巨大的数据集上投入更多的内存和其他东西也比使用更多的艺术家资源更具可扩展性。
这两个数据集都附带了详细的自述文档;尤其是莫阿纳岛场景的文档非常广泛,其中包含大量有关迪士尼动画如何创作和构建资源,以及如何在迪士尼动画中照明、指导艺术和组装渲染的信息。如果您计划使用这些数据集,或者如果您一般都对迪士尼动画是如何构建制作场景感兴趣的,我强烈建议您仔细阅读所有文档。
就我个人而言,我非常期待看到渲染社区(以及更广泛的计算机图形社区)如何处理这些数据集!我特别兴奋地看到实时世界将能够用这些数据做些什么;在虚幻引擎4或Unity中看到莫阿纳岛的全貌将是一件很棒的事情,我认为这些数据集也应该为光传输和光线跟踪速度的研究提供一个奇妙的挑战。如果您使用这些数据集做了一些有趣的事情,请写信给我们,地址是提供的自述文件中的电子邮件地址!
此外,Matt Pharr在他的博客上写道,莫阿纳岛的场景如何进一步推动了PBRT v3的发展。我强烈建议阅读Matt的博客!