A low-level library for OpenGL context creation.
Join us in any of these:
Warning: These are examples for master. You can find examples for
the latest released version here.
The examples use gl_generator to
generate OpenGL bindings.
git clone https://github.com/rust-windowing/glutin
cd glutin
cargo run --example windowGlutin is an OpenGL context creation library, and doesn't directly provide OpenGL bindings for you.
For examples, please look here.
Note that glutin aims at being a low-level brick in your rendering infrastructure. You are encouraged to write another layer of abstraction between glutin and your application.
Glutin follows winit's MSRV policy.
The benchmarks live in glutin/benches and are written with
divan. They are run on every pull request with
CodSpeed.
cargo bench -p glutinThe EGL benchmarks are headless: they create the display from an EGLDevice, so
no window system is involved, but a working EGL implementation is required, like
Mesa with libegl1 and libgl1-mesa-dri installed.
Be sure to handle Android's lifecycle correctly when using a winit window
by only creating a GL surface after winit raises Event::Resumed, and
destroy it again upon receiving Event::Suspended. See this in action in the
android.rs example.
To compile and run the Android example on your device,
install cargo-apk
and start the app using:
$ cargo apk r -p glutin_examples --example android