APP下载

基于Virtools的虚拟火车站漫游系统的设计与实现

2014-06-01范国华杜哲明张友华乐毅

红河学院学报 2014年5期
关键词:碰撞检测漫游火车站

范国华,杜哲明,张友华,乐毅

(1.安徽农业大学信息与计算机学院,合肥 230036;2.安徽省电力设计院质量安全部,合肥 230601)

基于Virtools的虚拟火车站漫游系统的设计与实现

范国华1,杜哲明2,张友华1,乐毅1

(1.安徽农业大学信息与计算机学院,合肥 230036;2.安徽省电力设计院质量安全部,合肥 230601)

文章设计了一种基于Virtools的虚拟火车站漫游系统.该系统通过三维建模技术来构建火车站三维场景,利用漫游技术来实现乘客和火车站间的交互,并采用碰撞检测技术来保证系统的真实效果.该系统可以以Web形式发布,乘客利用互联网就可以在火车站内漫游,使得乘客不用到火车站就可以明确火车站的内部路线信息.并以合肥市火车站为例,完成了一个交互式三维虚拟火车站的设计,实践了虚拟现实技术在火车站漫游中的应用.

Virtools;虚拟现实;碰撞检测;漫游系统

1 引言

虚拟现实(VirtualReality,简写为VR)技术又称灵境技术,是近十几年正在逐步兴起的高新的科学技术,它利用计算机模拟产生虚拟场景,是一种可以产生虚拟现实环境的计算机仿真技术 .这种场景是通过计算机创建的,通过人的各种体验等作用于人,使人能够产生身处虚拟环境的感觉.

目前铁路交通是人们出远门的首选交通方式,中国铁路总公司已建立12306网来提供火车票查询、网上订票、铁路知识和新闻公告、货运信息等查询,方便人们不用去火车站就可以在网上查询列车时刻并且订购火车票.但是各地火车站的大小以及内部布局各不相同,使得很多人到达火车站时候并不清楚如何到达自己班车的候车大厅,很多时候耽误了乘坐火车的时间.本文设计了一种基于Virtools的虚拟火车站漫游系统,该系统可以以Web形式发布,使得乘客利用互联网就可以了解火车站的内部布局,以合肥火车站为例,将虚拟现实技术引入数字火车站的的建设,并可与合肥火车站的官方网站相结合,为乘客提供一个可视化的、多感知的信息介绍与查询环境.实现一个有实用价值的三维虚拟火车站漫游系统.

2 虚拟火车站漫游系统概述

虚拟漫游技术是虚拟现实技术的一个重要的分支.虚拟现实系统从根本上来说是一种人和计算机交互的技术的产物,可以使人在所创建的体系结构中进行融入其中的各种行为.虚拟漫游技术让人可以从不同方面来体验各种前所未有的尝试,用户和计算机虚拟环境的交互控制是虚拟漫游系统的关键,可以让用户通过自己的操作来控制模拟环境内实体并且从虚拟环境得到实时的全面的回馈.技术发展到现在,人们能够完全的融入这种技术创建的虚拟现实场景系统中去,并通过各种传感器设备实时捕捉与虚拟现实环境进行实时的多角度的相互影响,最后从综合复杂的虚拟环境中得到自己想要的数据和反馈效果.

一般来说,一个虚拟漫游系统应该包括两大部分:视景数据库的构建以及漫游平台的设计.虚拟火车站漫游系统的实现流程可由图1来表示.其中,视景数据库包括三维模型以及相关多媒体素材,漫游平台设计则包括对相关素材的控制以及交互.

图1 虚拟火车站漫游系统的实现流程

3 虚拟火车站漫游系统的设计与实现

本文所设计的虚拟火车站漫游系统三维模型部分使用三维动画渲染和制作软件3ds Max2010来构建火车站的相关模型,漫游平台控制部分使用游戏引擎Virtools4.0来完成漫游平台的控制.

3.1 系统总体设计目标

虚拟火车站漫游系统的主要目的是让使用者能在虚拟火车站自由漫游,使用者可以通过键盘来控制视角进行前后左右四个方向的的行走、仰俯,达到火车站内任何可以到达的地方,该系统可以使得使用者了解火车站的构造,这样在真去火车站时就不会迷路,可以快速到达自己想要到达的地区.本文着重论述虚拟火车站漫游系统的三维模型设计以及漫游系统的具体实现过程.

