基于FFT大规模海面的实现方法(下篇)
porry20009
porry20009 9300 135
精华热门加亮 Shader 着色器 2016-04-29 18:39
基于FFT大规模海面的实现方法(下篇)

一、傅里叶变换

图片:1.png



图片:2.png



图片:3.png



可见系数矩阵的系数重复是很多的,若把序列分解成若干短序列,并与系数矩阵元素巧妙结合起来,可以简化运算,这就是FFT的基本思路。
详细推导过程,可参考其他书籍
《精通Visual vc++数字图像处理典型算法及实现》
本部分内容设定了隐藏,需要回复后才能看到

图片:4.png



图片:5.png

图片:6.png

图片:7.png

图片:8.png

图片:9.png





http://v.youku.com/v_show/id_XMTU1MTU2NTgyOA==.html#paction




五、总结
  为了实现这FFT海面效果,查了很多的资料,花了大概3个星期的时间,虽然是基本完成了,但是离产品级别还有点距离,首先IFFT我用的是PixelShader来实现的,现在比较高效的方法是用Compute Shader。另外就是没有交互,例如船的航迹等等,我想到用二维波动方程来实现,但没想出怎么用在大规模的水域上。最后,本文实现的海面是深海海域,用在近岸海域就显得不够真实,因为近岸的海浪会受到海底地形的影响,波速、波高都会受到影响,还有波浪折射,这些都是今后要努力的方向。
2条评分, 鲜花+502
  • 鲜花+2
    非常用心講解
  • 鲜花500
    海面还可以加些反射效果。
分享:
游客
要评论请先登录 或者 注册
135条回应 只看楼主 最新
hawk 管理员 2016-04-30 17:24 1楼
海面还可以加些反射效果。
MrOcelot 学徒 2016-05-01 14:27 2楼
收藏了,楼主这个做的确实逼真!
seaswander 师者 2016-05-02 01:23 3楼
楼主研究的好深刻啊,学习了。
bengg72 学徒 2016-05-03 11:13 4楼
感谢楼主分享
cafe2222 学徒 2016-05-05 01:33 5楼
牛牛牛牛牛牛牛牛牛牛牛牛牛
godenzzm 学徒 2016-05-05 05:06 6楼
收藏下,感谢LZ分享
shenxiaolei 新手 2016-05-05 15:24 7楼
牛逼已经不足以表达我对你敬仰.....
笑三少 学者 2016-05-06 09:49 8楼
卧槽,LZ这个确实牛逼啊。。。跪下膜拜给您唱征服~~~~
钟富文 学徒 2016-05-06 11:05 9楼
好牛逼的样子啊啊
1 2 3 4 ...14
返回顶部