如何填充形状,由GL_LINE_LOOP组成

How to fill the shape, made up of GL_LINE_LOOP

我正在尝试进行水模拟。但我仅限于使用 2D,所以我开始使用正弦波通过 Gl_Line_loop 来制作海洋边界。但我无法填补它。我曾尝试将其更改为 Gl_polygon 模式,但后来我没有得到正确的形状。这是代码:

here is the image of wave, i want to get filled

要细分以上内容,请沿线指定一个顶部然后是底部顶点,然后绘制一个三角形条带。即对于沿 sin 波的每个 (x, y) 位置,发出两个顶点,相同的 x 但 y = 0(底部)。然后渲染一个三角带。

像这样:

glBegin(GL_TRIANGLE_STRIP);
for(x=-50;x<=50;x+=inc){
    k = 2 * 3.14 / wavelength;
    y = amplitude * sin(k * x);
    glVertex3f(x, y-35, 0);
    glVertex3f(x, y, 0);
}
glEnd();