Xcode项目使用NSBundle找不到资源解决方案

最近在做opengl的应用,用到了glsl类型的shader描述文件,这些文件要作为外部资源供opengl编译调用. 我最初创建glsl类型的文件的时候使用的add->new file命令,起初没有创建到resources目录下,刚刚接触这东西,也不清楚该建到那个目录下. 当使用NSString* shaderPath = [[NSBundle mainBundle] pathForResource:shaderName ofType:@"glsl"];查找相关资源时,总是返回null,感觉很奇怪. 随后我将这些文件拖放到resources目录下,但是仍然找不到资源文件. 怀疑Xcode没有将这些文件作为资源对待. 于是,右击.glsl文件->Get Info -> Targets.发现没有勾选Targets感觉应该就是这里的问题了. 勾选一个Targets,重新编译,成功找到了该资源.
原文地址:https://www.cnblogs.com/jasondan/p/2158866.html