OpenGL的C++封装库 OGLplus

Boost
C/C++ 查看源码»
Linux
2011-12-13
红薯

OGLplus (oglplus) 是一个仅包含头文件的 C++ 语言库,用于实现一个瘦面向对象的 OpenGL 门面操作接口,提供了自动资源和对象管理的封装,让在 C++ 中使用 OpenGL 更加简单和安全。

示例代码:

#include <oalplus/al.hpp>
#include <oalplus/all.hpp>
#include <oalplus/alut.hpp>

#include <chrono>
#include <thread>

int main(int argc, char** argv)
{
    // open the default device
    oalplus::Device device;
    // create a context using the device and make it current
    oalplus::CurrentContext context(device);
    // create an instance of ALUT
    oalplus::ALUtilityToolkit alut(false, argc, argv);
    // create a listener and set its position, velocity and orientation
    oalplus::Listener listener;
    listener.Position(0.0f, 0.0f, 0.0f);
    listener.Velocity(0.0f, 0.0f, 0.0f);
    listener.Orientation(0.0f, 0.0f,-1.0f, 0.0f, 1.0f, 0.0f);
    // create a Hello World sound and store it into a buffer
    oalplus::Buffer buffer = alut.CreateBufferHelloWorld();
    // create a source from the data in buffer and set its position
    oalplus::Source source;
    source.Buffer(buffer);
    source.Position(0.0f, 0.0f,-1.0f);
    // let the source play the sound
    source.Play();
    // wait for a while
    std::chrono::seconds duration(2);
    std::this_thread::sleep_for(duration);
    //
    return 0;
}
的码云指数为
超过 的项目
加载中

评论(1)

zhangli123
zhangli123
编辑分不清openGL和openAL 介绍是ogl,示例是oal OGLplus

OGLplus 0.65.0 发布,OpenGL 的 C++ 封装库

OGLplus 0.65.0 发布,此版本支持 GLX 和 EGL 示例中的多个示例,改进``Context`` 和 ``ClientContext``,还有 bug 修复,构建系统更新,快速入门文档更新。 更新内容 ------- - The GLX an...

2015/08/11 07:33

OGLplus 0.64.0 发布,OpenGL 的 C++ 封装库

OGLplus 0.64.0 发布,此版本包括新的 GPU 程序过载构建函数,允许错误处理延迟,更新了文档和示例。 改进 The DeferredHandler and the Outcome<T> classes, which allow to defer and/or ...

2015/08/06 14:30

OGLplus 0.63.0 发布,OpenGL 的 C++ 封装库

OGLplus 0.63.0 发布,此版本主要是一些 bug 修复和编译器警告: - 添加了 ``ShaderStorageBlock`` 类和相关的函数 - 修复了 ``Cloud`` 和 ``BrushedMetal`` 图像生成器的 bug - 优化一些编译...

2015/06/27 08:06

OGLplus 0.62.0 发布,OpenGL 的 C++ 封装库

OGLplus 0.62.0 发布,更新内容如下: The SizeType and BigSizeType classes were updated and arithmetic operators were added. A missing-identifier bug was fixed in images::Image. ...

2015/06/12 07:25

OGLplus 0.61.0 发布,OpenGL 的 C++ 封装库

OGLplus 0.61.0 发布,此版本更新了 GL 版本检测,还有一些构建系统的改进;错误代码枚举和 OALplus 异常更新;GL ARB_clip_control 封装器;Quickbook 文档更新。 此版本现已提供下载:ogl...

2015/05/08 10:41

OGLplus 0.60.0 发布,OpenGL 的 C++ 封装库

OGLplus 0.60.0 发布,此版本主要是小的改进,bug 修复和文档更新。 更新内容如下: 更新了 Boolean 封装器,添加了 operator ~ Object 封装器添加了 HasInstance 函数 更新原生 GL context...

2015/04/09 10:37

OGLplus 0.59.0 发布,OpenGL 的 C++ 封装库

OGLplus 0.59.0 发布,此版本是个 bug 修复版本: A bug in move construction and move assignment in the Object wrappers were fixed. The Boolean wrapper for GLint, ALint and EGLBool...

2015/02/05 14:59

OGLplus 0.58.1 发布,OpenGL 的 C++ 封装库

昨天刚刚发布了 OGLplus 0.58.0 版本,今天就发布了 OGLplus 0.58.1 版本,官方并未提供此版本的发行说明,让人难以捉摸,但是大体改进可以参考 OGLplus 0.58.0 版本: - Noexcept specifier...

2015/02/01 07:56

OGLplus 0.58.0 发布,OpenGL 的 C++ 封装库

OGLplus 0.58.0 发布,此版本修复了一些 bug 和大部分 MSVC 方面的警告;对 OALplus Listener 和 Device wrappers 进行了一些小的改进;重构了 GL/AL 名字和对象封装器类。此外还更新了 MSCV...

2015/01/31 08:27

OGLplus 0.56.0 发布,OpenGL 的 C++ 封装库

OGLplus 0.56.0 发布,此版本更新了类 ``ClientContext``;添加了大量的新 getter/setter 函数到 ``Context``;更新 GLM 的互操作性;更新 Quickbook 文档和构建系统。 改进记录 ======= - ...

2015/01/01 07:30

没有更多内容

加载失败,请刷新页面

暂无问答

暂无博客

返回顶部
顶部