我正在尝试Xcode 4.6中的SDL项目。我按照HERE的说明进行操作,一切都很顺利。我甚至在那里运行了测试代码。
现在我尝试加载BMP
SDL_Surface* bmp = SDL_LoadBMP("cb.bmp");
它说无法加载bmp。但如果我使用 Absoulte路径,它就可以正常工作。
有什么问题?我该怎么做才能使用相对路径?
文件夹结构如下:
sdl_test
sdl_test.xcodeproj
sdl_test
cb.bmp
SDLMain.m
SDLMain.h
main.cpp
sdl_test.1
答案 0 :(得分:0)
当我开始使用Xcode时,我遇到了同样的问题。
您必须在SDLMain.m文件中更改工作区。找到setupWorkingDirectory方法,并将其替换为:
/* Set the working directory to the .app's parent directory */
- (void) setupWorkingDirectory:(BOOL)shouldChdir
{
//setting the working directoy to MyApp.app/Contents/Resources/
NSString *resourcePath = [[NSBundle mainBundle] resourcePath];
[[NSFileManager defaultManager] changeCurrentDirectoryPath:resourcePath];
}
希望这有效。