Strumenti Utente



qt_windows_e_opengl_dinamico

Differenze

Queste sono le differenze tra la revisione selezionata e la versione attuale della pagina.

Link a questa pagina di confronto

Entrambe le parti precedenti la revisione Revisione precedente
Prossima revisione
Revisione precedente
Ultima revisione Entrambe le parti successive la revisione
qt_windows_e_opengl_dinamico [2015/05/13 06:53]
mickele
qt_windows_e_opengl_dinamico [2015/05/13 11:38]
mickele
Linea 18: Linea 18:
   .../gltext2d.cpp:120: undefined reference to `_imp__glEnable@4'   .../gltext2d.cpp:120: undefined reference to `_imp__glEnable@4'
  
-Il problema viene risolto chiamando le funzioni OpenGL tramite la classe [[http://doc.qt.io/qt-5/qopenglfunctions.html|QOpenGLFunctions]]. Quando usiamo la classe QOpenGLFunctions ricordiamoci che l'istanza della classe deve essere inizializzata con il metodo initializeOpenGLFunctions().+Il problema viene risolto chiamando le funzioni OpenGL tramite la classe [[http://doc.qt.io/qt-5/qopenglfunctions.html|QOpenGLFunctions]] usando 
 + 
 +  QOpenGLFunctions *f = QOpenGLContext::currentContext()->functions(); 
 +  f->glClearColor(1.0f, 1.0f, 1.0f, 1.0f); 
 +  ... 
 + 
 +Se in alternativa creiamo un istanza della classe QOpenGLFunctions, ricordiamoci di inizializzarla con il metodo initializeOpenGLFunctions().
  
 ===== E QOpenGLTexture ? ===== ===== E QOpenGLTexture ? =====
Linea 26: Linea 32:
 Una prima soluzione è quelle di creare una classe intermedia che eredita sia da QOpenGLTexture che da QOpenGLFunctions. In caso di scene complesse la soluzione appena descritta può non essere il massimo in termini di performance, vista la necessità di inizializzare ogni texture con initializeOpenGLFunctions(). Una prima soluzione è quelle di creare una classe intermedia che eredita sia da QOpenGLTexture che da QOpenGLFunctions. In caso di scene complesse la soluzione appena descritta può non essere il massimo in termini di performance, vista la necessità di inizializzare ogni texture con initializeOpenGLFunctions().
  
-L'alternativa è quella di fare a meno di QOpenGLTexture invocando direttamente i comandi OpenGL delle texture  (glGenTextures, glBindTexture, glDeletetexture ... ). A volte il modo migliore di risolvere i problemi è eliminarli!+L'alternativa è quella di fare a meno di QOpenGLTexture invocando direttamente i comandi OpenGL delle texture  (glGenTextures, glBindTexture, glDeletetexture ... ). A volte il modo migliore di risolvere i problemi è eliminarli dalla radice!
  

qt_windows_e_opengl_dinamico.txt · Ultima modifica: 2015/06/12 11:10 da mickele

Facebook Twitter Google+ Digg Reddit LinkedIn StumbleUpon Email