我的订单|我的收藏|我的商城|帮助中心|返回首页
虚拟现实新闻>VR>行业资讯>行业知识

基于VIRTOOLS的虚拟太阳系的设计与实现

文章来源:第三维度 作者: 发布时间:2012年03月22日 点击数: 字号:

    来源:第三维度
    作者:赵晓亮   李欣
    作者单位:浙江师范大学教师教育学院

    二十世纪六十年代兴起的认知心理学在教育教学领域提出了~ 些新思想、新观念,给今天的教学方式带来了一场新的革命。现代认知心理学主要研究人们对知识的获得、储存、提取和运用的过程,认为人在信息加工时是主动的,不是被动的I11。因此,它对现代教学有着极其深刻的影响,尤其对变革传统的教学方式有着指导性作用。

    在当今的信息时代,教育面临着严峻的挑战。新知识、新技术不断产生,旧知识快速老化并被淘汰。因而我们迫切需要对现有的、传统的教学方式进行改革,以提高教学效率 。

    利用虚拟现实技术和计算机网络进行教学贝U是提高教学效率、改善教学环境和提升教学质量的行之有效的重要途径。

    虚拟现实(VR)是2O世纪末才兴起的一门崭新的综合性信息技术。它实时的三维空间表现能力、自然的人机交互式操作环境以及给人带来的身临其境感受,将从根本上改变人与计算机之间枯燥、生硬和被动的现状,为人机交互技术开创新的研究领域。随着虚拟现实技术的发展,它在教学中得到了越来越多的应用。它的交互、沉浸和多感知的特点给学生带来了浓厚的学习兴趣,使学生沉浸在虚拟环境中,大大提高了学生学习的主观能动Jl、生。

    据了解,已有国内外学者利用Flash、VRML、OpenGL等软件做过类似的案例,但Flash做出的动画是二维的,缺乏立体形象的感觉;而VRML和OpenGL虽然可以做出三维的模型,但它们缺乏可视化开发环境,并且需要较高的编程技术,所以在实际开发过程中存在难度大、实现复杂、辅助功能不强等诸多问题,易用,性和实用,性不甚理想。

    一、基于PCS(Product—Context—Scenario)技术的Virtools体架构

    (一)架构目的

    虚拟太阳系架构的根本目的是:改变传统“教师教学生学”的单~ 教学方式,采用虚拟现实技术和计算机网络技术构建网络、多媒化的探究性教学方式,提高学生学习的主动性和想象力,使其利用网络进行实际操作、搜索资料和进行讨论,提出自己的看法和建议,从而提高他们的创造性思维。   

    虚拟太阳系把虚拟现实、多媒体和计算机网络等技术与教育教学理论有机地结合起来,为学生呈现了一个丰富精彩的虚拟世界,虚拟太阳系网站如图1所示。

基于VIRTOOLS的虚拟太阳系的设计与实现
图1 虚拟太阳系网站

    其主要特点有六个方面:其一,利用3ds max对太阳系的主要成员(太阳和行星)进行三维建模,并根据它们在太阳系中的空间位置来设置其相对位置;其二,具有丰富的交互功能, 如果点击左侧的菜单或页面中的物体,此物体会自动放大并飞到你的眼前,从而使你可以更加仔细地观察它,再点击它又回到原来的位置;其三,支持多媒体信息辅助,可以设置3D音效、背景音乐等;其四,具有文本解释功能,可以通过点击“使用帮助”菜单来获取操作方法,当点击虚拟环境中某个具体物体时,会自动弹出文本介绍;其五,具有讨论反馈的功能,通过点击“BBS讨论”链接,可以在BBS上留言或讨论问题;其六,具有知识拓展的功能,通过点击“相关资料”链接,可以获得关于太阳系知识的丰富资料,包括网站、文本、视频、图片等。

    (二)组织结构

    根据学生的实际需要与思维拓展,虚拟太阳系主要由操作区域、使用帮助、BBS讨论区、相关资料四个模块组成。这四个模块虽然功能各不相同,但都是为了同一个教学目的,而且彼此相互联系和补充。其组织结构如图2所示。

基于VIRTOOLS的虚拟太阳系的设计与实现
图2 虚拟太阳系组织结构

    操作区域模块主要包括太阳、行星、轨道、弹出菜单和物体动画,虚拟太阳系主界面的设计如图3所示:

