一个复杂的VRML场景的设计
虚拟现实的设计中必须考虑加入重力(gravity)和碰撞(collision)的效果,以使虚拟现实的场景和生活中的相似。建模者需要生成代理几何模块(一系列的调用指令),其作用在于是浏览器在虚拟现实场景中只需监测一个很小的子目标,而无须计算虚拟场景中所有目标的重力和碰撞效果,最大限度的减少浏览器的工作量,并改善VRML的演示效果。
还必须考虑VRML文件的体积。VRML文件对自由曲面描述方式一直是基于ploygon,文件中描述了曲面上各个点在场景中的位置,故而文件中产生了大量的数字,致使文件体积庞大,NURBS(非均匀有理B样条,Non-Uniform B-Splines)是一种在3D模型空间中,用曲线和曲面表示物体轮廓和形状的方法,简化了对复杂曲面的描述,VRML97(VRML的最新国际标准)的扩展标准里已经加入了NURBS的描述语句,NURBS在VRML上的广泛应用使得三维模型文件变得很小,效果也要比ploygon的描述方式好的多,另外,VRML文件格式支持Zip压缩,也使模型文件体积进一步缩小,减少对网络带宽的要求,却不影响浏览效果。
加入虚拟颜色、材质和灯光。各个浏览器有不同的染色器(负责转换颜色),各个染色器的工作方法个不一样,染色器中使用适时的3D着色引擎,它使虚拟现实建模与实时访问隔离,可能出现在不同浏览器里颜色不同的现象,因而着色必须保证制作者与用户在不同的平台、浏览器里显示都是相同的。
加入材质、灯光能够产生层次感和现场效果,增加真实性,但也必须质感与实际运行效果之间权衡,因为使文件体积增大,占用CPU执行时间。
设定执行参数。NavigationInfo(VRML文件的一个要素)用于设定用户航行的基本原则,例如,用户在场景中显示的比例,穿过整个场景的速度,采用何种方式穿过场景。
《一个复杂的VRML场景的设计(第4页)》