C++ BMP纹理不显示

C++ BMP纹理不显示,c++,linux,opengl,textures,bmp,C++,Linux,Opengl,Textures,Bmp,我在从OpenGL第五版圣经学习如何在OpenGL中使用纹理时遇到了一个问题。问题是我无法显示我的纹理。我用自己编写的函数从BMP文件加载它 因为代码很长,我上传了所有必要的文件。你可以从下载 编辑:我试着从上面提到的TGA loading一书中复制代码,但效果不好。似乎从文件中加载图像数据时遇到了困难。我想这与我的问题无关 有检查问题的常规调试步骤。我将在下面列出它们,希望您能找到bug,并为未来的读者提供: 文件存在吗?文件是否按照格式正确读取?你用OpenGL把它凝胶好了吗?我的建议是:不

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

因为代码很长,我上传了所有必要的文件。你可以从下载


编辑:我试着从上面提到的TGA loading一书中复制代码,但效果不好。似乎从文件中加载图像数据时遇到了困难。我想这与我的问题无关

有检查问题的常规调试步骤。我将在下面列出它们,希望您能找到bug,并为未来的读者提供:

文件存在吗?文件是否按照格式正确读取?你用OpenGL把它凝胶好了吗?我的建议是:不要把这些事情搞砸了。使用图书馆。有一个惊人的重量轻 在初始化OpenGL之前是否加载纹理?这一直是我的问题,因为我曾经加载并执行glBindTexture。。在某个类的构造函数中。这些对象是在OpenGL初始化之前创建的。 是否启用了GL_纹理_2D?检查初始化代码,使用:glEnableGL_TEXTURE_2D 你是否用四边形或你想要的形状正确地映射纹理?在此基础上进行扩展有点超出范围。那里有很多很棒的东西。 看起来很愚蠢,但有时会发生通过glColor3f0,0,0使对象变黑的情况?
可能会有更多的检查,但这些检查现在正击中我的头

检查问题的一般调试步骤。我将在下面列出它们,希望您能找到bug,并为未来的读者提供:

文件存在吗?文件是否按照格式正确读取?你用OpenGL把它凝胶好了吗?我的建议是:不要把这些事情搞砸了。使用图书馆。有一个惊人的重量轻 在初始化OpenGL之前是否加载纹理?这一直是我的问题,因为我曾经加载并执行glBindTexture。。在某个类的构造函数中。这些对象是在OpenGL初始化之前创建的。 是否启用了GL_纹理_2D?检查初始化代码,使用:glEnableGL_TEXTURE_2D 你是否用四边形或你想要的形状正确地映射纹理?在此基础上进行扩展有点超出范围。那里有很多很棒的东西。 看起来很愚蠢,但有时会发生通过glColor3f0,0,0使对象变黑的情况?
可能会有更多的检查,但这些检查现在正击中我的头部

使用,或类似的库。您不必自己编写,它将自动支持多种图像格式。使用或类似的库。您不必自己编写,它将自动支持多种图像格式。显然,问题相当复杂。我的BMP加载和渲染功能一定是写错了,因为我最终切换到了土壤并去掉了所有的glColor来显示纹理。谢谢你的帮助:显然问题很复杂。我的BMP加载和渲染功能一定是写错了,因为我最终切换到了土壤并去掉了所有的glColor来显示纹理。感谢您的帮助: