Minimalist sequential mesh format
  • Java 98.2%
  • Python 1.5%
  • Haskell 0.2%
  • CSS 0.1%
Find a file
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Mark Raynsford 3a4eaaaadd
Some checks are pending
main-RHEL10-x86_64-jdk25 / Build (push) Waiting to run
main-RHEL10-x86_64-jdk26 / Build (push) Waiting to run
main-RHEL9-x86_64-jdk25 / Build (push) Waiting to run
main-RHEL9-x86_64-jdk26 / Build (push) Waiting to run
Update workflows.
2026-07-31 18:42:59 +01:00
.forgejo Update workflows. 2026-07-31 18:42:59 +01:00
com.io7m.smfj.blender Reformat sources. 2026-07-14 10:07:40 +01:00
com.io7m.smfj.cmdline Reformat sources. 2026-07-14 10:07:40 +01:00
com.io7m.smfj.core Reformat sources. 2026-07-14 10:07:40 +01:00
com.io7m.smfj.format.binary2 Reformat sources. 2026-07-14 10:07:40 +01:00
com.io7m.smfj.format.obj Reformat sources. 2026-07-14 10:07:40 +01:00
com.io7m.smfj.format.support Reformat sources. 2026-07-14 10:07:40 +01:00
com.io7m.smfj.format.text Reformat sources. 2026-07-14 10:07:40 +01:00
com.io7m.smfj.format.xml Reformat sources. 2026-07-14 10:07:40 +01:00
com.io7m.smfj.frontend Reformat sources. 2026-07-14 10:07:40 +01:00
com.io7m.smfj.parser.api Reformat sources. 2026-07-14 10:07:40 +01:00
com.io7m.smfj.probe.api Reformat sources. 2026-07-14 10:07:40 +01:00
com.io7m.smfj.processing.api Reformat sources. 2026-07-14 10:07:40 +01:00
com.io7m.smfj.processing.main Reformat sources. 2026-07-14 10:07:40 +01:00
com.io7m.smfj.serializer.api Reformat sources. 2026-07-14 10:07:40 +01:00
com.io7m.smfj.specification Reformat sources. 2026-07-14 10:07:40 +01:00
com.io7m.smfj.tests Reformat sources. 2026-07-14 10:07:40 +01:00
com.io7m.smfj.validation.api Reformat sources. 2026-07-14 10:07:40 +01:00
com.io7m.smfj.validation.main Reformat sources. 2026-07-14 10:07:40 +01:00
src/site/resources Update site metadata. 2025-08-09 15:06:07 +00:00
.gitignore Update .gitignore. 2024-05-07 16:01:47 +00:00
.gitmodules Move to new organization. 2024-05-01 21:29:53 +00:00
checkstyle-filter.xml Update all dependencies, and add a checkstyle filter 2022-01-08 20:22:45 +00:00
doc7m-books.json Update documentation generation, workflows, attach EPUB. 2026-07-14 10:05:42 +01:00
pom.xml Update junit 5.11.3 -> 6.1.2. 2026-07-14 10:08:47 +01:00
README-CHANGES.xml Use junit BOM. 2024-10-26 13:22:07 +00:00
README-LICENSE.txt Update LICENSE 2023-08-13 21:07:26 +00:00
README.in Migrate project. 2026-06-27 10:13:26 +01:00
README.md Migrate project. 2026-06-27 10:13:26 +01:00

smfj

Maven Central Maven Central (snapshot) Java Version

com.io7m.smfj

smfj

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

Features

  • 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.
  • High coverage test suite.
  • OSGi-ready
  • JPMS-ready
  • ISC license.

Specification

See the specification.