杜红燕 田兴彦 宋露 符海威
摘要:烟花表演是中国传统民俗文化,但因环境污染和安全隐患因素,烟花表演受到了严格的限制。近年虚拟现实技术快速兴起,开始逐渐用于设计、娱乐、科学研究等多个領域。本文重点研究运用虚拟现实中的粒子系统技术模拟各种实体烟花效果,然后定义一种基于XML的虚拟烟花表演编排语言,利用Unity 3D引擎设计实现虚拟烟花排演系统,从而可以编写虚拟烟花表演方案XML并进行虚拟烟花表演。虚拟烟花排演系统可应用到文艺演出、场馆会所、甚至手机等各种展示场景中,将烟花表演以虚拟现实的方式应用到文化生活中。
关键词: 粒子系统; 虚拟烟花; 烟花表演; 虚拟烟花表演编排语言; Unity 3D
中图分类号:TP311 文献标识码:A 文章编号:1009-3044(2018)12-0243-02
1 引言
烟花表演传播着辞旧迎新、乐观进取的价值观,是中国传统民俗文化,是深入骨髓的文化符号。但因其产生严重的空气、噪音、卫生等环境污染以及爆炸、火灾等安全隐患,烟花表演受到了越来越严格的限制。近年虚拟现实技术快速兴起,由于它能利用计算机生成一种模拟环境,给人们带来身临其境的感受,开始逐渐被用于娱乐游戏等多个领域[1]。本文重点研究利用Unity 3D引擎中的粒子系统模拟实现各种烟花效果,并在此基础上设计实现虚拟烟花排演系统,从而可以将自己编排的虚拟烟花表演应用到文艺演出、场馆会所、甚至手机等各种展示场景中,将烟花表演以虚拟现实的方式应用到文化生活中。
2 虚拟烟花排演系统软件结构
虚拟烟花排演系统(VFCPS ,Virtual Fireworks Choreographed Performance System)软件结构图如图1所示。系统主要由三部分构成:1)基于Unity 3D引擎,利用引擎中的Shuriken粒子系统仿真实现7类烟花特效,包括:喷射类、旋转类、升空类、吐珠类、烟雾类、礼花弹类和变色类[2]。基于这7类烟花特效,用户可通过修改多种粒子参数得到更多用户定制的烟花特效;2)定义一种基于XML的虚拟烟花编排语言 VFCXml,用于编写虚拟烟花表演方案,通过方案脚本控制整场烟花表演的节奏、画面、色彩等。系统利用C#的XML解析器实现对烟花表演方案脚本的解析;3)虚拟烟花排演系统VFCPS基于Unity 3D引擎,解析用户编写的烟花表演剧本,依照方案编排有节奏地运行各种烟花特效,完成整场烟花表演。
3 烟花特效
3.1 粒子系统
Unity 3D是Unity Technologies公司的一个能够让开发者轻松创建诸如三维视频游戏、建筑可视化、实时三维动画等类型互动内容的多平台综合型游戏开发工具,是一个全面的专业游戏引擎。Unity 3D内嵌的Shuriken粒子系统采用模块化管理,个性化的粒子模块配合粒子曲线编辑器使设计人员能方便高效地创作出各种缤纷复杂的粒子效果。
3.2 烟花特效
各种粒子特效的设计关键在于确定粒子的属性,表现粒子的生长、衰老和死亡,粒子属性受到一组随机过程的控制,从而体现不规则物体(烟雾、火焰、云彩等)的随机性和动态性[3]。系统针对实体烟花的7种主要类型,即:喷射类、旋转类、升空类、吐珠类、烟雾类、礼花弹类和变色类,进行了模拟仿真,建立了烟花特效库。系统在设计烟花特效时主要涉及以下属性:粒子的时间属性(即粒子生命周期)、粒子的发射属性(即粒子数量、速度)、粒子的受力属性、粒子的色彩属性、粒子的大小属性、粒子的运动方向属性、粒子的渲染属性等,通过对这些属性的取值或随机范围或变化曲线进行不同设定,得到五彩缤纷的烟花效果,如图2所示。
3.3 后期渲染增强
系统针对烟花表演整体视频采用了4种图像增强技术:抗锯齿(全屏)技术,平滑图像硬件渲染出的多边形边缘的锯齿;对比度增强技术,运用图像处理领域中非锐化遮蔽方式的原理加强系统画面的对比度;几何边缘检测技术,根据场景中对象的几何形状来绘制其轮廓线;运动模糊技术,根据之前保留的渲染帧的图形形成的运动轨迹。这些图像增强技术的运用起到了加强场景视觉效果的作用。
3.4 烟花音效
音效系统指声音制造的效果,可以增强场面的真实感。Unity 3D具有灵活而又强大的音效系统[4]。通过声音分析,系统将烟花绽放分为前后三个音效环节,分别为发射音效(Shoot_Sound)、爆炸音效(Explosion_Sound)和噼啪音效(Crackle_Sound)。每一个音效环节又可以设定自己的属性特征,即:音效文件、音高(Pitch Max、Min)和音量(Volume Max、Min),图3为系统的一种烟花音效设定。烟花音效属于烟花特效的重要属性,烟花特效运行时同步启动烟花音效。烟花音效和系统背景音乐一起烘托出烟花表演的现场氛围。
4 虚拟烟花编排与表演
4.1 烟花编排方案
烟花表演是一门视觉艺术,它的编排设计非常重要,是烟花表演晚会的灵魂。在实景的烟花表演晚会中,首先要设计出烟花编排方案,方案的设计是根据烟花产品种类围绕着如何体现晚会主题来进行构思,做到产品多样、层次分明、丰富多彩,并突出各种烟花的特点,让它充分显示烟花艺术的魅力,编排进程做到节奏分明,张弛有度,目不暇接,牢牢地抓住观众的心,迎合大众的审美情趣。
4.2 虚拟烟花编排语言
系统参考现实烟花表演编排方案,定义了基于XML的虚拟烟花编排语言VFCXml,烟花表演设计人员使用该语言编写虚拟烟花表演方案,系统严格依照方案控制整场烟花特效节奏,使烟花表演舒缓有序,花色流光溢彩。VFCXml语言定义了4种主要元素,即:表演
虚拟烟花表演编排方案通过VFCXml语言编写,编写的方案应该内容清晰、主次分明,具有一定的逻辑性,以促使视觉信息得到快速、准确、清晰地表达和传播。
5 虚拟烟花排演系统
虚拟烟花排演系统VFCPS是基于Unity 3D引擎开发的跨平台3D烟花表演编排表演软件,其主要功能有:
1)加载表演场景。烟花表演的场景,既可以是用户定义的二维背景图像,也可以是用户设计制作的三维场景,用户可以在场景中交互指定烟花发射点;
2)烟花特效制作。软件系统实现了7大类烟花特效,用户可在此基础上修改调整各项参数,演示并保存烟花效果,从而得到各种用户所需要的更多的烟花特效,建立用户的烟花特效库;
3)编排烟花表演方案。系统提供了基于XML的虚拟烟花编排语言VFCXml,用户可以使用该语言依据主题要求编写烟花表演方案文件,通过方案脚本控制整场烟花表演的节奏、画面、色彩等;4)虚拟烟花表演。软件系统可以制作单个烟花特效并模拟演示,也可以加载用户编写的烟花表演方案文件并解析烟花表演方案脚本,根据方案中
6 结论
虚拟烟花排演系统VFCPS不仅运用Unity 3D的Shuriken粒子系统实现了7类烟花的特效模拟,允许用户进一步定制更多的烟花特效,还定义了基于XML的虚拟烟花编排语言VFCXml,允许用户使用该语言编写虚拟烟花表演方案并由系统执行方案完成整场虚拟烟花表演。
参考文献:
[1] 李海.基于粒子系统的烟花模拟[D].安徽大学,2013.
[2] 吕雪,劉丽,王俊杰,等.基于GPU粒子系统的烟花模拟[J].计算机工程与设计,2013(3):989-992.
[3] 李松维,周晓光,王润杰,等.基于粒子系统烟雾的模拟[J].计算机仿真,2007(9):199-201.
[4] 熊耀. 基于Unity3D粒子系统的三维影视特效开发研究[J].软件导刊,2012(11):134-136.