分形·计算机·电影

  分形·计算机·电影  

作者:许乐  崔程程

编辑:Gemini

“分形”的主要思想是截取不规则图形的一部分,当不断放大或者不断缩小时,它们看上去总是高度相似的,即“自相似性”。分形几何学是诞生于上世纪七十年代的一门年轻的数学分支。1978年,年轻的计算机专家洛伦·卡彭特(Loren Carpenter)首次将分形的思想融入进了计算机技术,通过对最基本的几何图形三角形的不断分形迭代,描绘出了山脉模型,这可以说是分形几何学和计算机科学的初次相识。1982年,在电影《星际迷航2可汗之怒》(Star Trek 2 The Wrath of Khan)中,年轻的分形几何学、年轻的计算机图形学(Computer Graphics,即CG)和电影艺术这三者初次走到了一起。影片中出现过一个一分钟左右的三维CG动画片段,计算机分形绘景技术在这里显示出惊艳无比的视觉效果。

二十世纪九十年代,随着计算机技术的飞速发展,电影中的CG技术日趋成熟,分形数字绘景技术也开始大量应用于3D动画和电影特效制作,使得数字造景的真实度不断提升。从《星球大战前传》(1999、2002、2005)三部曲中的星球地表、到《玩具总动员》(Toy Story,1995)中的树丛林木、再到《爱丽丝梦游仙境》(Alice in Wonderland,2010)中的梦幻森林,分形数字绘景逐渐成为模拟自然景物的主流特效手法。近些年,分形数字绘景技术更加成熟,《阿凡达》(Avatar,2009)中美丽的潘多拉星球、《冰雪奇缘》(Frozen,2013)中的烂漫雪花、《奇幻森林》(The Jungle Book,2016)中的丛林世界,其背后都隐藏着分形数字绘景技术的鬼斧神工。

 

从模拟山脉到创造星球表面

二十世纪七十年代,计算机数字图形技术开始起步并迅速发展。1978年,在西雅图的波音飞机公司,年轻的计算机专家洛伦·卡彭特遇到一个难题。他需要在计算机上编程绘图来模拟飞机飞行的状态,在飞行中,飞机需要穿越于山脉上空。然而编程绘制山脉在当时是无法用计算机解决的。山脉有数以万计的小三角形或者多边形。当时的计算机处理数据极慢,即便处理100个三角形也是件麻烦事。这时,卡彭特偶遇了《分形学:形态,概率和维度》(Fractals: Form, Chance and Dimension)这本书,书中的分形思想让他大开眼界。他创造出了分形绘制山脉的算法:首先绘制出几个粗略的大三角形,然后把每个大三角形分成四个小三角形,再对每个小三角形重复分裂操作,不断迭代重复,最终,山脉粗糙的表面就成功的在计算机上显示出来了。这可以说是一次伟大的尝试,它让分形首次进入数字绘景领域,也让其他计算机绘图专家们兴奋不已。从此,计算机绘图不再局限于标准而规则的几何图形,各种参差不齐、变幻莫测的图形图案,都可以用计算机分形算法来呈现。这些数字化的山脉对于日后电影特效领域的自然造景有着非比寻常的意义,也可以说是日后分形数字绘景技术的雏形。卡彭特不久后加盟了卢卡斯影业公司,计算机分形绘图技术也随着他向电影业靠近。从此以后,分形绘景技术将在电影特效领域里大显身手。

                           

图1.计算机模拟山脉分形步骤图,截图来自纪录片《寻找隐藏的维度》(Hunting the Hidden Dimension)

