OGLplusOpenGL的C++封裝庫
OGLplus (oglplus) 是一個僅包含頭文件的 C++ 語言庫,用于實(shí)現(xiàn)一個瘦面向?qū)ο蟮?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;
}評論
圖片
表情