基于VIRTOOLS的虚拟太阳系的设计与实现
图3 主界面设计图

    当把鼠标放在左侧物体菜单上时,会弹出此物体的英文名称,用鼠标左键单击时,会播放物体的动画(地球动画播放演示如图4所示),使学生更清楚地观测星球。当点击界面上的某个星球时,同样会播放它的动画和运动轨迹,这样就可以更生动形象地把物体表面和运动呈现到观测者面前,使其更容易tB,G和发散思维。帮助模块主要帮助使用者更简单、快速地操作此虚拟系统,上面有文本介绍和图片演示,包括如何操作和提示信息;BBS讨论区模块是让学生进行操作和体验后, 讨论有关太阳系的疑问和想法,从而和其他同学交流,如:星球的大小、位图4 地球动画播放演示图

基于VIRTOOLS的虚拟太阳系的设计与实现
图4 地球动画播放演示图

    二、虚拟太阳系的设计和实现方法

    (一)Virtools软件概述

    Virtools是由法国全球交互三维开发解决方案公司Virtools开发,其三维引擎已经成为微软XBox认可系统。其特点是方便易用,应用领域厂泛 。

    1.Vrtools成分

     Virtools在3D 互动展示方面是一种强大的技术 ]l7I。Virtools有很完善的组成:一个创作应用程序、一个动作引擎、一个渲染引擎、一个Web播放器、一个软件开发工具包(SDK)。

    Virtools Dev是一个创作应用程序,一款允许你快速简单建立3D 内容的应用程序。Virtools Dev不是一款建模软件,但是,类似摄影机、灯光、曲线、界面组件和3D结构等简单的媒体能通过点击一个图标建立一个动作引擎。Virtools是一个动作引擎、Virtools是一个渲染引擎,那是因为Virtools处理动作。有一个渲染引擎来绘制你在Virtools Dev 3D 设计中的图像。Virtools是一个Web播放器。提供一个免费的Web播放器,能被任何人下载使用。Virtools Dev是一个软件开发工具包,包括一个能访问动作的某个部分和渲染过程的软件开发工具包。

    2.Virtools模块

    Virtools除了自身的3D/VR 开发平台Virtools Dev以外, 还有五个可选模块: 物理属性模块(Virtoo1 sPhysics Pack for Dev)、沉浸式平台((Virtoo1 s vR Packfor Dev))、人工智能模块(Virtoo1 s AI Pack for Dev)、Xbox开发模块(VirtooI s Xbox Kit for Dev)和网络服务器模块(Virtoo1 s Se~er)。

    3.V rtools特征

    Virtools能用来制作具有沉浸感的虚拟环境, 它能帮助参与者生成诸如视觉、听觉、触觉、味觉等各种感官信息,给参与者一种身临其境的感觉,是一种新发展的、具有新含义的一种人一机交互系统,可以制作出不同用途的3D产品,如:网际网络、计算机游戏、多媒体、建筑设计、交互式电视、教育训I练、仿真与产品展示等等 。相对于其他相关虚拟现实技术, 采用Virtools还具有减小开发难度、降低开发周期、真实性好、交互性强等特点,因此,此构建虚拟太阳系采用了Virtools技术。

    (二)构建虚拟太阳系的主要流程

    1.建立三维模型和Virtools资源库

    由于Virtools本身没有建模的功能,所以一般建模方法是采用建模软件来实现,如:3DMAX 或Maya等。笔者采用的是3DStudio Max。通过三维建模、设定材质、赋予贴图、添加动画、渲染、烘焙后借助Max Exporter插件导出为NMO 格式文件并保存(导出NMo 格式文件需要安装相应的Max Exporter庙件),然后在Virtools中导入所生成的NMO 文件,从而产生了场景物体的原始档,原始档内存储有物体的相关属性,如:基本的形状、面片和颜色等,同时也存储有相应纹理材质,最终保证物体的逼真性。

    在Virtools Dev 中用Resources/Create New DataResource命令创建新的资源库, 把准备好的各种NMO格式文件拷贝到资源库相应的文件夹中,Virtools Dev将自动分类并加载。这部分工作旨在为在Virtools中进行拖放操作做好前期准备。需注意的是对每个不同的虚拟实验项目应建立单独的资源库,这样更便于后期的修改更新及文件管理。

    2.交互行为控制

    利用Virtools Dev对虚拟太阳系进行交互行为控制,就是将物体演示步骤分解成具体行为, 并与键盘的操控和鼠标的拖曳、点击等动作构成映射。交互设定是通过Virtools中内置行为模块实现的,能够对二维或三维模型进行各种基本操作(如:平移、旋转、缩放、颜色和透明度变化、二维贴图等)复杂操作(如:投影、燃烧、行走、奔跑、后退等)。

    在Virtools Dev中主要是通过行为模块(BBs)来进行交互行为控制的。Virtools自带有500多个BBs, 每个BBs具有特定的作用和功能,而且BBs本身有参数设定,从而可以把功能不同的BBs相互连接起来并且进行参数设定,以达到想要实现的目的。

    Virtools自带的BBs基本能满足设计的要求。另外,还有两种方法可以设计出具有特殊功能的BBs来满足交互设计的要求:一种是通过VC++编程[91;另一种是利用Virtools的软件开发工具包SDK。通过SDK 可以创建一个新的动作(BBs)、修改现有动作的运行,通过给输入和输出文件写BBs可实现一些特殊格式的模型文件的导入导出、修改替换或扩充Virtools Dev的渲染引擎。

    3.成品发布

    虚拟太阳系经过场景建模、交互行为设定、测试正确后,可以采用三种方式进行发布:一种是通过“Export toVirtools Player”命令直接保存为 .vmo格式;第二种是通过“Create Web Page”命令将文件保存为htm 格式,这样,客户端只需下载并安装插件“3D Life Play”即可进行虚拟实验[101;第三种是利用Virtools打包器生成 .exe。可执行文件上传到网站上,用户直接下载到本地主机上来使用。

    三、虚拟太阳系实例分析

    虚拟太阳系模型能让学生从三维空间对太阳系进行立体的、全方位的观察和操作,从而对太阳系的组成、概貌、大JJ、和尺寸等有更深的体会和理解,提高学习的效率和乐趣。下面通过实例来说明利用Virtools制作虚拟太阳系的主要步骤:

    (一)整体场景的调入及设置

    1.模型库场景调入与设置

    首先, 导入NMo 模型文件到Virtools的三维编辑区,设置它的大小与位置,并且设定初始值,建立灯光与摄像机;其次,从模型库中调入所需的实体、图形或视频文件到三维编辑区,并设置它们的属性;最后从模型库中调入需要的动画文件到相应的角色上,从而完成基本场景的调入和设置。

    2.弹出菜单的制作与设置

    弹出菜单都是用2D Sprites(二维精灵)来制作与实现的,所以要把2D Sprites从文件夹中拖放到三维编辑区,并按照顺序排列和摆放它们,设定初始值,以方便恢复已调整好的位置,为后期添加BBs模组、实现交互行为做准备。

    (二)鼠标触发动作的设置

    1.鼠标点选轨道图标

    因为每个行星都按一定的轨道在运转,所以我们根据行星的运行轨迹设计了它们的轨道,使之更加形象;当用鼠标点击轨道图标时轨道出现5秒钟,然后自动消失,用到的BBs有Wait Message、Group Iterator、Show、Hide和Delayer。该行为交互的脚本流程如图5所示。

基于VIRTOOLS的虚拟太阳系的设计与实现
图5 轨道流程图

    2.鼠标触发弹出菜单

    当把鼠标拖放到左侧星球或轨道图标上时,会自动弹出一个带有该星球名字的菜单,鼠标移走它即消失,这个弹出菜单的作用就是显示此星球的名字,从而使学生更容易识别记忆。这个脚本流程用到了两个封装的BBs、Roll On与Roll Of,封装的BBs就是把许多基本的BBs按一定顺序连接起来,然后把它们包裹起来,重新命名。

    它的好处是使脚本流程看起来更简洁清晰,并且可以在以后用到的时候重新调用,减少了开发脚本的工作量。具体脚本流程如图6。Roll On展开如图7。

基于VIRTOOLS的虚拟太阳系的设计与实现
图6 弹出菜单流程图

基于VIRTOOLS的虚拟太阳系的设计与实现
图7 封装模块展开图

    3.标点选图标或星球实体

    当用鼠标点击左侧图标或星球实体时,星球会变大,并且飞翔到操作者的眼前,再点击又恢复到原来状态。当星球变大并飞到操作者眼前时, 右侧会弹出一个帮助菜单,上面会显示此星球的名字、半径、轨道、密度和卫星等情况,以利于操作者在观察的同时获得更多的知识。这个过程比较复杂,它包括星球变大、显示和隐藏帮助菜单、星球状态转换等几个分支,这些效果主要是通过设置摄像机来实现的,因为摄像机相当于我们的眼睛,当摄像机变化时,我们看到的东西也会发生变化。具体脚本流程如图8、图9、图10、图11。

基于VIRTOOLS的虚拟太阳系的设计与实现
图8 星球变大流程图

基于VIRTOOLS的虚拟太阳系的设计与实现
图9 帮助菜单显示流程图

基于VIRTOOLS的虚拟太阳系的设计与实现
图10 帮助菜单隐藏流程图

基于VIRTOOLS的虚拟太阳系的设计与实现
图11 星球状态转换流程图

    (三)星球自转与公转的设定

     虚拟太阳系是模拟真实太阳系而设计的, 所以与现实中的自然规律一样,行星绕着太阳公转,卫星绕着行星公转,而太阳、行星和卫星本身还在自转,因为几个行星的公转和自转是一样的设置, 所以这里就用行星地球和卫星月球作为代表, 这里用到的BBs有Rotate、cu—eFollow等。具体脚本流程如图12、图13所示。

基于VIRTOOLS的虚拟太阳系的设计与实现
图12 地球公转自转流程图

基于VIRTOOLS的虚拟太阳系的设计与实现
图13 月球公转自转流程图

    (四)星球表面效果的设定

    我们知道太阳表面有耀斑和黑子活动,所以在太阳的表面要设置像闪耀的火焰的效果,对于这些效果在Virtools Dev中实现非常容易, 用一个粒子系统模块就可以实现。这里我们用球状粒子系统模块SphericalParticleSystem 来模拟太阳表面的火焰效果。具体脚本流程如图14所示。

基于VIRTOOLS的虚拟太阳系的设计与实现
图14

    (五)后期整合

    利用3ds max和Virtools完成建模交互设计后,虚拟太阳系的工作已经完成了大部分,后面就是结合网站设计软件Dreamweaver、Asp和Photoshop来完成虚拟太阳系网站的其他模块, 最后通过前面提到的三种发布方式, 把虚拟太阳系成品发布到网站上, 以提供学习者使用。

    四、结论

    《基础教育课程改革纲要》明确指出:“大力推进信息技术在教学过程中的普遍应用, 促进信息技术与学科课程的整合,逐步实现教学内容的呈现方式、学生的学习方式、教师的教学方式和师生互动方式的变革,充分发挥信息技术的优势, 为学生的学习和发展提供丰富多彩的教育环境和有力的学习工具。 笔者认为,技术的应用最终是为了更好地优化学习。虚拟现实技术可以生动形象地为学生展现教学内容, 让学生对所学内容产生浓厚的兴趣,网络技术可以让学生在线协作学习、相互讨论、及时反馈;而虚拟太阳系正是两种技术在教育应用中的一次尝试和探索,它改变了传统的教学方式,提高了教学效率,改善了教学环境,提升了教学质量,不仅能使学生掌握知识,还能使学生学会如何学习,培养学生独立思考的能力和自主学习的能力,有利于学生的个性发展。虽然虚拟现实技术在教育中的应用刚刚兴起, 与其他领域相比还不太成熟,但相信它在教育系统中一定会有美好的未来!

    [参考文献]

    [1j范利,白建国,张华从认知心理学看变革传统教学方式的必然Uj.科技信息(学术研究),200B,(O8).

    [2]裴衣非计算机教学方式改革中的作用uJ.科技信息(学术研究),2008,(O5)

     [3]Southwest.Virtools~ [DB/OL]. http://www.86vr.corn/ware/software/200210/421.html,2007-08-20.

     [4]李昌国,朱福全,谭良,杨春.基于3D 和Virtools技术的虚拟实验开发方法研究U1_计算机T程与应用,2006,(31).

    [5]http:ltwww.Virtools.com.cn/bbs/index.asp.
 
    [6]刘明昆编著.i维游戏设计师宝典~Virtools开发工具篇.四川:四JIi出版集团.四川I电子音像出版中心,2005

    [7]刘明昆编著.三维游戏设计师宝典一Virtools技术实战篇.汕头:汕头大学出版社,2006.

    [8]李昌国.基于3D 和Virtools技术的虚拟实验室架构设计[D].四川I师范大学,2007.

    [9]http://blog.hxsd.com.cn/blog/huangsixian/arficle/i19882.html,2007-7-10.

    [1O]李欣《现代教育技术》虚拟实验室的设计与开发UJ.现代教育技术,2008,(O2).   

  • 暂无资料
  • 暂无资料
  • 暂无资料
  • 暂无资料
  • 暂无资料