卡彭特加入卢卡斯影业公司时,恰逢一个视觉特效组织刚刚诞生不久,这个组织就是大名鼎鼎的“工业光魔”(Industrial Light and Magic,简称ILM)。1977年上映的《星球大战》开启了计算机视觉特效的先河。几年之后,分形绘景技术在这个CG草创时代也展露了小小的一角。1982年,在卢卡斯影业公司监制的影片《星际迷航2可汗之怒》中,剧情设定存在一个名为“创世”的科学仪器,可以把一个没有生命的星球进行分子重组,让它变成一个有生命的星球。为了演示这一效果,电脑中的月球被“创世波”攻击,变成了一个有水有生命的绿色星球。进取号舰长柯克在飞船的电脑屏幕上看到了使用“创世”后月球表面的变化过程。卡彭特负责绘制飞船电脑屏幕上的整个月球地表。月球地表参差不齐并不规则,普通的几何图形无法描述,却恰恰符合分形粗糙、琐碎、不规则的特点。这一次的方法和之前绘制山脉的方法类似,通过在全景图上绘制简单的多边形,让计算机算法去迭代切割多边形,最终创造出月球地表的粗糙质感。影片中的CG效果让人眼前一亮,分形绘景技术在自然绘景方面向世人展现了其卓越的优势。

图2.《星际迷航2可汗之怒》中,飞船电脑上显示的是正在变得有生命的月球表面

令人遗憾的是,分形与电影这一次的相遇,并没有在电影CG刚刚起步的八十年代引起更多关注。在计算机尚不普及和发达的八十年代,电影制作行业的手绘制图一直是最主流的特效办法,虽然这一办法相当低效,哪怕一个很短的卡通片可能需要上千张绘图才能连贯,而且还会牵扯到摄影机运动等诸多限制。另一方面,虽然分形数字绘景效率更高,但模拟出的画面的真实度并不高。在《星际迷航2可汗之怒》中,制作人恰恰打了一个擦边球,让这段CG影像出现在飞船电脑上,利用了飞船显示屏上的图像呈现原本较为简陋的特点,遮盖了当时分形绘图技术仿真程度不高的弊端。在当时若想追求更好的视觉特效,分形数字绘景并不是很好的选择。电影制作人普遍选择的是手工绘景的方式,用画在玻璃上的图像和实拍的素材结合在一起完成视觉特效的制作。虽然分形特效在自然绘景上有着不小的优势,但身为载体的计算机在当时还没有发展到足够便捷的程度,难以避免地导致刚刚问世的计算机分形绘景技术的仿真程度根本无法达到“以假乱真”的地步,甚至略显粗糙,也就自然很难撼动手工绘景在当时的主流地位。

昙花虽一现,却也开出了自己的姿态。《星际迷航2可汗之怒》中月球地貌的问世给了分形和电影一个契机,虽然之后近二十年二者几乎以平行状态各自发展,但再相遇时已由最初的青涩变为强强联手,为九十年代后的电影视效开启了新的大门。

图3.电影制作人员在玻璃板上手工绘景

 

分形数字绘景技术日趋成熟

