【问题标题】:How do I make lines scale when using GLOrtho?使用 GLOrtho 时如何使线条缩放?
【发布时间】:2010-05-11 13:48:48
【问题描述】:

我正在使用 GLOrtho 设置可以在其上渲染纹理的 2D 视图。它工作得非常好,直到我尝试放大图像。如果我将视口的一半宽度和一半高度传递给 GLOrtho,我的所有纹理最终都会显示为正常大小的两倍,这正是我所期望的。

但后来我尝试在图像的一部分周围画一个框,这一切都崩溃了。我调用glBegin(GL_LINE_LOOP),放置四个顶点,然后调用glEnd,如果我以正常缩放级别绘制它,我希望看到相同的东西,加倍。相反,我得到的线条长度都合适,但它们都是一个像素宽,而不是两个,看起来很糟糕。

我错过了什么?

【问题讨论】:

    标签: opengl rendering lines


    【解决方案1】:

    您可以使用 glLineWidth 自行缩放,也可以将线模拟为 2 个三角形。

    【讨论】:

    • 2 个三角形!可能还必须启用抗锯齿。好主意。
    • 好答案。 GL 线始终具有固定宽度。
    【解决方案2】:

    glScale 将是一个更好的缩放解决方案,而不是更改 glOrtho 参数。 这样,任何绘制的东西都会按预期缩放。

    【讨论】:

    • 实际上,glScale 不会给出两倍的宽度。
    猜你喜欢
    • 1970-01-01
    • 2021-09-12
    • 1970-01-01
    • 2013-01-21
    • 1970-01-01
    • 2021-01-09
    • 1970-01-01
    • 1970-01-01
    • 2012-06-05
    相关资源
    最近更新 更多