CameraInfoSerializer.cs 745 B

12345678910111213141516171819202122232425262728
  1. using System.IO;
  2. namespace MeidoPhotoStudio.Plugin;
  3. public class CameraInfoSerializer : Serializer<CameraInfo>
  4. {
  5. private const short Version = 1;
  6. public override void Serialize(CameraInfo info, BinaryWriter writer)
  7. {
  8. writer.WriteVersion(Version);
  9. writer.Write(info.TargetPos);
  10. writer.Write(info.Angle);
  11. writer.Write(info.Distance);
  12. writer.Write(info.FOV);
  13. }
  14. public override void Deserialize(CameraInfo info, BinaryReader reader, SceneMetadata metadata)
  15. {
  16. _ = reader.ReadVersion();
  17. info.TargetPos = reader.ReadVector3();
  18. info.Angle = reader.ReadQuaternion();
  19. info.Distance = reader.ReadSingle();
  20. info.FOV = reader.ReadSingle();
  21. }
  22. }