OdinSerializer is an open-source serializer built for and used by Odin - Inspector & Serializer, also widely utilized in the Unity community for many popular assets. The serializer compares very well to many popular serialization libraries in terms of performance and garbage allocation, while providing a superior feature-set for use in Unity.
Inherit from one class, and you're ready to serialize anything.
// Inherit from SerializedScriptableObject to use Odin Serializer
// It's that simple!
public class MyScriptableObject : SerializedScriptableObject
{
public Dictionary<int, string> MyDictionary;
}
The serialization debugger shows you what's going on, and why.
Specially designed for use in Unity.
Odin Serializer | Unity JSON | Full Serializer | Binary Formatter | JSON.NET | Protobuf-net | |
---|---|---|---|---|---|---|
Open Source | ||||||
Cross Platform | ||||||
Out of the box Unity Support | ||||||
Supports Unity structs | ||||||
Binary Format | ||||||
Json Format | ||||||
Merge-friendly data in Unity objects | ||||||
Interfaces | ||||||
Properties | ||||||
Polymorphism | ||||||
Generics | ||||||
Dictionaries | ||||||
Circular References | ||||||
Delegates | ||||||
Multi-dimensional arrays | ||||||
Extendable | ||||||
Renaming Members | ||||||
Renaming Types | ||||||
IL Optimized | ||||||
Supports .NET interfaces | ||||||
Supports .NET callback attributes |
The performance graphs in this section are all profiled with OdinSerializer's binary format, which is the fastest-performing format used at runtime in builds.