diff --git a/src/DivaGL/DivaGL.vcxproj b/src/DivaGL/DivaGL.vcxproj index 0741f14..f25d01a 100644 --- a/src/DivaGL/DivaGL.vcxproj +++ b/src/DivaGL/DivaGL.vcxproj @@ -135,6 +135,7 @@ del "$(SolutionDir)bin\$(TargetName).lib" + @@ -205,6 +206,7 @@ del "$(SolutionDir)bin\$(TargetName).lib" + diff --git a/src/DivaGL/clear_color.cpp b/src/DivaGL/clear_color.cpp new file mode 100644 index 0000000..4c323f7 --- /dev/null +++ b/src/DivaGL/clear_color.cpp @@ -0,0 +1,14 @@ +/* + by korenkonder + GitHub/GitLab: korenkonder +*/ + +#include "clear_color.hpp" +#include "wrap.hpp" + +color4u8& clear_color = *(color4u8*)0x0000000140EC57C8; + +void clear_color_set_gl() { + vec4 color = clear_color; + glClearColorDLL(color.x, color.y, color.z, color.w); +} diff --git a/src/DivaGL/clear_color.hpp b/src/DivaGL/clear_color.hpp new file mode 100644 index 0000000..8fc4059 --- /dev/null +++ b/src/DivaGL/clear_color.hpp @@ -0,0 +1,13 @@ +/* + by korenkonder + GitHub/GitLab: korenkonder +*/ + +#pragma once + +#include "../KKdLib/default.hpp" +#include "color.hpp" + +extern color4u8& clear_color; + +extern void clear_color_set_gl(); diff --git a/src/DivaGL/render_manager.cpp b/src/DivaGL/render_manager.cpp index ce424c7..a47fd17 100644 --- a/src/DivaGL/render_manager.cpp +++ b/src/DivaGL/render_manager.cpp @@ -10,6 +10,7 @@ #include "light_param/light.hpp" #include "mdl/disp_manager.hpp" #include "rob/rob.hpp" +#include "clear_color.hpp" #include "effect.hpp" #include "gl_state.hpp" #include "light_param.hpp" @@ -665,8 +666,6 @@ namespace rndr { } void RenderManager::pass_clear() { - static void(FASTCALL * clear_color_set_gl)() = (void(FASTCALL*)())0x00000001405022A0; - gl_state_begin_event("pass_clear"); if (clear) { rctx->screen_buffer.Bind();