3.2 系统三维模型设计

三维建模技术是虚拟火车站漫游系统重要的组成部分之一.系统漫游是否真实可信取决的就是三维建模的结果是否真实生动.虚拟火车站的三维建模使用3ds Max2010来完成,利用目测画出合肥火车站的CAD图,然后根据CAD图构建三维模型及优化.

3.2.1 建筑模型构建

利用目测和相关材料,画出合肥市火车站的CAD图,再将CAD图转换为dwg文件格式导入3ds Max,在此基础上,先构筑火车站的墙体,所有墙体构造完成后,利用墙体的形状搭配出火车站内部的空间,再在每个空间内导入其余模型,比如:椅子、楼梯、行李托运机等,最后将相关的文件合并成一个文件,效果如图2.

图2 合肥火车站max文件

3.2.2 植物模型构建

植物是建筑建模的重要组成部分,3ds Max中制作植物有远景、中景、近景、平面拼插贴图法等方法.考虑到实时漫游的需求,应尽量减少植物的面数,因此采用平面拼插贴图法,即建立一个平面,然后利用贴图通道中的不透明贴图建立植物的平面,接着用2至3个平面交叉到一起形成立体的植物形状,也可以只使用一个平面,然后利用Virtools中的billboards技术,使得植物正面贴图始终面向摄像机.

3.2.3 整体模型优化

实时漫游对电脑的CPU和GPU要求较高,因此3d模型在导入Virtools前要进行优化,尽量减少模型面数,将多个次要对象通过布尔运算合并成一个对象,减少virtools的渲染负担,将场景进行适当切割,利用Portal组件,使场景中只有摄像机看得见的部分资料载入内存中,检查场景有无孤立的点和面,予以删除,调整贴图模式、减少灯光的使用等,通过这些措施对模型进行优化,以提高系统运行时的帧数.

4 漫游系统的实现与关键技术

目前进行虚拟漫游设计的开发,在平台的选择上大致有二种选择,一种是直接利用面向硬件底层API 的调用,从而达到自主开发引擎的目的,这种方式运行效率较高、设计灵活、有自主产权但花费的代价比较大;第二种是用第三方软件商开发提供的带有商业意义的虚拟现实引擎,使用者不需要对具体的技术细节进行研究即可以通过该引擎制作出比较实用的虚拟漫游产品.虚拟火车站漫游系统采用第二种方法,使用法国达索公司开发的游戏引擎Virtools来完成实时漫游.

4.1 漫游引擎功能

Virtools引擎是一套整合软件,可以将现有常用的档案格式整合在一起,如3D的模型、2D图形或是音效等,其丰富的互动行为模块,可以让设计人员利用内置的行为模块(BB)快速制作出许多不同用途的3D互动产品.Virtools与中视典的VRP是国内最知名的两大虚拟现实平台软件.

4.2 关键技术

4.2.1 漫游视角

根据火车站漫游的特点,系统采用的是自由漫游,首先设定一个角色,将一台摄像机与该角色绑定,这样,角色的眼睛就是摄像机的镜头,用户可以操作键盘控制角色在虚拟火车站里随意前进、后退、左右旋转,也可以通过键盘或者鼠标,改变摄像机角度来模拟人仰视、俯视的状态.系统使用的第三人称摄像机,位置在角色头部上方偏后,效果为角色眼睛仰视看到的场景.第三人称摄像机使用"Keep At Constant Distance"行为模块来让摄像机始终跟随角色,,还用"Look At"行为模块来保证摄像机镜头方向与角色眼睛仰视方向相同.第三人称摄像机设置的脚本如图3所示:

图3 第三人称摄像机

4.2.2 角色设置

在虚拟火车站漫游系统中,角色相当于用户本身,角色的眼睛就是摄像机的镜头,用户通过角色对整个火车站场景进行漫游.Virtools自带了7个人物角色,也可以在3ds Max中建立三维角色,然后导入Virtools,不过如果在3ds Max中建立三维角色,角色的骨骼动画就要在3ds Max中自己建立,比较浪费时间,因此,虚拟火车站漫游系统使用Virtools自带的人物角色Pierre,因为在Virtools自带了7个人物角色中,Pierre的形象比较符合国人审美观,并且Pierre的骨骼动画也是7个人物角色中最丰富的.Virtools中人物角色如下图4.

