Assertion Error In iPhone for Universal Game(Cocos2d + Objective-C), ONLY For iPad Simulator

3

I am creation one Universal Game using Cocos2d and Objective-C in iPhone. Almost my project is completed. I am getting this Error during Run-time on Console Window.

For iPhone4.3 simulator and iPhone (Retina), Game is working fine.

This error is coming only when I Select "iPad" Simulator for execution.

Any ideas? I am really confused with this.. Thanks in advance!

2012-04-02 13:35:55.409 David and Goliath[35671:1803] cocos2d: CCTextureCache: removing unused texture: David_Goliath_Menu-ipad.png
[Switching to process 35671 thread 0x1803]
2012-04-02 13:35:56.410 David and Goliath[35671:1803] cocos2d: WARNING: Image (4096 x 1024) is bigger than the supported 2048 x 2048
2012-04-02 13:35:56.410 David and Goliath[35671:1803] cocos2d: Couldn't add image:Day_2048_768_MOUNTAINS_IPad.png in CCTextureCache
2012-04-02 13:35:56.411 David and Goliath[35671:1803] *** Assertion failure in -[ActionLayer addChild:z:], /Users/sumitghosh/Desktop/David and Goliath Ipad 2/libs/cocos2d/CCNode.m:390
2012-04-02 13:35:56.412 David and Goliath[35671:1803] *** Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: 'Argument must be non-nil'
*** Call stack at first throw:
(
    0   CoreFoundation                      0x018b15a9 __exceptionPreprocess + 185
    1   libobjc.A.dylib                     0x021ff313 objc_exception_throw + 44
    2   CoreFoundation                      0x01869ef8 +[NSException raise:format:arguments:] + 136
    3   Foundation                          0x005c13bb -[NSAssertionHandler handleFailureInMethod:object:file:lineNumber:description:] + 116
    4   David and Goliath                   0x000e3fa8 -[CCNode addChild:z:] + 200
    5   David and Goliath                   0x0002d94b -[ActionLayer setBackground] + 1947
    6   David and Goliath                   0x00038454 -[ActionLayer init] + 2356
    7   David and Goliath                   0x000396ae -[ActionScene init] + 158
    8   David and Goliath                   0x000036f6 -[David_and_GoliathAppDelegate loadScenes] + 598
    9   David and Goliath                   0x00005c7b -[LoadingLayer loadScenes:] + 187
    10  CoreFoundation                      0x01821c7d __invoking___ + 29
    11  CoreFoundation                      0x01821b51 -[NSInvocation invoke] + 145
    12  Foundation                          0x005e8495 -[NSInvocationOperation main] + 51
    13  Foundation                          0x00556b76 -[__NSOperationInternal start] + 747
    14  Foundation                          0x005567ca ____startOperations_block_invoke_2 + 106
    15  libdispatch_sim.dylib               0x02514289 _dispatch_call_block_and_release + 16
    16  libdispatch_sim.dylib               0x0251758a _dispatch_worker_thread2 + 252
    17  libSystem.B.dylib                   0x97fda781 _pthread_wqthread + 390
    18  libSystem.B.dylib                   0x97fda5c6 start_wqthread + 30
)
terminate called after throwing an instance of 'NSException'
[Switching to process 35671 thread 0x207]
Current language:  auto; currently objective-c
kill
quit
Program ended with exit code: 0
iphone
ipad
xcode4
cocos2d-iphone
assertion
asked on Stack Overflow Apr 2, 2012 by NSExpression

1 Answer

1
2012-04-02 13:35:56.410 David and Goliath[35671:1803] cocos2d: WARNING: Image (4096 x 1024) is bigger than the supported 2048 x 2048
2012-04-02 13:35:56.410 David and Goliath[35671:1803] cocos2d: Couldn't add image:Day_2048_768_MOUNTAINS_IPad.png in CCTextureCache
2012-04-02 13:35:56.411 David and Goliath[35671:1803] *** Assertion failure in -[ActionLayer addChild:z:], /Users/sumitghosh/Desktop/David and Goliath Ipad 2/libs/cocos2d/CCNode.m:390
2012-04-02 13:35:56.412 David and Goliath[35671:1803] *** Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: 'Argument must be non-nil'

It is telling you the problem here. You are trying to load an image that is beyond the maximum dimensions the iPad can support, so cocos2d cannot load it. When you try to add it as a CCSprite you trigger an unhanded NSInternalInconsistencyException (since the node is nil) and this causes your app to terminate.

For iPad you will need to use a smaller image.

answered on Stack Overflow Apr 2, 2012 by davbryn

User contributions licensed under CC BY-SA 3.0