Ошибки

GL_I NVAL I D_VALUE возникает, если program не является дескриптором объекта OpenGL. GL_INVALID_0PERATION возникает в следующих случаях:

□ program не является объектом типа GL_PROGRAM_OBJECT_ARB;

□ функция gl Li nkProgramARB выполняется между соответствующими вызовами

gl Begin и gl End.

Соответствующие GET-функции

glGetActi veAttnbARB с. аргументом program. glGetActi veUni formARB с аргументом program. gIGetlnfoLogARB с аргументом program.

glGetObjectParameterARB с аргументами program и GL_OBJECT_LINK_STATUS_ARB. gl GetUni formARB с аргументом program и адресом uniform-переменной, gl GetUni formLocationARB с аргументом program и именем uniform-переменной. gIGetHandleARB с параметром GL_PROGRAM_OBJECT_ARB.

Смотри также

gl AttachObjectARB, gl Compi 1 eShaderARB, glDetachObjectARB, glUniformARB, gl UseProgramObjectARB, glVal idateProgramARB

gIShaderSourceARB

Название

gIShaderSourceARB - устанавливает шейдерному объекту новый исходный код.

Прототип функции

void glShaderSourceARB( GLhandleARB shader.

GLsizei nstrings. const GLcharARB **strings. const GLint *lengths)

Параметры

shader Дескриптор шейдерного объекта, в который будет устанав ливаться новый исходный код.

nstrings Количество элементов в массивах strings и lengths,

st ri ngs Массив указателей на строки, содержащие части исходного кода для загрузки в шейдер.

1 engths Массив, содержащий значения длин строк.

Описание

Функция glShaderSourceARB загружает исходный код из массива строк strings в shader. При этом старый код шейдерного объекта теряется. Количество строк в массиве strings указано в nstrings. Если значение lengths равно NULL, считается, что каждая строка из strings заканчивается нуль-символом; если же lengths не равно NULL, то указывает на массив со значениями длины соответствующих строк из strings. Каждый элемент этого массива содержит либо количество символов в соответствующей строке без учета нуль-символа, либо значение меньше 0, если соответствующая строка завершается нуль-символом. На данном этапе строки исходного кода никак не анализируются, а просто копируются в указанный шейдерный объект.

Примечания

Во время вызова функции gl ShaderSourceARB OpenGL копирует строки исходного кода, и приложение может освобождать свою копию сразу после завершения функции.

Ошибки

GL_INVALID_VALUE возникает:

□ если shader не является дескриптором объекта OpenGL;

□ значение nstrings меньше 0.

GL_INVALID_0PERATION возникает в следующих случаях:

□ shader не является объектом типа GL_SHADER_OBJECT_ARB;

□ функция gl ShaderSourceARB выполняется между соответствующими вызовами

gl Begin ид! End.

Соответствующие GET-функции

gIGetShaderSourceARB с аргументом shader.

Смотри также

gl Compi 1 eShaderARB, glCreateShaderObjectARB, glDeleteObjectARB

glUniformARB

Название

gl Uni formARB - задает значение uniform-переменной.


⇐ вернуться назад | | далее ⇒