我正在努力拼凑一个基本上由以下内容组成的场景:
答案 0 :(得分:1)
本教程解释了如何使用二次方来节省在GL中绘制对象的时间,有一个圆柱靠近底部的示例。该站点也是OpenGL整体的一个很好的学习资源。虽然它使用C,但您可以看到所使用的功能并根据需要实现它们。
答案 1 :(得分:1)
GLUT是一个库,它提供常用行为的opengl调用集合, 包括创建圆柱形等基本形状。
一旦您设法使用GLUT创建圆柱体,您可以使用圆柱体定位圆柱体 矩阵转换到您想要的位置。
如果您还没有检查过它们,它们可能会有用:
http://pyopengl.sourceforge.net/documentation/
答案 2 :(得分:1)
您在原始帖子中提供的视频有许多效果,您可能会或可能不会尝试模仿。
GLU / GLUT创建的对象是在当前模型视图空间的原点创建的,因此您需要将它们平移/旋转/缩放到所需的位置。
查看glColor,在绘制圆柱体之前设置渲染颜色。
对于透明效果,需要做一些额外的工作。
查找'blend',glEnable(GL_BLEND),glBlendFunc,了解透明度的基础知识。
这个HeNe教程可能很有用:http://nehe.gamedev.net/data/lessons/lesson.asp?lesson=08
渲染透明图像可能导致问题的一件事是,绘制图像的顺序变得很重要,因为z缓冲区裁剪和混合的工作方式。您可能会发现需要绘制距离观察位置越来越远的圆柱体。
答案 3 :(得分:0)
感谢您的回答。
我已经阅读了他们的教程,他们非常好。事实上,它们在PyOpenGL中包含的演示中被翻译成python。我想我的问题更多的是在绘制后设置圆柱的属性,我应该更具体,对不起。我可能遗漏了一些简单的东西,但经过几个小时的尝试后,我的空虚。我确实使用了GLUT库并尝试绘制glutSolidSphere作为测试。在我的场景中,我似乎无法使它像我在原始帖子中链接到的光线一样着色。
我想一个更好的问题就是我应该用什么GL命令来产生效果,就像在光线动画中看到的那样(OP中的链接)。