デバイスに PVR 画像をロードしようとすると、このエラーが発生しました。iPhone 5s、5、4s、iPad では問題なく動作しますが、4 では動作しません。私の PVR 画像サイズは:width = 4096
とheight = 2048
です。
Cocos2d: cocos2d: TexturePVR: Error uploading compressed texture level: 0 . glError: 0x0501
Cocos2d: cocos2d: Couldn't load PVR image /var/mobile/Applications/7CF6C347-8B63-4C1E-857A-41F48C8ACBEF/Race.app/Images/BackGround/bg1.pvr.ccz
Cocos2d: cocos2d: Couldn't add PVRImage:Images/BackGround/bg1.pvr.ccz in CCTextureCache
このフォームからこのリンクを取得しました:
対応サイズ:iPhone 3gs / iPhone 4 / iPad 1 / iPod 3 / 4 : 2048x2048 iPad 2 / 3 / 4 / Mini / iPhone 4S / 5 / iPod 5 : 4096x4096
ところで、テクスチャを 4096x4096 でインポートしてミップ マップをオンにすることができます。これにより、古いデバイスでは解像度の低いテクスチャが自動的に使用されます。
しかし、ミップマップをオンにする方法..そしてこれは何をしますか?
// support mipmap filtering
sprite->getTexture()->generateMipmap();
ccTexParams texParams = { GL_LINEAR_MIPMAP_LINEAR, GL_LINEAR, GL_CLAMP_TO_EDGE, GL_CLAMP_TO_EDGE };
sprite->getTexture()->setTexParameters(&texParams);