Skip to content
:shipit: Wavefront obj parser for Rust
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
benches
examples
src
tests
.gitignore
.travis.yml
COPYRIGHT
Cargo.toml
LICENSE-APACHE
LICENSE-MIT
README.md
appveyor.yml

README.md

obj-rs version

Wavefront .obj parser for Rust. It handles both .obj and .mtl formats. See Documentation for the further details.

[dependencies]
obj-rs = "0.5"
use std::fs::File;
use std::io::BufReader;
use obj::*;

let input = BufReader::new(File::open("tests/fixtures/dome.obj"))?;
let mobel: Obj = load_obj(input)?;

// Do whatever you want
model.vertices;
model.indices;

Rendered image of cute Rilakkuma


Glium support

obj-rs supports glium out of the box.

[dependencies]
glium = "0.14"
obj-rs = { version = "0.5", features = ["glium-support"] }
use std::fs::File;
use std::io::BufReader;
use obj::*;

let input = BufReader::new(try!(File::open("rilakkuma.obj")));
let obj: Obj = try!(load_obj(input));

let vb = try!(obj.vertex_buffer(&display));
let ib = try!(obj.index_buffer(&display));

Please see the working sample for the further details. Use can execute it with the command below.

cargo run --example glium --features glium-support

CI Status

Linux/macOS Build Windows Build
Travis Build Status AppVeyor Build Status


obj-rs is primarily distributed under the terms of both the Apache License (Version 2.0) and the MIT license. See COPYRIGHT for details.

You can’t perform that action at this time.