这次来简单介绍一下Gerstner Wave函数以及实现
最简单的海面模拟无非就是Sin函数或者Cos函数
但是更真实的海浪具有更加陡峭的波峰
所以,Gerstner Wave Function就诞生了(下图为sine function vs. gerstner function)
根据函数的形状来看,其方程必然是 [ x + a c o s f a s i n f ] \begin{bmatrix} x+acosf\\ asinf \end{bmatrix} [x+acosfasinf]
推广到3D之后,该函数成了这样
看上去比较复杂,但稍微分析一下就变得通俗易懂。
首先,我们定义几个参数:
波长(L):波峰和相邻波峰之间的距离,与角频率的关系为 ω = 2 π / L \omega=2\pi/L ω=2π/L
振幅(A):从水平面到波峰的高度
方向(D):波运动的水平向量 (x,y)
上图公式的 Q i Q_i Qi