Когда мой четырехугольник рисует в OpenGl, текстура странно растягивается, мне нужно, чтобы он равномерно трансформировался в форму четырехугольника, а не так, как показано ниже. Как мне это сделать?

введите здесь описание изображения

Это производят:

glBegin(GL_POLYGON);
glTexCoord2f(0, 1);
glVertex2f(pa, (SCREEN_HEIGHT / 2) - (ha / 2));
glTexCoord2f(1, 1);
glVertex2f(pb, (SCREEN_HEIGHT / 2) - (hb / 2));
glTexCoord2f(1, 0);
glVertex2f(pb, (SCREEN_HEIGHT / 2) + (hb / 2));
glTexCoord2f(0, 0);
glVertex2f(pa, (SCREEN_HEIGHT / 2) + (ha / 2));
glEnd();

И мои параметры текстуры следующие:

glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR);
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_NEAREST);

person Jo Ca    schedule 30.04.2020    source источник
comment
[...] четырехугольник рисует в OpenGl, текстура странно растягивается, мне нужно, чтобы [...] да, конечно, потому что четырехугольник триангулирован. На самом деле вы рисуете 2 треугольника.   -  person Rabbid76    schedule 30.04.2020
comment
@ Rabbid76 так как мне изменить свой код так, чтобы он выглядел правильно?   -  person Jo Ca    schedule 30.04.2020