Hi all,
I'm developing a simple library that enable users to display raw buffers(RGB mainly)  and overlays (text, squares ...). I already developed the "Qpainter" version, basically a derived  QWidget that uses a Qpainter inside, for the overlays I had to save all the overlays painting requests by the client in temporary arrays and then paint over the buffer image in the paintEvent.
	
	{
 
	painter.
drawImage(QPoint(0, 
0), newImage
);
 
	for (int i = 0; i < m_pxmps_list.size(); i++)
	{
		painter.drawPixmap(m_pxmps_list.at(i).p ,m_pxmps_list.at(i).px);
	}
 
	for (i = 0; i < m_sq_list.size(); i++)
	{
		m_pen.setColor(m_sq_list.at(i).co);
		painter.setPen(m_pen); 
		painter.drawRect(m_sq_list.at(i).xs, m_sq_list.at(i).ys, m_sq_list.at(i).w,             m_sq_list.at(i).h);
	}
....
        void DisplayPainter3::paintEvent(QPaintEvent *e) 
{
QPainter painter(this);
	painter.drawImage(QPoint(0, 0), newImage);
	for (int i = 0; i < m_pxmps_list.size(); i++)
	{
		painter.drawPixmap(m_pxmps_list.at(i).p ,m_pxmps_list.at(i).px);
	}
	
	for (i = 0; i < m_sq_list.size(); i++)
	{
		m_pen.setColor(m_sq_list.at(i).co);
		painter.setPen(m_pen); 
		painter.drawRect(m_sq_list.at(i).xs, m_sq_list.at(i).ys, m_sq_list.at(i).w,             m_sq_list.at(i).h);
	}
....
To copy to clipboard, switch view to plain text mode 
  
Now I'd like to do the same taking advantage of the OpenGl hardware acceleration, so my questions:
1. Is there some good tutorial on how using OpenGl for 2d painting in a QGLWidget (or some sample, the examples in Qt are all 3d )?
2. Should I use QGLPixelBuffer?
3. Would it be better to load the buffer in a QImage or Qpixmap before QGLWidget::renderPixmap()?
Ok, hoping not too be too off topic I thank you for any tips.
Bye
				
			
Bookmarks