Dyikot
@Dyikot

[OpenGL]Почему получается такая фигура?

glBegin(GL_POLYGON);
		glVertex2f(figureMove.getXPosition(-35), figureMove.getYPosition(45));
		glVertex2f(figureMove.getXPosition(-30), figureMove.getYPosition(45));
		glVertex2f(figureMove.getXPosition(-30), figureMove.getYPosition(50));
		glVertex2f(figureMove.getXPosition(-25), figureMove.getYPosition(50));
		glVertex2f(figureMove.getXPosition(-25), figureMove.getYPosition(45));
		glVertex2f(figureMove.getXPosition(-20), figureMove.getYPosition(45));
		glVertex2f(figureMove.getXPosition(-20), figureMove.getYPosition(40));
		glVertex2f(figureMove.getXPosition(-35), figureMove.getYPosition(40));
		glEnd();

62dfcefb4cfdd873406079.png
  • Вопрос задан
  • 145 просмотров
Решения вопроса 1
@MarkusD Куратор тега C++
все время мелю чепуху :)
GL_POLYGON предназначен для вывода только выпуклых многоугольников, а у тебя он выпуклым не является.

Фигурки для тетриса рисовать стоит или в режиме GL_QUAD, или в режиме GL_TRIANGLES, явным образом выделяя отдельные квадратные участки.
Так проще ориентироваться в точках.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
wataru
@wataru Куратор тега C++
Разработчик на С++, экс-олимпиадник.
Вы точно этот код запустили? Пока очень похоже, что просто одна вершина не рисуется в коде.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы