From 37b91cadd6676552b7676681465845e8b11c031e Mon Sep 17 00:00:00 2001 From: korenkonder Date: Thu, 11 Jul 2024 17:37:18 +0300 Subject: [PATCH] Restored `bool` for `light_clip_plane` --- src/CRE/render_manager.cpp | 4 ++-- src/KKdLib/light_param/light.cpp | 8 ++++---- src/KKdLib/light_param/light.hpp | 2 +- src/ReDIVA/graphics/light.cpp | 2 +- 4 files changed, 8 insertions(+), 8 deletions(-) diff --git a/src/CRE/render_manager.cpp b/src/CRE/render_manager.cpp index bdc64e5a..184651c7 100644 --- a/src/CRE/render_manager.cpp +++ b/src/CRE/render_manager.cpp @@ -588,7 +588,7 @@ namespace rndr { light_clip_plane clip_plane; set->lights[LIGHT_SPOT].get_clip_plane(clip_plane); uniform_value[U_REFLECT] = 2; - uniform_value[U_CLIP_PLANE] = clip_plane.data[1]; + uniform_value[U_CLIP_PLANE] = clip_plane.data[1] ? 1 : 0; gl_state_enable_depth_test(); gl_state_set_depth_func(GL_LEQUAL); @@ -604,7 +604,7 @@ namespace rndr { if (reflect_type == STAGE_DATA_REFLECT_REFLECT_MAP) { uniform_value[U_REFLECT] = reflect_tone_curve ? 1 : 0; - uniform_value[U_CLIP_PLANE] = clip_plane.data[0]; + uniform_value[U_CLIP_PLANE] = clip_plane.data[0] ? 1 : 0; rctx->disp_manager->draw(mdl::OBJ_TYPE_REFLECT_CHARA_OPAQUE); } gl_state_disable_depth_test(); diff --git a/src/KKdLib/light_param/light.cpp b/src/KKdLib/light_param/light.cpp index 13a87166..3e39ec00 100644 --- a/src/KKdLib/light_param/light.cpp +++ b/src/KKdLib/light_param/light.cpp @@ -252,10 +252,10 @@ static void light_param_light_read_inner(light_param_light* light, stream& s) { &clip_plane[0], &clip_plane[1], &clip_plane[2], &clip_plane[3]) != 4) goto End; - light->clip_plane.data[0] = (uint8_t)clip_plane[0]; - light->clip_plane.data[1] = (uint8_t)clip_plane[1]; - light->clip_plane.data[2] = (uint8_t)clip_plane[2]; - light->clip_plane.data[3] = (uint8_t)clip_plane[3]; + light->clip_plane.data[0] = !!clip_plane[0]; + light->clip_plane.data[1] = !!clip_plane[1]; + light->clip_plane.data[2] = !!clip_plane[2]; + light->clip_plane.data[3] = !!clip_plane[3]; light->has_clip_plane = true; } else if (!str_utils_compare_length(buf, sizeof(buf), "tonecurve", 9)) { diff --git a/src/KKdLib/light_param/light.hpp b/src/KKdLib/light_param/light.hpp index b8d05cc1..9f7c0f7c 100644 --- a/src/KKdLib/light_param/light.hpp +++ b/src/KKdLib/light_param/light.hpp @@ -39,7 +39,7 @@ struct light_attenuation { }; struct light_clip_plane { - uint8_t data[4]; + bool data[4]; }; struct light_tone_curve { diff --git a/src/ReDIVA/graphics/light.cpp b/src/ReDIVA/graphics/light.cpp index 3c140db2..a624f06a 100644 --- a/src/ReDIVA/graphics/light.cpp +++ b/src/ReDIVA/graphics/light.cpp @@ -1120,7 +1120,7 @@ void LightDw::ReflectiveSurfaceClipStageCallback(dw::Widget* data) { light_data* light = light_dw_get_light(); light_clip_plane clip_plane; light->get_clip_plane(clip_plane); - clip_plane.data[1] = button->value ? 0x01 : 0x00; + clip_plane.data[1] = button->value; light->set_clip_plane(clip_plane); } }