gpt4 book ai didi

c++ - BMP 纹理不显示

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:40:48 25 4
gpt4 key购买 nike

我在学习如何在 OpenGL 中进行纹理处理时遇到了一个问题(来自 OpenGL 第 5 版圣经)。问题是我无法显示我的纹理。我使用自己编写的函数从 BMP 文件加载它。

由于代码很长,我上传了所有必需的文件。您可以从here下载。 .

编辑:我试过从提到的书中复制代码(那里描述了 TGA 加载),但效果不佳。似乎加载卡在从文件加载图像数据时(奇怪)。我想就我的问题而言,这无关紧要。

最佳答案

有用于检查问题的一般调试步骤。我将在下面列出它们,希望您能找到错误(以及对于 future 的读者):

  • 文件是否存在?是否根据格式正确读取文件?你让它与 OpenGL 融为一体了吗?我的建议是:不要自己弄乱这些东西。使用图书馆。重量轻得惊人 SOIL (Simple OpenGL Image library)
  • 您是否在初始化 OpenGL 之前加载纹理?这一直是我的问题,因为我过去常常在(某些类的)构造函数中“加载”并执行 glBindTexture(..)。这些对象是在 OpenGL 初始化之前创建的。
  • 您是否启用了GL_TEXTURE_2D?检查初始化代码,使用:glEnable(GL_TEXTURE_2D)
  • 您是否将纹理正确地映射到四边形或您想要的形状上?在此展开(有点)超出范围。有很棒的tutorials在那里。
  • (这看起来很愚蠢,但有时会发生)您是否通过 glColor3f(0,0,0) 将对象涂黑?

可能会有更多的检查,但这些现在让我头疼

关于c++ - BMP 纹理不显示,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11392668/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com