3dsmax在虚拟地理实验室建模中的应用

时间:2022-09-21 01:04:25

3dsmax在虚拟地理实验室建模中的应用

摘 要:叙述了使用3dsmax进行地理建模的比较具体的方法和过程,介绍了各种地理模型的实现方法,各种模型优化的方法通用方法。

关键词:3dsmax;地理模型;建模;优化

本论文是黑龙江省教育厅十二五课题《基于vrml的虚拟实验室研究(9388)》的成果部分,课题组成员为:梁海、吴国文、田志德、周亚林、张海波。

任何实体对象,无论是简单的,还是复杂的,都是由无数的多边形组成,正是以多边形为基本图元建立模型单元的。有了这些基本的三维模型,就可以根据实际需要建立复杂的实体模型。此外,通过适当的修改、缩放等操作,使模型具有可延续使用性和可扩充性,便于不同对象实体的嫁接组合。

对于简单物体,按照所确定的模型层次结构和相关数据,调整好合适的比例,在建模过程中尽可能减少使用的多边形的数量。使用最少的多边形获取相同的真实感,在不影响外观效果的情况下,可以大大地提升实时绘制速度,提高浏览帧率。对于复杂物体,需要综合3ds Max等共同创建。首先,提取CAD图纸中相关建筑物的平面轮廓线,结合实地测量的数据将轮廓线修整完善,保存为.DWG格式文件。然后,将此格式的文件导入3ds Max中作为模型的外轮廓拉伸基准并以此建立复杂物体的模型。完成后,贴上纹理图片,增加适当的光源照明以预览所建模型是否已经达到预期效果,保存为*.3DS格式文件。最后利用PolyTrans插件将*.3DS格式的文件转换为* .jpt(OpenFlight)格式文件,就可以在Multigen Creator中顺利打开模型文件了。

但是,在用PolyTrans插件进行格式转换的过程中,会导致部分面的破裂与缺失,所以,用Creator打开OpenFlight格式的模型后,还需要进行面的修补、合并等一系列整理工作。即便如此,通过插件将AutoCAD、3ds Max结合建模的方法在目前仍然是Creator建模中处理复杂模型的最有效途径,也极大地提高了建模效率。

一、地形模型建立

3ds Max中有专门的地形建模工具,通过该工具建立模型,能够有更大的主动性、灵活性,创建的模型具有更好表现能力。在3dsmax中建立地形模型,可以利用CAD软件建立等高线数据文件、也可以直接使用地形工具自己建立,下面介绍一下直接使用地形工具建模方法:1、在前视图创建轮廓线,注意一定要是封闭的。2、使用“选择并移动”工具在左视图中移动这几条封闭曲线的位置,使得最小的封闭曲线在最上面,最大的封闭曲线在最下面,以此类推。3、单击“标准基本体”右侧的小按钮,并选择“复合对象”进入到“复合对象”面板;4、选择最下面的一条曲线,然后单击“地形工具”,这时就会创建一个平面的地形;5、在下面的面板中单击拾取对象按钮,并在左视图中从低到高依次单击封闭曲线,此时就会形成地形的造型;6、如果觉得形状不妥,可以进入修改面板进行详细修改;7、可以继续为已建立的模型添加其它修改器从而形成更好的地形效果。

二、树木的建立

树木的建立,是模拟逼真场景环境的重要环节。一方面,Creator对复杂模型的建模能力有限,强接建立树术是一项很难办到的事情。另一方面,利用3dsMax的SpeedTree捅件建立好树术模型后,一颗树的面片数豢通常都在万个以上,导入Creator中,会极大地影响实对绘制效率。所以,在Creator串建立树木模型,必须借助更为有效的方法。OpenGL中十字相交法和Billboard法可以很好地解决树木问题,Creator也提供了对上述两种方法的支持,所以树术的创建树木模型的问题也迎刃而解。

