Opengl立方体图-freeimage和stb图像库的不同结果
我在试着理解立方体地图。我已经阅读了以下教程:我的示例程序与教程程序非常相似,但我使用freeimage加载纹理。我的立方体贴图的每个面都有倒y视图。当我在教程程序中将纹理库从stb图像更改为freeimage时,我还为每个面获得了反转的y视图。freeimage是否使用了一些非标准约定?为什么我会得到不同的结果?我不知道这是否有标准,但我不会说FreeImage是垂直镜像图像,这只是像素数据的存储方式。 如果要使用OpenGL生成的纹理读取数据,可能需要在Opengl立方体图-freeimage和stb图像库的不同结果,opengl,freeimage,Opengl,Freeimage,我在试着理解立方体地图。我已经阅读了以下教程:我的示例程序与教程程序非常相似,但我使用freeimage加载纹理。我的立方体贴图的每个面都有倒y视图。当我在教程程序中将纹理库从stb图像更改为freeimage时,我还为每个面获得了反转的y视图。freeimage是否使用了一些非标准约定?为什么我会得到不同的结果?我不知道这是否有标准,但我不会说FreeImage是垂直镜像图像,这只是像素数据的存储方式。 如果要使用OpenGL生成的纹理读取数据,可能需要在FreeImage\u FlipVer
FreeImage\u FlipVertical
之前使用FreeImage\u GetBits
通过代码翻转图像。我猜您正在使用FreeImage\u GetBits
将数据传送到OpenGL中生成的纹理,如果您使用扫描线读取图像,则可以从下至上加载数据
提醒:如果你使用多种格式的图像,你很可能在数据存储方式方面也有其他问题,所以在官方的FreeImage文档中,当你使用GetBits和GetScanLine时,请告诉你“根据FreeImage\u GetBPP
、FreeImage\u GetRedMask
、FreeImage\u GetGreenMask
和FreeImage\u GetBlueMask
的结果,正确解释这些字节取决于您自己。”因此,如果您在将图像加载到OpenGL时遇到其他问题,您可能需要检查以下示例以解释数据: