Frage

Ich habe OpenGL-Erweiterungen unter Windows verwendet schmerzhafter Weg.Ist GLEW der einfachere Weg?Wie fange ich damit an?

War es hilfreich?

Lösung

Ja das OpenGL-Erweiterung Wrangler-Bibliothek (GLEW) ist eine problemlose Möglichkeit, OpenGL-Erweiterungen unter Windows zu verwenden.Hier erfahren Sie, wie Sie damit beginnen:

Identifizieren Sie die OpenGL-Erweiterung und die Erweiterungs-APIs, die Sie verwenden möchten.OpenGL-Erweiterungen sind im aufgeführt OpenGL-Erweiterungsregistrierung.

Überprüfen Sie, ob Ihre Grafikkarte die Erweiterungen unterstützt, die Sie verwenden möchten.Laden Sie die neuesten Treiber und SDKs für Ihre Grafikkarte herunter und installieren Sie sie.

Aktuelle Versionen von NVIDIA OpenGL SDK Schiff mit GLEW.Wenn Sie dies verwenden, müssen Sie einige der folgenden Schritte nicht ausführen.

Herunterladen GLÜCKLICH und entpacken Sie es.

Fügen Sie das GLEW hinzu Behälter Pfad zu Ihrem Windows WEG Umgebungsvariable.Alternativ können Sie auch die platzieren glew32.dll in einem Verzeichnis, in dem Windows seine DLLs abholt.

Fügen Sie das GLEW hinzu enthalten Pfad zur Include-Verzeichnisliste Ihres Compilers.

Fügen Sie das GLEW hinzu lib Pfad zur Bibliotheksverzeichnisliste Ihres Compilers.

Weisen Sie Ihren Compiler an, ihn zu verwenden glew32.lib beim Verlinken.Wenn Sie Visual C++-Compiler verwenden, können Sie dies beispielsweise tun, indem Sie Ihrem Code die folgende Zeile hinzufügen:

#pragma comment(lib, "glew32.lib")

Füge hinzu ein #include <GL/glew.h> Zeile zu Ihrem Code.Stellen Sie sicher, dass dies über den Includes anderer GL-Headerdateien platziert wird.(Möglicherweise benötigen Sie die GL-Header-Dateien nicht, wenn Sie sie einbinden glew.h.)

Initialisieren Sie GLEW mit glewInit() nachdem Sie GLUT oder GL initialisiert haben.Wenn dies fehlschlägt, stimmt etwas mit Ihrem Setup nicht.

if (GLEW_OK != glewInit())
{
    // GLEW failed!
    exit(1);
}

Überprüfen Sie, ob die Erweiterung(en), die Sie verwenden möchten, jetzt über GLEW verfügbar sind.Sie tun dies, indem Sie eine boolesche Variable mit dem Namen überprüfen GLÜCKLICH_Ihr_Erweiterungsname was durch GLEW offengelegt wird.

Beispiel:

if (!GLEW_EXT_framebuffer_object)
{
    exit(1);
}

Das ist es!Sie können die OpenGL-Erweiterungsaufrufe jetzt in Ihrem Code verwenden, als ob sie natürlich für Windows vorhanden wären.

Andere Tipps

Persönlich würde ich keinen Exit-Befehl verwenden.

Ich würde eine Ausnahme auslösen, damit Sie am Ende der Funktion alle anderen Initialisierungen löschen können.

dh:

try
{
    // init opengl/directx
    // init directaudio
    // init directinput

    if (GLEW_OK != glewInit())
    {
        throw std::exception("glewInit failed");
    }
}
catch ( const std::exception& ex )
{
    // message to screen using ex.what()
    // clear up
}

Und ich stimme OJ zu – wenn Sie Tutorials für andere schreiben möchten, dann ist dies wirklich der falsche Ort dafür.Es gibt bereits viele gute Orte für OpenGL-Tutorials. Probieren Sie zum Beispiel dieses aus.

Ich habe etwas Zeit verloren, aber schließlich habe ich es geschafft, GLEW zum Laufen zu bringen.Ich verwende Windows7 (x64), Eclipse CDT und MinGW und die Vorgehensweise ist folgende:

Laden Sie MSYS (für MinGW) herunter und achten Sie darauf, dass MinGW korrekt installiert ist (PATH-Umgebungsvariable richtig eingestellt):http://sourceforge.net/projects/mingw/files/MSYS/Base/msys-core/msys-1.0.10/MSYS-1.0.10.exe/download?use_mirror=freefr&download=

Gehen Sie nach der Installation von MSYS zu:http://glew.sourceforge.net/und laden Sie das TGZ-Paket herunter, das für die Verwendung mit UNIX-Systemen vorgesehen ist

Öffnen Sie dann das Paket (Sie können auch 7zip verwenden) und suchen Sie das „Makefile“.Öffnen Sie es und suchen Sie mit einem Texteditor (Notepad sollte einwandfrei funktionieren) die Zeile, die „GLEW_DEST“ enthält, und ersetzen Sie sie durch etwas wie „GLEW_DEST ?= C:/MinGW“.

Jetzt können Sie loslegen, öffnen Sie MSYS (in meinem Fall C:\MinGW\msys\1.0\msys.bat) und gehen Sie in der geöffneten Shell zu dem Ordner, in dem sich das „Makefile“ befindet.

Dann schreiben Sie einfach:„make install“ und die Arbeit ist erledigt (zumindest bei mir hat es funktioniert)

PS:Ich habe außerdem die Dateien „glew-1.10.0-win32\glew-1.10.0\bin elease\Win32“ in meinen System32-Ordner kopiert und in Eclipse CDT die Bibliothek „glew32“ in der Linker-Option hinzugefügt und eine hinzugefügt #include <GL/glew.h> Vor #include <GL/glut.h>

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top