我遇到问题,其资源目录中的文件未被识别为处于主包中。在主资源文件夹的主包中找不到纹理图集文件
我创建了一个使用texturePacker使用pvr文件格式的纹理地图集。 texturePacker的输出产生两个文件xxx_iPhone-hd.pvr.ccz和xxx_iPhone-hd.plist。这两个文件存储在我的cocos2d项目的Resource目录中。一旦文件存储在资源文件夹中,我将转到资源文件夹并右键单击'将文件添加到“myProject”'(将复制项目复选到目标框中未选中)。
当我的cocos2d项目运行并尝试加载此文件时,主包的绝对路径是未知的。具体地讲,我的代码执行的代码下面的行:
backgroundBgNode = [CCSpriteBatchNode batchNodeWithFile:@"StoreMenuBackground_iPhone.pvr.ccz"];
的cocos2d的代码知道该装置具有视网膜显示器和修改的文件名以创建“StoreMenuBackground_iPhone-hd.pvr.ccz”的relPath。然后它尝试执行以下操作:
NSString *imageDirectory = [relPath stringByDeletingLastPathComponent];
fullpath = [[NSBundle mainBundle] pathForResource:file
ofType:nil
inDirectory:imageDirectory];
这会导致完整路径为零。我以前创建了一个不同的xxx_iPhone5-hd.pvr.ccz文件,上面的代码成功返回完整路径。我非常仔细地检查并重新检查拼写,没有看到任何问题。我也尝试删除并重新添加该项目的“Build Phases”的“Copy Bundle Resources”下的文件。有什么我可以做的强制mainBundle找到这个文件?
我尝试了你的建议。文件IS在捆绑中。我将文件名复制并粘贴到代码中(包含和不包含-hd后缀)。我仍然有同样的问题。完整路径为零。任何其他想法?做一次清洁也没有帮助。仅供参考:我正在模拟器上运行iPhone Retina(3.5英寸) – JeffB6688
也许尝试从设备上删除应用程序,但通常情况下,尽管从xcode项目中删除了文件,但它仍然存在。 – LearnCocos2D
正在对最后一个建议投注(设备删除)。 – YvesLeBorg