浅谈影视制作中高精度自然对象的数字化制作流程和实现效率分析

2023-03-08 22:59孙亚晓
现代电影技术 2023年2期
关键词:数字模型山体纹理

王 钊 孙亚晓

1.北京乾像时空数字科技有限公司,北京 100020

2.郑州城建职业学院信息工程系,河南郑州 450052

1 引言

在现代电影拍摄过程中,创作团队常常会选择在各种各样优美壮丽的大自然环境中演绎故事的发展。比如张艺谋导演的《英雄》,取景地就有著名的甘肃敦煌沙漠、内蒙古额济纳旗胡杨林、四川九寨沟等。但在某些类型的影片创作过程中 (典型的例子就是科幻题材电影),常常无法找到适合影片拍摄的实景地。而且随着电影相关技术的发展,观众对于各种视觉奇观的欣赏要求也越来越高,于是使用基于计算机图形学的数字化制作手段来实现各种自然界视觉奇观的需求越来越迫切。2009年上映的影片 《阿凡达》,制作团队通过计算机生成图像(Computer-generated Imagery,CGI),创造了一个前所未见的地外星球“潘多拉”,其超凡绝伦、美轮美奂的自然风景震撼了全球电影观众,也把自然环境的数字化制作水平提升到了前所未有的高度。现在,采用数字化手段制作影片中各种各样的自然环境元素已经在影视后期行业获得了广泛应用,极大地拓展了电影艺术中视觉美学的边界。

图1 电影 《阿凡达》中CGI技术制作的悬浮山群

2 当前影视后期制作流程中数字化资产主流实现技术

计算机图形学(Computer Graphics,CG)经过近半个世纪的发展,现在已经颇为成熟。通过各种技术手段,制作人员在计算机上描绘出各种自然界的元素,从各种各样活蹦乱跳的生物到千奇百怪的植物,再到层峦叠嶂的群山,抑或是波澜壮阔的海洋,都能够达到以假乱真的真实度。实现的技术简单来说,大致如下:

(1)首先采用各种几何结构描述出数字模型的造型。常见的几何结构包括了三角面、四边面、NURBS (Non-Uniform Rational B-Splines)曲面、细分曲面(Subdivision Surface)等。

(2)给数字模型分配好UV 空间,用来实现对数字模型的纹理描述。

(3)使用各种光照模型 (Shading Model),结合各种类型的纹理贴图 (色彩贴图 (Diffuse Map)、凹凸贴图 (Bump Map)、法线贴图 (Normal Map)、高光贴图 (Specular Map)、置换贴图 (Displacement Map)等),实现数字模型的基础可视化。

(4)通过三维软件和渲染引擎 (Renderer),实现对数字模型的复杂光照效果,最终完成自然元素的数字化制作过程。

虽然整个数字化制作流程实现的基础本质都是数学、物理学和计算机科学,但是制作人员却并不需要掌握相对应的专业知识。事实上,制作人员只需要学习相关的电脑软件操作技能就能迅速融入数字化制作流程中。目前业内主流的电脑软件主要有以下类型:

(1)全流程大型三维软件主要有Autodesk 公司出品的Maya、3ds MAX,Maxon 公司出品的Cinema 4D,NewTek公司出品的LightWave,The Foundry公司出品的MODO,开源软件Blender等。

(2)数字化雕刻软件主要有Pixologic公司出品的ZBrush,Autodesk 公司出品的MudBox,Pilgway公司出品的3D Coat等。

(3)专门被设计用来处理模型UV 信息的软件,主要有Rizom-Lab出品的RizomUV,Polygon-Design出品的Unfold3D 等。

(4)为数字模型绘制纹理贴图的软件主要有Adobe公司出品的Photoshop、Substance 3D Painter,The Foundry公司出品的Mari等。

3 某国产影片中自然山体的数字化实现技术流程

在某国产神话题材影片中,导演需要通过完全数字化的手段呈现一个玄幻风格的架空世界。在这个虚幻时空内,空间中悬浮着数以百计的 “张家界风格”的山峰。概念设计师设计完成概念图稿之后,制作团队开始制作大量数字资产——通过数字化技术手段实现各种风格的山体。

