基于3ds Max与Unity 3D的虚拟展厅图片更新的实现

2016-04-13 02:19吴保文杨柏军
文山学院学报 2016年6期
关键词:平面图文山漫游

吴保文,杨柏军

(文山学院 信息科学学院,云南 文山 663099)

基于3ds Max与Unity 3D的虚拟展厅图片更新的实现

吴保文,杨柏军

(文山学院 信息科学学院,云南 文山 663099)

随着虚拟现实的不断普及,虚拟展厅通过虚拟现实技术在电脑上的模拟重建,实现了生活中场景及展品的展示。对3ds Max与Unity 3D的虚拟展厅中展示图片的更新问题进行研究,结合C#脚本语言,介绍了在不修改3ds Max 模型和Unity 3D源文件的前提下,只需要把图片放到指定的文件目录中,就可以实现对虚拟展厅中的展示图片进行自动更新的方法。

虚拟展厅;Unity 3D;展图自动更新

随着虚拟现实技术的发展,越来越多的数字展厅通过互联网络平台进行展示,打破了传统展厅时间、空间的限制,实现24小时的展示,充分利用互联网的传播优势加强了宣传力度[1]。目前,基于网络平台的虚拟展厅更多地注重展厅的美化和用户的漫游交互体验,而忽略了展厅管理维护和重复使用的效率。

三维模型的建立与编辑对技术人员专业技能和计算机硬件设备有较高的要求。本数字展厅是以书画展厅设计为例,使用3ds Max构建三维模型,在Unity 3D中实现漫游和交互的同时,把展厅中展图的更新作为研究重点,实现了在不打开和编辑展厅源文件的情况下,只要将展出的图画作品按照一定的尺寸规格放入到指定文件夹中,就可以实现展厅中图画的更新。

1 书画虚拟展厅开发流程

以书画作品为主题的虚拟展厅采用了AutoCAD绘制平面图,然后在3ds Max中完成三维模型的建立,最后在Unity 3D中实现漫游、交互和图片的更新,具体开发思路和流程如图1所示。

2 书画虚拟展厅的实现

2.1 展厅平面图的绘制

数字展厅平面图的绘制在AutoCAD绘图软件中完成。实现方法是在AutoCAD中将工作模式切换为三维绘图模式,在俯视图(x y平面)上画出长方形,如果是使用线条工具逐一画出的长方形,画好后需要使用面域工具对其进行面域,将线条合成一个整体。然后在俯视、仰视外的前/中/后/左任意视图中用三维工具中的拉升工具对中长方形进行长度拉升,完成展厅平面图的绘制。

图1 虚拟展厅开发流程

2.2 展厅三维模型的建立

展厅主要利用3ds Max对墙体、展台、画框、装饰物等建立模型。首先在3ds Max中导入平面图,然后利用3d捕捉开关的图形按钮对平面图中的直线进行挤出命令操作,按平面图建立三维墙体。墙体模型建立后,使用移动摄影机进入模型内部绘制展台,然后再对展厅进行场景渲染,完成后将建好的模型导出为FBX格式,同时注意勾选“嵌入的媒体”选项,这样才可以确保模型在导出时贴图不会丢失。

2.3 场景漫游的实现

Unity 3D中集成了Character Controllers角色控制器组件,常用于第一人称和第三人称的角色控制。角色控制器内部的胶囊状的碰撞体可以用于碰撞检测,从而实现人物前后左右的任意行走,可以观察到所建场景的任意一个角度,不会产生人物与建筑的穿插,使人物行走观察更为合理[2]。本展厅中使用的是第一人称角色控制,可以从unity标准资源包中导入第一人称角色控制器预设。第一人称角色控制器的视角特性是看不到本身,因此该子物体只是角色控制器的一个图形描述,主要帮助用户可以在场景中查看角色控制器的位置,在实际使用时用户可以关闭此图形子物体的渲染。在室内漫游中,相机按照指定路径自动漫游简称自动巡路。除了可以以第一人视角通过操作键盘和鼠标进行实时漫游外,还可以设计按照指定路径进行巡回往复的不间断浏览[3]。

3 展厅模型中展图更新的实现

3.1 展图的制作

