论文部分内容阅读
在计算机图形学中,不同自然场景间的交互作用模拟成为近年来研究的热点问题之一。树木作为自然界最常见也是最重要的组成元素之一,其与周围环境之间的交互作用模拟在电影、游戏等行业中发挥着举足轻重的作用。为了满足人们对视觉效果的追求,基于物理的动画算法被引入到图形学中来,这使得树木与周围场景间交互作用仿真效果更加真实;然而,由于当前计算机硬件发展水平以及软件并行算法的限制,计算机求解大量的物理方程组是一个非常耗时的过程。本文对此领域进行了深入而有针对性的研究与探讨,解决了树木与周围环境(如风、雨等)交互作用模拟问题以及基于物理方法的CUDA并行加速技术问题。本文的贡献与创新主要体现在以下几个方面:
提出一种由层次树枝结构与小细枝结构组成的树木结构模型,以及树木骨架提取算法。本文树木模型由树枝与树叶组成,树枝结构采用具有父子关系的层次结构,树叶来源于用户定义的具有多种树木种类的小细枝集。树枝骨架结构是驱动树木动画的基础,本文实现两种树枝骨架结构生成算法:一为基于规则的骨架生成算法,二为基于三维美工树木模型的骨架提取算法。最后,结合树木的表皮几何结构与树皮、树叶纹理对场景进行真实感绘制。
提出一种树木在风场中多尺度运动的算法。本文将树木风中动态分解为低频树枝动态与高频树叶动态。本文提出两种实现树枝低频动态模拟的算法:一为基于物理的转化矩阵计算(physically-basedtransfor-mationmatrixcalculations,简称PTMC)动态模型,二为改进的Euler-Bernoulli动态模型;同时,本文提出一种称之为angular-shell的树叶动态模拟算法,该算法能够将树叶限制于预先定义好的angular-shell空间内做高频运动。实验结果表明该算法可以真实、有效地模拟树木在风力作用下的摇摆运动。
提出一种模拟树木与雨滴交互作用算法。本文提出一种扩展三棱柱弹簧模型(extendedthree-prismspringmodel,简称ETPSM)用于控制树枝与叶柄在外力作用下的振动、扭转、反弹等运动;同时,应用简单几何模型结构与ShallowWaterEquations(SWE)两种不同方法模拟雨滴在具有亲水性的树叶表面上的多种运动现象,包括液滴的飞溅、流动、合并、下落、拖长尾巴以及叶片表面变湿等现象。树叶与液滴之间的相互作用是通过彼此间的压力进行传递的。
提出一种基于CUDA的实时树木风中动画并行算法。本文采用当前NVIDIA公司设计的GPGPU模型的CUDA框架,重新设计适合树木运动并行计算的数据结构,改进并行算法,真实地模拟树木在风力下摇曳等实时动画效果,提高了树木动画仿真效率。此外,本文将上述算法应用于基于物理的树叶形变算法的并行加速过程,亦取得了近七倍的加速效果。