题目:基于投影网格的海洋表面建模及实时光照技术的研究与实现
● 摘要
流体受到外力(例如重力,风力)的作用,产生向前以及上下波动,受光照影响,会产生波光粼粼的效果,这都是流体模拟的重要方面。近年来流体模拟场景的规模越来越大,细节逐渐增多,CPU的计算量和内存的使用率都在逐渐提升,因此需要改进数据结构,使用高效算法来满足真实感和实时性的要求。如何实现真实感强又可以进行实时交互的流体场景是本课题将要研究的重点。 本文从基于投影网格的海洋表面建模,海洋表面网格的快速傅里叶变换,实时光照算法等几个方面展开如下的工作: 1.基于投影网格的海洋表面网格生成方法。根据摄像机的位置、方向,及海洋表面的位置,反算出摄像机的变换矩阵。进行视域判断,检测投影网格与视景体相交的部分。计算相交部分在投影空间 轴和 轴上的跨度,建立范围转换矩阵,同时计算纹理坐标,实现一个可以充满视野的海洋表面网格。 2.基于快速傅里叶变换的海洋表面波动效果。根据波浪长度的不同量级,分别采样海洋表面的频率。利用海洋学中波浪的特征,将获取的频率转化成振幅,根据复数空间中三角函数的特性,使用快速傅里叶变换对网格的振幅进行处理,合成最终的结果。 3.可模拟直射光、反射光和折射光的海洋表面实时光照算法。根据不同光照分量的特点和照射范围,采用不同的方法分别计算三种光照分量。在网格的中心位置计算太阳的直射光,使用Fresnel公式近似BRDF(Bidirectional Reflectance Distribution Function)的积分。对于天空的反射光和海洋的折射光使用硬件纹理过滤技术,将光照值分解为有效Fresnel反射和天空照度两个不同分量的乘积。将三个部分的计算值相加,得到整体的光照效果。
相关内容
相关标签