论文部分内容阅读
在互联网环境下,三维动画的需求日益增强,许多场景需要三维动画的模拟,特别是3D网络游戏,例如最近比较火热的《绝地求生》、《荒野行动》等。游戏中玩家切身感受到了游戏角色的真实性,这些真实感的体验是游戏角色的逼真性赋予的,特别是角色身上的衣服布料,大量服装、布料元素的模拟,使得游戏角色变得真实,这让玩家感到满意。附着在角色模型身上的服装、布料也会随着其运动而运动,这就不可避免的会发生模型与布料的碰撞,如何迅速的检测碰撞并处理碰撞,关系着仿真的呈现效果,也就是说布料仿真的真实感和实时性,不仅与布料建模方式有关,还受布料碰撞处理方法的影响。所以本文以研究布料仿真如何模拟出逼真的布料细节和优化碰撞处理时间为目标,依次进行了讨论和研究。基于以上背景,在参考国内外有关布料仿真技术文献的基础上,本文主要做了以下工作:1.本文研究了布料网格自适应方法,通过分析对比,本文选取1-4细分法作为布料网格模型的细分方法;研究细分准则,本文提出基于边“弯曲度”的1-4网格自适应处理方法,通过定义网格的细化、合并规则,利用边“弯曲度”值作为判断准则,利用它进行选取需要处理的网格;经过网格的细化,不同层次网格之间会产生裂缝,为了消除裂缝的产生,本文提出利用二次细化的方法进行处理。2.本文研究了布料的碰撞检测方法,提出把优化后的AABB包围盒和OBB包围盒进行结合,首先优化AABB存储空间,然后再进行混合碰撞检测。在初步碰撞检测过程中,针对包围盒的遍历过程进行了优化,减少了碰撞检测的次数和时间,提高了碰撞检测的速度,最后对发生碰撞的物体的几何元素进行基础几何元素的相交测试,整个碰撞检测过程比未优化的AABB-OBB碰撞处理时间要短,并且随着布料网格的增多,优化后的混合碰撞检测方法一定程度上更加高效。3.本文采用C++和OpenGL进行仿真实验,模拟了布料褶皱细节和布料与物体的碰撞,展现布料落在球体上的状态。综上所述,基于本文的研究目标,本文给出了布料网格处理的方法,丰富了布料褶皱细节;优化了传统混合碰撞处理方法以及碰撞检测的遍历方式,提高了碰撞处理时间。研究成果在3D游戏、3D虚拟试衣等领域具有一定的启发性。