展图在进行替换之前需要根据展厅中展台的大小进行修改,这样才能保证更换后保持原有图片的比例不变形。以书画展厅一为例,主站台1至3号和5至10号的规格为80×160像素,4号主展台的规格为1950×1300像素,在编写程序时把图片名按照展台的顺序命名为1.jpg、2.jpg、....10.jpg,并按相应规格调整好比例,这样才能被相对应的展台所识别。

3.2 展图更新的实现

以展示台1的图片更新为例,实现步骤如下:

(1)定义一个Gameobject类型物体s1,并在场景中将实例展示台1命名为s1,这样s1就代表了展示台1:public GameObject s1。

(2)定义一个string类型数据path1,用于指定图片1的路径:public string path1 =@"E:szzt utu1. jpg"。

(3)定义一个texture2d类型物体test,它的作用是作为从指定路径加载进的texture2d的临时载体:public Texture2D test。

(4)根据路径加载外部图片的原理,定义jiazai函数,函数中将加载一次所有路径中的图片。

public void jiazai(){

Texture2D tex= new Texture2D(1, 1);

if (File .Exists (path1 )==true ) {

//检测路径path1中的文件是否存在,存在才执行下面的读取图片的代码;

byte [] rawJPG = File.ReadAllBytes(path1);

//定义一个byte类型的数据暂时存储由readallbyte函数根据路径将文件转换成的byte数据;

test.LoadImage(rawJPG);

//由loadimage函数将byte类型数据rawjpgz转换为名为test的texture2d类型数据;

test = tex;

s1.renderer .material .mainTexture = test;

//将texture2d类型数据赋给是s1的mainTexture,s1便展示出新贴图。

(5) 判定现在场景中的贴图与当前路径中的图片是否一致,从而决定是否要把路径中的图片加载到场景中。

定义Pd()函数来判断当前场景的图片是否与路径中的图片一致,根据判断结果决定控制加载开关的bool数据gb的值为true或者false。

定义check函数,比较图片test2d和s1物体的贴图,如果相同则表示已经加载了路径中的图片,将gb的值改为true。

(6)定义Update更新函数,根据gb的值来判断图片加载的情况,使用jiazai()函数对所有路径上的图片进行加载,加载完后将gb值变成true,表示图片更新已经完成。

4 结束语

本文应用Unity 3D实现了Windows文件操作管理展厅图片的更新,将技术管理人员从繁琐低效的模型编辑工作中解脱出来,为展厅的管理和二次使用提供了便捷的操作方式。此方法为虚拟现实技术应用于数字博物馆多种展品类型的更新实现提供了参考。

[1] 年爱华. 基于Unity 3D的三维虚拟展厅的设计与实现[J].广东交通职业技术学院学报,2015(8):55-57.

[2] 胡安林. 3ds Max材质与贴图应用技法精粹[M].北京:科学出版社,2008:98.

[3] 干建松. 基于Unity3D的室内漫游的关键技术研究[J].盐城工学院学报(自然科学版),2011(12):56-59.

Virtual Showroom Pictures Updated Implementation Based on 3ds Max with Unity 3D

WU Baowen,YANG Baijun
(School of Information Science, Wenshan University, Wenshan Yunnan 663099, China )

With the popularity of virtual reality, virtual showrooms by virtual reality technology in computer simulation of reconstruction, realize the display of exhibitions and life scenes. In this paper, based on 3ds Max and Unity 3D, virtual showroom display pictures updating problem is studied, and in combination with C# script language, the paper introduces the automatic picture updating method of only putting the pictures in the speci fi ed fi le directory without modifying the 3ds Max model and Unity3D source fi les.

virtual showrooms; Unity 3D; exhibition fi gure updated automatically

TP393

A

1674-9200(2016)06-0056-03

(责任编辑 刘常福)

2016-06-21

文山学院大学生创新创业训练项目“基于3DMAX和VRP的校园文化数字展厅的设计与实现”。

吴保文,女,云南文山人,文山学院信息科学学院讲师,硕士,主要从事数字媒体应用研究;杨柏军,男,云南楚雄人,文山学院信息科学学院2012级计算机科学与技术专业学生。

猜你喜欢
平面图文山漫游
Modulational instability of the coupled waves between fast magnetosonic wave and slow Alfvén wave in the laser-plasma interaction
《别墅平面图》
《别墅平面图》
《景观平面图》
文山肉丁
霹雳漫游堂
文天祥与文山肉丁
山歌唱文山
平面图的3-hued 染色
NASA漫游记