我是openGl的新手。到目前为止,我研究了如何绘制基本形状以及如何旋转它们等。
我想要创建一个应用程序,其中将有一个半圆形表盘和一个将在其上连续旋转的时钟指针。 (可能是0-180度,然后回来)。
我该如何解决?
可能有几种方法可以做到这一点,但考虑到我正在努力构建的更广泛的图景,这将是最好的方法。
用户将创建图层。在上面的例子中,圆形表盘是背景层。时钟指针将成为前景层。
有些图层是静态的,这意味着它们永远不会移动。
图层移动将由用户提供(可能在配置文件中)。在上面的示例中,用户将提供(时钟指针层的一些点和角度范围,并且该层将在所提供的点周围的该范围内旋转)。
请建议如何实现这一目标。由于我只使用2D对象,我想知道每个图层是否可以是沿z轴等的平面。
答案 0 :(得分:3)
OpenGL不是场景图。它更像是铅笔,刷子,染料和面具。编程OpenGL意味着将场景分解为创建所需图片所需的绘图步骤。所以在你的情况下,就像使用Painter's Algorithm按顺序绘制一样简单
在OpenGL中没有像“平面”原语这样的东西。只有点(精灵),线条,三角形和四边形;在某种程度上多边形,但严重受限。可以将颜色和纹理应用于这些基元,并进行矢量数学模拟照明。