Files
projectm/src/libprojectM/Renderer/ShaderEngine.cpp
Kai Blaschke e73b0f3092 Working on getting stuff being rendered again, focus on default waveform.
Fixed many typos, errors and crashes on the way.
2023-09-11 10:19:47 +02:00

41 lines
1.0 KiB
C++

#include "ShaderEngine.hpp"
#include "StaticGlShaders.hpp"
#include "Texture.hpp"
#include <glm/gtc/type_ptr.hpp>
ShaderEngine::ShaderEngine()
: presetCompShaderLoaded(false)
, presetWarpShaderLoaded(false)
{
std::shared_ptr<StaticGlShaders> static_gl_shaders = StaticGlShaders::Get();
m_untexturedDraw.CompileProgram(static_gl_shaders->GetV2fC4fVertexShader(),
static_gl_shaders->GetV2fC4fFragmentShader());
m_texturedDraw.CompileProgram(static_gl_shaders->GetV2fC4fT2fVertexShader(),
static_gl_shaders->GetV2fC4fT2fFragmentShader());
}
ShaderEngine::~ShaderEngine()
{
disablePresetShaders();
}
// deactivate preset shaders
void ShaderEngine::disablePresetShaders()
{
if (presetCompShaderLoaded)
glDeleteProgram(programID_presetComp);
if (presetWarpShaderLoaded)
glDeleteProgram(programID_presetWarp);
presetCompShaderLoaded = false;
presetWarpShaderLoaded = false;
}
void ShaderEngine::reset()
{
disablePresetShaders();
}