6 releases

0.1.9 Aug 18, 2024
0.1.8 Apr 1, 2024
0.1.7 Dec 24, 2023
0.1.6 Jun 19, 2023
0.1.0 Feb 25, 2023

#448 in Game dev

22 downloads per month
Used in bevy_b3d

MIT/Apache

17KB
472 lines

B3D

crates.io docs.rs

The Blitz3d game engine uses the .b3d extension, which is provided by this crate.

Usage

let bytes = unimplemented!();

let b3d = b3d::B3D::read(bytes).unwrap();

let vertices = b3d.node.mesh.vertices.vertices;
let positions: Vec<_> = vertices.iter().map(|v| v.position).collect();
let normals: Vec<_> = vertices.iter().map(|v| v.normal).collect();

println!("Postions: {:#?}", positions);
println!("Normals: {:#?}", normals);

Task list

  • Write documentation
  • Switch to binrw
  • Implement bones and weights
  • Add examples

Similar Projects

Dependencies

~0.4–0.9MB
~20K SLoC