论文部分内容阅读
计算机动画是一种计算机图形学和艺术相结合的产物,是伴随着计算机硬件和图形算法高速发展起来的一门高新技术。近年来,诸如雨雪、龙卷风、烟雾、火焰、爆炸等自然景物的模拟一直是计算机图形学中最具挑战性的课题之一,其模拟在计算机游戏、影视、广告、视景仿真等各种领域中有着广泛的用途。1983年,W.T.Reeves首次提出了粒子系统,其优点在于可以用简单的体素来构造复杂的物体,从而为自然景物的造型提供了强有力的技术手段。Maya作为当今主流的三维动画制作与渲染软件之一,在影视、电视、广告和游戏等领域中有很广泛的应用,其强大的功能和易用性得到专业人士的共识。利用Maya动力学系统可以逼真地模拟很多自然现象。然而,Maya同时也是一款极其复杂的软件程序包,它的动力学系统也很难掌握。由于Maya具有很强的可编程性和可扩展性,我们可以开发有针对性的外部插件用以化解这个矛盾。通过开发特效插件简化Maya操作来达到某种特殊效果,将会大大缩短三维动画的制作时间,减少类似重复工作。本文通过为Maya开发了一款插件来研究如何利用外部插件对Maya的功能进行扩展。重点研究了基于动力学原理和粒子系统的自然景物模拟方法,利用动力学原理开发一个Maya插件,该插件的主要功能是快速地在场景中创建一些常用的粒子特效效果。该插件基于Maya的粒子系统,并通过Maya内嵌的Mel脚本语言以及脚本化的Maya开放式界面制作而成。本文的研究重点和主要成果有:1、通过调查研究目前国内外特效中运用较多的粒子特效类型及制作过程,为Maya粒子特效插件的设计提供了可靠依据。2、分析了插件技术的类型、接口及优缺点。对Maya插件的两种编程接口MEL和C++进行了分析和对比。并选定使用MEL来开发粒子特效插件。3、对基于动力学和粒子系统模拟自然景物进行了研究,总结出最大实现粒子的可控制性,既不是单纯靠粒子发射器发射粒子,也不单纯用场来干扰粒子,而是粒子系统与Mel表达式结合。然后以Reeves提出的粒子系统的基本思想和原理为基础,分析了结合粒子系统和MEL表达式来模拟自然景物的方法。4、归纳出3种常用的粒子运动类型,对其中典型的4种特效——物体飘落、龙卷风、烟花和喷泉进行了分析与设计,并使用Maya嵌入式脚本语言MEL编写成插件,包括粒子发射器的建立,粒子的发射,粒子的数量、速度、形状等参数的设定等。该插件可随时调用到需要的场景中,并且提供了一套完整易用的用户界面,可在界面上直接调整参数实时控制特效的效果,从而在生产制作中提高工作的效率。5、在开发完成后,对此插件进行了测试。测试内容主要包括安装测试、对物体飘落模块、龙卷风效果模块、烟花效果模块、喷泉效果模块4个模块的功能测试和压力测试。对从测试结果看,此插件具有很好的功能性和简便性,达到了预期的设计目标。