Подтвердить что ты не робот

EXC_BAD_ACCESS at lauch для EAGLContext renderbufferStorage: fromDrawable: в Cocos2d app whie отладка

Используя приложение cocos2d-swift по умолчанию, я получаю ошибку EXC_BAD_ACCESS на моем iPad Mini 2 на линии:

BOOL rb_status = [_context renderbufferStorage:GL_RENDERBUFFER fromDrawable:layer];

Но если я попытаюсь запустить приложение без отладки, все работает нормально. Если я использую debug на любом виртуальном устройстве, я тоже не получаю ошибку. Почему это не работает? Как удалить эту ошибку?

4b9b3361

Ответ 1

Похоже, что это проблема на некоторых устройствах на iOS 8.3+. Он работает для меня практически на всех устройствах, но iPad mini 2 не подходит для меня. Короче говоря, нет ничего плохого в самом вызове. По какой-то причине кажется, что это ошибка Xcode с этими устройствами. Вы можете обойти это (пока Apple не исправит его):

В Xcode перейдите в Product → Scheme → Edit Scheme... А для конфигурации "Запуск отладки" (слева) выберите "Параметры" (с правой стороны) и настройте "Захват кадров GPU" как отключенный.

Для получения дополнительной информации ознакомьтесь с этой веткой: https://github.com/BradLarson/GPUImage/issues/2022#issuecomment-118943746

Ответ 2

Я обнаружил, что у устройства не было последней версии iOS. Когда я обновил версию iOS устройств, ошибка удалилась.