图4 Virtools中人物角色

确定角色后,接下来就要对角色进行设置,包括:动作控制、阴影设置、声音设置以及碰撞检测等.本系统采用Virtools自带的角色Pierre,主要操控使用行为模块中的不限量动作控制(Unlimited Controller)和键盘地图(Keyboard Mapper).不限量动作控制使得角色的前进、左转、右转及等待动作同角色自带的动画相绑定,键盘地图则将键盘上的WAD键同前进、左转、右转相绑定.角色设置的脚本如图5所示:

图5 虚拟火车站漫游系统的实现流程

4.2.3 碰撞检测

碰撞检测对增强虚拟火车站场景漫游的真实感有重要的作用,在漫游时,用户绝对不希望看到自己操作的角色能够穿越墙壁,因此要对虚拟场景进行碰撞检测.Virtools提供多种碰撞检测的方法,考虑到场景中墙壁等模型众多,系统采取将会与角色发生碰撞的物体组合成一个Group,然后对角色添加行为模块"Object Slider",将"Object Slider"中的Group设置为刚才组合的Group,实现角色的碰撞检测.

4.3 漫游效果展示

虚拟火车站漫游系统采用Virtools4.0开发,设计实现了合肥市火车站的虚拟漫游场景,效果如图6、图7所示,该系统设计效果良好且场景逼真,并能以网页形式发布,支持所有的浏览器,宣传效果极佳.

图6 虚拟火车站正面

图7 虚拟火车站站台

5 结束语

本文设计了一种基于Virtools的虚拟火车站漫游系统.该系统通过三维建模技术来构建火车站三维场景,利用漫游技术来实现乘客和火车站间的交互,并采用碰撞检测技术来保证系统的真实效果.系统设计效果良好且场景逼真,宣传效果极佳.但设计仍有不足之处,如场景细节不够丰富,交互性依旧比较简单.丰富场景细节、同数据库连接以读取动态数据使系统交互性更加丰富将是我们下一步的研究重点.参考文献:

[1]付志勇,高鸣.三维游戏设计[M].北京:清华大学出版社,2008.

[2]曲宝,赵娅,等.基于Virtools的虚拟家居漫游系统的设计与实现[J].计算机工程与科学,2008,31(12).

[3]王启荣.3D VR互动设计[M] .台湾:文魁资讯,2010.

[4]王瑜.Virtools 在开发虚拟旅游区漫游系统中的应用[J].计算机系统应用,2011,20(7).

[5]字建香,严红平,等.一个沉浸式漫游系统的构建[J].计算机工程与应用,2013:4.

[6]吴晓晖,黄心渊.基于Virtools 平台的森林仿真风效技术研究[J].计算机应用与软件,2013,30(5).

[责任编辑张灿邦]

Design and Implementation of Roaming System of Virtual Train Station Based on Virtools

FAN Guo-hua1,DU Zhe-ming2,ZHANG You-hua1,YUE Yi1
(1.School of Information and Computer,HFUT,Hefei 230036,China;2.Quality and safety department,Anhui electric power design institute,Hefei 230601,China)

This thesis describes the design of a roaming system of virtual train station based on Virtools.The system through the three-dimensional modeling technology to build a 3D scene train station,to realize the interaction between passengers and train station by roaming technology,and use the collision detection technology to ensure the real effects of the system.The system can be issued in the form of web,passengers can roam the train station on the internet,and they can understand the internal structure of the train station on the internet.Example of HeFei train station,i completed a design of a 3D interactive virtual train station,practicing of the application of virtual reality technology in roaming in the train station.

Virtools;virtual reality;collision detection;roaming system

F224-39

:A

:1008-9128(2014)05-0030-03

2014-01-13

安徽省科技攻关项目(12010302079)

范国华(1982-),男,安徽合肥人,讲师,硕士,研究方向:计算机图形可视化,虚拟现实。

猜你喜欢

碰撞检测漫游火车站
全新预测碰撞检测系统
火车站英语
Train Station火车站
基于BIM的铁路信号室外设备布置与碰撞检测方法
肚子里有个火车站(下)
肚子里有个火车站(上)
霹雳漫游堂
NASA漫游记
空间遥操作预测仿真快速图形碰撞检测算法
BIM技术下的某办公楼项目管线碰撞检测