В моем приложении OpenGL оно не позволит мне нарисовать линию шириной более десяти пикселей. Есть ли способ заставить его рисовать больше десяти пикселей?
void OGL_Renderer::drawLine(int x, int y, int x2, int y2, int r, int g, int b, int a, int line_width)
{
glColor4ub(r, g, b, a);
glLineWidth((GLfloat)line_width);
glBegin(GL_LINES);
glVertex2i(x, y);
glVertex2i(x2, y2);
glEnd();
glLineWidth(1.0f);
}
Вы можете попробовать нарисовать квадрат. Сделайте его шириной, равной длине линии, и высотой, равной нужной ширине линии, затем поверните и расположите его там, где будет проходить линия.
А, теперь, когда я понял, что вы имели в виду:
или:
Логично, что нельзя. Из справки glLineWidth:
Диапазон поддерживаемых ширин и разницу размеров между поддерживаемыми ширинами в пределах диапазона можно запросить, вызвав glGet с аргументами GL_LINE_WIDTH_RANGE и GL_LINE_WIDTH_GRANULARITY.