OpenGL - Как нарисовать квадратный пиксель с GL_POINTS - PullRequest
11 голосов
/ 12 ноября 2010

Я пытаюсь использовать следующий код для рисования пикселя квадратной формы с помощью opengl

glPointSize(5.0f);
glBegin(GL_POINTS);
glVertex3f(1.0f, 1.0f, 1.0f);
glEnd();

Однако, в конечном итоге получается пиксель в форме круга.ссылка http://risknfun.com/compform/w1.html См. «Проблема 4. Сетка».На правой стороне отображаемое изображение имеет квадратный пиксель.

Ответы [ 2 ]

18 голосов
/ 12 ноября 2010

Это частично зависит от реализации OpenGL (т. Е. Может варьироваться в зависимости от вашего графического драйвера), но, если повезет, вы можете включить или выключить это с glEnable(GL_POINT_SMOOTH); или glDisable(GL_POINT_SMOOTH); с включенным сглаживанием точек, Обычно вы получаете круглые очки, но если вы их отключите, вы получите квадратные очки.

5 голосов
/ 12 ноября 2010

Вы также можете попросить OpenGL не тратить время на то, чтобы сделать GL_POINTS приятным и округлым, позвонив по телефону:

glHint(GL_POINT_SMOOTH_HINT, GL_FASTEST);

Но имейте в виду, что это всего лишь подсказка. Драйвер OpenGL в конечном итоге имеет последнее слово.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...