论文部分内容阅读
近年来,布料仿真是计算机图形学的研究热点之一。但直至现今,由于计算量庞大,高真实感的布料仿真仍然非常耗时。如何健壮、快速和真实的模拟布料自身运动及其与周围环境互动的过程依然是当前的挑战性问题。 本文针对基于自适应网格重建的布料仿真,面向GPU(图形处理器)架构,实现了一个高性能的布料仿真实验系统。该系统在现有的自适应网格重建加速的布料仿真基础上,使用了GPU技术进行加速。仿真的所有环节(物理积分、碰撞处理、网格重建等)都在GPU上完成。各环节都保证了足够的并行度,从而获得了并行加速。 本文的主要工作内容包括: 1.提出了一个在GPU上进行自适应网格并行重建的算法。对于网格重建的细分、旋转、合并等各拓扑操作,在GPU上并行运行时,由于多个操作相互影响而会产生很多冲突问题。本文分析这些问题,并提出解决思路,使得网格重建部分在GPU上可以有效并行加速。 2.提出了一个在GPU上进行布料仿真系统矩阵动态装配的算法。针对基于动态自适应网格的布料仿真,当采用隐式积分方法时,需要在每个时间步动态地构造一个大型的稀疏系统矩阵。该算法可以在GPU上高效并行完成这个系统矩阵的装配。 3.提出了一个网格重建后更新BVH(包围盒层次结构)的算法。该方法根据网格重建结果调整BVH,并保证不降低BVH的加速效果。同时提出了一个根据BVH的变化更新BVTT(包围盒遍历树)前线的算法,使得BVTT前线得以在各时间步间延用。 4.在Windows7平台,使用VS2008对本文描述的系统进行了实现。在NVIDIAGeForce GTX650显卡上对于多个场景(布料分辨率为几千到几万个三角形规模)进行了测试,对比于Intel Core i5-4570处理器上的单线程实现,该系统获得了20倍左右的加速比。