JsonContentLoader.cs 571 B

123456789101112131415161718
  1. using System.Text.Json;
  2. using Microsoft.Xna.Framework.Content;
  3. using MonoGame.Extended.Content;
  4. namespace MonoGame.Extended.Serialization.Json
  5. {
  6. public class JsonContentLoader : IContentLoader
  7. {
  8. public T Load<T>(ContentManager contentManager, string path)
  9. {
  10. using var stream = contentManager.OpenStream(path);
  11. var monoGameSerializerOptions = MonoGameJsonSerializerOptionsProvider.GetOptions(contentManager, path);
  12. return JsonSerializer.Deserialize<T>(stream, monoGameSerializerOptions);
  13. }
  14. }
  15. }