diff --git a/src/libprojectM/MilkdropPreset/MilkdropShader.cpp b/src/libprojectM/MilkdropPreset/MilkdropShader.cpp index 1dadec340..345ef69ff 100644 --- a/src/libprojectM/MilkdropPreset/MilkdropShader.cpp +++ b/src/libprojectM/MilkdropPreset/MilkdropShader.cpp @@ -186,14 +186,14 @@ void MilkdropShader::LoadVariables(const PresetState& presetState, const PerFram presetState.renderContext.fps, presetState.renderContext.frame, presetState.renderContext.progress}); - m_shader.SetUniformFloat4("_c3", {presetState.audioData.bass / 100, - presetState.audioData.mid / 100, - presetState.audioData.treb / 100, - presetState.audioData.vol / 100}); - m_shader.SetUniformFloat4("_c4", {presetState.audioData.bassAtt / 100, - presetState.audioData.midAtt / 100, - presetState.audioData.trebAtt / 100, - presetState.audioData.volAtt / 100}); + m_shader.SetUniformFloat4("_c3", {presetState.audioData.bass, + presetState.audioData.mid, + presetState.audioData.treb, + presetState.audioData.vol}); + m_shader.SetUniformFloat4("_c4", {presetState.audioData.bassAtt, + presetState.audioData.midAtt, + presetState.audioData.trebAtt, + presetState.audioData.volAtt}); m_shader.SetUniformFloat4("_c5", {blurMax[0] - blurMin[0], blurMin[0], blurMax[1] - blurMin[1], diff --git a/vendor/hlslparser/src/GLSLGenerator.cpp b/vendor/hlslparser/src/GLSLGenerator.cpp index 47a083886..c8afbd797 100644 --- a/vendor/hlslparser/src/GLSLGenerator.cpp +++ b/vendor/hlslparser/src/GLSLGenerator.cpp @@ -426,6 +426,9 @@ bool GLSLGenerator::Generate(HLSLTree* tree, Target target, Version version, con if (m_options.flags & Flag_AlternateNanPropagation) { /* Implement alternate functions that propagate NaNs like shader model 3 and DX9. */ + m_writer.WriteLine(0, "float %s(int i_x, int i_y) { float x=float(i_x); float y=float(i_y); if (x == 0.0 || y == 0.0) { return 0.0; } else { return (x * y); } }", m_altMultFunction); + m_writer.WriteLine(0, "float %s(int i_x, float y) { float x=float(i_x); if (x == 0.0 || y == 0.0) { return 0.0; } else { return (x * y); } }", m_altMultFunction); + m_writer.WriteLine(0, "float %s(float x, int i_y) { float y=float(i_y); if (x == 0.0 || y == 0.0) { return 0.0; } else { return (x * y); } }", m_altMultFunction); m_writer.WriteLine(0, "float %s(float x, float y) { if (x == 0.0 || y == 0.0) { return 0.0; } else { return (x * y); } }", m_altMultFunction); m_writer.WriteLine(0, "vec2 %s(vec2 x, vec2 y) { return vec2(%s(x.x, y.x), %s(x.y, y.y)); }", m_altMultFunction, m_altMultFunction, m_altMultFunction); m_writer.WriteLine(0, "vec3 %s(vec3 x, vec3 y) { return vec3(%s(x.x, y.x), %s(x.y, y.y), %s(x.z, y.z)); }", m_altMultFunction, m_altMultFunction, m_altMultFunction, m_altMultFunction);