Add all uniform variables. Add find all uniform variables

This commit is contained in:
2026-01-06 10:03:13 +01:00
parent 03b3520523
commit bb8b38a24f

View File

@@ -4,6 +4,18 @@ static float g_timer = 0.0f;
static OSDUpdateFn g_onUpdate;
static OSDEndFn g_onEnd;
// Reshade shader uniform variables
reshade::api::effect_uniform_variable u_td_show = {};
reshade::api::effect_uniform_variable u_td_enabled = {};
reshade::api::effect_uniform_variable u_td_world = {};
reshade::api::effect_uniform_variable u_td_AI = {};
reshade::api::effect_uniform_variable u_GodMode_show = {};
reshade::api::effect_uniform_variable u_GodMode_enabled = {};
reshade::api::effect_uniform_variable u_Invulnerability_show = {};
reshade::api::effect_uniform_variable u_Invulnerability_enabled = {};
reshade::api::effect_uniform_variable u_Stealth_show = {};
reshade::api::effect_uniform_variable u_Stealth_enabled = {};
void ShowOSD(float duration, OSDUpdateFn onUpdate, OSDEndFn onEnd) {
g_timer = duration;
g_onUpdate = std::move(onUpdate);
@@ -25,9 +37,21 @@ void UpdateOSD(reshade::api::effect_runtime* runtime, float deltaTime) {
}
}
void FindAllUniformVariables(reshade::api::effect_runtime* runtime, const char* effect_name) {
u_td_show = runtime->find_uniform_variable(OSD_SHADER_NAME, "OSD_ShowTD");
u_td_enabled = runtime->find_uniform_variable(OSD_SHADER_NAME, "TD_Enabled");
u_td_world = runtime->find_uniform_variable(OSD_SHADER_NAME, "TD_World");
u_td_AI = runtime->find_uniform_variable(OSD_SHADER_NAME, "TD_AI");
u_GodMode_show = runtime->find_uniform_variable(OSD_SHADER_NAME, "OSD_ShowGodMode");
u_GodMode_enabled = runtime->find_uniform_variable(OSD_SHADER_NAME, "GodMode_Enabled");
u_Invulnerability_show = runtime->find_uniform_variable(OSD_SHADER_NAME, "OSD_ShowInvuln");
u_Invulnerability_enabled = runtime->find_uniform_variable(OSD_SHADER_NAME, "Invulnerability_Enabled");
u_Stealth_show = runtime->find_uniform_variable(OSD_SHADER_NAME, "OSD_ShowStealth");
u_Stealth_enabled = runtime->find_uniform_variable(OSD_SHADER_NAME, "Stealth_Enabled");
}
void ResetAllUniformVariables(reshade::api::effect_runtime* runtime, const char* effect_name) {
runtime->enumerate_uniform_variables(effect_name, [runtime](reshade::api::effect_runtime* rt, reshade::api::effect_uniform_variable OSDvar) {
runtime->reset_uniform_value(OSDvar);
});
}