整个制作流程使用了ZBrush、MudBox、Maya、RizomUV、Substance 3D Painter、Arnold 软件,具体的技术实现路径如下所述:

(1)在概念设计图的基础上,收集和拍摄大量张家界山体的真实高清晰度照片作为制作参考。

(2)使用数字化雕刻软件制作多种造型的山体,使用ZBrush的自动拓扑 (Remesher),生成规范标准的四边面模型,并将每个山体对象的四边面面数控制在100K 以内。

(3)将重新拓扑后的山体模型以OBJ格式从ZBrush导出,读入Maya,检查模型是否完整,是否具有非标准结构(例如层状体面(Lamina Face)、非流形几何体 (Nonmanifold Geometry)、零面积面(Zero Area Face)等),若存在这类问题,将其修复。

图2 制作完成的部分山体数字模型

图3 部分山体模型的UV Tiles

(4)为完善后的模型创建UV 信息,为了在之后的纹理绘制阶段能够获得足够细腻的细节表现,UV 分布采用UDIM (U-Dimension)Tile,每个山体的UV Tiles控制在4个以内。(5)将UV 信息添加完成后的山体模型读入ZBrush或MudBox,具体采用哪种雕刻软件视个人习惯而定。初始的山体模型结构较简略,在雕刻软件内,将其增加若干细分级别后,采用各种笔触(Stroke),结合Alpha纹理 (还可以采用Stencil投射模式)开始为模型添加各种细节。在雕刻过程中,雕刻层(Sculpt Layer)是不可或缺的雕刻效果管理手段。山体细节的数字化雕刻过程本质上是一种艺术创作,要创建自然优美的山体结构细节需要制作人员具备较好的美学素养。一般来说,在数字雕刻软件内,为了让数字资产获得电影级别的细节表现,最高的细分级别至少要达到8000万面数以上。

(6)完成模型雕刻工作后,使用正确的贴图输出设置,输出置换贴图(Displacement Map)、矢量置换贴图 (Vector Displacement Map)、AO 贴图(AO Map)等。

(7)模型在雕刻软件内雕刻完成后,该文件还不能直接导出去作为渲染模型使用,因为要表现足够多的细节会使模型细分级别太高而导致模型文件太大,如果直接OBJ格式导出给Maya等三维软件,会碰到文件打不开或者运行时间漫长、操作缓慢、渲染时间成倍增长等问题,这些会严重影响项目的进度,导致效率降低。因此,在雕刻软件中制作完成的模型,需要通过降低细分级别来减少面数,根据项目的要求来控制合理的面数,一般来说,影视制作中通常控制在10万到50万范围为宜。

(8)将导出的OBJ 模型读入Substance 3D Painter或Mari等纹理绘制软件内,为数字模型绘制各种岩石纹理、污渍、水迹等细节。在纹理绘制过程中,务必认真分析真实山体照片中捕捉到的细节,能否完美再现真实山体具有的纹理细节特征,是后续渲染阶段效果优劣与否的关键之一。纹理绘制完成后,采用正确设置将基本颜色 (Base Color)、高度 (Height)、粗糙度 (Roughness)、金属度(Metallic)、法线 (Normal)等类型贴图导出。其中高精度、高质量的Base Color和Normal贴图对于获得优秀的渲染结果较为重要。

图4 部分山体的纹理贴图

(9)在Maya内将各种类型的贴图依次读入,通过正确的连接方法链接到着色器 (Shader)上,再将Shader赋予渲染模型。对于Arnold 渲染器,至关重要的技术点包括了务必将TIFF、TGA、EXR 等格式的贴图转换为 tx格式,渲染模型的细分迭代次数(Subdivision Iterations)设置为合适的级别等。

图5 部分岩体的渲染测试效果

4 数字化资产整体流程的实现效率最优化研究

在商业电影制作流程中,影片最后呈现的视觉效果和有限的制作周期 (基本等同于制作投入的成本)之间总是存在着矛盾。多数情况下,制作团队总是希望能够在有限条件下,尽可能实现最优质的画面效果。但在现实情况下 (尤其是各种中小投资规模的影视项目),制作团队有时候又不得不努力在好的视觉效果和计算机有限算力之间寻找一个平衡点。以下以某一岩体的数字化制作过程为例,浅析影响效果最优化实现效率的若干影响因素。

