基于Unity3D虚拟引擎制作地震科普类APP
来源:用户上传
作者:
摘 要:现在普遍的大学生对于地震知识了解过于片面,需要通过一些简单的方式对地震知识进行传播与普及。本项目通过使用Unity3D虚拟引擎与3Ds Max系统制作了一款地震科普类型APP。此APP使用了吸人眼球更加直观的AR功能,适用于想了解和学习地震基本知识的这类人群。
关键词:Unity3D;3Ds Max;AR;地震科普;APP
中图分类号:P315 文献标志码:A 文章编号:2095-2945(2020)17-0051-02
Abstract: At present, the common college students' understanding of earthquake knowledge is too one-sided. They need to spread and popularize earthquake knowledge in some simple ways. This project uses Unity3D virtual engine and 3Ds Max system to make a seismic science popularization APP. This APP is suitable for people who want to know about and learn from the basic knowledge of earthquake.
Keywords: Unity3D; 3Ds Max; AR; earthquake science popularization; APP
1 概述
目前大学生对于地震类知识了解较少,很多人提到地震还不是非常重视,事实上,地震这类天然灾害一旦发生所造成的危害是非常之巨大的。唐山地震,汶川地震这些中国历史上的重大地震造成的危害非常巨大。地震不可避免,但是,人类可以通过更加熟练的学习地震科普知识将伤害减到最低。所以说地震知识的科普对于人类自己是多么的重要。
为了使当今大学生能够了解学习到地震相关知识,我们团队在基于Unity3D虚拟引擎下制作了一款地震科普类APP,用来提高大学生的地震知识储备量。我们团队通过查询《地震的防抗救》和《地震与科普》这两本书的资料在此APP中提供用户阅读学习震前预防措施,震后修复措施;此APP有最新时事地震新闻,使用户第一时间了解国内外新闻资讯;另外,这款地震科普APP还设有地震知识问答,地震情景模式判断等模块与用户进行互动,增强趣味性;地震科普APP还通过视频对地震、火灾、洪水和台风进行基本科普,使用户对其他自然灾害也有一定的认识与了解。此APP最具特色的功能点在于AR设计,我们开发团队通过了解AR的功能点发现:将AR技术嵌入这款APP中会使APP呈现出来的内容更加直观。所以AR技术在此APP中是一个很好的特色功能点。
Unity3D是由Unity Technologies公司开发的一款引擎,它支持3D和2D两个维度,支持C#语言进行编程,是进行虚拟现实开发的很好的引擎。Unity3D它是一款轻量级的引擎,它在安装,调试和打包都有很方便的优点。它学习成本较低,开发成本也很低,文档也很完善。而通过从Unity3D中的Asset Store获得模型和场景是非常方便的。我们团队通过查询《Unity 5.X从入门到精通》书籍实现地震科普APP的功能点,在代码方面通过查询《Unity 3D脚本编程:使用C#语言开发跨平台游戏》书籍来实现脚本中的相应代码。
2 地震科普APP总体设计
2.1 整体策划
首先这款APP作为一个应用软件来说,应该具有最基本的功能是注册登录功能。所以我们团队在此APP最前面加入了注册登录功能,增加了此APP的保密性。我们团队准备在这款APP中加入场景模拟、知识问答、各大地震局网页链接、AR识别、灾害演示视频、实时新闻、地震科普知识、官方地震通知以及获取实时定位各个功能点。
2.2 功能设计
地震科普APP使用了Unity3D、Photoshop、Microsoft Visual Studio、Vuforia、软件,也使用了NGUI和UGUI等插件。地震科普APP的界面设计、功能点实现主要使用Unity3D进行开发。Photoshop主要用于制作一些此APP所需要的图片集。Microsoft Visual Studio用于编写这款APP中需要的所有脚本程序,这些脚本程序需要用C#语言来实现。地震科普APP通过使用Vuforia来制作此APP的AR识别部分。地震科普APP也使用了Unity3D中的一些插件功能使APP整体更加的完善。
3 地震科普APP详细设计
地震科普APP主要采用黄色、白色和灰色的界面设计,它包括注册登陆界面和“模拟、科普、首页、通知、我的、菜单”五个模块,每个模块都有自己的特色及分工。
3.1 注冊登陆界面
注册登陆界面是用户进入地震科普APP一道锁。如果是老用户直接输入账号密码就可以进入APP,如果是新用户则需要注册新账号才能进入APP,要填写账号名、填写新密码、确认新密码。这一系列操作结束就可以使用APP了。这个界面中所有的脚本代码都是用C#语言在Microsoft Visual Studio内进行编写的。
3.2 模拟界面
这款软件作为一个地震科普APP最直观的给用户进行科普知识就是模拟地震真实发生的场景,让用户学习正确的逃生办法。模拟界面就是我们团队通过设置地震发生在日常的环境下,让用户选择正确的逃生选项来对用户进行地震科普。在模拟界面,我们团队制作了三个模拟场景:在家中发生地震、在学校发生地震、在街道上发生地震,这三个场景都属于人们日常的生活环境。我们首先设置点击这三个场景会有相关剧情提示地震发生的条件,一共有若干个选项供用户进行点击选择,用户点击其中正确的选项,系统会出现“√”用来提示用户选择正确,如果用户点击错误,系统会出现“×”用来提示用户选择错误。其中这个界面中的所有插画图片是我们通过Photoshop所制作的。 3.3 科普界面
我们在科普界面设置了三个小模块。第一个是知识模块。这个模块包括各大地震局网页链接和知识问答。用户可以通过点击链接获取全国各地有关地震的最新讯息,运用NGUI中功能点完成。我们通过查询《标准走进百姓家丛书:防震减灾基础知识问答》这本书的资料在知识问答中设置了一系列地震相关练习题,运用了读表等操作。第二个是AR。这个模块我们通过运用Vuforia来实现扫描我们自制的图片集来获取相关文字弹出界面。我们获取用户手机上的摄像头进行扫描图片完成此操作。第三个是灾害演示。这个模块是我们录制灾害演示项目和查询相关资料的视频,共有“火灾,地震,洪水,台风”四个视频,我们通过视频转码的模式将我们所需要的视频导入地震科普APP中。
3.4 首页界面
首页主要包括实时新闻和地震科普知识。其中实时新闻中的内容是由中国地震局和中国地震科普网等平台发布的地震发生的最新消息。地震科普知识是本团队通过查询相关地震资料制作的文字类科普知识,如图1所示。
3.5 通知界面
通知包括官方通知和系统通知。官方通知指的是中国地震局等官方平台发布的权威通知。系统通知是关于地震科普APP最新版本的通知。
3.6 我的界面、菜單界面
我们团队通过使用获取GPS可以精准的定位用户所在的经纬度。另外,此界面可以选择退出登陆和切换账号。菜单界面可以查询此APP的介绍、使用方法和最新版本号。
4 结束语
地震是危害巨大的自然灾害。地震科普知识也成为了我们不可或缺的知识。大学生对于地震科普知识还不够了解。随着现在科技水平的提高,地震科普不再仅仅局限于书本,而是可以通过不同的方式对现在的人们进行全方面的科普。近几年里,虚拟现实技术的蓬勃发展给社会的各行各业都带来了很大的方便。地震科普APP用虚拟现实技术更加全面的向用户进行地震方面的科普,地震科普APP的各个方面都会使用户对于地震科普拥有全新的体验。即使地震灾害无法避免,那我们也应该尽我们所能的做好防范措施。
参考文献:
[1]中国地震灾害防御中心.地震的防抗救[M].北京:科学普及出版社,2019.
[2]中国地震灾害防御中心.地震与科普[M].北京:地震出版社,2019.
[3]杜玮,黎益仕,林碧苍.标准走进百姓家丛书:防震减灾基础知识问答(第二版)[M].北京:国家标准化管理委员会,中国质检出版社,2014.
[4]Unity Technologies.Unity 5.X从入门到精通[M].北京:中国铁道出版社,2016.
[5]陈嘉栋.Unity3D脚本编程:使用C#语言开发跨平台游戏[M].北京:电子工业出版社,2016.
转载注明来源:https://www.xzbu.com/1/view-15241461.htm