Название: OpenGL, скорость работы в QGLWidget и QGraphicsScene Отправлено: Вудруф от Февраль 01, 2010, 13:16 Есть два варианта приложения:
1. QGLWidget с переопределённым paintGL 2. QGraphicsView/QGraphicsScene с QGLWidget в качестве viewport'а и переопределённым drawBackground. В обоих случаях исполняется один и тот же GL-ный код. Больше на сцене ничего нет. На WinXP SP2/GeForce 8400 GS работает примерно одинаково, на Ubuntu 9.10 x86_64/GeForce GTX 260 второй вариант медленнее на 40%. Падение именно процентное, что при одной модели и fps около 4к, что при 100 и fps около сотни. Кто-нибудь знает, с чем может быть связано? Название: Re: OpenGL, скорость работы в QGLWidget и QGraphicsScene Отправлено: Racheengel от Февраль 02, 2010, 15:09 QGraphicsView тормозит, да. Есть такое. с чем связано - хз, наверно баг.
Название: Re: OpenGL, скорость работы в QGLWidget и QGraphicsScene Отправлено: ecspertiza от Февраль 02, 2010, 16:14 Я конечно дико извиняюсь ,но на мой взгляд это извращенство делать по второму варианту, первый ципляет только один класс, а второй сразу три(если не больше), конечно будет тормазить, чем вызванно желание делать по второму варианту?
Название: Re: OpenGL, скорость работы в QGLWidget и QGraphicsScene Отправлено: panAlexey от Февраль 02, 2010, 16:20 На WinXP SP2/GeForce 8400 GS работает примерно одинаково, на Ubuntu 9.10 x86_64/GeForce GTX 260 второй вариант медленнее на 40%. Падение именно процентное, что при одной модели и fps около 4к, что при 100 и fps около сотни. гы, а для кого ты свою поделку готовишь?Кто-нибудь знает, с чем может быть связано? для офисных компов или для геймеров. Если для офисных, выдергивай к чертям свою видеокарту и тести.. а связано с тормознутостью Qt при отрисовке на машинах без видюх... Название: Re: OpenGL, скорость работы в QGLWidget и QGraphicsScene Отправлено: Вудруф от Февраль 02, 2010, 21:29 Я конечно дико извиняюсь ,но на мой взгляд это извращенство делать по второму варианту, первый ципляет только один класс, а второй сразу три(если не больше), конечно будет тормазить, чем вызванно желание делать по второму варианту? Разумеется, не просто так. Qt планировалось использовать для отрисовки интерфейса поверх GL. Рисовать поверх QGLWidget'а дюже неудобно, уж лучше вместо Qt тот же CEGUI заюзать. Связка QGraphicsView/QGraphicsScene предоставляет более богатые возможности: Animation Framework, Graphics Layouts, etc. В конце концов даже встраивание QWidget'ов через QProxyWidget для сокращения кода, хоть они и тормознее, чем QGraphicItem'ы.И всё бы ничего, но тормозит. При пустой сцене не должна, т.к. дополнительной работы там нет, а вот всё равно. Баг троллям запостил, посмотрим, что скажут. Название: Re: OpenGL, скорость работы в QGLWidget и QGraphicsScene Отправлено: Вудруф от Февраль 02, 2010, 21:30 Если для офисных, выдергивай к чертям свою видеокарту и тести.. Вообще ничего не понял.а связано с тормознутостью Qt при отрисовке на машинах без видюх... Название: Re: OpenGL, скорость работы в QGLWidget и QGraphicsScene Отправлено: GreatSnake от Март 10, 2010, 11:47 Посмотри здесь (http://doc.trolltech.com/qq/qq26-openglcanvas.html#turbocharginggraphicsview).
Тормоза могут быть из-за этого ... we set the viewport update mode of the QGraphicsView to FullViewportUpdate as a QGLWidget cannot perform partial updates ... Название: Re: OpenGL, скорость работы в QGLWidget и QGraphicsScene Отправлено: break от Март 10, 2010, 12:06 Цитировать уж лучше вместо Qt тот же CEGUI заюзать CEGUI можно использовать совместно с GLWidget Интересно что у вас за программа и почему требуется отрисовывать интерфейс через GL (просто даже в мудреных 3D редакторах интерфейс со всякими параметрами остается в обычных GUI окошках)? я пока нормальный интерфейс GL-ный видел только в blender, во всех остальных местах где выводится пару надписей овердровом не столь важно как это выводить. |