为多边形轮廓绘制圆圈的最有效方法

时间:2010-06-14 22:01:35

标签: c++ c opengl

我正在使用OpenGL,并被告知我应该在我的轮廓的每个顶点绘制圆圈以获得平滑度。我试过这个并且效果很好。问题是速度。它使我的应用程序瘫痪,在每个顶点绘制一个圆圈。我不确定除了圆圈之外还有什么方法可以修复我的轮廓的异常,但使用显示列表并尝试使用顶点数组都非常慢。感谢

请参阅:Edges on polygon outlines not always correct

2 个答案:

答案 0 :(得分:2)

一个(可能太花哨)替代方案是绘制一个界定圆的单个多边形(比如四边形),然后使用片段程序丢弃这些碎片。写这不是完全无足轻重的,但我敢打赌这是最快的方法。

如果从片段中心到圆心的距离大于所需的半径,则只需将圆参数传递给片段程序并丢弃片段。

答案 1 :(得分:0)

你看过this文章吗?

..或者如果您可以访问GL实用程序库,则可以使用gluDisk