基于unity3D的虚拟喜洲白族村落漫游

/ 3

基于 unity3D的虚拟喜洲白族村落漫游

许斌 柏雪 普云飞 胡杨 指导教师:刘海燕(副教授)陆映峰(高级讲师)

1. 玉溪师范学院数学与信息技术学院,云南 玉溪 653100



摘要

在3D技术的高速发展的今天,Unity在我们的现实生活中遍地可见,顺应时代的发展与进步,3D漫游逐渐成为了一种足不出户就能领略目的地风采的一种有效途径。我们构建Unity3D漫游大理喜洲白族村落能够让用户拥有身临其境的感觉,行走在我们为用户搭建的虚拟场景——喜洲白族村落,感受、体验当地的特色文化,我们通过Unity3D构建场景,同时在场景中含有相应的交互设计,让用户更好的了解白族。本项目不仅可以感受3D交互性带来的真实感,还可以通过虚拟场景感受到少数民族的传统文化。

Abstract: today, with the rapid development of 3D technology, Unity can be seen everywhere in our real life. With the development and progress of the times, 3D roaming has gradually become an effective way to enjoy the style of the destination without leaving home. We built Unity3d to roam through the Xizhou Bai village in Dali, which enables users to have an immersive feeling, walk in the virtual scene we built for users - Xizhou Bai village, feel and experience the local characteristic culture. We built the scene through Unity3d, and included the corresponding interaction design in the scene, so that users can better understand the Bai nationality. This project can not only feel the reality brought by 3D interaction, but also feel the traditional culture of ethnic minorities through virtual scenes.


关键词 : 虚拟漫游 Unity 3D建模 3Dmax


1、引言

本项目为大学生创新创业项目,主题为喜洲白族村落——基于Unity的虚拟场景漫游。

在网络技术发达的时代,为了能够在网络上体验到少数民族的特色文化,我们选项了大理喜洲白族村落,将喜洲古镇制作了虚拟场景,进行Unity虚拟漫游设计。我们在构建虚拟场景之前特意去实地考察,感受与体验当地的风土人情,同时,在当地获取了一些必要的素材,为我们后续项目的需要添砖加瓦。在项目在实现的过程中,我们学习了许多课程以外的知识,支撑本次项目的顺利实施,当然其中也存在一些不足,在后续我们会根据这一点,在代码调试、Unity构建等方面加以改进。让大理喜洲白族村落虚拟场景能够真实的展示出来,同时通过我们的项目,弘扬少数民族白族的传统文化。


2. 场景建设

2.1 构建场景

本项目中场景制作以Unity3D为基础,以实际需求为导向,设计场景内各模块的功能。同时,我们把虚拟场景的开发流程主要分为以下的几个部分:模型制作、三维虚拟场景搭建、控制逻辑的引入及文字处理及配音。同时,我们开发完成的虚拟场景系统还可以部署于不同平台之上,具备跨平台兼容的特性。

2.1.1 模型构建

随著三维模型的构造方式逐渐趋于成熟。Autodesk 公司推出的3D Max软件,是目前最流行的三维建模软件之一,因此,3Dmax就成为了我们是首选的建模软件,同时为我们快速构建三维模型提供解决方案。[1]在3D Max我们可以进行多边形建模、面片建模等多种建模方式,其中,我们以多边形建模最为常用。多边形建模以点、线、面为操纵对象,我们通过对网格模型的编辑,能将基本的几何体转换为目标模型。但是要构建三维模型,我们首先需要获取模型的参数信息,为了能够获得真实准确的信息,我们通过去实地考察拍摄的照片以及在网络上查询的真实数据制作了各式各样的模型,其中包扩人物模型、房屋模型、各种物件模型等,这些模型按照比例缩小,符合实际要求,能够在虚拟场景中展示大里喜洲白族村落的展示面貌,让用户感受到虚拟场景的真实性。

2.1.2 模型贴图及细节处理

