void opengl::ShaderProgram::addShaderCode(opengl::ShaderStage stage, const SCP_string& name, const SCP_vector<SCP_string>& codeParts) { auto shader_obj = compile_shader_object(codeParts, get_gl_shader_stage(stage)); opengl_set_object_label(GL_SHADER, shader_obj, name); _compiled_shaders.push_back(shader_obj); glAttachShader(_program_id, shader_obj); }
GL::ShaderObject::ShaderObject(const string& shader, const string& material, GLenum shader_type) : shadername(shader) { shader_handle = compile_shader_object(shader, material, shader_type); }