public override bool Serialize(Archive archive, ISerializableObjectReferenceCollector collector, ref object field, object lastFieldState) { QuantizedVector2Field value = (QuantizedVector2Field)field; if (archive.isLoading) { IntMath.Vector2i q = new IntMath.Vector2i( archive.ReadSignedBits(value.FX.NUM_BITS), archive.ReadSignedBits(value.FY.NUM_BITS)); value.quantizedValue = q; } else { IntMath.Vector2i q = value.quantizedValue; archive.WriteSignedBits(q.x, value.FX.NUM_BITS); archive.WriteSignedBits(q.y, value.FY.NUM_BITS); } field = value; return archive.isLoading; }
public QuantizedVector2Field(QuantizedVector2Field q) { _value = q._value; FX = q.FX; FY = q.FY; }