Hi Ivan. To my knowledge, cocos2d-x does not support Assets catalog (and so, the App thinning process won’t do much). You could, however, do a little programming to support it on iOS only: instead of loading images with the Sprite::create method, use [NSImage imageNamed: …]. That will search on the assets catalog and return the image. Then you will need to create a Sprite from that NSImage. Code will look like this:
// search imageKey in assets catalog
auto image = [UIImage imageNamed:@(imageKey)];
// convert NSImage to Texture
NSData* data = UIImagePNGRepresentation(image);
auto length = [data length];
unsigned char* buffer = (unsigned char*)malloc(length);
[data getBytes:buffer length:length];
auto img = new Image();
auto tex = new Texture2D();
// create sprite
auto sprite = Sprite::createWithTexture(tex);
// free buffers
I have also used assets catalogs with JPGs. For that, you need to set the Render As option to Original Image (in Xcode select the Image set and change the RenderAs option on the panel on the right). Haven’t tried with PVR, but I guess the same procedure should work too.
btw, the app thinning process is something done by the AppStore (it provides different “slices” of the app depending on the device is requesting it). cocos2d-x could provide support for reading images from assets catalogs, but Android builds will still be “downloaded in full” since there is no thinning process on other stores (Google, Amazon, …) as far as I know.
Hope that helps!