glDeleteProgram - видаляє об'єкт програми.
C-специфікація
void glDeleteProgram (GLuint program) ;
Параметри
program вказує об'єкт програми, який необхідно видалити.
Опис
Функція glDeleteProgram вивільняє пам'ять і ім'я (ідентифікатор) присвоєний програмному об'єкту, вказаному за допомогою значення параметру program. Дана команда відміняє усі дії команди glCreateProgram.
Якщо програмний об'єкт в даний момент використовується у якості частини поточного стану відмальовування, він буде позначений на видалення, але не буде видалений до поки він буде частиною поточного стану відмальовування будь-якого контексту. Якщо програмний об'єкт, який необхідно видалити має прикріплені шейдерні об'єкти, вони будуть автоматично від'єднаними але не видалиними, хіба-що вони вже помічені на видалення попереднім викликом функції glDeleteShader. Значення 0 для параметру program буде ігнороване.
Для визначення чи програмний об'єкт помічений на видалення, викликайте функцію glGetProgram з аргументами program і GL_DELETE_STATUS.
Нотатки
glDeleteProgram доступний у системах OpenGL версії 2.0 і вище.
Помилки
GL_INVALID_VALUE генерується якщо параметр program не містить значення згенероване OpenGL.
GL_INVALID_OPERATION генерується якщо glDeleteProgram викликається між відповідними викликами glBegin і glEnd.
Пов'язані параметри
glGet з аргументом GL_CURRENT_PROGRAM.
glGetProgram з аргументом program і GL_DELETE_STATUS.
glIsProgram
Перегляньте також
glCreateShader, glDetachShader
Оригінал
https://www.khronos.org/registry/OpenGL-Refpages/gl2.1/xhtml/glDeleteProgram.xml