0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

采用EON Studio技术实现虚拟化工场景的建设

电子设计 来源:郭婷 作者:电子设计 2019-06-18 08:00 次阅读

虚拟现实(Virtual Reality,简称VR,又译作灵境、幻真)是近年来出现的高新技术,也称灵境技术或人工环境。虚拟现实是利用电脑模拟产生一个三维空间的虚拟世界,提供使用者关于视觉、听觉、触觉等感官的模拟,让使用者如同身历其境一般,可以及时、没有限制地观察三度空间内的事物。VR是一项综合集成技术,涉及计算机图形学、人机交互技术、传感技术人工智能等领域,它用计算机生成逼真的三维视、听、嗅觉等感觉,使人作为参与者通过适当装置,自然地对虚拟世界进行体验和交互作用。使用者进行位置移动时,电脑可以立即进行复杂的运算,将精确的3D世界影像传回产生临场感。该技术集成了计算机图形(CG)技术、计算机仿真技术、人工智能、传感技术、显示技术、网络并行处理等技术的最新发展成果,是一种由计算机技术辅助生成的高技术模拟系统。

1 开发平台概述

EONStudio是一种依据图形使用者接口,用来研发实时3D多媒体应用程序的工具,主要应用在电子商务/营销/数字学习/教育训练与建筑空间等领域。研发步骤包括输入3D对象,通常这些对象会先由3D绘图软件完成,如3DStudioMAX、Lightwave等等,或者CAD应用软件如ArchiCAD、ProENGINEER、AutoCAD等。输入模型后,就可以透过EON视觉图型化程序接口、Scripting或C++程序代码轻易让模型加上动作。最后,EON程序档案可以经由网络或封包展示,也可以与其它支持微软ActiveX组件的工具进行互动,(Powerpoint、Word、Macormedia、Authorware、Director、Shockwave、VisualBasic等等)。EON Studio基于最新的PC技术,是在OpenGL图形标准和微软的DirectX多媒体功能的基础上建立起来的。通过与OpenGL和DirectX的联系,使得利用EON所开发的应用程序在将来图形卡渲染能力加强的同时其渲染效果也会得到提高。EON强调资源(软件/硬件)的集成与延展、基于Web的交互式三维文件的安全维护、逼真度及后台数据库的结合。EON Studio技术和VRML技术在结构上十分相似,可以认为,EON Studio技术是VRML技术基础上的延伸和扩充,其系统组成如图1所示。

采用EON Studio技术实现虚拟化工场景的建设

EON Studio应用了面向对象技术,不仅使得对三维世界的描述变得清晰,还通过封装属性和建立模拟场景内部消息路由,很方便地实现虚拟实体的交互和行为动作等功能。虚拟场景的基本元素为节点(node),节点是EON Studio为多媒体和交互对象定义的一个对象集。节点[1]的属性包含在域(field)和事件(event)中。EON Studio的节点类型很丰富,具有超过100个预先设定好的功能节点,按功能可以分为以下几类:预设节点;代理节点;组装节点;基础节点;碰撞检测节点;可视化节点;传感器节点。

另外,EON Studio在以上基础上又增加了Script Nodes,可以利用Java script或VB script进行编程,处理一些复杂的仿真,扩展了EON Studio中虚拟世界的动态行为。利用EON Studio的功能节点,能方便地建立满足用户要求的三维虚拟场景,完成用户特定的交互过程。

2 三维模型建立与优化

2.1 三维模型建立

3D Studio Max,常简称为3ds Max或MAX,是Autodesk公司开发的基于PC系统的三维动画渲染和制作软件。其前身是基于DOS操作系统的3D Studio系列软件,最新版本是2011.在Windows NT出现以前,工业级的CG制作被SGI图形工作站所垄断。3D Studio Max + Windows NT组合的出现一下子降低了CG制作的门槛,首选开始运用在电脑游戏中的动画制作,后更进一步开始参与影视片的特效制作,例如X战警II,最后的武士等。

使用3DS MAX可以较方便地建立逼真度很高的三维模型。图2是建立某化工场景模型的软件界面。

