基于专家一新手模型的技能培训系统的研究和实现(2)
作者:佚名; 更新时间:2016-03-02
2.提高实时性1)实例化技术实例化技术是计算机图形学里为节省计算机的运行负担而采用的一种算法。当构造多个相同形状和相同属性的模型时,如果采用正常的拷贝手段,每增加一个物体模型,多边形的数量就增加一倍,而采用实例化技术,可以在增加同类物体数量时不增加多边形数量"朝。应用Quest30引擎中的“ForLoop”信道将一排液氯气罐模型进行实例化。根据需要,渲染出了十一排书架模型。通过坐标的空间转换将书架模型放到合适的位置。浙江工业大学硕士学位论文图
4.9实例化通道组和效果图“ForLoop”信道比较适合物体模型的位置有规律的时候应用,比如系统中书架模型的实例化应用。Quest3D引擎中还有一个信道“NaturePainter"也可以应用于实例化建模并且绘制的方法灵活。一次可以绘制一个物体模型,也可以同时绘制多个物体模型。绘制物体的位置可以是随机摆放的,也可以是按照制作的需要有顺序的摆放。同时,还可以设置物体的可见范围。在场景中比较适合随机种植一些花草,树木之类的景观模型。进一步来说,可以应用到虚拟场景中的每一个模型物体,例如:房屋,人物等。要注意的是碰撞物体模型的设置,所绘制的模型都必须绘制在相应的碰撞物体模型上。碰撞物体模型的大小会影响到系统的运算速度。所以,一般都用平面作为碰撞物体。2)多细节层次(LOD)LOD就是在不影响画面视觉效果的条件下,通过逐次简化模型表面的细节来减少场景的几何复杂性,从而提高视景渲染的速度。通常对每一原始多面体模型建立几个不同精度的几何模型,每个模型都含有一定层次的细节。当通过摄像机近距离观察模型时,系统调用精度较高模型;通过摄像机远距离观察模型时系统调用精度较低的模型。LOD有不同的算法,按照简化机制不同的分类可以分为:自适应细分型、采样型、几何元素删除型。在Quest3D引擎中,含有“DynamicLOD"、“StaticLOD’’两个信道。在本系统中选用了“StaticLOD”信道,就是根据相机和带有LOD信道物体之间的距离的远近渲染出不同细节层次模型,这和Mipmapping技术其实是同样的道理。同时,在不同层次模型的转换间,给视觉也带来了突变的效果。59浙江工业大学硕士学位论文“DynamicLOD”即在动态LOD算法中生成一个数据结构,在实时绘制时可以从这个数据结构中抽取出所需的细节层次模型。从这个数据结构中可以得到大量不同分辨率的细节层次模型,分辨率甚至可以是连续变化的。当摄像机与物体的距离较近时,显示较多的顶点数和面片数,渲染的细节较多;当摄像机与物体的距离较远时,显示物体的顶点数和三角形的面片数越来越少,这样可以加快视景的渲染速度。这种算法比较适合表面比较光滑的模型,比如:远处的高山等,这种优化方式不能够用在带有面部动画的人物角色上。因为带有面部表情的人物动画是通过Morph(变形)动画产生的。这种情况要求面部的不同表情的顶点数和面片数是相同的。3)外部引用技术外部引用能够将复杂场景中的各个物体、单元地形等分别调入场景数据库中。采用外部引用的方式好处在于,可以有效降低模型数据库的规模,节省内存空间和储存空间,提高系统资源的利用率,同时对场景的组织和管理起到一定的作用。可以将一个大的场景分成几小块,然后分别进行调用。在Quest3D引擎中集成了“LuaScript”信道,Lua语言实现了一个安全的运行环境、一套自动内存管理机制、优秀的字符串处理能力和动态大小数据的处理能力。图4-10动态载入和动态移出载入的时候,如果外部的文件是在本机,文件的路径使用相对路径就可以,如果要通过互联网从服务器上载入场景,就要用绝对路径。外部载入需要用辅助物体(透明的BOX),可以根据辅助物体和摄像机的距离判断物体的载入和移出。对于载入时视觉突变的效果,使用’透明”技巧,实现目标渐隐渐现的效果m1,也是60浙江工业大学硕士学位论文一种有效的解决方法。虚拟场景的构建以及优化是系统设计中很重要的一部分。尽量做到用最少的面片和贴图来实现虚拟场景。这样为实时交互打下良好的基础。
4.6.3虚拟培训系统的交互设计使用Quest3D引擎进行交互的设计。Quest3D引擎是由荷兰Act-3D公司开发,是一个功能非常强大的三维项目制作软件,最大的特点就是利用“channel”信道元件进行编程,极大提高了开发效率。将3dsMax2009中制作好的模型通过.X格式和.CGR格式分批导入到Quest3D引擎中,进行交互设计。
1.搭脚手架模块的开发:此模块主要起到先行组织者的作用。让培训人员能够了解到虚拟环境以及一些模型的信息,主要以角色人物漫游场景的方式实现。利用“WalkthroughCamera”漫游像机信道实现漫游功能。在漫游的过程当中,漫游像机要和周围的物体进行碰撞检测。碰撞检测要进行大量的运算,如果碰撞的物体是简单的物体可以直接进行检测,如果是复杂的物体,为了减少系统的负担可以利用透明的面片和像机进行碰撞检测。图4.1l夜晚下雨漫游场景在培训人员进入虚拟的环境进行交互之前,有必要对特定的物体模型提供信61浙江工业大学硕士学位论文息提示,让培训员工了解到虚拟场景下物体模型的信息。这样有利于培训员工在技能培训过程中的知识建构。在Quest3D中设计事件的触发的方式有很多种。在系统中用到的有:利用鼠标的单击触发,例如:工具的选择等;利用键盘的按键触发,例如:人物角色运动以及方向的控制,像机的切换等;根据角色和物体模型的距离进行触发,例如:门的开关等;根据系统产生的数值进行触发,例如:当系统和数据库连通的时候,触发进入场景,根据array数据表由系统得出数据表的行数,根据MySQL数据库由系统得出MySQL数据库表的行数等;还有些情况下是几个条件同时满足时才能触发事件的发生,例如:将用户名和密码存储到MySQL数据库时要满足的条件有:鼠标左键单击,鼠标检测到相应的按钮,数据库和系统连接三个条件同时满足。图4-12利用左上角的图标进行触发条件在这个模块中,培训人员只需要进行场景的漫游和物体模型知识的学习,所进行的操作没有记录到数据库中。在培训人员进行物体模型知识学习时,主要由两个事件同时满足触发模型知识显示到电脑屏幕上:利用鼠标检测到物体模型;根据人物角色和物体模型之间的距离进行判断。根据距离判断时需要注意的一点是:当人物角色和物体模型距离很近,得出的距离却很大时,这时需要将物体模型坐标进行转换。原因是将物体模型从三维建模软件导入到虚拟交互软件后,将此物体模型和其他模型进行了父子链接,并且对此模型进行了旋转的操作。此时,模型的坐标系统是自身坐标系统,必须将其转化成为世界坐标系统,才能得出正浙江工业大学硕士学位论文确的结果。这个模块主要是增加培训人员的领域性知识。图4-13物体模型知识学习
2.预案复杂技能模块的开发:培训人员对于虚拟场景以及场景中的物体模型有了一定的认识之后,这个模块将要实现危险化学品液氯泄露的技能培训案例。根据系统的需求分析以及RPD模型和NDM模型中所述的自然环境,在这个模块中实现了:多种天气(由随机函数自定义生成):受伤人员动态导入(由随机函数值触发条件),同时,对于培训人员每次的技能操作,都将记录到数据库当中,并且整个技能操作要在一定的时间内完成。为了体现出自然的虚拟环境,在系统中设置了几种不同的天气。设置一些参数,系统初始化时由随机函数对这些参数进行复制,这些不同的参数值调用不同的环境。表
4.3生成不同天气的百分比白云(50%)白天(50%)雨(50%)风向标(50%)夜晚(50%)雨(50%)首先将天气分为白天和黑夜两种情况:雨都是由粒子触发器产生的,每种情况下出现的几率为50%。白天中的风是由移动的云层的贴图来实现的,并且将其浙江工业大学硕士学位论文做成循环动画。培训人员可以根据云层的移动方向判定上风口的位置,从而将受伤人员带到相应的上风口;晚上由于光线的原因将以风向标代替云层,重要的是能够使风向标处在培训人员的视野之内,这样就可以根据风向标指定的方向判断上风口的位置。在虚拟场景中设置了两个事故紧急出口,所以,白天和黑夜的风向设置了两种情况,每种情况对应一个紧急出口。紧急出口的位置是由“紧急出口”标志来作为提示的。这一点主要是针对培训人员对于危化行业中经常遇到的一些标志的含义的考查。-图4-14紧急出口标志.受伤人员动态导入到系统的几率是50%。系统在初始化时如果随机函数产生的数值在设置的数值范围内,受伤人员就会导入到系统当中。当受伤人员出现在系统当中时,培训人员首先将事故情况汇报给上级后,然后根据风向应该先将受伤人员带到相应的上风口,将虚拟角色救出后,然后再进行事故抢救。这是由危化行业事故救援的规则决定的。那么,在虚拟环境下,如何将受伤人员带到相应的上风口是关键。系统中应用的是Quest3D中的寻径功能模块。首先,利用PathfindingGraph模块的Paint工具进行绘制路径,路径绘制时需要绘制到碰撞物体的上面。通常都是以地面作为碰撞物体。将培训人员控制的角色的位置作为目标点,中毒员工就会根据绘制的路径向前移动,当到达相应的上风口时就会弹出对话框,证明中毒员工救援成功。在图4-15中,寻径的路线在系统运行时可以显示,也可以不显示。在一般情况下是不显示的,否则会对培训人员起到提示的作用。所以,在系统生成的时候将其隐藏即可。通过多种天气的设置以及中毒人员的动态导入,可以使培训人员在同一个虚拟场景下体验到不同的氛围以及操作规则。这些场景的设计体现了随机通达教学策略的设计思路。这样,可以使培训人员能够从不同方面了解到对于危险化学品液氯的救援过程。这样就可以将培训人员的操作数据保存到数据库当中,以便于对数据进行总结和分析。在进入系统之前,首先要进行登录,如果是第一次登陆的话就要进行注册。这样,只要携带这套系统,在任何时间,任何地方都可以进行技能的培训,同时,可以将操作的步骤保存到数据库当中。在培训人员的分析中可知,培训人员都是刚就业和从业的企业员工,他们的学习时间和地点是不固定的,这样极大方便了培训员工进行学习。"詹浙江工业大学硕士学位论文图4-16登陆界面在此模块中,按照系统的需求分析和预案的设计,实现了对于危险化学品液氯泄露事故的技能培训过程。体现出了在技能培训中RPD模型和NDM模型的自然环境;认知弹性理论中的随机通达教学策略。使培训人员(新手)能够在虚拟的环境下处理复杂问题,从而习得复杂技能。这个模块扩展了培训人员的认知结构。