Qt -> Windows -> Vertex Buffer Objects



  • Hallo,
    ich möchte in Windows aus Performancegründen Vertex-Buffer-Objects benutzen.
    Die Befehlskette ist mir mit

    glGenBuffers(1, &GelaendeVBO);
    glBindBuffer(GL_ARRAY_BUFFER, GelaendeVBO);
    glBufferData( GL_ARRAY_BUFFER, xy_gesamt*9*sizeof(double), &GelaendePunkte, GL_STATIC_DRAW);
    

    klar. Nur funktionieren tut das nicht. Ein wenig Google hat ergeben, dass das an der hoffnungslos veralteten GL-Version (1.1) von Windows liegt. Gleichermaßen hab ich aber auch herausgefunden, dass es "irgendwie" wohl geht? Hat jmd. Erfahrung mit GLEW, GLUT und was es nicht alles gibt in Kombination mit Qt / OpenGl (also einem QGLWidget)?
    Oder eine andersartige Alternative seitens Qt damit umzugehen?
    Danke und Grüße



  • Hallo FlashMuller,

    wenn deine Graphikkarte eine aktuellere Version von OpenGL unterstützt kannst du dir einfach einen neuen Treiber installieren.
    Ansonsten wäre es möglich, dass deine Graphikkarte die Extension GL_ARB_Vertex_Buffer_Object-Extension unterstützt (OpenGL 1.5?).

    Viele Grüße,
    MaBa



  • Hallo,
    also die Grafikkarte ist ausreichend aktuell und die Treiber sind auf dem neuesten Stand. Wie greife ich auf die ARB-Befehle zu? Brauche ich dafür eine Bibliothek oder spezielle Header oder was auch immer?
    In der Zwischenzeit ist mir das QGLBufferObject aufgefallen, dass scheinbar eine "Serverseitige Kopie", also auf der Grafikkarte, eines Array anlegt. Das wäre also auch eine Möglichkeit, wobei dann die Frage besteht, ob "natives" Programmieren, was ja in diesem Fall nicht besonders schwer ist, nicht vorzuziehen wäre.
    Grüße


Anmelden zum Antworten