三维动画场景的优化

时间:2022-02-28 04:09:34

三维动画场景的优化

摘 要: 动画场景是动画影片的一个重要组成部分,一般来说,场景与角色相比往往比例较大,包含的对象种类多样、数量繁多,对三维动画制作来说,这种情况往往会导致庞大的数据量,对于计算机硬件造成比较大的负担。因此,探讨三维动画中对于场景的优化方法和思路,具有重要意义。

关键词: 三维动画场景 场景设计 优化制作方案

场景设计是动画创作的一个重要环节,一般来说,影视动画场景设计就是指动画影片中除角色造型以外随着时间改变而变化的一切物的造型设计。从动画场景与角色的关系来看,“影视动画表现的主体是角色,场景就是随着故事的展开与角色发生关系的所有景物,包括角色所处的生活场所、陈设道具、社会环境、自然环境及历史环境,甚至包括作为社会背景出现的群众角色,都是场景设计的范围和所需完成的任务”[1]。因此一般情况下,场景主要是衬托角色和故事情节的,它是“配角”。另外,在三维动画片中,对于场景的制作的技术方面也有相应的要求。三维场景一般来说数据量比较大,比如一个小镇、城市等,里面会包括建筑、树木、等多类型对象,即使是室内的场景,也会由许多细小的对象组成,比如除了房子的模型外,可能还会包括座椅、书架、灯具、餐具等许多琐碎的对象,而在许多情况下,建筑对象是场景的主体部分。如果按照单一建筑模型的一般方法创建模型的话,当场景中出现大规模的建筑时,一般计算机往往无法承受如此巨大的工作量,并且会极大增加渲染时间,因此我们在创建的时候,必须考虑场景的优化,探索优化的建模方式对于创建大规模的三维动画场景,具有非常重要的意义。

在科技高速发展的今天,计算机硬件和软件技术的发展一日千里,虽然硬件对于我们的限制越来越小,我们可以使用越来越多的面数来构建模型,但是不管如何,在保证效果的前提下,模型应该尽可能精简,使用尽可能少的面数来达到效果,应该是我们永恒的追求。本文将主要以场景制作中的建筑外观的制作和优化方案为例,浅谈三维动画场景的优化制作方案。

首先,室外建筑场景的优化,一般是以摄像机的位置、方向、运动路径为核心来考虑优化方案的。我们可以根据这个来确定场景在镜头中的视觉影响,划分近景、中景、远景,确定建筑的哪些角度是正对摄像机、哪些角度是摄像机中看不到的,然后在建模的时候采用不同的思路和技术进行处理,从而达到优化场景的目的。

优化的总体原则是:在不影响或者尽可能少地影响效果的前提下,尽可能精简模型的面数,可以从以下几方面考虑。

1.摄像机中能看到这个面吗?

将摄像机中看不到的面删除,这应该是影响最小并且效果最直接的方法。当然,有些特殊情况下,看不到的面也会对画面产生影响,比如使用一些全局渲染的情况,光线必须借助面进行反射、计算等,即使这些面背对摄像机,但是会对光线反射产生影响,那么我们就需要根据情况决定是否需要删除该面。如果影响不大,可以考虑删除。

比如图1中的立方体,一般情况下我们可以将模型的底面删除,因为它的底面在摄像机中是看不到的。

这种思路在实拍电影时非常常见。比如某些街道、城镇是人工搭建的话,很多建筑并不是完全搭建出来的,一般只有正面或者会被摄像机拍摄到的面才会搭建出来,拍摄不到的面则可能是空的。这样做的目的完全是节约成本——既然看不到,何必把它做出来呢?同样道理,我们在为这些建筑建模的时候,也可以把摄像机中看不到的面删除,如图2所示。

2.需要这么多面来实现造型吗?

这一点其实也是建模过程中永远需要考虑的问题,角色、道具等一切三维模型,我们都追求使用最少的面达到最好的效果。如图3所示,两个模型的面数相差非常巨大,但是我们实际看到的效果却完全没有差异,因此,图中左边的情况是必须避免的。

3.按照远、中、近的原则来决定建筑模型面数的低、中、高,合理分配资源。

按照物体距离摄像机的距离,大致划分成远景、中景、近景,某种程度来说也就是根据物体在画面中的影像效果来划分。一般情况下,远景的对象往往只能看到轮廓,所以在制作的时候不需要非常多的细节,那么必然使用最少的面数,有时甚至可以采用单一平面加贴图的方法来实现;中景的对象一般可以看到一定细节,因此在制作时需要适当增加面数,并对细节做适当表现;而近景或者出现特写的部分,无疑在模型细节、贴图精度等方面都要求最高,我们在制作的时候也需要使用相应多的面数来表现。具体如下:

