虚拟校园漫游中粒子特效的技术实现
2018-02-25王俊洁刘辉
王俊洁 刘辉
摘要 粒子特效在虚拟现实校园漫游系统中的应用使得整个校园环境更加真实。本文结合某校园为实际开发,介绍了粒子特效在校园漫游系统中的应用。对粒子的碰撞,基础设置,以及通过表达式让粒子自旋,发射出来粒子的随机大小进行研究。
【关键词】虚拟校园 粒子特效 particalnpartical
虚拟现实(Virtual Reality,简称VR,也可译为灵境技术、幻真技术)是近年来出现的高新技术,亦称灵境技术或人工环境。本文在maya软件下实现了三维校园的可视化过程。通过数据信息采集、数据信息处理、三维模型建模、漫游系统创建等相关过程,构建出了一个效果逼真的三维可视化校园场景。虚拟校园是为学生提供一个三维的虚拟环境,支持环境规划、学校发展、资源管理以及远程访问等,成为了校园数字化管理的重要发展方向。
粒子系统作为三维动画软件中最为强大的特效系统之一,使用Maya的粒子及动力学可以最大程度的模拟自然界的现象。运用Maya粒子特效等效果来对虚拟现实进行修饰,达到引人入胜的视觉效果。通过对Maya粒子技术运动的研究分析,本文结合某校园为实际开发,通过实践制作虚拟校园漫游中的粒子特效。对Maya粒子特效进行理论上与技术上的探讨。
1 MAYA 粒子简介
粒子本身是相互独立的,它们之间相互作用很小,一般我们在研究的过程中忽略它们之间的相互作用力,而粒子本身比较微小,也不会与周围场景的变化相互产生相互作用,因此,在粒子运动的过程中,粒子的属性值并不冈为它周围粒子的变化而变化,而是在时间的推动下不断变化。
近年来,诸如雨雪、龙卷风、烟雾、火焰、爆炸等自然景物的模拟一直是计算机图形学中最具挑战性的课题之一,其模拟在计算机游戏、影视、广告、视景仿真等各种领域中有着广泛的用途。1983年,W.T.Reeves首次提出了粒子系统,其优点在于可以用简单的体素来构造复杂的物体,从而为自然景物的造型提供了强有力的技术手段。
Maya的粒子系统有两大特点,一方面是它可以通过MEL (Maya埋入式语言)控制粒子的运动;另一方面是与各种不同场、关键帧以及表达式等结合运用。
在Maya中粒子系统通过渲染方式的不同分为软件渲染粒子和硬件渲染粒子。软件粒子( cloud、blobby、tube)适用于制作云和液态的效果,它可以渲染出阴影、反射和折射;硬件粒子(point、spheres、multi-point等)通过硬件渲染可以表现更加有规律的效果,例如雨、沙等。
2 粒子特效的技术实现
为了增强虚拟校园漫游系统的逼真程度,我们使用了Maya粒子系统功能模拟出虚拟校园中的喷泉和樱花特效。粒子特效可以模拟现实中的水、雾、火、气等效果,其原理是将无数个粒子组成固定形态。为了模拟出真实的效果,用控制器和脚本来控制粒子系统的运动。大多数刺激人类视觉的特效画面,都是由粒子特效制作出来的。所以粒子特效的存在给虚拟现实带来了诸多便利。
2.1 partical粒子与npartical粒子
Maya中存在两种粒子,分别是partical粒子与npartical粒子。新建的partical粒子,不受任何场的影响,而且粒子之间不存在碰撞;新建的npartical粒子拥有智能大脑,自身带有重力,粒子之间存在相互碰撞。两种粒子同样可以在Maya粒子系统下进行goal运算、几何体替代、以及精灵替代特效。
2.2 虚拟校园漫游系统中的喷泉效果制作
喷泉特效的原理:在喷泉底座的管口创建发射器,让发射器延天空方向发射成千上万的小水珠粒子,水珠粒子受到重力和碰撞力的影响而发生运动变化,最后形成水珠欢腾跳跃的喷泉特效。
首先,在制作好的喷泉底座中创建一个particles粒子发射器,修改属性面板中发射器的类型(方向),然后让粒子延y轴方向发射;给粒子一个重力场,调整发射器的扩散与发射的速率,提高发射器的初始速度,使粒子向外扩散;将粒子渲染类型改为多条纹,通过修改颜色、不透明度、多点半径、每秒发射的粒子数,调整粒子的基本形态。
在喷泉特效中,一共创建了两套粒子,一套是发射出的主体粒子,一套是溅起的水花粒子,并设置了两次粒子碰撞事件,一次是与池底发生碰撞溅起水花事件,一次是水花与池壁发生碰撞死亡事件。我们通过MAYA粒子系统的碰撞编辑器解决两个碰撞问题。当第一套粒子与池底发生碰撞(修改池底弹性与摩擦力让粒子溅起来)产生第二套粒子。第二套粒子溅起来与池壁又产生一次碰撞,给第二套粒子一个重力,修改粒子的渲染类型、颜色与不透明度。粒子系统表达的物体越真实,粒子的数量就越多,其代
价是代码量大。为了减轻电脑的负担,当第二套粒子与池底发生碰撞时需要让第二套粒子消亡,就需要创建另一个事件,把粒子碰撞编辑器的粒子数设置为O。最后调整第二套粒子的弹性、摩擦力、发射器发射的粒子数,得到想要的效果。图1是喷泉特效展示图。
2.3 虚拟校园漫游中樱花飘落效果的制作
樱花飘落特效原理:在半空创建隐形发射器,让发射器延任意方向发射成千上万的樱花花瓣粒子,樱花花瓣粒子受到重力和空气的影响而发生运动变化随意飘落,最后形成漫天飞花的特效。
我们运用创建partical粒子,利用粒子实例化器(替换)实现了樱花的飘落。首先创建一个平面发射器,让粒子通过平面发射。将发射摆放到合适的位置,修改发射器类型为方向,给粒子一个重力,调整粒子的发射速率。再创建一个樱花花瓣面片,通过渲染编辑器的Hypershade賦给面片一个材质。在颜色属性中,通过文件类型将准备好的樱花的图案附加于面片上,最终制作出樱花花瓣的粒子图案,然后使用粒子下的粒子实例化器(替换),将樱花面片替换成粒子。
在此,需要解决以下几个问题。
(1)改变粒子在空中的状态;在动态属性中点击常规面板,点击添加粒子rotatianPP(旋转),在表达式编辑器中添加表达式(让粒子在O到360度之间旋转)。将旋转选项的目标方向选择rotationPP,使其看上去角度各异。再添加一个表达式,让粒子在运动中自旋。
(2)樱花面片的大小太统一,太死板。选择粒子,通过添加属性新建一个SuofangPP,创建表达式,(小的就是原来的0 8倍,大的就是它的1.2倍),在常规选项的比例找到sufangpp,让粒子根据表达式而改变大小。partical粒子之间不存在碰撞,粒子之间会出现交叉的现象,由于粒子数量大,体积小,可以忽略。
樱花粒子特效中主要是利用了粒子替换,解决粒子自旋与比例的大小,需要注意每创建一个表达式,要将表达式赋给粒子,才能达到预期效果。图2是樱花飘落效果展示图。
3 小结
本文通过实践制作虚拟校园漫游中的粒子特效,对Maya粒子特效进行理论上与技术上的探讨。认识到粒子特效的制作方法多种多样,不同的环境和需要可以采取不同的解决方式。软件仅仅提供的是方法与技术的手段,想要做好粒子特效,还需要我们多看,多想,有好奇心。
参考文献
[1]肖春英,谭振英.虚拟校园漫游系统建模方法及关键技术的研究[J].计算机光盘软件与应用,2013.
[2]秦爱梅,梁思懿.虚拟校园建模与场景漫游技术研究[J].信息与电脑(理论版),2017 (21):19-21.
[3]铁海彬,汪豪,浅析.Maya粒子特效在动画短片中的运用[J].2015.
[4]蒋道琛,基于粒子系统的虚拟战场环境模拟[D].安徽大学,2012.
[5]贺瞿,基于动力学原理的Maya粒子特效插件[D],上海交通大学,2011.
[6]吴继承,江南,虚拟现实中粒子系统的设计与应用[D].中科院研究生院,2004.