Какао OpenGL разблокирована частота кадров
Я хочу иметь возможность запускать мою игру без фиксированной частоты кадров (в настоящее время 60 кадров в секунду). Единственный способ запустить анимацию - NSTimer. Есть ли способ иметь неограниченную частоту кадров в какао. Если это так, ссылка или фрагмент кода очень помогли бы.
2 ответа
Если вы действительно хотите это сделать, вам может понадобиться использовать интерфейс CGL. В правильном контексте GL, CGLGetCurrentContext
возвращает (непрозрачный) объект контекста. CGLSetParameter
может быть использован для установки значения для kCGLCPSwapInterval
параметр. Значение (0)
отключает ожидание vsync.
Это позволило мне получить около 700 кадров в секунду на моем MacBook Pro
- Загрузить графические инструменты для Xcode - конец августа 2014
- Установить или просто смонтировать Графические инструменты
- Open Quartz Debug
- Перейти в Инструменты -> Показать инструменты синхронизации луча
- Выберите "Отключить синхронизацию луча"
Это также не является постоянным, идеально подходит для тестирования / тестирования.
Отладчик Quartz в Xcode 11 (версия 4.2) переместил это в:
Инструменты-> Настройки отладки Quartz-> Включить вертикальную синхронизацию