采用EON Studio技术实现虚拟化工场景的建设

2.2 模型的优化

模型的优化对漫游场景的浏览很有帮助,前期如果不对场景的模型进行很好的优化,到了制作后期再对模型进行优化时就需要重新回到MAX里修改模型并进行重新烘焙后再导入到当前的EON场景里,这样就出现了重复工作的情况,大大降低了工作效率。因此,模型的优化需要在创建场景时就应受到足够的重视。

在3DS MAX中建模的准则基本上可以归纳为以下几点:

(1)制作简模

漫游场景中运行画面每一帧都是靠显卡和CPU实时计算出来的,如果面数太多,会导致运行速度急剧下降,甚至无法运行;还会导致文件容量增大,在网络上发布还会导致下载时间增加[2].

(2)三角面尽量为等边三角形

在调用模型或创建模型时,尽量保证模型的三角面为等边三角形,不要出现长条型。这是因为长条形的面不利于实时渲染,还会出现锯齿、纹理模糊等现象。

(3)合理分布模型的密度

模型的密度分布不合理对其后面的运行速度有影响,如果模型密度不均匀,会导致运行速度时快时慢,因此,应合理地分布场景模型的密度。

在3DS MAX中完成模型烘焙和优化后,输出的Eoz文件格式,可方便地导入EON Studio进行开发设计。

3 EON中场景的优化

初步完成化工场景的建模后,通过EON Viewer浏览的速度缓慢,甚至发生停顿现象,如果不能解决浏览速度问题,整个系统就没有什么意义了。为了解决这个问题,首先要对该问题的产生进行分析。三维场景的呈现是通过浏览器以默认视点为参照对场景描述文件的解释而完成的,每当用户拖动鼠标或按下箭头键在场景中走动或旋转时,视点就会发生变化。在真实世界中,人向前行,对面的事物会越来越近,为了模仿这种效果,每当视点发生变化,浏览器就会重新计算场景中各对象的新位置并重新进行渲染,使得人能走近某个对象。当场景中对象较多时,浏览器渲染的速度就跟不上视点变化的速度,从而产生停顿的现象。

由于化工厂场景巨大、管线繁多、工艺流程复杂等问题,对三维场景的显示与实现带来一定的困难。笔者曾试着采用贴图的方法,即在一个方体上贴上相应的纹理图来表示装置,这种方法实现起来很简单,浏览器解释速度较快,但最大的缺点是构建的对象缺乏三维立体感和真实感,因此贴图的方法不适合化工场景。通过对三维场景实时绘制技术的分析与研究,提出如下优化方式。

3.1 大量使用重用机制

不仅一个装置内部的对象可以重用,流程相同的装置之间也可采用重用机制。对于两个不同的构建模型,有些泵和阀门是相同的,那么对相同的部分利用DEF与UES重用机制就可以极大地简化描述文件,最重要的是能够减轻浏览器的负担,从而提高渲染速度。重用机制的使用有个前提,即只能在一个描述文件内部使用[3].因此,需要进行代码重用的2个或多个对象,它们的描述应放在同一个节点中。

3.2 利用EON统计值改善模拟品质

复杂三维场景的实时绘制要求包括:场景环境中的运动体的位置、姿态的实时计算与动态绘制;用户视点改变时,画面的刷新必须达到人眼觉察不到闪烁,即相当光滑的程度,通常为20~30帧/s,至少不能少于10帧/s;同时场景的环境也要求随着人的活动及时产生相应的画面,图形生成必须能立即做出反应并产生相应的环境和场景。

可以利用模拟(Simulation)菜单中显示模拟程式统计值(Show Simulation Statistics)选项,或是点选工具列中显示模拟程式统计值的按钮,启动模拟统计值的显示[4].HZ:每秒框架数目。这是一个利用数个框架计算出来的平均速率,较小的值表示框架产生较慢;Frm:准备框架所需的时间(s)。这个值可用来确认哪个框架耗费较多的时间;App:更新传呼所需的时间(s);Eve:事件处理所耗费的时间(s)。Drw:绘图所耗费的时间(s),包含下载材质、像素填充及顶点转换;#tri:绘制的三角形实际的数目(注意这个值会随视角的改变而改变)。

