您的位置:首页 > 其它

Ogre水面倒影的实现

2014-02-26 18:42 1371 查看

简单介绍一下水面倒影的实现方式

这里简单介绍一下水面倒影的渲染实现方式,因为我自己也没有找到比较理想的水面波动生成算法,所以就不介绍了

直接说原理吧,和上一篇的阴影实现有点类似
在实现水面倒影前我们先想想,当摄像机在水面上方移动的时候倒影的渲染也会变化,所以倒影的渲染和相机的纹理息息相关
假设摄像机Camera0此帧在P位置,水面为Plane,我们创建一个新的相机Camera1,将Camera1位置,方向用Plane做一个镜面对称,将水面设置为近截面。然后利用Camera1渲染出一张RTT纹理。和纹理阴影记录纹理和视图投影M1矩阵,在Shader里面进行相对的映射(有时候会考虑水面法向量),映射方式请参考上一篇纹理阴影映射方式。
然后将水面本身的颜色和当前映射出的颜色做混合。即得到了倒影效果,简单吧
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: