+ m_program = glCreateProgram();
+ if (m_program == 0)
+ {
+ Error("glCreateProgram failed");
+ m_valid = false;
+ return m_valid;
+ }
+ m_valid = true;
+ if (geometry_file != NULL && geometry_file[0] != '\0')
+ m_valid &= AttachShader(geometry_file, GL_GEOMETRY_SHADER);
+ if (vertex_file != NULL && vertex_file[0] != '\0')
+ m_valid &= AttachShader(vertex_file, GL_VERTEX_SHADER);
+ if (fragment_file != NULL && fragment_file[0] != '\0')
+ m_valid &= AttachShader(fragment_file, GL_FRAGMENT_SHADER);