Soso.Serialization

A fast and powerful binary serialization library with a Unity package

✨ Features

  • Byte writer/readers
  • Custom serializers

🔨 Usage

Implementing a serializer:

public class Vector2Serializer : ISerializer<Vector2>
{
    public Vector2 Deserialize(ref ByteReader reader, SerializationConfig config)
    {
        Vector2 value = new Vector2();
        reader.Read(out value.x);
        reader.Read(out value.y);
        return value;
    }
    public void Serialize(ref ByteWriter writer, Vector2 value, SerializationConfig config)
    {
        writer.Write(value.x);
        writer.Write(value.y);
    }
}

Using the serializer:

SosoSerializer.Config.AddSerializer(new Vector2Serializer());
Vector2 value = new Vector2(1, 2);
byte[] asBytes = SosoSerializer.Serialize(value);
Vector2 fromBytes = SosoSerializer.Deserialize<Vector2>(asBytes);