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

Posted

技术标签:

【中文标题】在 openGL c++ 中创建径向网格【英文标题】:Creating a Radial Grid in openGL c++ 【发布时间】:2010-11-18 22:20:33 【问题描述】:

所以我需要一点点推动或推动正确的方向。我正在尝试设置径向网格。在径向网格的顶部将是球体,网格本身是供观察者注意方向变化和方向意识的。这个概念就是这个网格,可以让用户在“太阳系”中导航,并更加了解三维空间。

(网格不会有延展性,就像时空网格会显示出由于物体质量而发生的扭曲,行星会喜欢在网格本身的上方。从某种意义上说,是一个静态的径向网格。)

感谢任何帮助。

【问题讨论】:

【参考方案1】:

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

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

此解决方案的缺点是,如果您的网格不够细,用户可能会因为您绘制的径向线不是曲线而分心。

希望这有助于您走得更远。

【讨论】:

谢谢,是的,我猜缺少曲线是另一个问题。 好吧,这么便宜又便宜的方法,就是把它分成两种方法,一种画圆,一种画线,结果是一种渐变网格。

以上是关于在 openGL c++ 中创建径向网格的主要内容,如果未能解决你的问题,请参考以下文章

使用网格数据和一维纹理图在 opengl 中创建等高线图

如何在多维数组/网格c ++中创建List

在 Qt 中创建原始 GL 上下文?

如何在颤动中创建无限网格?

在 ExtJs 中创建具有两个比例的网格

如何在 tkinter 中创建一个自调整大小的按钮网格?