Рисование толстой линии с помощью OpenGl в C ++ - PullRequest
2 голосов
/ 04 июля 2019

Я хотел создать толстую линию, используя библиотеку OpenGL на С ++, но она не работает. я попробовал этот код:

glBegin(GL_LINES);
glLineWidth(3);
glVertex2f(-0.7f, -1.0f);
glVertex2f(-0.7f, 1.0f);
glEnd();

здесь что-то не так?

1 Ответ

3 голосов
/ 04 июля 2019

Не допускается вызов glLineWidth с последовательностью glBegin / glEnd.Установите ширину линии до:

glLineWidth(3);

glBegin(GL_LINES);
glVertex2f(-0.7f, -1.0f);
glVertex2f(-0.7f, 1.0f);
glEnd();

Когда началось рисование примитивов с помощью glBegin, разрешается указывать только координаты вершины (glVertex).и изменяйте атрибуты (например, glColor, glTexCoord ...) до тех пор, пока ничья не закончится (glEnd).
Все остальные инструкции будут игнорироваться ивызвать ошибку GL_INVALID_OPERATION, которую можно получить с помощью glGetError.

...