现实字节:3D数据需求迫使CG电影制作人发挥计算机效率的创意

在《阿凡达》的制作中,数据缓存帮助艺术家创造高度细致的视觉效果,同时节省时间和存储空间


支持科学新闻报道

如果您喜欢这篇文章,请考虑通过以下方式支持我们屡获殊荣的新闻报道: 订阅。 通过购买订阅,您将帮助确保有关塑造我们当今世界的发现和想法的具有影响力的故事的未来。


电影制作人不断提高标准,力求使电影动画像真人动作一样逼真,这要归功于 3D 计算机生成 (CG) 图形的改进。 这些努力可以获得巨大的回报——詹姆斯·卡梅隆的《阿凡达》赚取了巨额财富并获得了三项奥斯卡金像奖。 但是,正如新西兰数字特效制作公司 维塔数码 可以证明的那样,要费尽心思地创造出三米高的蓝色生物发光外星人,需要前所未有的计算能力和数据存储——而这些资源很可能会被后续项目所超越。

“我所见过的最大变化是电影的复杂性,从《指环王》开始,”维塔的数据中心系统管理员保罗·冈恩说。维塔公司负责制作了《指环王》电影三部曲以及《阿凡达》中令人惊叹的视觉效果。 这种复杂性的很大一部分来自于电影制作人要求数字渲染的角色和场景即使在特写镜头中也变得更加栩栩如生。

维塔数据中心的主要工作是渲染,这是一个将纹理、阴影、反射和其他视觉方面添加到数字图像的过程,“将其变成我们可以在屏幕上制作的东西,”冈恩说。《阿凡达》的图形渲染需要超过 4,300 台计算机服务器(包含近 35,000 个中央处理器内核)的服务,才能将数字图像处理成电影质量的视觉效果——该公司将其系统称为“渲染墙”。 对于《阿凡达》,数百名视觉特效艺术家将数万亿字节的工作数据输入到渲染墙中,渲染墙将这些计算机设计的图像精细化,使其更接近最终产品。

“我们无法预测艺术家需要什么,因此我们必须为他们提供各种各样的资源来使用,”冈恩说。“这可能会很麻烦,因为我们数据中心环境的动态变化很快。 我们最终会遇到来自几位艺术家对特定电影镜头的大量需求激增,这些镜头由一堆单独的帧组成。”

这归结为对相似或相同数据的大量需求,例如计算机代码,该代码创建了 潘多拉 雨林中树叶的纹理,潘多拉是《阿凡达》故事发生的土星卫星。“纹理是一组常用数据,用于使电影具有统一的外观,”冈恩说。“过去,我们在许多不同的文件服务器上都有这段代码。” 这是低效的,因为电影图像的相同 4TB 主副本驻留在数据中心的其他 10 个位置。 如果在一个服务器上更新了数据,冈恩和他的团队就必须确保在存储该数据的所有服务器上更新相同的数据。

对于《阿凡达》,维塔和位于加利福尼亚州森尼维尔市的数据存储提供商 NetApp 并没有生成包含 10 个相同信息副本的 40TB 数据,而是设计了一个系统,使艺术家可以访问缓存数据。 缓存是一个临时内存缓冲区,用于存储最常使用的数据,这种设置旨在使数据访问更快、更高效。 维塔和 NetApp 在维塔的网络上创建了多个缓存服务器,以处理大量用户请求访问电影视觉效果文件的情况。

所有渲染墙机器都访问这些 NetApp 缓存文件服务器,这些服务器又访问电影图像的主副本。 当主图像发生更改时,这些更改也会自动反映在缓存文件服务器中,延迟时间极短。 缓存服务器仅保存电影艺术家最需要的数据,事实证明,这大约是原始 4TB 数据集的 800GB。“然而,这 800GB 的数据足以响应超过 97% 的数据请求,”冈恩说。

NetApp 的 FlexCache 软件 用于自动平衡渲染墙的吞吐量要求,以防止形成数据请求瓶颈。“缓存的关键在于了解哪些数据需求量最大以及谁在需求它,”NetApp 副总裁兼总经理布伦丹·豪斯说。

冈恩表示,他无法谈论维塔目前和未来电影项目(包括 《霍比特人》 或《人猿星球》续集 《猩球崛起》)中使用的任何技术,但他可以说,自从公司为《阿凡达》实施缓存以来,他们已经能够改进该技术,使其系统更加高效。

© . All rights reserved.