From 30225a84c069c835f3c9f691dad54e730afe7da0 Mon Sep 17 00:00:00 2001 From: "C. J. Howard" Date: Fri, 7 May 2021 23:17:45 +0800 Subject: [PATCH] Fix error in lux_to_vmag function --- src/astro/illuminance.cpp | 2 +- src/renderer/passes/sky-pass.cpp | 2 ++ 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/src/astro/illuminance.cpp b/src/astro/illuminance.cpp index 3d39452..ce2d44a 100644 --- a/src/astro/illuminance.cpp +++ b/src/astro/illuminance.cpp @@ -30,7 +30,7 @@ double vmag_to_lux(double mv) double lux_to_vmag(double ev) { - return -14.18 - 2.5 * std::log(ev); + return -14.18 - 2.5 * std::log10(ev); } } // namespace astro diff --git a/src/renderer/passes/sky-pass.cpp b/src/renderer/passes/sky-pass.cpp index 2e0038c..42820a7 100644 --- a/src/renderer/passes/sky-pass.cpp +++ b/src/renderer/passes/sky-pass.cpp @@ -126,6 +126,8 @@ sky_pass::sky_pass(gl::rasterizer* rasterizer, const gl::framebuffer* framebuffe // Convert apparent magnitude to lux double vmag_lux = astro::vmag_to_lux(vmag); + std::cout << "mag: " << vmag << "; lux: " << vmag_lux << "remag: " << (astro::lux_to_vmag(vmag_lux)) << std::endl; + // Normalized color luminance and scale by apparent magnitude double3 scaled_color = color_acescg * ((1.0 / color_luminance) * vmag_lux);