Название: QOpenGLWindow вместо QOpenGLWidget Отправлено: Igors от Апрель 28, 2015, 08:02 Добрый день
В общем QOpenGLWidget достал меня своим рендером в текстуру и проблемами прущими изо всех щелей. Текущая проблема - упало fps в полтора-два раза (по сравнению с до-Qt реализацией). Профайлер ничего путного не показывает, и как решать хз. Возвращаться к deprecated QGLWidget совершенно бесперспективно. Остается использовать QOpenGLWindow - судя по букварю это то что надо (вывод на экран, свободный swapBuffers). Но это наследник QWindow (а не QWidget). В примерах просто создается QOpenGLWindow - но переделывать так свои окна нереально. Тогда как же задействовать QOpenGLWindow ? Спасибо Название: Re: QOpenGLWindow вместо QOpenGLWidget Отправлено: kamre от Апрель 28, 2015, 13:41 Можно задействовать через функцию: http://doc.qt.io/qt-5/qwidget.html#createWindowContainer
Название: Re: QOpenGLWindow вместо QOpenGLWidget Отправлено: Igors от Апрель 28, 2015, 14:48 Можно задействовать через функцию: http://doc.qt.io/qt-5/qwidget.html#createWindowContainer Да, буду пробовать. СпасибоНазвание: Re: QOpenGLWindow вместо QOpenGLWidget Отправлено: Igors от Апрель 29, 2015, 11:10 Перевел на QOpenGLWindow - ну пока только "заходило", там еще чистить и чистить. Вернулась нормальная скорость!!! swapBuffers бычит как положено!! С огромным удовольствием убираю многочисленные сопли что я понавешивал для долбаного QOpenGLWidget. Появилась парочка новых проблем
- не понимает что swapBuffers уже сделано и делает второй раз после paintGL - не работают виджеты "сверху" (как и предупреждали в букваре) Ну то выкручусь, мелочи, детский сад по сравнению с проблемами QOpenGLWidget. И ведь отвечали же мне Qt "можешь сделать контейнер", а я ушами прохлопал. Думал "был QGLWidget, стало быть теперь QOpenGLWidget". В общем - бестолковый :) |