Мы создаем приложение, которое работает с большим количеством изображений. Мы заинтересованы как в Core Image, GPUImage, так и в UIImage и как он распаковывает изображения. Мы уже знакомы с тем, что выполнение декомпрессии изображений на фоновом потоке поможет устранить заикание или дрожание в нашем пользовательском интерфейсе. Однако мы не очень хорошо знаем, где происходит эта декомпрессионная работа. Мы также делаем некоторые обрезки изображений, используя UIImage. Таким образом, здесь задаются вопросы:Декомпрессия с использованием GPUImage против Core Image vs UIImage?
Фон: Мы поддерживаем устройства вплоть до iPhone 4, но вскоре может отказаться от iPhone 4 в пользу iPhone 4S как самого старого устройства.
1) Является ли декомпрессия изображения, выполненного на графическом процессоре? ... Core Image? GPUImage? UIImage?
2) Можно ли обрезать изображение на графическом процессоре? ... Core Image? GPUImage? UIImage?
3) Есть ли разница в поддержке GPU на основе нашего профиля устройства?
В основном мы хотим разгрузить столько, сколько мы можем, на GPU, чтобы освободить процессоры на устройстве. Кроме того, мы хотим выполнить любую операцию на графическом процессоре, которая будет работать быстрее, а не на процессоре.
@Tommy - Я знаю, что «измельченные» PNG от Apple имеют преимущества производительности, потому что у них есть встроенные ускорения для вытаскивания их, но я не уверен в обобщенном случае. Я знаю, что были некоторые интересные эксперименты с различными форматами файлов для оптимизации скорости извлечения: https://github.com/gameclosure/gcif.Не потратили столько времени на это, как я должен, учитывая, насколько узким местом для многих приложений. –