论文部分内容阅读
基于物理的流体模拟一直是图形学界的研究重点,而这一类模拟都需要解决一个同样的问题——大规模数值计算。受计算机硬件的制约,以前的研究者的工作只能在一些小规模的、低维的模型上开展。随着影视、游戏等产业的发展,人们对规模更大的、细节更为丰富的高维动画需求日渐迫切,研究者们开始把精力投入到如何以最低的计算代价来实现高质量模拟上来。基于物理的流体模拟计算中,由于数据间具有一定的独立性或复用性,研究者开始使用基于GPU的通用目的计算(GPGPU)来实现低代价的模拟。2007年NVIDIA公司发布了GPGPU计算环境——CUDA,为研究者提供了比以往GPGPU环境更简单易用的计算加速和图像渲染方案。本文基于CUDA进行三维的稳定流模拟,以火焰模拟为线索,针对其中涉及到的速度场和温度场等复杂的计算内容,设计了基于CUDA的计算方案,对其中的大规模稀疏线性方程组,使用CUDA实现了雅可比、高斯-塞德尔和共轭梯度法三种方程求解器。针对火焰的颜色绘制、漩涡等问题,通过黑体辐射和增加漩涡限制因子解决,并针对其中的烟雾和焰心绘制提出了一种简便的绘制策略;针对可视化绘制问题,使用CUDA实现了基于光线投射的体绘制方法。全文基本完成了基于稳定流方法进行火焰模拟计算和绘制的全过程,所有实现均基于CUDA完成,模拟结果达到了可观的加速比和可视化效果。本文的工作可以为流体模拟入门者提供一篇较完整的参考,也可以给对CUDA计算和图像渲染感兴趣的研究者给予一定的指导。