BloomEffectSerializer.cs 1010 B

12345678910111213141516171819202122232425262728293031323334
  1. using System.IO;
  2. namespace MeidoPhotoStudio.Plugin;
  3. public class BloomEffectSerializer : Serializer<BloomEffectManager>
  4. {
  5. private const short Version = 1;
  6. public override void Serialize(BloomEffectManager effect, BinaryWriter writer)
  7. {
  8. writer.Write(BloomEffectManager.Header);
  9. writer.WriteVersion(Version);
  10. writer.Write(effect.Active);
  11. writer.Write(effect.BloomValue);
  12. writer.Write(effect.BlurIterations);
  13. writer.Write(effect.BloomThresholdColour);
  14. writer.Write(effect.BloomHDR);
  15. }
  16. public override void Deserialize(BloomEffectManager effect, BinaryReader reader, SceneMetadata metadata)
  17. {
  18. _ = reader.ReadVersion();
  19. var active = reader.ReadBoolean();
  20. effect.BloomValue = reader.ReadSingle();
  21. effect.BlurIterations = reader.ReadInt32();
  22. effect.BloomThresholdColour = reader.ReadColour();
  23. effect.BloomHDR = reader.ReadBoolean();
  24. effect.SetEffectActive(active);
  25. }
  26. }