Expand description
Pure-Rust Wavefront OBJ + MTL 3D mesh codec.
Implements oxideav_mesh3d::Mesh3DDecoder and
oxideav_mesh3d::Mesh3DEncoder for the polygonal subset of the
OBJ format published by Wavefront Technologies in the early 1990s
(Appendix B of the Advanced Visualizer manual). Companion MTL
material files are parsed/serialised by the same crate so a
decoded Scene3D carries its full
material set.
§Modules
obj— line-oriented parser and serialiser for the geometry format itself (v/vt/vn/f/l/p/o/g/s/mg/usemtl/mtllib).mtl— line-oriented parser and serialiser for the material library (newmtl/Ka/Kd/Ks/Ke/Ns/Ni/d/Tr/Tf/sharpness/illum/map_*and the Wavefront-PBR extensionPr/Pm/Pc/Ps/map_Pr/map_Pm).decoder—ObjDecodertype wired to theMesh3DDecodertrait.encoder—ObjEncodertype wired to theMesh3DEncodertrait.
§Standalone build
Drop the registry feature for a free-standing build:
oxideav-obj = { version = "0.0", default-features = false }This compiles out the register helper and the oxideav-core
dependency; the ObjDecoder and ObjEncoder types remain
usable directly through the standalone
Mesh3DDecoder /
Mesh3DEncoder traits.
Re-exports§
pub use decoder::ObjDecoder;pub use encoder::ObjEncoder;
Modules§
- decoder
Mesh3DDecoderadaptors for OBJ + standalone MTL inputs.- encoder
Mesh3DEncoderadaptors for OBJ + standalone MTL outputs.- mtl
- Wavefront MTL (material library) ASCII parser + serialiser.
- obj
- Wavefront OBJ ASCII parser + serialiser.
Functions§
- register
- Register OBJ + MTL decoders and encoders with a
Mesh3DRegistry.