glutin - OpenGL, UTilities and INput
A low-level library for OpenGL context creation, written in pure Rust.
[dependencies] glutin = "0.22.0-alpha4"
Join us in any of these:
Warning: these are examples for master. For the latest released version, 0.21, view here.
git clone https://github.com/rust-windowing/glutin cd glutin cargo run --example window
Glutin 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 is only officially supported on the latest stable version of the Rust compiler.
To compile the examples for android, you have to use the
cargo apk utility.
android-rs-glue repository for instructions.
Emscripten with asmjs
In order to use glutin with emscripten, start by compiling your code with
Then create an HTML document that contains this:
Note: adjust the
src element of the script to point to the .js file that was produced by the compilation.
Module object is the link between emscripten and the HTML page.
See also this documentation.
The plan is that glutin tries to dynamically link-to and use wayland if possible. If it doesn't work, it will try xlib instead. This is work-in-progress.
Due to an issue with how mesa and Wayland play together, all shared contexts must use the same events pool as each other.
Help! I'm receiving
- See: https://github.com/rust-windowing/glutin/issues/952#issuecomment-467228004
- If you are on Windows w/ an AMD gpu and are requesting a non-srgb non-floating point surface, see: https://github.com/rust-windowing/glutin/issues/1219