进入九十年代,计算机数字图形技术发展迅猛,电影CG技术开始大发异彩,创造出许多令人惊叹的电影角色和电影画面。然而此一阶段的CG技术多倾向于角色建模,分形绘景技术在九十年代前期尚不成熟,只有在少数画龙点睛的刚性绘景建模时才会用到。较成熟的分形绘景技术最早还是出现在3D动画片里面。1995年,迪士尼公司(The Walt DisneyCompany)和皮克斯动画工作室(Pixar)合作推出首部完全以CG制作的长篇剧情动画片《玩具总动员1》,分形绘景技术在其中有所应用。影片中,巴斯光年不慎掉入花丛,小主人安迪无法找到巴斯,于是选择牛仔玩具胡迪跟随他一起出行。这一场景中的灌木丛和树木的模拟体现了分形算法,即由一个大枝干不断迭代分裂出小枝干,树叶与之同理。当镜头推近时,我们可以清晰的看到灌木丛的叶片还是显得材质粗糙。虽然动画影片对于景物的仿真只需要和整体动画材质基调相协调即可,但是此片中的叶片还是难掩其虚假、笨重和塑料质感。这里的叶片完全没有纹理,也根本无法自由晃动,与动画片中的环境变化相脱离。当然,作为首部全CG制作的影片,分形绘景技术的回归还是十分值得鼓励和赞赏的。之后1998年的《虫虫危机》(A Bug's Life)和1999年的《玩具总动员2》(Toy Story 2),在分形绘景尤其是对于植被的绘制上大多受到《玩具总动员1》的启发,所绘制的植被及其叶片真实度更强,代入感更好。尤其在《虫虫危机》中,大片植被都出现在近镜头中,对仿真度的要求也随之提升,可见分形数字绘景技术在这短短几年里进步神速。

图4.《玩具总动员1》和《虫虫危机》中的叶子对比

1997年,斩获了十一项奥斯卡奖项的《泰坦尼克号》(Titanic)问世,詹姆斯·卡梅隆为世界电影史写下了唯美而震撼的篇章。在这一部史诗般的影片中,分形的应用依旧仅局限于绘景且出场甚微,但亮点在于这一次分形数字绘景模拟的是非刚性的物体——云。影片中故事开始时,码头上的巨轮开始启航,仅这一场景便运用了96处不同的电脑特效,其中包括分形绘景。特效人员通过数码合成软件将岸上的人群以及使用电脑虚拟的天空、海鸥、码头、海水、拖船等结合在一起。数字化模拟非刚性的流体云朵,分形算法必不可少。云朵是自然存在的,云块和云块之间有着自相似性,分形正适合于描述此类对象。

图5.《泰坦尼克号》幕后剧照,天空中的云朵是分形绘景生成的

 

刚性景观建模“以假乱真”

进入新世纪,电影CG特效也迎来了新纪元,分形数字绘景的创作潜力在这一时期开始大放异彩。《指环王》(The Lord Of TheRings)三部曲,在2001至2003年间,连续斩获三年奥斯卡最佳视觉效果奖,可以说拉开了二十一世纪视觉特效领域新的序幕。《指环王》的视觉特效由维塔工作室(Weta Digital Ltd)负责制作,工作室的核心技术即Massive程序。在影片中,分形数字绘景的展现与上世纪相比可以说是一日千里。在《指环王:护戒使者》(The Lord of theRings: The Fellowship of the Ring,2001)的开篇中,黑暗魔君索伦暗地里铸造了可以奴役世界的魔戒,各种族为了抵抗索伦的侵犯开始了战争。片中战争的背景即为分形数字绘景技术的杰作。可以看到,此时关于突石地表的绘景,和当年的《星际迷航2可汗之怒》相比已经不可同日而语。就细节来说,可以看到地表山川上丛林茂盛,且有稀疏的云雾飘过,这里的云雾比《泰坦尼克号》中的云彩同样精进了许多。而且此片中的云雾出现在近距离镜头中,不像《泰坦尼克号》里面仅仅作为远景处的背景存在。云雾的飘动和质感可以说都达到了以假乱真的境界。在下一场戏里面,石洞里的咕噜(Gollum)爱惜地捧着捡来的魔戒,这里的石洞同样出自分形数字绘景之手,即使拉近距离也充满石头质感。美中不足的是,虽然石洞真实感十足,但是咕噜身旁的流水看上去还是难掩虚假感,有一种不该有的水银般的厚重感。

图6.《指环王:护戒使者》剧照,分形数字绘景造就神奇

2002年第二部《指环王:双塔奇兵》(The Lord of theRings: The Two Towers)顺势而上,使分形数字绘景的运用再上新的高度。影片开篇再现第一部中灰袍巫师甘道夫大战炎魔怪的场景。这里炎魔怪周身的火焰和手中的火鞭都是拜分形数字绘景技术所赐。此类流体运动模拟基于分形粒子系统的发展和演变,是分形数字绘景技术开拓的一个新领域,下文将做详述。除了流体动态模拟的大胆运用,分形数字绘景在《指环王:双塔奇兵》以及之后的《指环王:国王归来》(The Lord of theRings: The Return of the King)的自然刚性景物建模中亦功不可没。树人这一角色在两部影片中都有涉及,是一个非常成功的CG形象。影片中,可以行走甚至说话的树人,在银幕上被展现的犹如一棵真正的大树,真实感极强。树人的枝干绘制和九十年代《玩具总动员》中生成树木的分形算法在思想上是一致的,进步的是实现算法的软件程序和渲染特效的硬件。计算机发展速度之快非当年可以预料,渲染系统的强大给分形绘景提供了坚强后盾。除了树人,分形算法创造的魔幻世界的山川砂石以及爆炸破裂的碎石等,都比第一部提升了许多。

图7.《指环王:双塔奇兵》剧照

同时期华纳兄弟电影公司的《哈利波特》系列和《指环王》系列在分形数字绘景的应用方面相当类似。《哈利波特》系列在创造魔法校园世界的自然环境时,同样也有使用分形数字绘景技术。可以说,新世纪以后的好莱坞电影,其片中自然景观的各种壮丽奇伟,皆源自于分形数字绘景技术。2009年,詹姆斯·卡梅隆再书传奇,维塔工作室和工业光魔等顶级特效团队联手创造出一个完整的星球世界——《阿凡达》中的潘多拉星球。银幕上的外星丛林,每一片植被都显得那样真实,似乎可以让人通过视觉感觉到枝叶纤维的柔软触感。片中缔结男女主角爱恋的灵魂之树(the Sacred Tree)的绘制和生成,比之前任何一部影片中的绘景技术生成的树木都要细致精妙,可以说是分形数字绘景技术的巅峰之作。

图8.《阿凡达》剧照

与此同时,分形数字绘景技术在动画片领域也在飞速发展。以迪士尼公司为例,2003年《海底总动员》(Finding Nemo)首次对CG创作海底世界进行挑战。故事发生在海洋中,水中的藻类植物和地表上的树木有很大区别。藻类植物与水波的互动频繁,在水压中的飘动感是其仿真的关键,要求分形建立的模型更加细腻,能达到和水环境的真实互动。这对于分形数字绘景建模是一个不小的难题。虽然是在动画中对藻类仿真,但最终实现的效果比《指环王》中对于水下植物的模拟还要细致许多,真实度和互动程度都极其接近现实中的藻类植物。这也证明,分形数字绘景技术可以在动画建模中有更广阔的发展空间。2009年《飞屋环游记》(Up)中卡尔和妻子艾丽躺在草坪上,此时的草坪比1995年《玩具总动员1》中的草坪真实感强了不知多少倍,甚至可以做到随风飘扬。再对比2010年《玩具总动员3》(Toy Story 3)中的草坪,真实感可以说日益精进。可以说,如今的电影特效领域几乎离不开分形的存在。任何一部电影,只要涉及到数字化绘制的地形地貌、山川树木或者云海迷雾,其模拟算法中都必然会涉及到分形。

图9.上图是《指环王:护戒使者》水中植物的模拟;

下图是《海底总动员》水中植物的模拟,后者更胜一筹

图10.《玩具总动员1》、《飞屋环游记》和《玩具总动员3》中的草坪对比

 

分形数字绘景新突破——粒子系统

步入新世纪,分形在电影数字化绘景中的作用逐渐拓展,刚体自然景物的数字化绘制,像山脉石头、树木丛林这些都已经不是难题。然而,有许多场景涉及非刚体景物的模拟,比如火、烟或者雪等等,这时,普通的分形建模已然无法满足需求。粒子系统为分形数字化绘景解决了非刚体景物模拟的难题。在时空维度上,运动的粒子具有分形维度,分形运动特性和形态在某些粒子系统中体现的十分典型。

粒子系统于1983年由Reeves提出,其基本思想是将许多简单形状的微小粒子作为基本元素聚集起来,形成一个不规则的模糊物体,从而构成一个封闭的系统,即粒子系统。粒子系统采用了一种前所未有的思想来描述物体,即每个物体都由若干不规则的粒子组成,每一个粒子都可以进行一定范围内的自我运动,且每一个粒子都拥有一定的寿命。粒子的产生和消亡都可以被控制,使得模拟的物体可以各部分随机变化。粒子的物理性质如形状、大小、透明度及速度等均可以用参数控制,随着时间的推移,用粒子系统模拟的物体就有着良好的随机性,而且运动和变化可以连续。对于非刚性类的自然现象及自然景物,大都因其在环境中的变化过于随机而无法达到真实的模拟,而这正好是粒子系统可以大显身手的地方。

《指环王》系列中就有大量粒子系统的应用。以片中的炎魔怪为例,这个CG角色周身燃着火焰,火焰随着气流随机的波动,其中外焰的变化参数尤其难掌控,是一个非线性的动力学过程,仿佛每一小段外焰都在时刻随着环境变化着,外焰中跳出的火星也是不规则运动的。这里描述其不规则运动和混沌参数的,正是粒子系统。炎魔怪手握的火鞭犹如一道强光线,光束纤维分明,抽动起来光束的舞动和光尾的消逝都刻画的自然灵动。这里光尾的消逝正是粒子消亡且逐渐变透明的过程。2005年《星战前传3:西斯的复仇》(Star Wars: EpisodeIII - Revenge of the Sith)中,有一个熔岩溅落在机械臂上的镜头。这里的具体做法是用三维模型建立发射点喷射,可以看到岩浆只是粗略的按照路线向上运动再落回机械臂,看上去枯燥乏味缺乏足够的视觉冲击效果。然而在对其添加了分形旋动之后,分形带来了岩浆向上运动时粒子因速度不同的滑落,和岩浆与机械臂撞击时岩浆粒子的四散。经过不同发射点的层层重叠,大团的火山熔岩流喷射而出并且四散开来,效果十分炫目。这一原理日后被大量应用于电影中的类似场景。《阿凡达》中的粒子特效由数字领域(Digital Domain)特效团队负责制作,主要包括细微粒子化特效的模拟,如大气以及爆炸、尘埃等,其效果自然更加细致入微。

图11.上图《指环王:双塔奇兵》炎魔怪爆炸;下图《星战前传3:西斯的复仇》中的岩浆

    

由于粒子系统在电影特效中可以模拟各类非刚性物体,所以在电影里的各种场景中都应用众多。下面以雪的制作为例,详述粒子系统在电影特效中的应用发展。在真人电影中,雪可以用很多实体道具模拟,再加上九十年代末粒子系统也未完全进入电影特效,所以雪的数字化模拟起步较晚。在2001年的《指环王:护戒使者》中,护戒小队在灰袍巫师甘道夫的带领下翻越雪山。虽然近距离镜头中甘道夫一行人周围和身上的落雪仍然使用的是假雪道具,但是整个山体的覆雪和大全景环境中的落雪是由CG创造的。这里的CG雪只出现在全景、远景中,没有特别近距离镜头的展现,所以对雪的各类变化以及细节特征要求不高。模拟雪的粒子系统的最重要飞跃出现在十年之后的3D动画电影中。在3D动画中出现的各类自然现象当然只能用CG来模拟,而3D动画又和传统的二维动画不同,在卡通的渲染方面比较而言更偏写实,不大可能利用手绘来解决景象模拟。此时,粒子系统就显得很必要了。

   

《驯龙高手》(How to Train YourDragon,第一部2010年,第二部2014年)是迪士尼与梦工厂动画公司(DreamWorks AnimationSKG, Inc.)合作制作的3D动画电影,影片围绕一个住在博克岛名为希卡普的维京少年和他的龙之间的友谊展开。《驯龙高手2》中出现了龙与雪地互动的镜头。可以看出龙尾在雪地上划出的痕迹与现实雪地上的划痕形态相差无几。在对雪这类流体的动态模拟上,迪士尼和梦工厂都使用的是自行开发的内部插件进行渲染。2013年推出的《冰雪奇缘》(Frozen)相比《驯龙高手》中的雪模拟难度更大,因为前者的故事剧情几乎全部发生在冰雪环境中,人物在雪景中与雪的互动以及雪在不同环境下的显色、运动速度等等,各类参数的掌控都要比之前任何一部电影更加精细。相比之下《驯龙高手2》中的冰雪场景并不是主要看点。对比二者中的雪场景,《冰雪奇缘》在细节上显然要略胜一筹。虽说两家公司对于流体的模拟技术相差不大,但迪士尼在《冰雪奇缘》上使用的冰雪算法比《驯龙高手2》中的更为先进。而且迪士尼为《冰雪奇缘》专门设计了一个制作雪动态的软件,可以模拟出极为真实的雪的动态运动,不管是积雪的崩塌还是人物角色与雪的3D交互都可以达到细致入微的程度。

图12.由上往下依次为《指环王:护戒使者》、《驯龙高手2》、《冰雪奇缘》

《冰雪奇缘》中除了对雪景的绘制,还有大篇幅的对冰雪魔法的展现。比如姐姐艾莎在与妹妹安娜的争吵中因怒释放出魔法,造出一大片冰棱。粒子系统在这里模拟出了冰棱生长伴随的冰屑四散。在已经成为经典的《Let it go》歌舞片段,艾莎跑到雪山之巅用魔法创造自己的冰雪宫殿。为了完美塑造艾莎的人物心理变化,建立冰宫的冰雪魔法除了要配合背景音乐的律动,还要具体体现出艾莎内心奔涌而出的激烈情感。这一段冰雪魔法的粒子模拟堪称惊艳。

粒子系统是分形在电影数字绘景上的又一项新突破,使分形除了可以描绘刚性自然景物,还可以真实的模拟非刚性自然景观,并创造各种自然界并不存在的奇美画面。如今,分形数字绘景开始作为核心技术被各大特效工作室研究,尤其是对于非刚性流体的模拟特效开始进一步细分发展。现如今的火焰、雪或者烟尘、爆炸等特效模拟都已经开始有各自专门的分类,其实现的具体算法也因所属公司的不同有着各种差异,渲染的插件大多由公司内部开发且受到版权保护。当然,不论再如何演变,粒子系统的根源还是分形,是由分形这棵枝干通过自相似四散而出的一片枝叶。

 

除了视觉特效,分形思想还渐渐融入电影创作的其他部分,带来许多新奇的电影文本。比如《恐怖游轮》、《盗梦空间》等所谓的“烧脑”影片,其剧情便可以用分形思想来诠释。再比如《奇异博士》,里面的大量画面其设计思想都源于分形,这和分形被用于服装设计差不多是一个道理。从上世纪七十年代至今,分形几何学作为数学的一个分支,在描绘大自然不规则、混沌的景物时发挥出卓越的优势,从而被计算机绘图所青睐,并逐渐进入电影数字绘景领域。这一过程体现了高度的学科融合。从简易粗糙的数字化月球地貌,到《阿凡达》、《冰雪奇缘》等电影中的奇妙世界,分形带给了电影艺术更多的创造潜能。当然,视觉效果永远不能顶替影片内容本身。再完美的视觉技术仍然是为了服务于影片整体。分形数字绘景技术作为提升视觉效果的工具和手段,在今后的发展道路上会进一步细化,为电影创作提供更多的技术支持,在新世纪的电影世界里书写下更恢弘的篇章。

 

作者简介:许乐,男,1979年生,山西人,电影学博士,山东大学(威海)机电与信息工程学院计算机系数字媒体技术专业副教授;崔程程,山东大学(威海)机电与信息工程学院计算机系数字媒体技术专业2013级本科生。

我们是谁:

MatheMagician,中文“数学魔术师”,原指用数学设计魔术的魔术师和数学家。既取其用数学来变魔术的本义,也取像魔术一样玩数学的意思。文章内容涵盖互联网,计算机,统计,算法,NLP等前沿的数学及应用领域;也包括魔术思想,流程鉴等魔术内容;以及结合二者的数学魔术分享,还有一些思辨性的谈天说地的随笔。希望你能和我一起,既能感性思考又保持理性思维,享受人生乐趣。欢迎扫码关注和在文末或公众号留言与我交流!

扫描二维码

关注更多精彩

Si Stebbins Stack中的数学与魔术(八)——魔术《savvi magic》

袁亚湘院士上《开讲啦》变数学魔术啦!

如果道具不能检查,那就毁了它!(二)——一般道具篇

利息浅谈(七)——万物皆投资

约瑟夫问题与魔术(十)——魔术《完全控制》

点击阅读原文,往期精彩不错过!

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值