Russian Qt Forum

Qt => 2D и 3D графика => Тема начата: jasf от Ноябрь 28, 2009, 11:39



Название: QGraphicsProxyWidget через QGLWidget
Отправлено: jasf от Ноябрь 28, 2009, 11:39
Здравствуйте. А возможно ли полностью каким-то образом настроить QGraphicsProxyWidget и QWidget, что бы вся прорисовка происходила через оптимизированные функции QGLWidget? Вот к примеру, если манипулировать с закешированным содержанием QGraphicsProxyWidget - всё работает как надо (т.е. кручу, верчу картинку со сглаживанием в фуллскрине на 60fpsах), но если я буду постоянно обновлять QWidget ... там прорисовка происходит медленнее (в полноэкранном режиме QWidget успевает отрисовываться (в кеш) где-то со скоростью 10fps). Вот и получается, что в QGLWidget в примерах можно рисовать через QPainter со скоростью отрисовки OpenGL сцен, но если QGraphicsProxyWidget кешируется - QWidget отрисовывается медленно в QPixmap кеша.. и уже этот кеш быстро отрисовывается в QGLWidget со всевозможными деформациями. Если отрисовывать все QGraphicsProxyWidget без установленного кеша - получается немного повысить производительность, но в этом случае производительность не на столько высокая (порядка 40фпс на фуллскрине) и деформация без кеша не такая качественная (всё таки деформировать кеш QGraphicsItemа QGLWidgetу получается красивее). Вопрос так же видимо в следующем: как создать QPainter для gl битмапы? :) или настроить кеш QGraphicsItemа (в моём случае QGraphicsProxyWidget) так, что бы отрисовка QWidgetа происходила на скоростях, близких к скорости рендеринга OpenGLа.
P.S. видеокарта и проц довольно мощные