资源描述:
《基于osg粒子系统的消防水柱模拟研究与应用》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、基于OSG粒子系统的消防水柱模拟研究与应用①高兴1,穆榕榕1,孙咏21(中国医科大学附属盛京医院计算机中心,沈阳110004)2(中国科学院沈阳计算技术研究所,沈阳110168)摘要:消防水柱的模拟在消防模拟演练中有着广泛的运用.为了模拟真实的消防水枪喷出水柱的效果,建立逼真的仿真场景,提出了一种基于OSG(openscenegraph)粒子系统仿真模拟技术,结合场景真实数据的自定义水粒子模型设计方式.该模型依据水柱的两个端点间水平距离和高度差数据,动态的产生水粒子的属性值,解决了传统模型中水柱不够真实的情况,实验结果表明,自定义水柱粒子模型能够真实的模拟消防水枪喷出的
2、水柱,具有逼真的仿真效果.关键词:粒子系统;虚拟现实;消防水柱;仿真建模;OSGResearchandApplicationoftheFireWaterColumnSimulationBasedonParticleSysteminOSGGAOXing1,MuRong-Rong1,SUNYong21(ShengjingHospitalofChinaMedicalUniversity,Shenyang100004,China)2(ShenyangInstituteofComputingTechnology,ChineseAcademyofSciences,Shenyang1
3、10168,China)Abstract:TheFirewatercolumnsimulationhasbeenwidelyusedinvisualFireSimulationTrainingSystem.TosimulatetherealFirewatercolumnandestablishrealisticfirewatersimulationscene,auser-definedwaterparticlesmodeldesignmethodbasedonOSGparticlesystemandrealisticscenedataispresented.Bycomp
4、utingspecifichorizontaldistanceandheightdifference,dynamicallygettingtheinitialattributeoffirewaterparticles,thenotrealenoughconditionoffirewatercolumnparticlesissolved.Keywords:particlesystem;virtualreality;firewatercolumn;simulationmodeling;OSG消防模拟演练系统是通过对各类消防事故数值模拟和人员行为模拟仿真,在虚拟环境中模拟事故
5、的发生、发展、救援过程的三维仿真系统.在模拟演练系统中,消防水柱是常见的粒子效果之一,消防水柱的模拟可以提高演练系统的真实感,无论从现实意义的角度,还是从计算机仿真角度,在消防模拟演练系统中研究和应用消防水柱粒子模拟均有极其重要的意义.OSG图形系统是一个基于工业标准OpenGL的软件接口,封装了大量提高高效粒子仿真算法.在粒子效果仿真方面,很多研究者已经做了大量的研究工作,文献[3]结合粒子受力分析,建立了对自然景观雪的模拟;文献[4]中,将粒子发射速度参数与随机扰动速度参数相结合,建立了烟雾、火焰与爆炸碎片的模拟效果;文献[5]对结合纹理映射方法实现了多种喷泉模拟.
6、文献[6]利用双目图像检测灭火水柱落点.目前多数国内对消防水柱的模拟仅仅在示意性的表现上,并没有考虑真实消防水枪的出水速度和射程等参数.本文基于粒子系统原理和OSG图形系统,在分析消防水柱粒子特性基础上,利用OSG图形接口,提出一种动态模拟消防水柱的算法,该算法依据消防水枪与着火点之间水平距离和高度差等数据,计算水粒子初速度,初始角度,水粒子生命值等属性,更加真实的模拟消防水柱.①收稿时间:2012-12-07;收到修改稿时间:2013-01-31212研究开发ResearchandDevelopment2013年第22卷第6期计算机系统应用http://www.c-s
7、-a.org.cn1粒子系统简介1.1粒子系统基本原理1983年,Reeves首先提出粒子系统建模仿真方法并被广泛应用.粒子系统的基本思想是使用大量的、具有状态和属性的微小粒子来描述不规则的物体,通过对每个粒子属性和状态的改变进行不规则物体运动变化的仿真模拟.一个粒子系统由大量称为粒子的简单元素构成.每个粒子都是由元模型赋予属性后形成的,元模型可以是一个点,也可以是一个四面体、球或者是线.每个元模型都有一组属性,如大小、颜色、透明系数、位置、速度和生命周期等,可以为元模型设置最大值和最小值,在粒子的生命周期中,会根据消耗的时间,在最大值和