Crate gl_matrix

Source
Expand description

A Rust implementation of glMatrix

gl_matrix provides utilities or all glMatrix functions in Rust.

§Quick Start

Getting started should be easy if you are already familiar with glMatrix and Rust. All functions have been re-named to be idiomatic Rust.

use gl_matrix::common::*;
use gl_matrix::{vec3, mat4};
 
let canvas_w = 800_f32; 
let canvas_h = 600_f32;
  
let mut world_matrix: Mat4 = [0.; 16];
let mut view_matrix: Mat4 = [0.; 16];
let mut proj_matrix: Mat4 = [0.; 16];
 
let eye = vec3::from_values(0., 0., -8.);
let center = vec3::from_values(0., 0., 0.); 
let up = vec3::from_values(0., 1., 0.);
 
mat4::identity(&mut world_matrix);
mat4::look_at(&mut view_matrix, &eye, &center, &up);
mat4::perspective(&mut proj_matrix, to_radian(45.), canvas_w / canvas_h, 0.1, Some(100.0));

Modules§

common
Common utilities
mat2
2x2 Matrix
mat3
3x3 Matrix
mat4
4x4 Matrix
mat2d
2x3 Matrix
quat
Quaternion
quat2
Dual Quaternion
vec2
2 Dimensional Vector
vec3
3 Dimensional Vector
vec4
4 Dimensional Vector