Die meisten Compiler bieten einen OpenGL-Header, der OpenGL 1.1 unterstützt. Die meisten Funktionen in dieser Version von OpenGL sind jedoch längst veraltet und es fehlen wichtige Funktionen wie Shader und Vertex-Buffer-Objekte. GLEW ist im Grunde genommen nur ein Header (es gibt eine Quelldatei, die ebenfalls kompiliert werden muss, aber Sie können sie einfach in Ihr Projekt aufnehmen), der neuere OpenGL-Funktionen bietet.
Was bedeutet es durch Erweiterung?
Hier ist ein Link von OpenGL.org über sie. Sie sind nur zusätzliche Funktionen für OpenGL, die nicht Teil von OpenGL sind. Sie bieten nützliche Funktionen, aber Sie können nicht garantieren, dass sie auf jedem Computer funktionieren, da sie nicht Teil des OpenGL-Kerns sind.
Was bedeutet es, Zeiger auf OpenGL-Funktionen zu laden?
OpenGL wird vom Grafiktreiber als eine Reihe von Funktionen implementiert, die gemäß der Spezifikation implementiert sind, und nicht als eigenständige Bibliothek. Daher kann OpenGL nicht einfach mit Ihrem Projekt verknüpft werden.
Sie müssen eine Funktion aufrufen (z. B. GetProcAddress, dies hängt jedoch von der Plattform ab, für die Sie entwickeln), um den Funktionszeiger zur Laufzeit vom Treiber für jede OpenGL-Funktion abzurufen.
GLEW existiert, weil es sehr schwierig sein kann, genau das zu tun. Es ist viel einfacher, wenn Sie während der Initialisierung nur einen Header einfügen und eine Funktion aufrufen. Genau das macht GLEW. Außerdem ist GLEW plattformübergreifend.
Was bedeutet "Core- sowie Extensions"?
Dies bedeutet, dass OpenGL-Funktionen sowie OpenGL-Erweiterungen bereitgestellt werden.