基于虚拟现实技术的商品展示平台研究
李广丽;张红斌
【摘要】虚拟现实有效地模拟人在自然环境中的各种主观感官,是一种新型的人机
交互体验方式.介绍了虚拟商品展示平台实现过程中的关键技术,设计出在Web环
境下进行商品虚拟展示的功能模块.此外,借助3DMax和Virttools对三维模型的
构建、贴图及交互控制脚本的设计进行了重点阐述.最后,设计结果被发布成网页形
式,并通过了系统测试.测试结果表明:设计方案可行且运行效果良好.
【期刊名称】《华东交通大学学报》
【年(卷),期】2010(027)006
【总页数】7页(P59-65)
【关键词】商品展示平台;虚拟现实;Virtools;3DMax
【作者】李广丽;张红斌
【作者单位】华东交通大学信息工程学院,江西,南昌,330013;华东交通大学软件学
院,江西,南昌,330013
【正文语种】中文
【中图分类】TP91
虚拟现实(VirtualReality,也称VR)技术是融合了人工智能技术、多媒体技术、计
算机图形学技术和计算机网络技术而发展起来的一种全新的计算机人机交互技术
[1],用户可以体验由计算机生成的三维虚拟环境,并自然地与虚拟环境进行视觉、听
觉甚至是触觉和味觉的实时交互,获取与真实世界相似或相仿的操作体验。
近年来,随着Web的普及,电子商务也得到了飞速的发展,人们足不出户就可以通过
Web完成商品的浏览、选购、下订单等电子交易。文中的虚拟展示平台也是一个
基于Web的电子商务系统,它融虚拟现实技术和电子商务技术于一体,在Web环境
中为用户提供多感知、深度沉浸感的人机交互界面,突出了产品的展示效果,加深用
户对产品的理性认识,为电子商务网站获取更大的销售回报创造基本条件。
1相关技术介绍
1.13DMax介绍
虚拟展示平台设计的基础是三维模型的构建。由于Virtools没有建模功能,故需要
采用第三方的建模软件来完成三维建模。3DMax是一款三维建模软件,它已经成为
游戏开发、电影电视、动画制作等行业的必备工具软件[2]。本文采用它来制作系
统所需的三维模型,并保存为.nmo格式,方便在Virtools中导入,构建虚拟展示平台
的三维交互环境。
1.2Virtools介绍
Virtools将三维建模工具创建的3D对象作为单独的组件,分配独立的制作任务[3]。
在任务制作过程中,由于Virtools的架构十分开放,故它允许设计者使用
BuildingBlocks(行为交互模块,简称BB)来设计用户与3D对象交互的行为脚本。
设计者只要在图形化交互界面上将BB赋予到3D对象或虚拟角色上,并通过流程图
方式决定BB中前后行为的处理顺序,实现交互脚本的设计[4]。基于虚拟现实的商
品展示平台需借助Virtools来整合所有的三维模型,并完成最关键的行为交互设计。
2系统设计
2.1功能设计
基于虚拟现实的商品展示平台是一个以展示商品为核心的Web服务平台。Web
用户根据自己的偏好,观察商品的三维模型外观,并了解商品的主要性能参数,若要进
一步熟知商品的主要功能,还可通过更复杂的虚拟交互体验获取[5]。因此,商品的三
维建模力求逼真,而虚拟交互体验则借助人的视觉或听觉提供趣味性极强的在线商
品操作,如“翻转”、“打开”、“关闭”、“听音乐”、“观视频”等操作。消
费者足不出户就可获取对商品的真实感官,从而激发对商品采购的热情。本系统以
设计一个销售电脑的网上门店为例。
考虑到电脑采购者的电脑知识水平参差不齐,故在电脑三维模型展示时,既要提供直
观、平民化的交互体验,还需提供专业的电脑性能参数供专业的电脑使用者体验。
此外,要让用户充分地沉浸于虚拟现实场景中,并可自由漫游。故系统包括如下主要
功能:
(1)设计一个虚拟的电脑销售门店。该门店销售的所有电脑都可通过虚拟环境进行
展示,而用户可与之进行交互,获取与真实电脑销售门店相仿的漫游感官。
(2)设计电脑三维模型。它是虚拟电脑销售门店的核心元素。它的建模与贴图要求
十分细致,且必须加入人机交互。因此,电脑的三维建模将更加灵活细腻,外观更加精
细美观。此外,在人机交互中加入视频、声音、动画等感官刺激,为漫游者演示电脑
的“视频播放”、“图像显示”、“声音播放”等功能,使漫游者可更加深入地认
识电脑商品的性能。
(3)设计电脑销售门店中的其它虚拟物体。包括桌子、椅子、展示台等家具,丰富视
觉感官和漫游体验的真实感。
(4)设计场景中的灯光。摄影机的布置及数量要合理,以贴近人的真实感觉。
基于虚拟现实的商品展示平台的总体架构如图1所示。
图1三维虚拟展示平台的总体架构图
2.2三维场景设计
系统需要进行建模的对象有虚拟门店的场景(包括墙、天花板、地面、展示台、桌
椅柜等)和虚拟电脑商品(包括电脑,电脑配件等)。系统采用3DMax7作为三维模型
设计的工具。三维模型创建的流程[6]如下:
第1步:3D模型的生成,主要利用3DMax进行建模;
第2步:在3DMax中对模型赋材质与贴图,需要利用PhotoShop修改和制作材质
贴图;第3步:改进设计出来的虚拟场景。
2.2.1虚拟模型的三维设计
一般采用两种方法来构建三维模型:基于模型的三维建模和基于图像绘制的三维建
模。设计人员可灵活选择适合自己的建模方法[7]。以电脑商品中的“笔记本”为
例,在建模时需要把它拆分成若干简洁的模块,然后分别建模每个模块,最后再将模块
拼贴起来构成一个完整的笔记本三维模型。图2是3DMax中笔记本电脑的三维
建模,其它电脑的建模同理,不再赘述。
图2笔记本电脑的建模
图3贴图后的笔记本电脑
2.2.2材质与贴图
模型建立完成之后就为模型赋予材质和贴图[8]。材质的作用是形成物体的反射特
性。一般使用3种颜色及对物体高光区的控制,就可构造出绝大部分的反射材质[9]。
该材质简单,但效果非常好。不同的虚拟对象有不同的赋予材质的方案。贴图则是
尽可能逼真地模拟物体表面的纹理,增加三维模型的复杂度,丰富其细节,使其能更加
逼真、更加精细地再现实物。
本系统采用PhotoShop完成贴图工作。Virtools中使用65536色或24位色的贴
图,且贴图大小必须是2的次方,如64*64、512*512等,但不能超过512*512。贴
图最好是正方形,这样可加快3D实时处理的速度[5]。贴图使用的文件格式很多,
如.jpg,.bmp等,但在同一个场景中最好使用同一种文件格式。可选择有较高压缩比
的.jpg图像贴图。贴图后的笔记本电脑如图3所示。
3人机交互控制脚本的设计
3.1第一人称相机的设计
第一人称相机即从漫游者的角度来获取对虚拟场景的认识,它包括前进、后推、上
移、下移、俯视、仰视、左转、右转、物体滑动等漫游体验。故需使用第一人称相
机做控制,且加入碰撞属性,以增加交互的真实性,用户漫游时会具有很强的切身观察
感。第一人称相机的BuildingBlocks模块设计如下:
(a)SetAsActiveCamera-Cameras/Montage/SetAsActiveCamera设置此相
机为当前活动相机
(b)SwitchOnKey-Controllers/Keyboard/SwitchOnKey按键切换
(c)Translate-3DTransformations/Basic/Translate移动
(d)Rotate-3DTransformations/Basic/Rotate旋转
(e)ObjectSlider-Collisions/3DEntity/ObjectSlider物体滑动
第一人称相机的脚本图如图4。键盘控制相机移动,控制键分别为键盘上的↑、↓、
←、→、Shift、Ctrl,它们的意义分别为镜头:前进、后退、左移、右移、上移、下
移。每一次按键,移动单位为各个方向上的1单位距离,脚本实现如图5。键盘控制
相机旋转,控制键分别为键盘上的G,V,C,B,F,H,它们的意义分别为镜头:俯视,仰视,左
转,右转,左倾,右倾。每一次按键,移动单位为各个方向上的0.5弧度,脚本实现如图6。
对象碰撞设计:设定Camera的碰撞属性GroupObstacles,Radius为碰撞半径。
图4第一人称相机的整体脚本
图5键盘控制相机镜头的移动
图6键盘控制相机镜头的旋转
3.2电脑商品的多方位展示设计
用户在漫游过程中,可通过单击电脑商品完成与电脑三维模型的交互。可对商品进
行键盘的移动和旋转展示,达到每个角度都能展示的目的,当再次单击商品后,商品归
回原位,等待下次被用户单击拾取。具体程序流程如图7所示。
图7电脑商品的多方位展示控制流程
电脑商品的BuildingBlocks模块设计如下:
(a)SwitchOnKey-Controllers/Keyboard/SwitchOnKey按键切换
(b)Translate-3DTransformations/Basic/Translate移动
(c)Rotate-3DTransformations/Basic/Rotate旋转
(d)WaitMessage-Logics/Message/WaitMessage等待消息
(e)DeactivateScript-Narratives/ScriptManagement/DeactivateScript禁用
脚本
(f)ActivateScript-Narratives/ScriptManagement/ActivateScript激活脚本
(g)SetQuaternionOrientation-3DTransformations/Basic/SetQuaternion
Orientation设置朝向
(h)SetPosition-3DTransformations/Basic/Position设置位置
其按键切换、移动、旋转等的脚本类似于第一人称相机脚本,不再赘述。仅给出等
待鼠标左击恢复初始状态的实现:商品接受鼠标左键点击后,设置成它在三维场景里
的初始坐标,同时设置它的四元参数朝向(初始朝向)。然后禁止移动和旋转的进行,
进而触发脚本,返回初始处于等待被选取的状态。设置如图8所示。
图8等待鼠标左击恢复初始状态脚本
3.3部分交互功能体验
1)点击按钮播放声音。脚本描述:通过触发按钮或者三维实体播放一段音乐。
BuildingBlocks如下,脚本如图9所示。
(a)WavePlayer-Sounds/Basic/WavePlayer声音播放器
(b)WaitMessage-Logics/Message/WaitMessage等待消息
2)点击按钮播放电影片段。脚本描述:通过触发按钮或者三维实体播放一电影。
BuildingBlocks如下,脚本同图9,故省略。
(a)MovePlayer-Materials-Textures/Animation/MovePlayer影片播放器
(b)WaitMessage-Logics/Message/WaitMessage等待消息
3)笔记本电脑的翻开和闭合。脚本描述:单击笔记本屏幕部分的虚拟实体,让屏幕绕
着中轴(参照物)转动一个特定的角度,即完成闭合。翻开只需绕负方向的轴转相同的
角度即可。BuildingBlocks如下,脚本如图10所示。
(a)RotateAround-3DTransformations/Basic/RotateAround围绕旋转
(b)WaitMessage-Logics/Message/WaitMessage等待消息
图9等待鼠标左击播放音乐
图10笔记本电脑的盖子翻开与闭合的脚本
4系统实现
4.1在Virtools中导入三维模型
运用3DMax的Explorer软件将3DMax中构建的三维模型以.nmo的格式输
出。.nmo文件是Virtools默认的用于存储漫游角色、三维场景以及三维模型等的
文件格式,它可以被Virtools识别,以便文件导入。三维模型被默认导入到Virtools
的资源库中,当.nmo文件被导入之后,即可添加实现交互的脚本。
4.2进入场景及选中商品
用户成功登录之后即进入三维虚拟场景,IE中的3D播放插件自动加载三维场景,载
入电脑销售门店的三维虚拟场景,如图11所示。作为实验,只在三维场景中放置了
一台笔记本电脑的样品,若漫游用户单击该商品即选中该商品,如图12所示。接着,
漫游用户就可以与该虚拟电脑完成多种不同的交互。
图11电脑销售门店的虚拟场景主界
图12单击选中一台笔记本电脑
4.3操作交互体验
漫游用户可以选择从不同的角度或距离来观察该商品,获取对商品外观的感性认识,
如图13所示。此外,漫游用户还可以尝试打开或关闭笔记本电脑,获取对商品的操
作体验,如图14所示。漫游用户还可以选择欣赏播放视频、音乐等,获取对商品功
能的更深层次的认识。
图13任选角度和距离观察商品
图14笔记本的闭合
4.4系统发布及测试
借助Virtools把交互、特效、动画、灯光等设计完成后,即可将作品发布。
Virtools有两种发布形式:Web网页格式和exe格式。考虑在Web环境上应用本
系统,故选择将其打包成Web网页格式。具体发布过程:利用Virtools中的Create
WebPage命令把.cmo文件(Virtools默认保存的工程文件)直接发布成HTML的
网页格式并且附带生成.vmo格式的文件。发布之后,作为浏览器客户端还需要安装
Virtools的WebPlayer插件,保证虚拟现实场景的正常浏览,该插件可从Web免
费获取。
此外,对系统运行过程中的流畅性、运行时间进行了简单的测试,测试的环境分单机
测试和内部100M局域网测试。单机测试时建议CPU采用AMD3200+或以上
CPU,内存128MB以上,显示器支持800*600或以上分辨率,16位高彩色,显卡则要
求64MB以上的独立显卡,最好支持Direct3D或OpenGL图形加速。表1是本系
统在三台不同配置的PC机上的单机测试情况。测试表明,单机环境下系统能正常
运转,系统加载速度基本可以接受,软件运行的效果良好。
表1系统在不同硬件环境下的测试CPU显存内存运行情况CELERON1.7G
64MB1G场景加载较快,约30秒,运行较流畅AMD3200+128MB1G场景加载
快,约8秒,运行流畅Core2DuoT7600256MB2G场景加载迅速,约4秒,运行非
常流畅
作为实验,目前仅在局域网范围内进行了网络访问可行性的测试,把生成的网页放置
在100M局域网内的一台WebServer上,然后在其它客户端机器通过IE访问该虚
拟现实平台主页,以进行测试。测试结果:场景加载时间较长,超过30秒,运行比较流
畅,运行效果良好。
本软件的开发为消费类电子商品的虚拟展示平台的设计提供了良好的思路:首先,设
计商品的3D模型,然后,运用Virtools为3D模型加入互动脚本,最后,把虚拟展示系
统导出为Web网页格式,在Web上发布,即可为Web用户提供商品的三维虚拟交
互体验。
参考文献:
[1]陈定方,罗亚波,等.虚拟设计[M].北京:机械工业出版社,2007.
[2]王梅艳.虚拟现实技术的历史与未来[J].中国现代教育装备,2007(1):108-110.
[3]李昌国,朱福全,谭良,等.基于3D和Virtools技术的虚拟实验开发方法研究[J].计
算机工程与应用.2006(31):84-86.
[4]王龙江,荆旭,焦学健,等.基于虚拟现实技术的校园漫游系统[J].山东理工大学学报:
自然科学版,2007,21(4):89-93.
[5]王方,王峥.3dsMax模型及动画输出为Virtools格式的方法[J].现代电影技术应
用技术研究,2007(10):49-54.
[6]刘明昆.3维游戏设计师宝典——VIRTOOLS开发工具篇[M].成都:四川电子音像
出版中心,2005:173-183.
[7]王炜,包卫东,张茂军,等.虚拟仿真系统导论[M].北京:国防科技大学出版社,2006.
[8]刘晓艳,林珲,张宏.虚拟城市建设原理与方法[M].北京:科学出版社,2003:105-139.
[9]方小峰.基于虚拟现实的城市规划三维仿真设计系统[J].计算机仿
真,2007,24(3):230-234.
本文发布于:2022-12-28 23:29:31,感谢您对本站的认可!
本文链接:http://www.wtabcd.cn/fanwen/fan/90/49701.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
留言与评论(共有 0 条评论) |