c++ - 如何在 OpenGL 中创建 3D 太阳系星空背景?

标签 c++ opengl glut

我有一个简单的太阳系模拟,其中行星围绕太阳运行。但我想创建一个星空背景,它不一定是准确的表示。

我试着下载一张星空图片,然后将其作为纹理映射到一个大球体上。然后放置球体,使其包含整个场景,但无论图片如何,它们都非常暗淡。至少,我认为。我什至看不到星星。当我缩小球体时,我可以看到它实际上正在纹理化它,但它一点也不亮。

还有其他方法可以做到这一点吗?谢谢

最佳答案

你快到了!

  1. 您需要禁用球体的光照,这样即使它没有点亮,您也可以看到纹理。
  2. 此外,您还需要启用自发光,以便星星自己发光。

您可能还想查看天空盒,这是 3D 场景中非几何环境的标准方式。

关于c++ - 如何在 OpenGL 中创建 3D 太阳系星空背景?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50443082/

相关文章:

c++ - 在 OpenGl 中加载多个对象

C++ 检查一个十六进制数是否由 ABCDEF1 OR 0 组成

c++ - 为什么要正确释放分配的内存呢?

c++ - std::reverse on boost::ptr_vector 切片对象?

c++ - 使用 OpenGL 绘制任意线(即轴范围没有限制)

opengl - EC2 GPU 实例上的多进程 headless OpenGL 处理

c++ - 已连接串口C列表Qt

math - 如何从 OpenGL ModelView 矩阵获取 View 方向?

java - OpenGL:模型显示不正确。 (需要固定绘制距离吗?)

opengl - 是否可以从 Blink 公开 WebGL 上下文?