The com.io7m.smfj package provides a minimalist format for storing mesh data.


  • Strongly-typed generic non-interleaved storage format.
  • Carefully designed binary format that allows for mapping sections of files into memory for direct upload to the GPU. All data is strictly aligned for performance.
  • Rich integer types: Store named arrays of 1-4 component 8/16/32/64-bit signed and unsigned integer vectors.
  • Rich floating point types: Store named arrays of 1-4 component 16/32/64-bit floating-point vectors.
  • Text and binary encodings.
  • Blender plugin to export directly to the text format.
  • Event-based parsers for near zero-allocation parsing.
  • Extensible filter system for processing and transforming mesh data.
  • ISC license.
  • High-coverage automated test suite.