随着统计值的变化,可实时判定具体场景的浏览速度,同时利用EON中Mesh节点下的Polygon Reduction level子节点进行Mesh网格的简化,以达到适合的浏览效果。

3.3 合理定义显示比例

大部分的显卡使用材质的影像记忆体及框架缓冲来做动作。框架缓冲可分为前缓冲、后缓冲及Z缓冲,在屏幕上根据所看到影像的不同而不同。如果在视窗中执行EON模拟程式,前缓冲会涵盖整体事件屏幕,但不影响模拟视窗的大小,在记忆体的数量上,前缓冲由Windows屏幕设定来决定。而后缓冲及Z缓冲的大小则依据目前EON模拟视窗的大小来设定。

在屏幕上绘制像素是需要时间的,当相对于视窗大小的框架速率很大时,像素填充会设定模拟速度的极限。要降低像素填充所花费的时间,可使用较小的模拟视窗,点选大小/方位比例(Size/Aspect Ratio)标签,并输入模拟视窗大小,降低透支(Overdraw)的程度(例如空间内部结构的模拟),合理地将场景进行分割并保存为独立的Edz文件,利用改变模拟(Change Simulation)功能节点来进行切换,也可利用在框架功能节点的特性视窗中选取隐藏(Hidden)选项,让漫游浏览中尚未看到的几何物件暂时不显示。

3.4 利用场景切换技术实现同一对象不同模型的自动切换

有针对性地为场景中面数复杂的装置建立多个不同的模型,使场景在显示的时候以不同模型多方面显示,如图3所示。最简单的是建立简单和细化两种模型,当视点距对象较远时采用简单模型,视点接近时自动切换为该对象的细化模型。采用这种办法,需对某对象建立多个模型,并利用Switch、LOD节点或触发器实现模型的切换[5].在切换过程中,要对切换时间进行设置,使切换时间小于人眼眨动频率,画面看起来更加逼真。这种方法既能够减小面数、提高演示速度,又能够使人感觉不到明显的切换痕迹,是虚拟现实领域应该继续沿用并加以延伸的方法。

采用EON Studio技术实现虚拟化工场景的建设

3.5 漫游系统优化测试

虚拟现实漫游技术的一大困难在于漫游仿真速度与运行速度之间的矛盾。在建立最佳仿真程度模型的同时又要保证速度的运行是要重点协调的问题。本系统运行的硬件配置为:处理器Pentiu(R)4 3.0 GHz,内存1 GB,显卡使用NVIDIA Geforce 7300GT(256 MB),在台式机上进行了优化测试,测试结果如表1所示。

采用EON Studio技术实现虚拟化工场景的建设

利用EON Studio建立的虚拟化工场景,以某化工企业的生产场景为模型,实现了该虚拟场景的漫游,如图4所示。使用者可以对场景进行全方位浏览,也可对局部进行细致的观察;并配合适当的讲解,最终对该生产过程产生一个清晰、深刻的认识。通过对模型部分优化与在EON Studio中进行的必要优化,符合实时交互频率15帧/s以上的漫游要求,加快了三维场景的实时绘制速度,提供了良好的漫游浏览速度。该优化方法具有一定的普遍性,对后续漫游信息系统的完善和二次开发提供了必要的保证。

采用EON Studio技术实现虚拟化工场景的建设


声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 计算机
    +关注

    关注

    19

    文章

    6653

    浏览量

    84577
  • 仿真
    +关注

    关注

    50

    文章

    3872

    浏览量

    132167
  • 虚拟现实
    +关注

    关注

    15

    文章

    2238

    浏览量

    92126