Unity3D贴图并不是十分的方便,因此我们需要在导入unity.D之前就对模型进行贴图。但是在贴图时,模型的贴图会发生重叠和缺失,发生的原因就是因为我们在模型制作好之后对模型的UV拆分和平铺在UV框能的问题,可能是物体的UV重叠,或者是物体的UV没有平铺在框内。我们在对模型进行了UV的拆分的原因是,UV的拆分,可以让我们对模型贴图更加方便和细节化,让模型更加的真实,更加完美。贴图,我们使用到了3Dcoat,通过3Dcoat的渲染颜色及个材质相匹配纹理,让模型更加真实,增加了用户更强的真实感受。在3Dcoat贴图之后,我们把模型导入到unity中,在unity中,也有一些物体没有贴图,因此,我们需要在unity中创建材质球,通过材质球给没有贴图的物体进行添加色彩。材质球是物体可视化的表现,我们在unity中添加贴图通过在材质球添加纹理和修改与之对应的颜色来达到了我们想要的效果,我们可以通过多个材质球一起来渲染同一个物体,使得物体更加具有真实感。


2.1.3 Unity3D虚拟场景构建

在科技在不断的进步下,虚拟现实技术也在不断发展,用以VR系统开发的软件平台及建模语言亦应运而生。近几年,Unity公司研制出了Unity图像引擎,能有效地促进场景可视化、实时三维动画的创建,简便、容易。我们在模型贴图完成导出之后,我们只需将其导入 Unity3D后,之后通过我们实地考察拍摄的照片和网络上信息的查询,按照地图,进行以可视化的方式完成场景中对象准确的搭建,这样即可完成三维虚拟场景的搭建工作。但在搭建的同时,我们需要考虑虚拟场景的现实物理性,因此便需要对虚拟场景中的对象进行进一步的配置。例如,在现实世界中,是不存在对象之间随意穿行的,根据这一原则,我们需为虚拟场景中的每一个对象添加碰撞检测机制,我们给每一个元素都添加了刚体,让每一给物体之间不存在穿透。我们还根据现实中存在的重力,给虚拟场景中的元素增加了重力,让场景中的元素更加真实。我们还在场景之中添加了天空盒。Unity 3D 中的天空盒实际上是一种使用了特殊类型 Shader 的材质,这种类型的材质可以笼罩在整个场景之外,并根据材质中指定的纹理模拟出类似远景、天空等效果,使虚拟场景看起来更加完整,同时更加真实。目前 Unity 3D 中提供了两种天空盒供我们使用,其中包括六面天空盒和系统天空盒,这两种天空盒都会将游戏场景包含在其中,用来显示远处的天空、山峦等。为了在场景中添加天空盒,在 Unity 3D 软件界面中,执行菜单 Window→Lighting 命令,可以打开渲染设置窗口,六面天空盒我们比较常用,但是使用这种天空盒,我们必须找到四边能够重合的图片,同时在3Dmax中使用漫反射制作成6张图片,把这6张图按照制定的顺序放在六面天空盒中,这样就对虚拟场景构建好了。

2.1.4 控制逻辑的引入

在虚拟场景中,我们需要实现人物的移动,因此,我们需要给对象添加脚本,让对象实现交互性,增加真实感。Unity支持以C#及JavaScript编写控制逻辑,我们通过C#编写脚本,让角色实现了移动和交互,让虚拟场景更加的真实。我们也通过脚本,在虚拟场景中添加了NPC,让NPC和人物角色进行互动,NPC的加入,让虚拟场景变得更加的真实,同时实现了现实中的人物的交流场景。


3.功能分析

3.1配音

虚拟场景中,我们构建的是热闹的集市,人员复杂,声音喧闹,我们通过小组成员之间的音频录入,以及实现插入,让虚拟场景更加真实。我们在特殊的模型里还设置了语音讲解功能,当你点击物体时,会为你讲解该模型的历史,让你去感受喜洲白族的少数名族的传统文化,同时这样做更加可以让你感受的交互性和真实性。

3.2视角分析

本项目中,我们创作了第一视角和第三视角,通过两种视角,可以更好的展示我们构建的大理喜洲白族村落的全貌。两种视角的可以真实的展示出我们构建的虚拟场景,从两种不同的视角出发,展示一个虚拟场景,可以让场景变得更加真实。

3.2.1第一视角

