mugltf 0.1.0

Minimal glTF 2.0 asset loader for Rust
Documentation

Overview

mugltf is a minimal implementation of glTF 2.0 asset model loader in Rust. It uses serde for parsing the glTF JSON.

Install

[dependencies]
mugltf = "0.1.0"

Features:

  • std - (default) enables std support.
  • serde - (default) enables serde parsing of glTF assets
  • gltf-name - enables the name field for all glTF nodes
  • gltf-extras - enables the extras field for all glTF nodes
  • gltf-extensions - enables the extensions field for all glTF nodes
  • file-loader - enables GltfResourceFileLoader for loading glTF resources from file system

Documentation

See Docs.rs: https://docs.rs/mugltf

Usage

// 1. Start from parsing a gltf / glb file
let asset = <mugltf::GltfAsset>::parse_gltf(include_str!("./test.gltf"));
let glb_asset = <mugltf::GltfAsset>::parse_glb(include_str!("./test.glb"));

// You can now read the glTF model and binry chunk (for glb file).
let gltf_model = glb_asset.gltf;
let binary_chunk = glb_asset.bin;

// 2. Init a loader to load resources (external/embedded buffers and images) async
let mut loader = mugltf::GltfResourceFileLoader::default();
loader.set_path("./");
glb_asset.load_resources(&loader).await?;

// Buffer and image resources are now populated
let buffers = glb_asset.buffers;
let images = glb_asset.images;

See tests for more example usages.