十字交叉法,是用两个十字交叉面来构造树木模型,在互相垂直的平面上,分别映射相同的树木透明贴图纹理,利用人的视野有角度局限性这一原理,使人感觉在不同角度总可以看到相同树的图像。由于此方法只用了两个多边形,所以建立的树木模型只有四个面,计算量被大大削减、提高了场景显示速度。Billboard法也称为公告牌技术,采用一个多边形面模拟树木,当视点改变时,此多边形会绕指定的轴旋转从而保证始终面向观察者方向。只要时刻保持二维纹理树木图像的法线矢量指向观察者,就可以造成一种能够使观察者满意的三维树木的假象,可以很好地解决树木的建立问题。

Creator中的纹理映射方式有多种,包括三点映射、四点映射、表面映射、球形映射,柱形映射、地学纹理映射、环境贴图映射共七种映射方式,可适应不同的纹理需要刚。校园场景中一般都是规则物体模型,为了驱动时能有效地显示出来,需要将处理好的纹理图片用三点映射方式粘贴,而选择其它方式可能导致纹理不能正常显示。

完成对场景中的单体建模后,为了生成校园整体三维场景,再对单个模型按空间位置进行有序的集成。场景实体模型的构建是按照场景层次结构的划分进行的,各层次实体构建完后需要进行组合集成,最终形成虚拟场景的整体模型。

对场景模型本身而言,如果只为了增加真实感,与真实景观相对应的实体建模应该充分详细,但这样不仅大大增加了工作量,而且一旦场景中的多边形数达到一定数量,视景的实时绘制输出将难以实现。为了达到场景真实感与实时性的平衡,必须对场景模型进行适当的优化,其主要目的就是为了提高系统场景的实时性、在不显著影响视景效果的前提下减少系统绘制的多边形数目、提高图形绘制的帧速。对校园模型的优化和模型数据库的优化主要包括以下操作。

三、模型的优化

1、去除冗余面

冗余面是指那些不可见面。例如,楼体的底面、内墙面及楼层面阀的连接面等,由于场景浏览时,它们处于不可见位置,有无都不影响整体效果。在这种情况下,需要消除这些冗余的多边形面,降低整个场景的复杂度。

2、三角面片合

模型导入时,重新计算处理,将所有的非三角形转化成了三角形,这就增加了面的数量,影响了显示效率,由此涉及到三角面片的合并问题。

3、纹理映射代替实体建模

对于门、窗、栏杆等细节部分,采取纹理映射的方法代替建模,即在对应位置的多边形面上“贴”上相应的纹理图片来代替详细模型。纹理映射的意义可以简单归纳为:用图像来替代实体模型中的可模拟或不可模拟的细节,提高模型逼真度和图形显示速度。

4、外部引用和实例化工具

利用外部模型引用工具可以在模型中引用外部的模型文件,而没有必要将模型添加到自己的模型数据库中,从而减小了模型的大小。它的本质是一个指向要引用模型的指针。

当三维复杂模型中许多几何形状相同但是位置不同的物体,考虑采用实例化(Instance)工具。如将一根柱子实例化后,复制到其他柱子的位置,再删掉原来的即可。

5、使用交换矩阵

变换矩阵工具对于“一次性变换一系列物体对象”是很有用的,它可以避免对单个对象重复使用坐标计算,提高模型运行的效率。变换矩阵是一个4x4的矩阵,用于计算相对于原来位置或方向的变换数值。当整个模型发生改变后,变换矩阵会自动更新,以保证参与矩阵变换的节点相对于其父节点位置的正确性。

6、画面闪烁问题的解决

当两个多边形共用一条边时,其中一个多边形的项点就落在了另一个多边形的一条边上,而对这条边来说,这个点却是不存在的,这就是点在线上的情况。■

上一篇:提高科技馆服务水平,促进经济效益 下一篇:美军管控与运用新媒体对我军宣传工作的启示