第一视角是通过操控角色的用户亲眼所见的角度对客观事物进行观察或描述。我们在虚拟场景中使用第一视角,这样可以更直观,让用户更具代入感。在第一视角下,用户可以控制角色,可以对虚拟场景中的元素近距离观看,可以让用户身临其境,通过虚拟场景去感受大理喜洲白族村落的风俗文化。我们的第一视角在虚拟场景中,可使用键盘的“W”键控制角色的移动,通过鼠标拖拽可进行视角的旋转,可以看到,操作者每一细进入细致的操作。而且在漫游过程中,角色碰到障碍物会停止前进。我们使用的是Unity3D中自带的的第一人称角色控制预设体,其中我们通过脚本定义了角色的移动的加速度等信息,使得角色的移动过程具有真实感。[2]

3.2.2第三视角

第三视角也被称为“全知”视角,是指从第三个人的角度来观察,它能够带来更多的信息量。第三人称视角可以为用户带来的最大的好处就是自由,当用户处于第三人称视角下,人物和摄影是分开的,一个用来操控人物方位,另一个用来操控视野方向。玩家在第三人称游戏视角下,可以在一段范围内运动而镜头不会发生变化,这是第一人称视角所无法做到的。在第三视角下,我们可以看到控制等人物模型行走和跑步等动作,让用户在虚拟场景中更能感受到真实感。同时能够看到控制角色和其他人物模型等交互。

[3]

3.3换装系统

大理喜洲是白族的聚集地之一,白族的服饰是白族传统文化的特色之一。在我们构建等虚拟场景中,我们建立了一个换装系统,在这系统,我们设立了一个场景,当你在白族服饰店里点击衣服时,服饰店里等NPC会换上你刚刚点击的衣服,给你展示服饰,你可以点击其他衣服进行更换,NPC身上的衣服会以之对应。NPC的换装系统有很强的交互性。同时也给我们展示了白族的传统服饰,弘扬了白族的传统文化。


3.4场景优化


3D图形的面数越多,渲染时就越消耗系统资源,可以将用户看不到的面、线删除,同时对合并的物体使用一种材质,从而加快渲染的速度。并且也可以对灯光也做一定的优化,Unity3D中有顶点灯光和像素灯光,顶点灯光可以让所有的物体在每一帧被渲染一次,像素灯只能让每个被灯光照射到的物体在每一帧渲染一次,在漫游场景中通过顶点灯渲染整个画面这样即使是配置低的计算机也可以比较好地运行软件。


总结

“虚拟漫游喜洲白族村落”是一项完整的虚拟现实交互设计产品,科教兴国一直是时代主旋律,中国传统文化百花齐放,作为文化软实力的一部分,我们通过此次“虚拟漫游喜洲白族村落”,着重介绍白族文化,相比同类产品,更加独特、具有吸引力。

本产品使用Unity、3DMax这几个市场主流软件进行制作,适用于主流设备,后期主创团队也会进行维护。关键的流程在于项目经费的使用、项目的推广、项目方与合作方协调、客户的需求等。在市场营销方面,我们需要针对合适的人群,进行精准的定位投放产品,如:手办、建筑模型散件此类不具普遍性的产品;加大平台宣传,加强与电商平台合作,促进农产品、特色美食、手工艺品、白族服饰、文创产品等的销售;加强旅游宣传,推动当地旅游业的发展。本项目在市场中能够实现其它同类产品的多数功能,同时具有更优秀的文化传播能力。我们可以借此机会进行宣传推广,推动旅游行业的发展,多种渠道进行喜洲村落的宣传,将喜洲做成旅游胜地,既保护了原生态环境,又为当地居民进行创收。

1]关于Unity  .官网[引用日期2022-03-31]

2[] 第一视角.百度百科[引用日期2022-03-31]

3[] 第三视角.百度百科[引用日期2022-03-31]


胡杨,2001.01 男 云南昭通 高中 无 unity3D

柏雪,2000.01 女 云南玉溪 高中 无 unity3D

普云飞,2000.10 男 云南玉溪 高中 无 unity3D

许斌,2000.08 男 云南玉溪 高中 无 unity3D