收藏 人收藏

    评论

    相关推荐

    透明屏即将成为未来CT场景时代重要角色之一

    ,物与事均存在关联,场景是唯一可承载人、事、物三元的载体,是真正实现虚拟与现实的融合,构成万物联接的场景数据库。在即将到来的场景时代,数联中
    发表于 07-01 09:57

    诚聘兼职EON Studio培训讲师

    企业培训公司面向单位员工培训,长期招EON Studio兼职老师,一般三天左右的短周期培训,周末为主,有2人左右的小辅导,也有30人左右的培训大班,待遇优,北京,上海,成都,广州,深圳等,如您想挣点
    发表于 09-21 10:19

    虚拟现实+工业该如何发展?六大应用场景抢先看

    通信,以实现动态交互、决策分析和控制。按生产环节看,虚拟现实技术可在产品需求分析、总体设计、工艺优化、生产制造、测试 实验、使用维护等多方面提供支撑,有助于实现工业产品设计-制造-测试
    发表于 09-27 17:37

    几种主要的虚拟技术有什么不同?

    虚拟技术作为建设绿色数据中心的一项重要技术,一直在不断发展完善,其应用领域包括操作系统、服务器、存储以及网络。网络的虚拟
    发表于 08-14 06:52

    小容量OLT应用场景分析

    ONU。  ● 固移融合场景  在通常的固定移动融合(FMC)场景中,移动运营商利用现有回程网络资源和机房机柜空间建设FTTH网络,实现从移动运营向全业务运营的转型。小容量OLT可以和
    发表于 12-03 14:29

    如何在visual studio实现USB虚拟串口功能?

    如何在visual studio实现USB虚拟串口功能?
    发表于 12-07 06:26

    如何利用RT-Thread Studio软件和CubeMX软件实现大疆A板的u***虚拟串口功能?

    如何利用RT-Thread Studio软件和CubeMX软件实现大疆A板的u***虚拟串口功能?
    发表于 02-11 07:55

    基于Web3D的虚拟场景漫游的设计与实现

    介绍了Java3D 与VR 相结合的Web3D 应用;采用了三层式的Client/Server 结构和分布计算模型设计系统体系结构,提出了在Java3D 中获取场景对象实例的方法,给出了在Java3D 场景
    发表于 07-09 08:49 16次下载

    GL Studio的分布式虚拟训练系统关键技术

    为在GL Studio实现分布式虚拟仪表的远程交互,对该虚拟训练系统的关键技术进行研究。在分析分布式
    发表于 03-22 00:04 27次下载

    EON软件二次开发上实现通信装备虚拟维修系统设计

    系统以Delphi 为系统开发的平台,在EON 二次开发的基础上,设计出了某通信装备的虚拟维修训练系统,并进行了实践验证,有很好的应用价值。
    的头像 发表于 11-09 08:05 2706次阅读
    在<b class='flag-5'>EON</b>软件二次开发上<b class='flag-5'>实现</b>通信装备<b class='flag-5'>虚拟</b>维修系统设计

    教育部在北京发布《智慧学习工场2020建设标准指引》

    教育部学校规划建设发展中心7月29日在京发布《智慧学习工场2020建设标准指引》。会议宣布,从即日起实施智慧学习工场2020建设标准的指引、
    的头像 发表于 08-01 18:14 2114次阅读

    虚拟机:Ubuntu配置Android Studio的步骤

    虚拟机:Ubuntu配置Android Studio的步骤
    的头像 发表于 06-22 09:43 2532次阅读

    化工厂人员定位系统为什么要采用RFID技术实现

    厂人员定位系统. 为什么必须采用RFID技术实现化工厂的定位呢? 1.传统的技术门禁、道闸、GPS的方式无法在厂区应用; 2.门禁、道闸反
    发表于 11-25 17:15 943次阅读

    融合施工场景及空间关系的图像描述生成模型

    为解决施工场景中缺少空间关系图像描述的问题,提出一种融合施工场景及空间关系的图像描述生成模型。采用YoLoⅴ3网络进行目标检测,以 Transe算法为基础在传统对象检测模型中加入特征提取层形成关系
    发表于 04-02 14:15 0次下载
    融合施<b class='flag-5'>工场景</b>及空间关系的图像描述生成模型

    化工人员定位系统精确到“位”

    四相科技以UBeacon+iBeacon融合定位技术为支撑,采用先进的高精度时间同步技术和调度技术,打造化工厂人员精确定位系统可在复杂
    发表于 08-26 17:05 696次阅读