diff options
author | Elias Fleckenstein <eliasfleckenstein@web.de> | 2020-11-04 16:19:54 +0100 |
---|---|---|
committer | Elias Fleckenstein <eliasfleckenstein@web.de> | 2020-11-04 16:19:54 +0100 |
commit | ad148587dcf5244c2d2011dba339786c765c54c4 (patch) | |
tree | bdd914121cd326da2ed26679838878e3edffc841 /src/light.cpp | |
parent | 1145b05ea0bda87dc0827821385810eced08f774 (diff) | |
download | dragonfireclient-ad148587dcf5244c2d2011dba339786c765c54c4.tar.xz |
Make Lint Happy
Diffstat (limited to 'src/light.cpp')
-rw-r--r-- | src/light.cpp | 30 |
1 files changed, 15 insertions, 15 deletions
diff --git a/src/light.cpp b/src/light.cpp index 8196fedff..af8666e5d 100644 --- a/src/light.cpp +++ b/src/light.cpp @@ -29,16 +29,15 @@ static u8 light_LUT[LIGHT_SUN + 1]; // The const ref to light_LUT is what is actually used in the code const u8 *light_decode_table = light_LUT; - -struct LightingParams { - float a, b, c; // Lighting curve polynomial coefficients +struct LightingParams +{ + float a, b, c; // Lighting curve polynomial coefficients float boost, center, sigma; // Lighting curve parametric boost - float gamma; // Lighting curve gamma correction + float gamma; // Lighting curve gamma correction }; static LightingParams params; - float decode_light_f(float x) { if (x >= 1.0f) // x is often 1.0f @@ -46,7 +45,7 @@ float decode_light_f(float x) x = std::fmax(x, 0.0f); float brightness = ((params.a * x + params.b) * x + params.c) * x; brightness += params.boost * - std::exp(-0.5f * sqr((x - params.center) / params.sigma)); + std::exp(-0.5f * sqr((x - params.center) / params.sigma)); if (brightness <= 0.0f) // May happen if parameters are extreme return 0.0f; if (brightness >= 1.0f) @@ -54,25 +53,26 @@ float decode_light_f(float x) return powf(brightness, 1.0f / params.gamma); } - // Initialize or update the light value tables using the specified gamma void set_light_table(float gamma) { -// Lighting curve bounding gradients + // Lighting curve bounding gradients const float alpha = rangelim(g_settings->getFloat("lighting_alpha"), 0.0f, 3.0f); - const float beta = rangelim(g_settings->getFloat("lighting_beta"), 0.0f, 3.0f); -// Lighting curve polynomial coefficients + const float beta = rangelim(g_settings->getFloat("lighting_beta"), 0.0f, 3.0f); + // Lighting curve polynomial coefficients params.a = alpha + beta - 2.0f; params.b = 3.0f - 2.0f * alpha - beta; params.c = alpha; -// Lighting curve parametric boost + // Lighting curve parametric boost params.boost = rangelim(g_settings->getFloat("lighting_boost"), 0.0f, 0.4f); - params.center = rangelim(g_settings->getFloat("lighting_boost_center"), 0.0f, 1.0f); - params.sigma = rangelim(g_settings->getFloat("lighting_boost_spread"), 0.0f, 0.4f); -// Lighting curve gamma correction + params.center = rangelim( + g_settings->getFloat("lighting_boost_center"), 0.0f, 1.0f); + params.sigma = rangelim( + g_settings->getFloat("lighting_boost_spread"), 0.0f, 0.4f); + // Lighting curve gamma correction params.gamma = rangelim(gamma, 0.33f, 3.0f); -// Boundary values should be fixed + // Boundary values should be fixed light_LUT[0] = 0; light_LUT[LIGHT_SUN] = 255; |