mirror of
https://github.com/luanti-org/luanti.git
synced 2025-07-02 16:38:41 +00:00
Added configurable ambient_occlusion_gamma. Default is 2.2 (same as previous hardcoded values).
This commit is contained in:
parent
57f2fa57cd
commit
e19dab2622
3 changed files with 15 additions and 5 deletions
|
@ -159,6 +159,7 @@ void set_default_settings(Settings *settings)
|
|||
settings->setDefault("water_wave_speed", "5.0");
|
||||
settings->setDefault("enable_waving_leaves", "false");
|
||||
settings->setDefault("enable_waving_plants", "false");
|
||||
settings->setDefault("ambient_occlusion_gamma", "2.2");
|
||||
settings->setDefault("enable_shaders", "true");
|
||||
settings->setDefault("repeat_rightclick_time", "0.25");
|
||||
settings->setDefault("enable_particles", "true");
|
||||
|
@ -346,4 +347,3 @@ void override_default_settings(Settings *settings, Settings *from)
|
|||
settings->setDefault(name, from->get(name));
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -288,9 +288,15 @@ static u16 getSmoothLightCombined(v3s16 p, MeshMakeData *data)
|
|||
|
||||
if (ambient_occlusion > 4)
|
||||
{
|
||||
//table of precalculated gamma space multiply factors
|
||||
//light^2.2 * factor (0.75, 0.5, 0.25, 0.0), so table holds factor ^ (1 / 2.2)
|
||||
static const float light_amount[4] = { 0.877424315, 0.729740053, 0.532520545, 0.0 };
|
||||
static const float ao_gamma = rangelim(
|
||||
g_settings->getFloat("ambient_occlusion_gamma"), 0.25, 4.0);
|
||||
|
||||
// Table of gamma space multiply factors.
|
||||
static const float light_amount[3] = {
|
||||
powf(0.75, 1.0 / ao_gamma),
|
||||
powf(0.5, 1.0 / ao_gamma),
|
||||
powf(0.25, 1.0 / ao_gamma)
|
||||
};
|
||||
|
||||
//calculate table index for gamma space multiplier
|
||||
ambient_occlusion -= 5;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue