编辑:在toastie的建议中使用bmp后,我仍然无法加载图片:
我正在使用SDL和OpenGL与Xcode,我正在尝试加载图像以用作立方体上的纹理。该图像是256x256 RBG jpeg。该图像与我的所有源代码位于同一目录中,它位于Xcode项目的Resources文件夹下。该文件名为texture.bmp
if (textureSurface = SDL_LoadBMP("texture.bmp"))
{
// ...
}
else printf("%s", SDL_GetError());
我一直在运行它并收到控制台错误:Couldn't open texture.bmp
在这些条件下加载文件的路径或正确语法是什么?
答案 0 :(得分:2)
SDL_LoadBMP仅按其名称建议加载BMP文件:)
您需要另一个库来加载其他图像格式。
尝试SDL_image: http://www.libsdl.org/projects/SDL_image/
或DevIL: http://openil.sourceforge.net/
或者滚动你自己的装载机: http://www.libpng.org/pub/png/libpng.html
答案 1 :(得分:0)
找到答案here。本质上,图像路径是相对于正在运行的应用程序,因此我必须移动图像或相对于调试版本创建路径。
答案 2 :(得分:0)
我没有Xcode在我面前,但我认为如果你正确/选择点击资源列表中的文件来获取文件的首选项,你可以将它设置为相对于项目,包含目录等。