xbuf is an exchange format usable to store scene, models, animations in file or to edit scene over network. It takes inspiration from :
- OpenGEX : as data to managed, and doc fragment I copied
- glTF : some discussions and some goals
- blender api : how blender manages data
- Entity-Component-System (ECS), RDF : as way to extends and to link data
xbuf is a binary format using Protocol Buffers (aka protobuf) to generate source code for java, C++, python,... to read and write it. Then it's more developer friendly than json, oddl, xml, or any text based dialect, without loosing flexibility via extension.
The project would like to be an Community Format shared by several engines, tools. It's Open to any contributions (code, discussion, issues, tools, ...).
License : Public domain (CC0-1.0)
-
create importer/exporter for modeler, game engine, tool (optimizer, asset pipes...)
-
create network exchange format between connected tool (eg : modeler <-> game engine with realtime rendering)
You can download files from my repo
- xbuf-x.y.z-proto.zip : archive with .proto files
- xbuf-x.y.z-cpp.zip : archive with generated C++ source
- xbuf-x.y.z-python.zip : archive with the xbuf modules (generated python)
- xbuf-x.y.z.jar : the java archive with generated .class
- discussions about xbuf in communities:
- discussions about open format for 3D: