论文部分内容阅读
近年来,群体动画技术在多个领域中得到了广泛的应用。但是,以当前的计算机硬件绘制能力来说,如果采用直接绘制的方法,则很难实现数量庞大的群体动画的实时渲染。因此,人们更加重视群体动画实时渲染技术的研究,使得这一领域成为极富挑战性的研究课题。本文研究群体动画实时渲染技术,重点提高群体渲染的速率。本文对基于CPU的矩阵调色板蒙皮技术(Skinning)、混合层次细节(Level Of Detail,LOD)和替代物(Impostors)的群体动画渲染技术以及基于GPU的实例化(Instancing)群体动画渲染技术进行了比较深入的研究。群体动画的渲染实际上是由单个动画角色的渲染组成的。对于单个动画角色的渲染,在应用程序是GPU受限时,将优化工作交给CPU,会取得非常不错的优化效果。本文使用Intel处理器上的流式SIMD扩展(SSE),在CPU上对群体动画中常用的矩阵调色板蒙皮动画技术进行了优化。实验表明,使用基于CPU的群体动画渲染技术,在角色顶点受多个骨骼权重影响时,具有非常好的性能提升。同时,本文还研究了一种通用的针对复杂网格模型的优化方法。三维复杂场景实时渲染技术的研究课题很多,但是大多都是局限于静态场景对象。针对群体动画实时渲染,本文结合了LOD和基于图像渲染的Impostors技术,根据虚拟角色在最后屏幕中的细节信息来选择恰当的角色表示,平衡了基于图像的渲染方法在渲染质量上的不足和几何渲染方法在效率上的缺陷,有效地提升了群体动画的渲染效率。实验结果表明,该方法可以用较小的渲染代价获得较高的渲染质量,满足实时渲染的要求。图形硬件加速器的不断发展给实时群体动画的广泛应用带来了新的机会。本文针对群体动画渲染中,大多数动画角色的模型完全相同的特点,从减少绘制调用与状态改变的次数,降低对内存存储的需求着手,提出了基于GPU中实例化技术的群体动画实时渲染算法。实验表明,当使用实例化技术渲染这类群体动画时,随着角色数量的不断增加,渲染性能将明显得到提高,平均帧率比逐个角色单独渲染时高出40%以上。最后本文对当前群体动画的发展方向进行了一些展望,并提出了一些在该领域值得进一步研究的方向。