3.2 项目制作注意事项
3.2.1 烘焙前须执行的操作
烘焙就是将3ds Max场景中的灯光效果通过烘焙操作以贴图的方式导入到VRP编辑器中,从而得到一个具有真实光影的效果VR场景。
用户在烘焙场景前,须执行以下几项操作。
1.渲染效果图看灯光效果
烘焙前,用户必须先对场景各个角度进行渲染,通过渲染的效果图判断场景中的灯光效果如何。如果渲染效果不好,其烘焙后场景里的光影效果也不会理想。
2.更改重名模型
烘焙后的模型贴图名称由“模型名称+烘焙类型(Completemap或Lightingmap)+.tga”组成,所以前期的模型名称不能重名。
3.检查模型破面、重面等现象
烘焙前还有一个特别重要的操作就是将场景中的所有模型导入VRP编辑器中,通过在场景中漫游检查场景中的模型是否存在破面、重面等现象。如果烘焙后才发现这些问题,需要重新烘焙,重新导入,以致工作量增加,工作效率降低。
3.2.2 Completemap与Lightingmap的区别
不少人不明白将贴图烘焙成Completemap和Lightingmap格式到底有何意义,区别在哪里,以下将详细介绍Completemap和Lightingmap的区别,以便在烘焙时能更好地做出选择。
1. Lightingmap
优点:贴图清晰,但光感弱(如果是VRP的话可以在软件里调节对比度来改善)。
缺点:只支持3ds Max默认的材质(要出好的效果和表面丰富的效果的话就只能在Photoshop中自己画了,对美工要求很高),耗显存低。
2. Completemap
优点:光感好,支持3ds Max大部分材质,如复合材质和多维材质等,能编辑出很多丰富的效果。
缺点:贴图模糊,不过可以通过增大烘焙尺寸来解决,耗显存高。
既然是做虚拟现实,显存的优化是很重要的,所以室内和室外比较大的场景建议使用Lightingmap,在VRP里还可以调整和优化。小部件物体和产品可以考虑使用completemap,本身物体小且数目也不多就可以做出最佳最丰富的效果。
3.两种不同的烘焙类型在VRP里的形式
Lightingmap用的是两张贴图,Completemap用的是一张贴图。在烘焙尺寸同样大小时Lightingmap要比Completemap消耗的显存量高一倍,因为它是两张贴图。但经过VRP的优化后,Lightingmap的劣势就会转为优势了,VRP可以把Lightingmap压缩得很小,而Completemap已经这么模糊了,即使压缩也没什么意义。
Completemap如果要和Lightingmap达到同样的清晰程度,其代价就是消耗数倍的显存量和烘焙时间。
3.2.3 场景模型制作要求
VR场景模型的优化对VR-DEMO的演示速度影响很大,前期如果不对场景的模型进行很好的优化,到了制作后期再对模型进行优化时就需要重新回到3ds Max里修改模型,并进行重新烘焙后再导入到当前的VRP场景里,这样就出现了重复工作情况,大大降低了工作效率。因此,VR场景模型的优化需要在创建场景时就必须注意,并遵循游戏场景的建模方式创建简模。
虚拟现实(VR)的建模和做效果图、动画的建模方法有很大的区别,主要体现在模型的精简程度上。VR的建模方式和游戏的建模是相通的,做VR最好做简模,不然可能导致场景的运行速度会很慢、很卡或无法运行。制作场景模型的要求如下。
1.做简模
尽量模仿游戏场景的建模方法,但是不推荐把效果图的模型拿过来直接用。虚拟现实中的运行画面每一帧都是靠显卡和CPU实时计算出来的,如果面数太多,会导致运行速度急剧降低,甚至无法运行。模型面数的过多,还会导致文件容量增大,在网络上发布后也会导致下载时间增加。
2.模型的三角网格面尽量是等边三角形
在调用模型或创建模型时,尽量保证模型的三角面为等边三角形,不要出现长条形。一般长条形的面不利于实时渲染,还会出现锯齿、纹理模糊等现象,如图3-2-1所示,右边的图示推荐的是模型网格分布。
图3-2-1
3.表现细长条的物体尽量不用模型而用贴图的方式
在为VRP场景建立模型时最好不要将细长条的物体做成模型,如窗框、栏杆、栅栏等。这是因为这些细长条形的物体只会增加当前场景文件的模型数量,并且在实时渲染时还会出现锯齿与闪烁现象。对于细长条形的物体可以像游戏场景一样,利用贴图的方式来表现,其效果非常的细腻,真实感也很强,如图3-2-2所示。
图3-2-2
4.重新创建简模比改精模的效率更高
实际工作中,重新创建一个简模一般比在一个精模的基础上修改的速度快,在此推荐尽可能地新建模型。如从模型库调用的一个沙发模型,其扶手模型的面数为“1304”,而重新建立一个相同尺寸规格的模型的面数为“204”,制作方法相当简单,速度也很快,如图3-2-3所示。
图3-2-3
5.模型的数量不要太多
如果场景中的模型数量太多会给后面的工序带来很多麻烦,如会增加烘焙物体的数量和时间,降低运行速度等,因此,推荐一个完整场景中的模型数量控制在3000~5000个(根据个人机器配置)。
6.合理分布模型的密度
模型的密度分布是否合理对其后面的运行速度是有影响的,如果模型密度不均匀,会导致运行速度时快时慢,因此,推荐合理地分布VR场景的模型密度,如图3-2-4所示。左边是推荐的模型分布密度。
图3-2-4
7.相同材质的模型尽量合并,远距离模型面数多的物体不要进行合并
在VR场景中,尽量合并材质类型相同的模型以减少物体个数,加快场景的加载时间和运行速度;如果该模型的面数过多且相隔距离很远就不要将其进行合并,否则也会影响VR场景的运行速度。如图3-2-5所示左边是推荐的模型分布密度。
图3-2-5
提示
在合并相同材质模型时需要把握一个原则,那就是合并后的模型面数不可以超过10万,否则,运行速度也会很慢。
8.保持模型面与面之间的距离
在VRP中,所有模型的面与面之间的距离不要太近,推荐最小间距为当前场景最大尺度的二千分之一。例如,在制作室内场景时,物体的面与面之间距离不要小于2mm;在制作场景长(或宽)为1km的室外场景时,物体的面与面之间距离不要小于20cm。如果物体的面与面之间贴得太近,在运行该VR场景时,会出现两个面交替出现的闪烁现象,如图3-2-6所示。
图3-2-6
9.删除看不见的面
VR场景类似于动画场景,在建立模型时,看不见的地方不用建模,对于看不见的面也可以删除,主要是为了提高贴图的利用率,降低整个场景的面数,以提高交互场景的运行速度。如Box底面、贴着墙壁物体的背面等,如图3-2-7所示。
图3-2-7
10.用面片替代过于复杂的造型,可以用贴图或实景照片来表现
为了得到更好的效果与更高效的运行速度,在VR场景中可以用Plane(面片)替代复杂的模型,然后靠贴图来表现复杂的结构,如植物、装饰物及模型上的浮雕效果等,如图3-2-8所示。
图3-2-8