Hi,
my situation is following:
I write an app that have one QWidget. This widtget contains between 9 and 12 custom QGLWidget. Every custom QGLWidget get every 40 ms an image from a worker(which works in his one thread). I use PBO to copy imgaes in textur. And I use following connects:
connect(mCam,
SIGNAL(renderedImage
(const QImage &)),
this,
SLOT(updateTextur
(const QImage &)));
timer->start(40);
connect(timer,SIGNAL(timeout()),this,SLOT(updateGL()),Qt::DirectConnection);
connect(mCam, SIGNAL(renderedImage(const QImage &)), this, SLOT(updateTextur(const QImage &)));
QTimer *timer = new QTimer();
timer->start(40);
connect(timer,SIGNAL(timeout()),this,SLOT(updateGL()),Qt::DirectConnection);
To copy to clipboard, switch view to plain text mode
updateTextur is simple:
void OpenGLWidget
::updateTextur(const QImage &image
) {
if(image.byteCount() > 0)
{
}
}
void OpenGLWidget::updateTextur(const QImage &image)
{
if(image.byteCount() > 0)
{
mImg = QImage(image);
}
}
To copy to clipboard, switch view to plain text mode
Furthermore, I stop Time between painGL's invocation. And I get 47 ms with ATI and over 100 ms with NVidia!
Have sombody an idea why?
thanks!
Bookmarks