4.1 与最终效果关系最密切的几种贴图类型

对于数字化资产制作来说,鉴于用于描述数字模型结构的多边形数量需考虑视图操作反馈的互动效率,把多边形面数控制在适量数量内是非常必要的,那么主要影响数字模型呈现效果的就是纹理贴图。在当前影视后期制作流程中,主流的纹理贴图类型主要有基本颜色(Base Color)、高度(Height)、粗糙 度 (Roughness)、金 属 度 (Metallic)、高 光(Specular)、次表面(Subsurface)、凹凸贴图(Bump Map)、法线贴图 (Normal Map)、置换贴图 (Displacement Map)、矢量置换贴图(Vector Displacement Map)等,它们将被输入给光照模型的各个通道,然后与渲染器的灯光一起,决定了数字资产最终的视觉效果。在众多的贴图类型中,最关键的几种有Base Color、Normal Map 和Vector Displacement Map,高质量高精度的这几类贴图将确保数字资产获得优秀的视觉呈现。Base Color、Normal Map这两类贴图主要通过Substance 3D Painter或Mari等纹理绘制软件创建,其绘制过程主要依赖制作人员的美学素养和绘画功底,目前的纹理绘制软件被设计得对于艺术创作者来说已经足够友好,整个纹理绘制过程是一次愉快的艺术创作。

下面重点分析矢量置换贴图和传统置换贴图两种贴图类型。置换贴图在塑造数字资产高细节度方面占据非常重要的地位。传统置换贴图的创建方法是数字雕刻软件根据模型较低细分级别和较高细分级别之间的细节进行比较计算,然后输出一套含有两个不同级别之间差异的贴图。置换贴图的视觉表现为灰度图像,其中的黑白强度变化被用来在渲染计算过程中对网格表面进行推入或者拉出操作。置换贴图与法线贴图最大的区别就是置换贴图会显著的改变数字模型的轮廓结构,而后者并不会。许多有经验的制作人员在实际制作过程中,总结出如何最高效地综合使用以上两种贴图类型:法线贴图负责表现最高细分级别上最高细节的部分,而置换贴图用来呈现中等细分级别上的细节信息。多数情况下,置换贴图和法线贴图的综合使用已可重现高细分级别模型的细节,但是传统的置换贴图也有其固有缺陷,简而言之,置换贴图对于基础网格多边形上大于垂直角度的表面变化无能为力,矢量置换贴图通过采用浮点精度的RGB颜色信息记录网格上各个部分的变形位移信息解决这个问题。考虑到现在主要的渲染引擎都已完美支持矢量置换贴图,传统的置换贴图终将被淘汰。

关于矢量置换贴图还有一些技术细节值得一提。目前为止,矢量置换贴图在业内尚未标准化,不同的渲染引擎会采用不同的方式处理矢量置换贴图。在某一个渲染引擎中完美复刻出高细分级别模型细节信息的矢量置换贴图在另一个渲染引擎中的渲染结果可能大相径庭,所以制作人员需要首先为自己的制作流程选择正确的颜色顺序和方向组合。下面以Autodesk 公司推出的数字雕刻软件Autodesk MudBox和ZBrush这两个主流的数字雕刻软件为例分别介绍以下具体的设置,渲染引擎以Maya平台内的Arnold为例。

对于Autodesk MudBox,由于其最早的开发背景是维塔数码 (Weta Digital)的研发部门 (Weta Digital的三维动画软件平台是基于Maya的),其矢量置换贴图的导出设置非常简单明了。

关键点在输出的矢量空间为绝对切线(Absolute Tangent),贴图格式为单精度浮点(32-Bit Floating Point)EXR。而在ZBrush中,正确的输出设定略为复杂。

主要设定在翻转和转变 (Flip And Switch)和Tangent Flip And Switch,前者是世界空间(World Space),而后者是切线空间 (Tangent Space),这两种空间的区别在于它们适用不同的对象。世界空间适用于静止不动的几何体对象 (例如各种布景物体),而切线空间适用于有几何体变形的对象,多数情况下,切线空间是首选。Tangent Flip And Switch选项一共有48种设定,如何判断哪种设定对于后续采用的渲染引擎是正确的呢?ZBrush提供了一个诊断文件帮助用户做判断。

