室内实例教程
      本章要点:
在完整地学习了以上内容之后,独立地制作一个VR场景已不再是个难题。整个操作流程也很简单:首先在3dsmax中建立模型,并赋予相应的材质,然后再为该场景设置好灯光,最后再应用熟悉的渲染方法对其进行渲染,这样,在3ds max中的工作就基本上完成了。接下来的操作也很简单,如应用VRP插件将整个场景导出至VR-Builder中,最后再应用所学知识在VR-Builder中对该场景进行相应的调整与设置,由此一个完美的VR场景就制作完成了。为了让用户再次熟悉整个操作流程,本章以一个典型的室内案例的制作全过程来帮助用户再次享受应用VRP制作VR场景的那种无与伦比的快乐感觉。
本章具体包括以下内容:
Max中的操作
导入到VRP
VRP中操作
发布Exe文件

8.1  3ds Max中的操作
在制作VR场景时,前期的工作大多数是在3ds max中进行的,如建立模型、设置材质与灯光。本节将为用户详细介绍一个室内VR场景的制作全过程。
提示:在制作本场景时,建议用户的机器符合以下配置,如表8.1所示:
        表8.1 用户机器配置明细表:
软件平台
最低配置
推荐配置
Windows 2000XP
CPUIntelAMD均可,最低800MHz主频,
内存:最低128M
硬盘:无要求,
显卡:32M
CPUIntelAMD均可,最低1.4Hz主频,
内存:最低512M
硬盘:无要求
显卡:64M
3DS Max7.0
Vrp 2.0424
室内VR场景在3ds max中的制作步骤如下:
步骤一:建立模型  用户可以打开本操作手册附带光盘中所提供的max文件,调用火星时代的一个室内客厅场景。如图8.1所示。
图8.1  max模型
提示:为了使场景不漏光,需要把场景做成一个封闭式场景。最后再将户外高尔夫球场隐藏,这样在渲染和烘焙时避免将太阳光挡住。
这里值得注意的是场景中的面数,如果能减少面数的物体尽量减少,能用单面的物体用单面。例如地面,可以用片做。如图8.2所示
图8.2  用片做地面
步骤二:设置灯光  VRP对灯光的类型与设置没有特殊要求,用户可以根据自己场景的需要进行相应的设置。当前场景中的灯光为场景模型中自带的。如图8.3所示。
图8.3  泛光灯为模拟为光
提示:有关灯光的设置在此不做详细介绍,具体操作可以参见火星时代教程《室内效果风暴》。
步骤三:给物体赋予材质  当前场景中模型所使用的材质类型全部为普通材质(standard)类型。如图8.4所示。
提示:目前VRP也支持高级灯光材质和建筑材质。这里说明的是用普通材质的物体烘LightingMap时自动产生两层贴图,第一层是物体本身材质,第二层是物体的光照。方便以后更换物体的材质。同时普通材质烘陪时产生错误的机率非常小。
步骤四:应用默认的渲染器进行渲染  应用3ds max自带的渲染器Scanline,渲染对当前场景进行渲染。如图8.5所示。
提示:目前用于渲染的渲染器很多,如InsightBrazilVrayFinalrenderMentalRay。按照渲染方式可以大致分为三类:一类为MAX自带Scanline线性渲染器,它是目前市场上应用最为广泛的渲染器。其优势是计算速度快,缺点是没有物理光照,渲染质量也一般,如果想出效果需用系统模拟光能传递方法。二类是第三方开发的渲染器:InsightBrazilVrayFinalrenderMentalRay。它们是属于全局光渲染。优点是传递模拟简单,缺点为速度慢。三类使用物理传递技术,如LightScape。优点渲染品质真实,可以达到照片级水平,缺点为速度慢。本场景使用了默认渲染器Scanline,
图 8.4  材质为普通材质
渲染,效果也非常不错。
最后提示一下,只有渲染出质量良好的效果图,才能烘焙出好的贴图,最终做出好的作品。
图8.5  Scanline渲染器
步骤五:渲染效果图  在对场景进行渲染之后可以通过渲染一张效果图看看场景中的材质与灯光是否合适,如果效果合适之后即可对当前场景进行烘焙操作。如图8.6所示。
图8.6  最终渲染的效果图显示
步骤六:烘焙场景  在3ds max中完成了场景的前期操作之后,接下来就可以对场景进行烘焙操作了。烘焙是整个操作过程中比较费时的一项工作,用户需要细心加耐心地进行该操作。其制作流程如下:
首先来了解一下烘焙的目的:烘焙就是把MAX中的物体的光影以贴图的方式带到VRP中,以求真实感。相反,如果将物体不进行烘焙而直接导入到VRP中,其效果是不真实的。如图8.7所示。
图8.7  没有烘焙与烘焙后的场景效果比较
在了解了烘焙的目的之后再来了解一下烘焙方式与烘焙贴图面积的设定原则,其详细设定如表8.2和8.3所示。
8.2  烘焙方式的设定原则
物体分类
烘焙方式
   
大面积的物体,如果有平铺贴图
使用LightingMap 方式烘焙
如:地面
大面积的物体如果没有贴图
使用CompleteMap方式
如:墙面等
如果一个物体虽然有贴图,但是贴图并没有平铺
使用CompleteMap方式烘焙
如:混油茶几台面等
不需要烘焙的物体
不要隐藏这些物体,只须将其冻结即可
如:植物、饰物、金属、玻璃、镜子等
表8.3  烘焙贴图面积的设定原则
     
         
   
