sdks/unreal/src/SpacetimeDbSdk/Source/SpacetimeDbSdk/Public/BSATN/README.md
This directory ships the header‑only implementation of SpacetimeDB's BSATN serializer used by the Unreal client SDK. The code mirrors the server side library and enables serializing common Unreal Engine types to the BSATN wire format.
Core/ – Cross‑platform serialization library copied from
crates/bindings-cpp/include/spacetimedb/bsatn.MockCoreMinimal.h – Minimal stand‑ins for a handful of engine types when
compiling outside of Unreal.UEBSATNHelpers.h – Helper macros for registering UE types and containers.UESpacetimeDB.h – Umbrella header that exposes Serialize and Deserialize
functions and the UE_SPACETIMEDB_STRUCT macro.FEATURES.md – Summary of supported types.UNREAL_BSATN_ADDITIONS.md – Extra serialization helpers for the client.Include UESpacetimeDB.h in your project and call the helper functions:
TArray<uint8> Bytes = UE::SpacetimeDB::Serialize(MyStruct);
MyStruct Restored = UE::SpacetimeDB::Deserialize<MyStruct>(Bytes);
Custom structs opt in via UE_SPACETIMEDB_STRUCT. The library has no runtime
dependencies and consists solely of header files.