| Crates.io | glm |
| lib.rs | glm |
| version | 0.3.0 |
| created_at | 2015-02-26 04:29:05.627723+00 |
| updated_at | 2025-08-17 12:03:13.420618+00 |
| description | GLSL mathematics for Rust. |
| homepage | |
| repository | https://github.com/dche/glm-rs/ |
| max_upload_size | |
| id | 1471 |
| size | 219,250 |
Another Rust mathematics library for graphics applications.
Inspired by the great GLM library for C++, glm-rs
implements the data types, operators and built-in functions defined in GLSL
specification to help graphics programmers who are familiar with GLSL, so they
do not need to learn more than one math API.
Because of the not so small syntax/semantics difference between Rust and GLSL, some parts of GLSL are missing or changed, some functions are added to complete the functionalities. See the glm-rs documentation for full list of differences.
The project is in beta status until the major version reaches to 1.
This version is a quick fix to let the crate work with new versions of Rust, with following PRs & issues resolved.
quickcheck is a dev-dependency now (#25).unsafe (#27).vec3(..), mat4x3(...)) are const (#31).GenNum dropped Rand trait, which was removed in new versions of rand crate.
Creating scalar and vector structs randomly with default distribution and range has few meanings in practice. So following statement does not compile anymore,
let _ = Vec3::rand();
no_std support.The MIT License (MIT)