OpenGL dans une fenêtre avec Qt

Résolu
Bonjour,
malgré plusieurs recherches, je n'ai toujours pas trouvé comment inclure un espace de travail pour OpenGL dans une fenêtre avec Qt, j'ai vu des choses comme OpenGL>>Widget>>fenêtre mais il me faudrait plutôt OpenGL>>fenêtre est-ce que quelqu'un pourrait m'aider ?
merci

3 réponses

  1. up
    0
    1. Bonjour
      Qt est bien documenté et de ce fait avec un peu de lecture tu sauras que tu peux insérer un objet OpenGL dans une fenêtre Qt
      dans ton fichier .pro
      QT += opengl
      

      ensuite tu as tout ces fonction
      QGLwidget qui est le widget de Qt permettant d'afficher des rendus OpenGL.
      initializeGl qui est la méthode permettant d'initialiser les différents paramètres d'opengl, cette méthode est également appelée une fois au lancement de l'application avant même paintGL() etc.
      en ce qui concerne les en-tête tu as
      #include <QtOpenGL>
      #include <QGLWidget>
      

      une chose encore la version de OpenGL varie selon le compilateur que tu as

      à bientôt
      0
  2. merci je ne connaissait pas QGLWidget je pense que sa va bien m'aider
    0
    1. super sa marche !
      pour ceux qui seraient intéressés voici mon code :

      OpenGL.pro :

      QT       += core gui opengl
      
      greaterThan(QT_MAJOR_VERSION, 4): QT += widgets
      
      TARGET = OpenGL
      TEMPLATE = app
      
      
      SOURCES += main.cpp\
              window.cpp
      
      HEADERS  += window.h


      window.h :

      #ifndef WINDOW_H
      #define WINDOW_H
      
      #include <QGLWidget>
      
      class Window : public QGLWidget
      {
      public:
          Window(QGLWidget *parent = 0);
          ~Window();
      };
      
      #endif // WINDOW_H
      


      window.cpp :

      #include "window.h"
      
      Window::Window(QGLWidget *parent) : QGLWidget(parent)
      {
      }
      
      Window::~Window()
      {
      
      }


      et main.cpp :

      #include "window.h"
      #include <QApplication>
      
      int main(int argc, char *argv[])
      {
          QApplication a(argc, argv);
          Window w;
          w.show();
      
          return a.exec();
      }
      
      0
      1. Je ne comprend pas comment ça peut marcher chez toi: QT me dit que la class Window n'a pas de fonction show
        0
      2. C'est bon je n'ai rien dit, c'est une erreur de ma pars!
        0
      3. ??
        0