远景建筑场景的表现:远景建筑距离摄像机最远,我们可以采用最节约的方式来表现。通常思路是建立极简单的平面模型,赋予一个建筑的贴图借助alpha通道实现透明,如图4所示。使用相同方法,即可使用非常少的面数来达到远景的大规模建筑效果,如图5所示。

中景部分:相对于远景来说,中景部分的建筑模型应该是一个相对完整的三维模型,当然在细节方面和前景的相比要少一些。在制作手段方面一般考虑完整模型和贴图结合,即在相对完整的三维模型上,通过贴图来表现大部分细节,辅以适当的模型细节。

如图6中的建筑,在正门上方的雨棚、台阶是建模得到的,因为这两部分造型比较突出,并且相对重要,而窗户、二楼窗户的雨棚,都是通过贴图来实现的,大大减少了多边形数量。

近景部分:近景或者出现特写的部分,模型在画面中所占的比例最大,具备大量的细节造型才能使画面丰富,因此我们会使用最多的面数把造型细节充分塑造出来,给观众最大的视觉冲击力,如图7所示。

4.场景的自动优化

很多时候,摄像机不是固定不动的,它可能在场景中穿行拍摄,那么,模型与摄像机的距离也就是一直变化的,因此模型的精度不应该一成不变,然而,如果摄像机每运动一定距离都要手工调整场景模型的精度的话,就会极大地浪费时间。针对这种情况,许多主流三维动画软件,比如maya,3ds max,xsi等都提供相应工具,以便对场景中的模型进行自动优化,比如3ds max软件中的level of detail工具,简称LOD,就是一个非常方便的工具。Level of detail工具的基本原理根据对象到摄像机的距离来自动切换模型的细分级别(也就是模型的面数),当对象离摄像机远时,模型和贴图自动切换为低精度;当对象离摄像机中等距离时,模型和贴图自动切换为一般精度,同样,当离得非常近时,模型和贴图自动切换为高精度的。因此,我们在制作的时候,需要分别制作几个级别的模型和贴图,使用lod工具,达到根据距离自动切换模型精度的效果,从而大大节省制作时间。具体方法如下:

(1)分别制作高、中、低面数的三个版本的模型,也可以分别制作三个精度的贴图。确保三个模型的枢轴点位置都相同。

(2)将三个版本模型命名以便于区别,将他们对齐到同一位置,确保完全重合,同时将三个模型群组。

(3)使用level of detail工具,创建一个新的集合,将三个不同精度的模型添加进来,设置阈值来决定显示相应的模型,阈值的原理是根据对象在画面中的显示大小或者像素数量来确定显示哪一个精度的模型,比如对象离摄像机较近时,在画面中所占比例也较大,那么,系统将自动显示高精度版本的模型,并且自动把其余两个版本的模型隐藏。

(4)如果对象里摄像机较远时,自动显示低精度版本的模型,自动将其余两个版本的模型隐藏。通过这样的智能控制方式,可以极大地节约资源,节约渲染时间。

总体来说,三维动画中的场景一般包含数量庞大的建筑、植被、道具,有时甚至包括一些群众角色,当所有对象同时出现在一个镜头里的时候,往往会对计算机硬件产生非常大的运算压力,而一般个人电脑是比较难以负荷的,即使专业的图形工作站可以运行,也会优化场景的,因为可以大大节约计算和渲染的时间等。所以,场景的优化是三维动画制作的一个重要课题,是制作的一个重要部分。以建筑模型为例,在优化时始终围绕对象在摄像机中的所占比例和角度来考虑和选择工具。建筑背对摄像机或者镜头中看不到的面,可以考虑删除;使用尽可能少的面数来构建模型,不浪费面;使用贴图表现的效果,尽量不使用建模手段来实现;对于摄像机有运动的情况,可以考虑使用LOD(level of detail)的方式来达到模型根据镜头距离自动切换不同精度的效果,从而最大限度地减少场景模型对于系统的压力,提高制作效率。

参考文献:

[1]汪璎.动画场景设计[M].北京:东方出版社,2008,8.

[2]孙立军.大型动画电影《小兵张嘎》三维动画创作[M].北京:海洋出版社,2007.

[3]刘永刚.三维场景设计与制作[M].南京:东南大学出版社,2011.

[4]贾否,路盛章.动画概论[M].北京:中国传媒大学出版社,2005.

[5]廖祥忠.数字艺术论[M].北京:中国广播电视出版社,2006.

[6]李四达.数字媒体艺术概论[M].北京:清华大学出版社,2006.

上一篇:高职教育课程教学改革刍议 下一篇:情境创设,进入角色,解决问题