论文部分内容阅读
计算机图形学理论和虚拟技术的发展,使得人们逼真的模拟身边的这个世界成为可能。巍峨的高山,葱翠的林木,婉延的河流等都可以栩栩如生的展示在人们眼前。在对自然环境的模拟中,天空的模拟是一个重要的领域。天空模拟的成功与否,关系着整个虚拟系统真实感的层次。虽然有些虚拟环境以地面的景物作为主要内容,天空背景只是陪衬,但随着技术的发展和使用对象要求的提高,高质量的生成天空背景成为必然的发展方向。天空的模拟,实际上就是对于天空中云的模拟,基本所有气象现象,如阴晴雨雪都是通过云的状态来表现的。本文的研究目的就是在于模拟天空中的云,以丰富虚拟现实领域对自然界的模拟。本文在云的模型选择上,采用了对于表面纹理模拟效果很好的分形方法。分形方法在模拟表面具有自相似性的自然景观方面很有优势,只需要增加迭代的次数就可以得到非常复杂的纹理效果,这一点与云纹理的表面特点很相拟。本文中选用了典型的分形方法,中点位移和Diamond-Square方法进行云表面纹理的模拟,并设置纹理粗造度,云粗造度,迭代次数等参数对云纹理进行控制。一些要求较低或是对生成效率要求高的场合可以通过减少迭代次数或降低粗糙度的方式解决。通过输入不同参数的实验,分析效果,使用本文中方法生成的云纹理效果逼真,真实感强。如果只是静态的云,无论纹理真实感多强,也给人单调的感觉,这种方式已经很少使用。取而代之的是,一些实现动态效果的方法,如粒子系统,元胞自动机等方法。本文中对云动态的模拟,使用了成熟的Direct3D纹理映射技术,该技术相对于传统的OpenGL方法,主要提高是在速度方面,相应的在显示效果方面也有所提升。具体的方法是,首先使用分形方法生成的二维纹理图片,然后使用生成的纹理图片作为纹理映射的源数据,加入移动效果,改变纹理粗糙度,最后实现了云飘动的效果。这一技术的采用大大简化了建模方法并且光照手段的应用也简单了很多。使用分形技术和纹理映射技术的结合,充分利用了分形技术细致的纹理效果和纹理映射技术速度快效率高的特点。本文中使用的两种方法,在其它的一些研究中基本上都是使用其一,或是与其它方法相结合,类似将这两种方法合二为一的使用方式还没有发现。目前该方法虽不具备描述内部粒子碰撞的效果,不过还是很好的表现了云的整体效果。通过实验证明,本文所提出的动态云模拟算法画面显示流畅,简单快速、效率高,实时性强的特点,可以满足游戏场景等动态天空背景的需要。