Search Issue Tracker
Third Party Issue
Votes
0
Found in
2019.4
2020.3
2020.3.12f1
2021.1
2021.2
2022.1
Issue ID
1347682
Regression
No
JsonSerializer.Deserialize<>() returns an empty object
Reproduction steps:
1. Open the attached project "ConvertJSON.zip"
2. Open the Scene "SampleScene"
3. Press Play
Expected result: "gt" is printed in the Console
Actual result: "null" is printed in the Console
Reproducible with: 2019.4.29f1, 2020.3.14f1, 2021.1.15f1, 2021.2.0b4, 2022.1.0a2
Can't test with: 2018.4.36f1 (errors in the Console)
Notes:
- User's json file can be deserialized in .NET Console app
Add comment
All about bugs
View bugs we have successfully reproduced, and vote for the bugs you want to see fixed most urgently.
Latest issues
- Typos in High Definition 3D sample tutorials
- “Handles.Repaint called outside an editor OnGUI" error is thrown in the Console when creating a new Tile Palette from the Tile Palette Overlay in Scene view
- Shader Graph window icon is blurry and low quality when the Shader Graph is created using the Universal 2D template
- “Export HDRP Sky to Image” command error message does not indicate that Game view must be visible
- Adaptive Performance Settings Framerate field doesn't display the "supported without VSync" warning, when the field is collapsed in Build Profiles
Resolution Note:
The code provided uses UnityEngine.JsonUtility. This component works on top of Unity Serialization which only supports serializing fields (not properties). See https://docs.unity3d.com/ScriptReference/JsonUtility.FromJson.html.
The structure in the code have only public properties, which are ignored by Unity Serialization. Changing them to public fields make it work as expected.