发布于 2014-07-29 23:58:50 | 238 次阅读 | 评论: 0 | 来源: 网友投递
OGLplus OpenGL 的 C++ 封装库
OGLplus (oglplus) 是一个仅包含头文件的 C++ 语言库,用于实现一个瘦面向对象的 OpenGL 门面操作接口,提供了自动资源和对象管理的封装,让在 C++ 中使用 OpenGL 更加简单和安全。
OGLplus 0.49.0 发布,此版本现已提供下载,更新内容如下:
缓存数据规范
The BufferSize and BufferData classes used for specifying GPU buffer size and data were added.
The Buffer::Data, Buffer::SubData and some other functions were changed to used the new classes.
In case of Buffer::SubData an interface-breaking change was made -- the offset is now specified in bytes.
The Buffer::Resize function for resizing of a GPU buffer without specifying the data was added.
The Buffer::RawData function for specifying untyped buffer data was added.
Similar changes were also made to the DSABuffer class.
着色器源规范
The new GLSLString and GLSLStrings classes which serve as adapters for specifying GLSL shader source strings were added.
The constructors and some member functions of the GLSLSource class were updated.
The Shader::Source function and the constructors of ShaderProgram were updated to use the new classes.
添加了绑定 GPU 程序的新函数
The Program::Build function checks all shaders attached to a Program and compiles those which are not yet compiled, befor linking the program.
添加了 ARB_shading_language_include 扩展封装器
The NamedStringType enumeration and the NamedString class were added.
The Shader::CompileInclude and Program::BuildInclude functions were added which allow to compile shaders with #include directives.
更新了现有的示例,展示最新的特性
Bug 修复
Negative indices are now supported by the ObjMesh shape loader.
Several problems in the build-system were fixed.
Some bugs in the OGLplus examples were fixed.
As mentioned above the offset parameter of Buffer::SubData is now specified in bytes (by using the BufferSize class) instead of units of the uploaded data type.
OGLplus (oglplus) 是一个仅包含头文件的 C++ 语言库,用于实现一个瘦面向对象的 OpenGL 门面操作接口,提供了自动资源和对象管理的封装,让在 C++ 中使用 OpenGL 更加简单和安全。