Linux在电影业中的应用,早就已经不再是什么新闻。在《星球大战2》中,使用Linux 的工作站造就了鲜活逼真的Yoda。而在《指环王2》中,拍摄兽人对要塞猛烈进攻的场面时,并没有使用成千上万的真人演员,而是使用Linux创建的数字 演员。在很多人眼里,Linux的影响力还无法与Windows和Macintosh相比,但在好莱坞的电影工作室中,Linux的地位却是 Windows和Macintosh所无法匹敌的。到现在为止,使用Linux制作的好莱坞大片已经超过30,其中包括了《指环王》、《星球大战2》、 《哈利波特》、《史瑞克》和《泰坦尼克》等耳熟能详的经典大片。
如今,Linux已经不再仅仅是作为渲染平台服务器,而成为了顶级工作室中艺术家们的桌面平台。事实上,现在绝大部分知名的电影工作室都在依靠Linux来完成主要的动画和特效制作工作,越来越多的小型电影工作室也开始转而使用Linux。
在软件方面,工作室通常使用的是一些Linux平台下的3D动画、影像合成、特效制 作及渲染方面的顶级商业软件,比如Alias Maya、Apple Shake和Pixar RednerMan等。而在向Linux平台的迁移过程中,一些主要的工作室甚至把数百万行的软件代码导入到Linux平台之上,并且正在创建自己的基于 Linux的新软件。
那么这个产生于学生之手的Linux系统是如何成为专业影像处理领域新宠的呢?
Linux异军突起
Linux开始进入商业应用领域是从作为Web服务器平台开始的。随着 Internet的兴起,Linux凭借Apache Web服务器强大的影响力,占据了ISP服务器市场第三的位置。Internet公司喜欢的是Linux良好的性能价格比。后来,电影工作室的技术人员发 现,既然Linux可以在运行Apache时实现网页高效的吞吐能力,那么在渲染平台服务器上也应该可以实现对电影帧的高效吞吐。于是他们开始思考, Linux是不是可以让电影制作的过程更快、更便宜呢?
Linux首次打破好莱坞这块坚冰是在1997年,当时D2(Digital Domain)使用了Linux来对影片《泰坦尼克》进行特效处理。而如今,D2已经使用Linux完成了20多部影片的特效制作,其中包括曾获得奥斯卡 最佳特效奖的《泰坦尼克》和《What Dreams May Come》两部影片。在制作泰坦尼克之前,D2发现Linux可以和SGI的渲染平台一起工作。可以从SGI的Unix进行平滑的过渡,正是众多工作室接 受Linux的关键因素之一。从此以后,Linux在电影工作室的应用就一发不可收拾。
图1 ILM使用自己专有的Linux下脸部处理软件制作《星球大战2》的Yoda大师
Linux在设计桌面平台上的应用
与Linux在服务器和渲染平台上的成功相比,它进占各工作室的桌面之路则要曲折得 多,其中主要的障碍就是驱动程序的问题。刚开始,由于缺乏商业3D加速卡驱动程序的缘故,Linux在图像处理方面的性能要比其它的操作系统平台差得多, 而这种加速卡的驱动SGI早就已经有了。在Windows平台下,nVidia和一些其它的PC游戏厂商已经把图像处理的性能提到了相当的高度,看起来微 软的Windows似乎更应该顺理成章地进驻好莱坞市场。
然而,在此后的一段时期里,众多的工作室发现,要实现向Windows平台的迁 移,远比想像中要难得多。比如重写数百万行运行于Unix之下的软件代码就是一件似乎无法完成的任务。而就在这时,nVidia推出了面向Linux的图 像加速卡驱动程序,它可以在Linux和Windows平台上实现同样高效的性能。这样一来,Linux在图形处理方面的性能一下子有了质的提升。而就在 同时期,其它的很多PC图形卡制造商也开始陆续提供高性能的Linux驱动程序。
那么拥有了Linux下高性能的图形加速卡意味着什么呢?ILM(工业光影)的产 品工程主管Ken Beyer说:“因为有了高性能的图形加速卡,在《星球大战2》的制作中,我们使用了350多台Linux机器。”据他介绍,在将于2005年推出的《星 球大战3》的制作过程中,将使用600台Linux桌面系统进行设计工作。
图2 DreamWorks使用自己专有的插件程序制作《辛巴达》中的一个海洋场景
高性能的Linux系统
DreamWorks(梦工厂)于2001年推出的的影片《史瑞克》是第一部完全使 用Linux的大手笔制作。事实上,DreamWorks SKG所做的不仅仅是将现有的工作室迁移到Linux,而且还使用Linux创建了第二条生产线,使得生产能力翻番。DreamWorks的动画技术部主 管Ed Leonard说:“在制作电影《辛巴达:七海传奇》时,所有的工作站和渲染平台使用的都是Linux系统。”
再回到ILM。ILM的技术指导Robert Weaver介绍说,在《星球大战2》的制作中,从RISC工作站迁移到Linux PC之后,在性能上获得了很大的提升。他说:“老系统的速度实在太慢,以致于我们在制作激光束时,其看起来的效果却像是在投标枪。而使用Linux之后, 速度提升了约5倍。我敢说这是我使用过的最好的东西。它很直观,也很稳定,而且我们还可以最快的速度获得补丁并对其进行修正。”
Weta Digital向Linux的迁移是在制作《指环王》的时候,该工作室使用一个名为Massive的软件完成了《指环王2》中兽人的制作。Massive 的开发人员Stephen Regelous说:“以前,在创建这些数字人物时,总会受到一些限制,而现在,我们有了更大的空间,因为Massive的运行速度比以前提高了一倍。”
好莱坞为什么青睐Linux
在那些以开发专有技术来获得竞争优势的电影工作室当中,开放的Linux大行其道,这的确是一种非常具有讽刺意味的现象。事实上,这种现象的原因是因为好莱坞意识到采用标准的开放平台可以让他们在自己的作品上投入更多的资源。
当工作室开发自己专有的、世界上最好的专业软件时,通常需要一个开放源码的平台。这 是因为开发人员可以对操作系统进行一些优化和调整,而这些方面的优化和调整往往是商业操作系统厂商不感兴趣或不愿意做的。此外,影视产品是一个对时间非常 敏感的行业,不允许因为操作系统的任何错误而中止产品的生产过程。使用开放源码的产品,可以让他们在软件和操作系统级别上进行自由的控制。
一些电影工作室自己所拥有的Linux开发人员就有100多人,一般都在从事 Linux平台上的专有软件开发工作。虽然,基于成本的考虑似乎不应该这样做,但为了在出现问题时不至于影响工作室的生产,这还是物有所值的。相比较而 言,直接由Linux厂商对工作室提供支持的情况就少得多,原因是工作室的技术专家认为Linux厂商的工程师无法胜任此项工作。
软件厂商的加入
在电影的制作过程中,商业软件长期以来一直都扮演着非常重要的角色。不过这种情况在DreamWorks制作《史瑞克》时,发生了变化,当时该工作室就使用了很多自己开发的软件。也就是从那时开始,在电影的控制过程中,工作室使用的商业软件越来越少。
现在,Linux下已经有了三个非常流行的动画制作软件,它们是SideFx Houdini(1999年有Linux版本)、Alias Maya(2001年有Linux版本)和SoftImage(2001年有Linux版本)。实际上,在各大工作室向Linux的迁移过程中,也引发了 一个声势浩大的软件升级过程。在此之前,大部分工作室都是在使用老软件来进行自己的制作。比如,当ILM转向Linux时,就升级了所有原来基于SGI 的、老的SoftImage软件。
具有讽刺意味的是,在各工作室向Linux迁移的过程中,Apple和Pixar 成为该行业内两个最大的Linux软件提供商。它们分别提供目前最流行的两个软件,一个是Apple的合成软件Apple Shake(2000年有Linux版本),另外一个是Pixar的渲染软件Pixar RenderMan(1999年有Linux版本)。而对于工作室而言,并没有因为感谢Apple而采用其Mac操作系统。很显然,它们更愿意采用源码开 放的Linux操作系统,而不是第三方的专有操作系统平台。
开放源码的工具软件
与Linux软件大量出现的情形不同的是,现在只有一个流行的动画制作软件工具是开放源码的。那么未来这一行业中是否会有更多的开放源码软件流行起来呢?从目前最流行的、源码开放的动画制作软件CinePaint来看,似乎很难对此持乐观的态度。
CinePaint是一个类似于Photoshop的图形制作和处理软件。和Linux一样,它是开放源码的,每个人都可以免费地下载和使用它。该软件的发展经历了很多变数,从开发过程中的高期望,到后来痛苦的失望直至将其放弃,以及后来的复苏。
CinePaint基于一个名为Film Gimp的软件项目,该项目发起于1998年,其目的就是为了满足Linux下图像制作和处理方面所谓DP(Deep Paint)的需求。DP的意思是要使颜色的深度达到8位以上,这是电影制作过程中的要求。考虑到市场空间太小,加上工作室对动画电影产品近乎苛刻的要 求,工作室的技术人员认为目前的需求还不足以支撑起一个商业的DP工具软件。
这时,好莱坞想出了一个非常有新意的想法,那就是将流行的Linux开放源码软件 GIMP程序进行增强,使其能够满足动画制作的要求。虽然电影工业无法支持从零来开发一个DP软件,但却有能力支持一些开放源码开发人员对GIMP进行增 强。于是,这个项目在1998年开始启动,技术公司Silicon Grail(该公司2002年6月被Apple收购)和电影工作室Rhythm&Hues共同出资将GIMP变成了Film Gimp。该项目的发起人本来准备在2000年时推出GIMP 2.0,但这个愿望没有实现。
最终,Linux无政府主义的GNU程序员风格和以资本推动的工作室最终没能很好 地进行融合,Film Gimp项目于2000年搁浅,现在似乎已经被很多人忘却了。不过,在所熟知的《哈利波特》等电影中,还是使用到了Film Gimp。现在仍然可以从网上免费下载并使用它。
使用Film Gimp来制作的电影还有Rhythm&Hues的《Scooby-Doo》、《Dr. Dolittle2》和《Planet of the Apes》,Sony Pictures Imageworks推出的《Stuart Little 2》,Hammerhead Productons推出的《Showtime》、《Blue Crush》和《2 Fast 2 Funous》。
2003年2月在洛杉矶举行的首届Linux电影大会上,很多原来的Film Gimp开发人员聚到一起,做出了一个出人意料、但却非常统一的决定:将Film Gimp更名为CinePaint,因为现在保留这个名字已经没有任何实质性的意义。
开放源码软件的特点之一就是“早发布,常发布”,这往往使一个项目充满活力。以 CinePaint项目为例,自2002年7月以来,它就发布了10多个版本。现在,CinePaint已经不仅能够在Linux下运行,而且还可以在 Mac OS X和Windows下运行。虽然还没有发行正式的1.0版(目前是0.18版),但它受到越来越多工作室的青睐,比如ComputerCafe和 Flash Film Works。
图3 CinePaint是一个很棒的免费图形处理软件
工作室的“特权”
一般而言,电影工作室在软件开发上会花费大量的精力,但是这些软件一般都是自己使 用,并被小心地保护着。一些工作室的软件是从零开始写的,有的则是针对Alias Maya或Apple Shake等写一些专门的插件程序。这是因为虽然很多商业软件对于大部分用户来说是保密的,但工作室却可以和软件商达成协定,获得访问其软件源码的权力。
作为一个惯例,世界上主要的工作室一般都不会使用不能访问源码的工具,因为这对于 它们来说风险太大。工作室也并不是喜欢更改商业软件程序,而是在有些时候,为了能够确保产品在最后期限前完成,它们不得不这样做。这种情形往往会增加工作 室的成本,还会加剧其与软件厂商的紧张关系,因为很显然,软件公司并不喜欢工作室拥有软件的源代码。少数情形下,软件公司会不惜任何代价阻止工作室拥有源 代码。
以DP软件为例,Adobe只为PhotoShop 7提供了有限的支持,但是未来的版本该功能有望得到增强。去年,DreamWorks和Disney出资使得CrossOver模拟器可以在Linux下运行Adobe PhotoShop 7。
前途无量的Linux
在过去的几年里,Linux已经在好莱坞牢牢占据了自己的位置,使用其制作的影片更是数不胜数。不过我们有理由相信,这还仅仅是一个开始,Linux强大的发展后劲预示着其完全可以在好莱坞有更大的作为。