130 releases

0.31.3 Feb 12, 2024
0.31.2 Dec 22, 2023
0.31.1 Oct 29, 2023
0.30.9 Jun 16, 2023
0.0.2 Dec 30, 2014

#13 in Graphics APIs

Download history 37911/week @ 2024-01-12 38334/week @ 2024-01-19 38011/week @ 2024-01-26 34270/week @ 2024-02-02 43293/week @ 2024-02-09 45282/week @ 2024-02-16 41435/week @ 2024-02-23 41381/week @ 2024-03-01 42820/week @ 2024-03-08 41227/week @ 2024-03-15 46689/week @ 2024-03-22 47211/week @ 2024-03-29 39988/week @ 2024-04-05 42088/week @ 2024-04-12 47747/week @ 2024-04-19 34497/week @ 2024-04-26

172,010 downloads per month
Used in 620 crates (196 directly)

Apache-2.0

325KB
7K SLoC

glutin - OpenGL, UTilities, and INput

A low-level library for OpenGL context creation.

Docs.rs

[dependencies]
glutin = "0.31.3"

Documentation

Contact Us

Join us in any of these:

Matrix Libera.Chat

Usage Examples

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.

Try it!

git clone https://github.com/rust-windowing/glutin
cd glutin
cargo run --example window

Usage

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 follows winit's MSRV policy.

Platform-specific notes

Android

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

Dependencies

~0.2–15MB
~148K SLoC