opengl中的线宽限制

时间:2014-03-28 01:37:23

标签: android opengl-es

我正在尝试使用opengl构建一个用于显示地理数据(如谷歌地图)的Android应用程序,并且在绘制线条时,似乎opengl对线宽有限制:

        gl.glLineWidth(10); //or gl.glLineWidth(20);
        ......
        gl.glDrawArrays(GL10.GL_LINES, 0, 2);

这就是我得到的:

enter image description here

这似乎是opengl渲染的线条的最大宽度。

然而,当我看到谷歌地图时,我发现它可以为这样的道路渲染一条很宽的线:

enter image description here

问题是什么?

顺便说一句,我想知道在我的申请中是否需要使用游戏引擎?

1 个答案:

答案 0 :(得分:0)

是的,OpenGL实现确实对线宽有限制。我认为它因实施而异。有一些选项,但最简单的方法是只绘制一个高度符合您需要的矩形,并从A点延伸到B点。例如,如果您需要50点线宽,则可以获得4个角通过从A到B找到向量并在终点处向该向量的法线投射+和 - 25个点来获取矩形。