Pull to refresh

Comments 14

QImage — для ввода\вывода, обработки, рез рисования.
QPixmap — для отрисовки на экран, работает гораздо шустрее, по памяти не в курсе.
Сейчас не вспомню почему выбрал QImage. Но в следующий раз обязательно попробую QPixmap, и тогда сравним.
QPixmap позволяет создавать обёртку над внешней памятью? Я помню, когда-то мне тоже нужно было рисовать картинку на графической сцене, но данные (буфер памяти) приходили из другой библиотеки, поэтому я использовал QImage просто как обёртку над этой памятью. QPainter умеет рисовать как QImage, так и QPixmap.
QPixmap::loadFromData(http://doc.qt.io/qt-5/qpixmap.html#loadFromData) инициализирует QPixmap изображениеим из сырых данных

Но это не является именно обёрткой, внутри он производит преобразования и копирование данных себе.
Мне нужна была именно обёртка, чтобы не было копирования данных, так как данные постоянно изменялись извне (естественно без изменения размера), и эти изменения нужно было отображать на экране в реальном времени. Преобразование и копирование в QPixmap на корню убило бы всю производительность в этом случае, а QImage вполне справлялся с достаточной производительностью при разумном разрешении экрана (размере буфера).
А еще лучше QGLPixelBuffer. И нет ничего удивительного в том, что распакованные картинки в памяти занимают больше места.
А о чём статья?! Или даже, а зачем статья?!
О работе с 3-я компонентами Qt, их плюсы и минусы.
А обязательно в хаб «Разработка под Android» помещать было?
А то что-то мне не нравится фраза:
При переносе на 5.4 стало еще меньше использоваться оперативной памяти и процессор уже загружен был менее, чем на 50%. Эти все параметры смотрел в Windows, как дела обстоят на андроиде — не в курсе.

Может, всё-таки, под Windows?
80% cтатьи — вода. Без скриншотов самой игры так вообще бесполезная затея.
Нужны нескучные скриншоты?
А куда без них, ты шо? Любой текст длиннее 100 символов без картинки смотрится СЫРО.
Google тоже попробовали на Qt'e игрушку написать — VoltAir. Если внимательно почитать все ридми, то можно заметить, что производительностью они не особо довольны, как и загрузкой ЦП.
Для игр тяжеловата обвязка в общем…
По мне так это логично. Qt — фрэймворк для создания интерфейсов, а не для работы с реалтаймовой графикой. Для игр есть отдельные движки, специально для этого заточенные. На них, кстати, обычно не очень удобно создавать интерфейсы, что, впрочем, никого не удивляет )
Sign up to leave a comment.

Articles