Если program содержит шейдерные объекты исключительно типа GL_VERTEX_ SHADER_ARB, для обработки фрагментов будет использоваться стандартная функциональность. И наоборот, если program содержит шейдерные объекты исключительно типа GL_FRAGMENT_SHADER_ARB, стандартная функциональность будет использоваться для обработки вершин. Если program равно 0, программируемые процессоры не будут принимать участия в обработке вершин и фрагментов.
Примечания Изменения программного объекта в одном контексте рендеринга не всегда влияют на другой контекст, пока для последнего небудет вызвана функция gl UseProgramObjectARB.
Ошибки
GL_INVALID_VALUE возникает, если program не равно 0 и не является дескриптором объекта OpenGL.
GL_I NVAL I D_0PERATI0N возникает в следующих случаях:
□ program не является объектом типа GL_PROGRAM_OBJECT_ARB;
□ program нельзя установить в текущее состояние;
□ функция glUseProgramObjectARB выполняется между соответствующими вызовами gl Begin и gl End.
Соответствующие GET-функции
glGetHandl eARB с аргументом program. glGetAttachedObjectsARB с аргументом program. glGetActiveAttribARB с аргументом program.
Приложение Б. Справочник функций API
Смотри также
glAttachObjectARB, gl Compi 1 eShaderARB, g 1 DetachObjectARB, glLinkProgramARB, glValidateProgramARB
gIValidateProgramARB Название
gl Val i dateProgramARB - выполняет проверку программного объекта на корректность.
Прототип функции
void glValidateProgramAREKGLhandleARB program)
Параметры
program Дескриптор программного объекта для проверки корректности.
Описание Функция gIValidateProgramARB проверяет, могут ли выполняемые программы из program работать при текущем состоянии OpenGL. Результаты проверки сохраняются в информационном журнале программного объекта; это может быть пустая строка или текстовая информация о взаимодействии состояния текущего программного объекта с общим состоянием OpenGL. С помощью такой проверки корректности производители различных реализаций OpenGL могут предоставлять разработчику дополнительные средства диагностики: информацию о причинах неэффективности или отказов программы, о возможности дополнительной оптимизации и т. д.