void gl VertexAttrib3dvARB(GLuint index, const GLdouble *v)
void glVertexAttrib4fvARB(GLuint index, const GLfloat *v)
void glVertexAttrib4svARB(GLuint index, const GLshort *v)
void glVertexAttrib4dvARB(GLuint index, const GLdouble *v) void glVertexAttrib4ivARB(GLuint index, const GLint *v) void gl VertexAttrib4bvARB(GLuint index, const GLbyte *v)
void glVertexAttrib4ubvARB(GLuint index, const GLubyte *v) void glVertexAttrib4usvARB(GLuint index, const GLushort *v) void glVertexAttrib4uivARB(GLuint index, const GLuint *v)
void gl VertexAttrib4NbvARB(GLuint index, const GLbyte *v) void glVertexAttrib4NsvARB(GLuint index, const GLshort *v) void glVertexAttrib4NivARB(GLuint index, const GLint *v) void glVertexAttrib4NubvARB(GLuint index, const GLubyte *v) void gl VertexAttrib4NusvARB(GLuint index, const GLushort *v) void gl VertexAttrib4NuivARB(GLuint index, const GLuint *v)
Параметры
index Индекс изменяемого дополнительного атрибута вершины
v Указатель на массив новых значений дополнительного ат рибута вершины.
Описание
В OpenGL определен ряд стандартных атрибутов вершин (цвет, нормаль, текстурные координаты и др.). Приложение может задавать их обычными функциями
OpenGL API. Семейство функций gl VertexAttri bARB позволяет приложению задавать значения дополнительных атрибутов вершины.
Дополнительные атрибуты организованы как массив четырехкомпонентных значений. Первый элемент массива имеет индекс 0, а размер массива зависит от реализации, его значение находится в константе GL_MAX_VERTEX_ATTRIBS_ARB. Значения отдельных элементов этого массива дополнительных атрибутов можно задавать одной из функций семейства gl VertexAttri bARB.
За один вызов функции можно задавать значение одного, двух, трех или всех четырех компонентов настраиваемого атрибута вершины, указанного в index. Если передается только одно значение, используется функция, в имени которой есть 1, и при этом изменяется значение первого компонента дополнительного атрибута вершины, а второй, третий и четвертый компоненты устанавливаются в 0, 0 и 1 соответственно. Если в имени функции есть 2, значения задаются для первых двух компонентов, третий компонент устанавливается в 0, а четвертый - в 1. Если используется функция, в имени которой есть 3, значения задаются для первых трех компонентов, а четвертый компонент устанавливается в 1. Цифра 4 в имени функции означает, что значения задаются для всех четырех компонентов.
Буквы s, f, 1, d, ub, us, ui означают типы аргументов short, fl oat, i nt, doubl e, unsigned byte, unsigned short, unsigned int соответственно. Если к имени добавляется еще и V, функция как аргумент получает указатель на массив таких значений. Если в имени функции присутствует N, функция считает, что ей передаются аргументы в виде чисел с фиксированной запятой, масштабированных к нормализованному диапазону в соответствии с правилами преобразования компонентов, определенными в спецификации OpenGL. Значения знаковых типов считаются значениями с фиксированной запятой из диапазона [-1, 1 ], а значения беззнаковых типов - значениями с фиксированной запятой из диапазона [0, 1].