燃烧的模型
另外,一款独立的系统能将皮肤置于最上方,但只是某些特定区域才需要使用此系统;因为绝大部分的表面都是透明的。“同其他的角色制作相比,要让马的肌肉、连接组织、皮肤协同工作真是件折磨人的工作。”
因为那些元素恶魔——风魔、尘魔、水鬼——有时以人形出现有时又以恶魔的形态出现,于是特效小组首先扫描演员的形体,然后制作他们的数码替身,之后再按照其真人进行渲染。尘魔是微粒特效再加上合成特技的产物,它看上去就好像是幻境,一个由风沙、尘土、污浊的空气聚敛而成的综合体。
“最终的效果真是恰到好处,” Steiner说道。“如果空气太过稀薄,你根本看不到它,但是如果太厚重,他看上去又像是个球。我们将他的面部打碎,这样他可以幻化成各种形态。同样,我们也是这样处理泥魔的。”
而在魔鬼英雄恶灵骑士的制作上,我们遇到的麻烦也是独一无二的。“他穿着厚重的夹克,骑着拉风的地狱摩托,肩膀上顶着个冒火的骷髅头,双手、车轮、整个摩托都包围在熊熊烈火中,”Mack说道。为了让骷髅骑士能和Nicholas Cage以及他的替身相匹配,工作人员需要给这个骷髅骑士赋予人类的情感。开始,他们想在镜头前通过转动骷髅头的某些部位来达到感情宣泄的目的,但是最终他们还是决定让诡异的地狱火来表达情感似乎更加合适。
图2
点燃地狱火
“一提到地狱火,人们就会将它描述成一种超自然现象,”数字特效总监Ken Hahn说道。“它不用消耗任何一种原料,也不会产生烟雾。可是电影中它非存在不可,于是我们使用它来表达恶灵骑士的情感。美丽的Roxanne出现在他的面前,那种炽热的火红便消失了,取而代之的则是微妙而柔和的火焰。但是,当他火冒三丈的时候,火焰变得充满敌意,让人畏惧。”
恶灵骑士快速移动时的火焰是CG制作的,索尼影视的Patrick Witting负责控制计算流体仿真模拟。“只有涉及到核心计算时,才会使用到Maya solver,” Mack说道。“我们开发了Houdini前后端应用程序和一个渲染器。”
为了能够很好地利用Maya solver修改流体变量(速率、温度、密度和一定数量的燃料等参数)以及较为精确地放置燃料,Witting开发了一款Maya插件,它可以从 Houdini纹理贴图和公式中读取数据。“我们可以使用着色的贴图精确地划定放置燃料的位置,” Witting说道,“又或者是编写一些3D或者是2D的噪声函数来生成块状的非燃料区域或是形状。”
Maya插件读取了Houdini的信息,然后修改流体变量。这样我们能够以一种更精确的方式同solver交互而不是直接通过Maya force的改变来实现效果的改变。如果只是希望通过force来制作效果动画,制作人员会受到一定的局限。
随着时间的推移,主角、摩托、“西部牛仔”、骷髅马的装备基本制作完毕。“这些装备控制起来很方便,” Witting说道。“每一件装备都包含八到十个部位,而每个部位上都装有各种旋钮。”艺术家利用这些旋钮可以控制颜色、速度、动作、火焰的密度,以及火焰包围时角色外形的质量,这样可以实现骷髅、轮胎、摩托等等的单独模仿,也好生成更多可供Mack选择的镜头。
图3
“本来Patrick Witting和他的小组要开发大量的迭代算法,” Mack说道,“但是我们慢慢地把它们的数量减少,不断地对它们进行改进,最终从中间挑选出一个来使用。一个参数的数值极易对另一个参数的数值做出反应,因此它们彼此间会以意想不到的方式进行交互。”
一个基于 RenderMan RI points的自定义解决方案充当了火焰的渲染器。“你可以把它称作是volume render solution(体积渲染解决方案),” Witting说道。“基本原理就是它将一个容器填满,然后角色从中间穿过。” Steve Marshall编写了火焰的物理着色器,然后在Houdini中执行。“一个最简单的着色器是一个典型的从炽眼的白光过渡到橙色最后到红色的光谱。”
由于这种渲染会占去大量的内存,工作人员将镜头切分成多个图层。“如果某一帧,恶灵骑士身形较大,那么我们需要把他切分成100片。” Mack说道。“最糟的时候,制作一帧就要占据100个cpu。”