诊断文件由OBJ文件、一张漫反射贴图和一张矢量置换贴图组成。将它们读入Maya,做好适当的连接和设定,使用Arnold渲染出来,注意观察48个椭球体中,有一个将在矢量置换贴图的作用下,呈现为完美的球体。若在Maya 2018+MtoA 3.3的环境下,27号椭球体呈现为完美的球体,则在ZBrush中Tangent Flip And Switch需要被设定为27。一般矢量置换贴图输出的图片格式为EXR,可以选择32-Bit Floating Point或者16-Bit Floating Point,两者的区别在于后者在输出的时候需要设定正确的深度因子,而前者不需要。鉴于现在主流渲染器已能完美支持32-Bit贴图,因此32-Bit Floating Point为首选。

4.2 贴图输出尺寸和渲染效率

目前的影视后期制作流程中,数字资产的纹理贴图常见的分辨率尺寸有2K、4K、8K 等 (Autodesk MudBox甚至支持16K、32K 超高分辨率的贴图输出)。制作流程中采用何种分辨率的贴图需要依据项目需要而定。对于Full HD 1080P (画面分辨率为1920×1080)或者2K Film (画面分辨率多为2048×1080)项目来说,为了满足中近景特写镜头的细节表现需要,纹理贴图分辨率至少需要多个UV 象限的4K UDIM Tile。如果项目中有高精度数字资产的极限细节表现,那么在Base Color、Normal Map和Vector Displacement Map上采用多UV象限的8K UDIM Tile也是必要的选择。目前的主流渲染器中已经有很多支持对贴图文件做镶嵌切片(Tiled)和纹理映射 (Multum In Parvo)预处理,这步操作极大地提高了高分辨率纹理贴图的渲染效率(在纹理文件的I/O 性能上,预处理后的效率是未预处理的数百倍之多)。Arnold 渲染引擎的TX图片格式采用的就是这种预处理方法,即使是近百张8K 分辨率的纹理贴图 (总数据量约20G),渲染引擎仍然能够在几十秒内完成I/O 处理。

4.3 CPU 渲染器和GPU 渲染器的选择

早期的三维渲染引擎都是基于CPU 的,近年来,随着GPU 计算性能的突飞猛进,GPU 架构的渲染引擎也随之出现,例如Maxon 出品的Redshift,NVIDIA 出品的Iray,OTOY 出品的Octane等,而传统的CPU 渲染器如Arnold、Vray也纷纷实现了对GPU 的加速支持。那么在项目制作流程中,CPU 和GPU 这两种该如何选择呢? 笔者认为截至2022 年,两者之间仍然没有分出来明显的胜负,各有各的优劣。GPU 单体效率确实更高,但GPU 价格近年来始终居高不下,这大大减缓了GPU 渲染器的市场推广速度。而CPU 渲染器的优势在于CPU 的价格始终保持稳定且相对低廉,目前市场上仍然保有大量CPU 架构的渲染农场,这更加降低了CPU 渲染器的渲染成本。未来CPU 与GPU 之争会如何发展,让我们拭目以待。

5 结语

影视行业中数字化制作水平的提升堪称日新月异,各种各样的新技术、新软件不断被计算机图形学家们发明出来,艺术家们实现自己的各种艺术幻想也越来越不受约束。当1986年皮克斯动画公司制作出简陋 (但是极其有趣)的 《顽皮跳跳灯》(LuxoJr.)时,谁能想到十多年后咕噜这个纯电脑生成的角色已经令全球电影观众无法分辨其真实存在与否,基于计算机图形学的数字化制作技术未来能够发展到什么高度,让我们广大从业人员共同努力,一起奋斗。

猜你喜欢
数字模型山体纹理
数字模型分析在垂直型食物嵌塞治疗中的应用
美国太空部队与工业部门分享内部数字模型
基于BM3D的复杂纹理区域图像去噪
济南市山体修复中的植物应用与技术——以济南市卧虎山山体公园为例
使用纹理叠加添加艺术画特效
TEXTURE ON TEXTURE质地上的纹理
3D打印数字模型的独创性认定
我国煤炭物流网络体系优化及政策建议
我国煤炭物流网络体系优化及政策建议
消除凹凸纹理有妙招!