Are we game yet?

3D Rendering

Graphics APIs, wrappers for and backends to Vulkan and OpenGL, and more



Vulkan bindings for Rust


A software rendering crate that lets you write shaders with Rust


A high-performance, bindless graphics API

gfx-rs hardware abstraction layer

GLFW3 bindings and idiomatic wrapper for Rust.

Elegant and safe OpenGL wrapper. Glium is an intermediate layer between OpenGL and your application. You still need to manually handle the graphics pipeline, but without having to use OpenGL's old and error-prone API. Its objectives: - Be safe to use. Many aspects of OpenGL that can trigger a crash if misused are automatically handled by glium. - Provide an API that enforces good pratices such as RAII or stateless function calls. - Be compatible with all OpenGL versions that support shaders, providing unified API when things diverge. - Avoid all OpenGL errors beforehand. - Produce optimized OpenGL function calls, and allow the user to easily use modern OpenGL techniques.

GL on Whatever: a set of bindings to run GL (Open GL, OpenGL ES, and WebGL) anywhere, and avoid target-specific code.

Cross-platform OpenGL context provider.


Bare metal OpenGL 4.5+ wrapper

3D graphics engine for Rust.

Stateless and type-safe graphics framework

Cross-platform window context and rendering library.

Rendology is a Glium-based 3D rendering library

Higher-level graphics abstrations based on gfx-hal

An easy-to-use 2D/3D rendering engine in the spirit of QBasic.

Three.js inspired 3D engine in Rust

Rust ffi bindings and idiomatic wrapper for AMD Vulkan Memory Allocator (VMA)

Simplification of core Vulkan synchronization mechanisms such as pipeline barriers and events.

Safe wrapper for the Vulkan graphics API

Rusty WebGPU API wrapper


Do you know about a missing crate? Did you launch a new crate?

Please create a pull request or an issue on our GitHub!

Looking for a crate you can't find here? Try asking on the chat.