相关疑难解决方法(0)

OpenGL 3.2核心配置文件glLineWidth

我在Mac OS X上设置了一个OpenGL 3.2 Core上下文.我希望能够在屏幕上绘制一些厚厚的黑色.在以前版本的OpenGL中,我可以设置

glLineWidth(10.0f);
Run Code Online (Sandbox Code Playgroud)

我会得到一个10像素宽的线.但是当我检查3.2 Core中的线宽范围时

GLint range[2];
glGetIntegerv(GL_ALIASED_LINE_WIDTH_RANGE, range);
glGetIntegerv(GL_SMOOTH_LINE_WIDTH_RANGE, range);
Run Code Online (Sandbox Code Playgroud)

对于别名线,我得到1的值,对于平滑线,我得到0-1的值.如何在屏幕空间中创建一个10.0像素宽的线?除了使每个线段成为矩形之外,还有一种简单的方法来绘制它吗?

opengl osx-lion

9
推荐指数
1
解决办法
4057
查看次数

OpenGL线宽

在我的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);
}
Run Code Online (Sandbox Code Playgroud)

c++ opengl line

8
推荐指数
2
解决办法
2万
查看次数

标签 统计

opengl ×2

c++ ×1

line ×1

osx-lion ×1