glbinding is a generated, cross-platform C++ binding for OpenGL which is solely based on the new xml-based OpenGL API specification and is developed by members of the computer graphics systems group. It is a fully fledged OpenGL API binding compatible with current code based on other C bindings, e.g., GLEW.
glbinding leverages modern C++11 features like enum classes, lambdas, and variadic templates, instead of relying on macros (all OpenGL symbols are real functions and variables). It provides type-safe parameters, per feature API header, lazy function resolution, multi-context and multi-thread support, global and local function callbacks, logging, meta information about the generated OpenGL binding and the OpenGL runtime, as well as multiple tools and examples for quick-starting your projects.
The most important updates comprise:
- updated gl.xml to latest revision
- reduce memory footprint for compilation
- drastically decrease compile time
- support extension queries for OpenGL 2.1 or less
- add per function callbacks
- add basic logging functions
- add context check tool (yields for all possible context version requests the resulting context)
- add query tool (retrieves all opengl states and compares them to the standard)
- add NV_command_list support
- provide continuous build status information for major platforms
- add logos and nsis package graphics
- various fixes for cross-platform compatibility
glbinding @ github