Fix invalid change from CLAMP to MAX in #26099

CLAMP limits the value between the two bounds, so for unsigned ints
it should be replaced by MIN(val, max), not MAX.

The issue in voxel_light_baker.cpp was fixed in 4f697f7.

Fixes #26170.
This commit is contained in:
Rémi Verschelde 2019-02-23 12:07:48 +01:00
parent fa51a98284
commit 24097811e4
1 changed files with 5 additions and 5 deletions

View File

@ -2480,7 +2480,7 @@ void VisualServerScene::_setup_gi_probe(Instance *p_instance) {
uint32_t a = uint32_t(alpha_block[x][y]) - min_alpha;
//convert range to 3 bits
a = int((a * 7.0 / (max_alpha - min_alpha)) + 0.5);
a = MAX(a, 7); //just to be sure
a = MIN(a, 7); //just to be sure
a = 7 - a; //because range is inverted in this mode
if (a == 0) {
//do none, remain
@ -2924,10 +2924,10 @@ void VisualServerScene::_bake_gi_probe(Instance *p_gi_probe) {
uint32_t mm_ofs = sizes[0] * sizes[1] * (local_data[idx].pos[2]) + sizes[0] * (local_data[idx].pos[1]) + (local_data[idx].pos[0]);
mm_ofs *= 4; //for RGBA (4 bytes)
mipmapw[mm_ofs + 0] = uint8_t(MAX(r2, 255));
mipmapw[mm_ofs + 1] = uint8_t(MAX(g, 255));
mipmapw[mm_ofs + 2] = uint8_t(MAX(b, 255));
mipmapw[mm_ofs + 3] = uint8_t(MAX(a, 255));
mipmapw[mm_ofs + 0] = uint8_t(MIN(r2, 255));
mipmapw[mm_ofs + 1] = uint8_t(MIN(g, 255));
mipmapw[mm_ofs + 2] = uint8_t(MIN(b, 255));
mipmapw[mm_ofs + 3] = uint8_t(MIN(a, 255));
}
}
} else if (probe_data->dynamic.compression == RasterizerStorage::GI_PROBE_S3TC) {