26.06.2013 Views

Utilisation avancée des processeurs graphiques avec Qt

Utilisation avancée des processeurs graphiques avec Qt

Utilisation avancée des processeurs graphiques avec Qt

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

<strong>Utilisation</strong> <strong>avancée</strong> <strong>des</strong> <strong>processeurs</strong> <strong>graphiques</strong> <strong>avec</strong> <strong>Qt</strong> par Rémi Achard Guillaume Belz<br />

2.3.3 - Dessiner dans une texture dynamique <strong>avec</strong> QPainter<br />

Les classes QGLPixelBuffer et QGLFramebufferObject héritent de la classe QPaintDevice, il est donc possible<br />

de <strong>des</strong>siner dedans directement <strong>avec</strong> QPainter.<br />

Pour cela, on crée un QPainter <strong>avec</strong> le QGLPixelBuffer comme paramètre et on peut l'utiliser dans la foulée. Lorsque<br />

l'on a fini d'utiliser QPainter, on réactive le contexte du QGLWidget et on active la texture dynamique <strong>avec</strong> la<br />

fonction glBindTexture :<br />

QPainter pbuffer_painter(m_pbuffer);<br />

// On <strong>des</strong>sine <strong>avec</strong> le QPainter<br />

pbuffer_painter.end();<br />

makeCurrent();<br />

glBindTexture(GL_TEXTURE_2D, m_pbuffer_location);<br />

- 43 -<br />

http://gbelz.developpez.com/remi-achard/gpu-avance-<strong>avec</strong>-qt/modified/

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!