QopenGLWidget paintGL запускается только resizeGL - PullRequest
0 голосов
/ 16 января 2019

Я реализовал свой собственный класс QOpenGLWidget. Я использую update (), когда приходит новый видеокадр или вызывается resizeGL.

В начале видеокадр хорошо показывает paintGL. Но через некоторое время (<3 минуты) paintGL запускается только resizeGL, а не update () для новых видеокадров. </p>

Я считаю, что другие сталкиваются с той же проблемой. Но никаких решений не было опубликовано. QOpenGLWidget обновляется только при изменении размера

Как обновление QOpenGLWidget не может привести к событиям paintGL?

QOpenGLWidget прекращает перерисовку при обновлении ()

Обновление: Когда я рендеринг только один QOpenGLWidget, все в порядке. Но когда два или более, большая из них скоро замерзнет.

1 Ответ

0 голосов
/ 17 января 2019

Наконец-то я нахожу ответ.

Мне нужно вызвать метод qt update () в главном потоке. Вы можете достичь этого с помощью sig-slot QT.

Мне просто интересно, почему update () нужно вызывать в основном потоке, это ошибка QT?

...