Cocos2d iphone Can';t在我的iPhone上运行我的cocos2D游戏 解决方案:

Cocos2d iphone Can';t在我的iPhone上运行我的cocos2D游戏 解决方案:,cocos2d-iphone,Cocos2d Iphone,该图像不是一个“真实的”.png文件,我刚刚更改了扩展名。我下载了一个png文件,现在它可以工作了 我用cocos2D做了一个简单的游戏,我正试着在我的iphone5上运行它。图标加载,laungh图像加载,但随后我收到一条带有错误等的长消息。例如,它找不到图像的文件,即使它们位于正确的位置,拼写正确。该游戏在模拟器中运行良好,我下载的另一个cocos2D游戏在我的iPhone上运行良好。我有iOS7测试版,但这并不重要,因为我下载的游戏在里面运行得很好有人知道它可能是什么吗?提前谢谢! 编辑

该图像不是一个“真实的”.png文件,我刚刚更改了扩展名。我下载了一个png文件,现在它可以工作了

我用cocos2D做了一个简单的游戏,我正试着在我的iphone5上运行它。图标加载,laungh图像加载,但随后我收到一条带有错误等的长消息。例如,它找不到图像的文件,即使它们位于正确的位置,拼写正确。

该游戏在模拟器中运行良好,我下载的另一个cocos2D游戏在我的iPhone上运行良好。我有iOS7测试版,但这并不重要,因为我下载的游戏在里面运行得很好

有人知道它可能是什么吗?

提前谢谢!

编辑: 以下是我在控制台中遇到的全部错误:

cocos2d: cocos2d-iphone v2.1
cocos2d: compiled with Profiling Support: NO
cocos2d: OS version: 7.0 (0x07000000)
cocos2d: GL_VENDOR:   Imagination Technologies
cocos2d: GL_RENDERER: PowerVR SGX 543
cocos2d: GL_VERSION:  OpenGL ES 2.0 IMGSGX543-95
cocos2d: GL_MAX_TEXTURE_SIZE: 4096
cocos2d: GL_MAX_TEXTURE_UNITS: 8
cocos2d: GL_MAX_SAMPLES: 4
cocos2d: GL supports PVRTC: YES
cocos2d: GL supports BGRA8888 textures: YES
cocos2d: GL supports NPOT textures: YES
cocos2d: GL supports discard_framebuffer: YES
cocos2d: GL supports shareable VAO: NO
2013-08-16 00:28:34.936 brick jumper[3349:60b] cocos2d: animation started with frame  interval: 60.00
2013-08-16 00:28:34.950 brick jumper[3349:60b] cocos2d: surface size: 1136x640
2013-08-16 00:28:35.001 brick jumper[3349:60b] -[CCFileUtils     fullPathForFilename:resolutionType:] : cocos2d: Warning: File not found: wall.png
2013-08-16 00:28:35.002 brick jumper[3349:60b] cocos2d: Couldn't find file:wall.png
2013-08-16 00:28:35.004 brick jumper[3349:60b] *** Assertion failure in -[HelloWorldLayer addChild:], /Users/tonymichaelsen/Documents/documents/Xcode-projects/brick jumper/brick  jumper/libs/cocos2d/CCNode.m:382
2013-08-16 00:28:35.005 brick jumper[3349:60b] *** Terminating app due to uncaught  exception 'NSInternalInconsistencyException', reason: 'Argument must be non-nil'
*** First throw call stack:
(0x2fa944a3 0x39a926c7 0x2fa94375 0x30451c03 0x54c37 0xc8ab5 0x530ad 0xc86f3 0xc98cf   0xb42b5 0xb2ed9 0x55d15 0x3080b 0xaa0b5 0x303e553d 0x3040e4f5 0xaa84f 0xc7b73 0xab009 0xae3fd  0x320c6b2b 0x31d5b893 0x31d5b457 0x31d89f95 0x32163f07 0x32162fa9 0x3216222f 0x322856a9  0x321621f7 0x32285461 0x32123ee7 0x32123b61 0x32123485 0x32119573 0x32115c15 0x32152edd  0xc817f 0x3211a375 0x32119dbb 0x32112ad5 0x320c4a1b 0x320c3d11 0x320c3af9 0x34543bc5  0x345437af 0x2fa5bfdf 0x2fa5bf7b 0x2fa5a737 0x2f9d0d09 0x2f9d0aeb 0x32111791 0x3210d4ad  0xc799b 0x2b08)
libc++abi.dylib: terminating with uncaught exception of type NSException
(lldb) 

你说这些图像拼写正确,但你仔细检查了是否正确?模拟器将接受大小写不正确的图像(例如,文件名为“cocosImage.png”,代码要求输入“cocosImage.png”),但设备本身将抛出错误


(这就是为什么在设备本身上开发总是一个好主意的原因。当这些错误发生时,您会及时发现,并更好地了解从何处开始,而不是怀疑它何时开始崩溃。:)

cocos2d找不到wall.png。我猜你在测试视网膜设备。如果是这样,请在应用程序委托中,更改行
[sharedFileUtils setEnableFallbackSuffixes:NO]
[sharedFileUtils SetEnableFallbackSuffix:YES]


或者,使用App Delegate中列出的扩展名添加更高分辨率的图像(用于视网膜设备),即分辨率为4x(每个维度)的
wall ipadhd.png

我现在再次检查,结果完全正确。谢谢,尽管我记住了这一点,但我不认为这可能是因为wall.png是3888×2592像素,那么你的问题很可能是wall.png的大小。某些设备中的最大纹理大小为2048x2048。(使用纹理在cocos2d中创建精灵。)模拟器可能能够处理较大的纹理。你需要缩小图像的大小。为了澄清这一点,cocos2d并不关心图像的分辨率来找到合适的图像。这是文件名。您必须通过添加文件后缀
-ipadhd
来指示图像是例如iPad视网膜,那么每次图像处于视网膜分辨率时,我是否必须添加正确的后缀?我如何知道图像的大小或分辨率?