public override void StrongSerialize(Stream stream, Light value) { LightType type = value.type; Write(stream, (int)type); switch (type) { case LightType.Point: Write(stream, value.range); break; case LightType.Directional: Write(stream, value.cookieSize); Write(stream, value.shadowStrength); Write(stream, value.shadowBias); break; case LightType.Spot: Write(stream, value.spotAngle); Write(stream, value.range); break; } ColorSerializer.Write(stream, value.color); Write(stream, value.intensity); if (type != LightType.Area) { AssetReferenceSerializer.Write(stream, value.cookie); AssetReferenceSerializer.Write(stream, value.flare); Write(stream, value.cullingMask); Write(stream, (int)value.renderMode); } }
public override void StrongSerialize(Stream stream, Animation value) { Write(stream, value.playAutomatically); Write(stream, (int)value.wrapMode); var clipCount = value.GetClipCount(); Write(stream, clipCount); foreach (AnimationState anim in value) { AssetReferenceSerializer.Write(stream, anim.clip); } }