Частота кадров CADisplayLink на 10,5-дюймовом iPad Pro

У нас есть приложение для iOS на основе OpenGL. Мы используем CADisplayLink для управления обновлениями наших чертежей.

Я только что получил новый 10,5-дюймовый iPad Pro, и мы получаем максимальную частоту кадров 60, а не 120, которые теоретически можем получить на новом оборудовании.

Мы настраиваем отображаемую ссылку следующим образом:

    self.caDisplayLink = [CADisplayLink displayLinkWithTarget:self selector:@selector(displayLinkCalled:)];
    caDisplayLink.preferredFramesPerSecond = 120;
    NSLog(@"Maximum FPS = %ld", [UIScreen mainScreen].maximumFramesPerSecond);
    [caDisplayLink addToRunLoop:[NSRunLoop currentRunLoop] forMode:NSDefaultRunLoopMode];

Метод displayLinkCalled: вызывается 60 раз в секунду. В заявлении журнала указано, что максимальная частота кадров UIScreen составляет 120 кадров в секунду.

Есть ли что-то еще, что мне нужно сделать, чтобы обновляться со скоростью выше 60 кадров в секунду?


person btschumy    schedule 14.06.2017    source источник
comment
Не обязательно, чтобы отображаемая ссылка была ограничена 60 кадрами в секунду, она может отображать буфер рендеринга. Попробуйте создать другую отображаемую ссылку, которая ничего не делает, кроме сообщения о частоте кадров. Если частота кадров этого по-прежнему составляет 60 кадров в секунду, то кажется, что ссылка на отображение все еще ограничена. Если нет, то вы ограничены 60, представив буфер на экране. Чтобы проверить ограничение рендеринга, вы можете заменить ссылку на отображение таймером, установленным на интервал 1/120, чтобы посмотреть, сможете ли вы увеличить частоту кадров.   -  person Matic Oblak    schedule 20.06.2017


Ответы (1)


Вы согласились? Вам нужно добавить ключ в свой plist

<key>CADisableMinimumFrameDuration</key>
 <true/>
person eug    schedule 08.07.2017
comment
Это сделало трюк! Я, должно быть, пропустил это в документации. Огромное спасибо. - person btschumy; 10.07.2017