在openGL c ++中创建径向网格

时间:2010-11-18 22:20:33

标签: c++ opengl

所以我需要一点点推动或推动正确的方向。我正在尝试建立一个径向网格。在径向网格的顶部将是球体,网格本身用于观察者注意方向变化和方向感知。这个概念就是这个网格,很好地允许用户浏览“太阳系”并更加了解三维空间。

(网格不会是商业化的,就像时空网格一样,由于物体的质量而显示出翘曲,行星会在网格本身的上方。在某种意义上,是一个静态的径向网格。)

感谢任何帮助。

1 个答案:

答案 0 :(得分:1)

刚出头。如果我想创建一个典型的2D网格,我会使用两个嵌套的for循环将适当的glQuads生成到一个显示列表中,然后将其绘制为线框(参见How do you render primitives as wireframes in OpenGL?)。

要将其更改为径向网格,基本上您将循环使用角度和大​​小而不是x,y。然后使用sin()或cos()函数来正确计算四角的x / y坐标。

这种解决方案的缺点是,如果你的网格不够精细,用户可能会因为你绘制的径向线不是曲线而分散注意力。

希望这有助于您进一步发展。