大面积的物体
5121024的贴图
如:地面与墙面
中等面积的物体
256贴图
如:金属板
3ds
小面积的物体
128贴图
如:沙发垫
细小物体
可以不进行烘焙
如:沙发腿
玻璃、金属
不需要烘焙
如:餐桌面和腿
自发光物体
不需要烘焙
如:筒灯、台灯罩
面片装饰物体
不需要烘焙
如:植物、户外高尔夫球场
烘焙后的效果如图8.8所示。
图8.8  物体烘焙
将当前场景中所有物体按照上面的烘焙原则进行编组,方便我们以后进行烘焙,当前场景已经把物体编成八组,用户可以直接选择组烘焙就可以了。
提示:烘焙是一个漫长的过程,当前场景烘焙大约用了三个小时,时间长短跟机器配置有关。
技巧:在烘焙时请将背景设置为灰(即R128G128B128),因为灰是中间,由此烘焙后的物体边缘不易出现明显的杂
选择地面:烘陪时选择LightingMap烘焙方式,贴图大小为1024×1024
选择墙体1024组烘焙:烘焙时选择CompleteMap烘焙方式,贴图大小为1024×1024
选择512组烘焙:选择LightingMap烘焙方式,贴图大小为512×512
选择256组烘焙:选择LightingMap烘焙方式,贴图大小为256×256
选择128组烘焙:选择LightingMap烘焙方式,贴图大小为128×128
选择CompleteMap256组烘焙:选择CompleteMap烘焙方式,贴图大小为256×256
选择茶几组烘焙:烘焙时选择CompleteMap烘焙方式,贴图大小为256×256
提示:具体烘焙参数设置及含义请详见网站www.vrplatform/helps/tut-10min/tut-10min.htm中的10分钟教程。
8.2  导出至VRP中
在进行烘焙操作完毕之后,在3ds max中最后的一项操作就是就要利用Vrp-for-Max插件,将这个场景导出至VRP中。该操作请参见www.vrplatform/helps/tut-10min/tut-10min.htm中的10分钟教程。
提示:用户也可以在对场景中的部分物体进行烘焙之后就将当前场全部导入到VRP中,通过导出信息窗口查看是否有其他的错误,以便事先解决这些错误。
8.3  VRP中操作
在3ds max中的前期操作完成之后,接下来操作就是应用功能强大的VRP-Builder编辑当前场
景。其制作步骤如下:
步骤一:查看贴图量  选择贴图】∣贴图管理器】命令,在弹出的显存贴图管理器对话框中查看贴图量。如图8.9所示。
图8.9  显存贴图管理器面板
提示:当将场景导入到VRP中时,物体的贴图量可能会超过机器显存,甚至高出几倍,这样会导至机器运行很慢,或者无法运行,所以建议一导进VRP就可以进行相应的减少贴图量操作。
步骤二:调整贴图格式以减小贴图量  在显存贴图管理器对话框中选择调整整体贴图加载格式按钮,然后在弹出的贴图加载格式设定】对话框中,格式选项下普通贴图】和【透明贴图】选项中的A8RG888改为DXT3,这样会把贴图量在当前的基础上缩小四分之一。如图8.10所示。
图8.10  调整物体贴图格式
步骤三:调整贴图的尺寸以减小贴图量  除了通过设置贴图的加载格式来调整贴图大小之外,还有一种方法也可以有效地减少贴图量,那就是通过缩小原始图片大小来调整贴图量。如果设置贴图尺寸缩小比例为1/2,这样也会把贴图量在当前的基础上缩小为原来的四分之一。如图8.11所示。
图8.11  调整物体贴图尺寸大小
提示:由于贴图量压缩太大后,物体的纹理贴图会显得很模糊,也会出现许多斑点,所以,客户在对场景的贴图进行优化时,请在视觉效果与运行速度上做好权衡。
步骤四:预览修改参数后的贴图效果  在经过以上操作之后,现在最老的32M显卡的机器上也可以运行此程序了,但这样做后果可能会造成大面积物体贴图模糊。不过可以单独将物体的格式改为A8R8G888格式,并可以设置贴图的大小。如图8.12所示。
图8.12  墙体与顶面产生模糊
步骤五:单独调整贴图格式与大小 双击模糊的物体,在操作栏中选择属性,选择第一层贴图】∣查看,就可以调出它的材质编辑器,将物体的格式改为A8R8G8B8,大小改为1024×1024,然后单击应用。这样,再看顶面贴图清晰多了。如图8.13所示。
图8.13  单独更改墙体尺寸与格式
步骤六:导入与导出 在将整个场景导入到VRP中后,如果发现某个物体烘焙的效果不好,可以返回到MAX中将该物体重新烘焙,然后单独把这个物体导出,存成VRP格式文件,然后应用VRP的导入功能,再将该物体单独导进来并删除原物体即可。
提示:这里值得注意的是千万不要再把整个场景导进来。
步骤七:设置物体双面  按下Ctrl+A组合键将场景中所有物体都选择,然后在操作栏中单击物体属性,在材质选项卡下选择一般属性,选取双面渲染】复选框,这样所有物体就都以双面材质显示。如图8.14所示。