diff --git a/SeeSharp/Experiments/Benchmark.cs b/SeeSharp/Experiments/Benchmark.cs index 1e4eeba..d1465f0 100644 --- a/SeeSharp/Experiments/Benchmark.cs +++ b/SeeSharp/Experiments/Benchmark.cs @@ -73,6 +73,7 @@ float RunScene(SceneConfig sceneConfig, bool skipReference) { string refFilename = Path.Join(dir, "Reference.exr"); reference.Value.File.CopyTo(refFilename, true); + refImg = reference.Value.Image; try { @@ -101,8 +102,7 @@ float RunScene(SceneConfig sceneConfig, bool skipReference) method.Integrator.MaxDepth = sceneConfig.MaxDepth; method.Integrator.MinDepth = sceneConfig.MinDepth; - if (computeErrorMetrics && refImg != null) - scene.FrameBuffer.ReferenceImage = refImg; + scene.FrameBuffer.ReferenceImage = computeErrorMetrics ? refImg : null; scene.Raytracer.ResetStats(); ShadingStatCounter.Reset(); diff --git a/SeeSharp/Images/FrameBuffer.cs b/SeeSharp/Images/FrameBuffer.cs index 4ce7512..a3efbd1 100644 --- a/SeeSharp/Images/FrameBuffer.cs +++ b/SeeSharp/Images/FrameBuffer.cs @@ -420,8 +420,11 @@ public void WriteToFile(string fname = null) .Assembly.GetCustomAttribute() .InformationalVersion; - // Write the metadata as json - string json = JsonSerializer.Serialize(MetaData, options: new() { WriteIndented = true }); + string json = JsonSerializer.Serialize(MetaData, options: new() + { + WriteIndented = true, + NumberHandling = JsonNumberHandling.AllowNamedFloatingPointLiterals, + }); File.WriteAllText(basename + ".json", json); }