|
| БЕСПЛАТНАЯ ежедневная online лотерея! Выигрывай каждый день БЕСПЛАТНО! |
|
|
glColorPointerEXT
The glColorPointerEXT function defines an array of colors.
void glColorPointerEXT( GLint size, GLenum type, GLsizei stride, GLsizei count, const GLvoid *pointer );
Parameters
size
Specifies the number of components per color. The value must be either 3 or 4.
type
Specifies the data type of each color component in a color array. Acceptable data types are specified with the following constants: GL_BYTE, GL_UNSIGNED_BYTE, GL_SHORT, GL_UNSIGNED_SHORT, GL_INT, GL_UNSIGNED_INT, GL_FLOAT, or GL_DOUBLE_EXT.
stride
Specifies the byte offset between consecutive colors. When stride is zero, the colors are tightly packed in the array.
count
Specifies the number of static colors, counting from the first color.
pointer
Specifies a pointer to the first component of the first color element in a color array.
Remarks
The glColorPointerEXT function specifies the location and data format of an array of color components to use when rendering. The stride parameter determines the byte offset from one color to the next, enabling the packing of vertex atributes in a single array or storage in separate arrays. In some implementations storing vertex attributes in a single array can be more efficient than the use of separate arrays. Starting from the first color array element, count indicates the total number of static elements. Your application can modify static elements, but once the elements are modified, the application must explicitly specify the array again before using the array for any rendering. Non-static color array elements are not accessed until you call glDrawArraysEXT or glArrayElementEXT.
The color array is enabled when you specify the GL_COLOR_ARRAY_EXT constant with glEnable. When enabled in this way, the color array is used when you call glDrawArraysEXT or glArrayElementEXT. By default, the color array is disabled. glColorPointerEXT calls are not entered in display lists. When you specify a color array using glColorPointerEXT, the values of all the function's color array parameters are saved in a client-side state and static array elements can be cached. Because the color array parameters are client-side state, their values are not saved or restored by glPushAttrib and glPopAttrib.
Although no error is generated when you specify the color array within glBegin and glEnd pairs, the results are undefined.
Note
Note The glColorPointerEXT function is an extension function that is not part of the standard OpenGL library but is part of the GL_EXT_vertex_array extension. To check whether your implementation of OpenGL supports glColorPointerEXT, call glGetString(GL_EXTENSIONS). If it returns GL_EXT_vertex_array, glColorPointerEXT is supported. To obtain the function address of an extension function, call wglGetProcAddress.
The following functions retrieve information related to the glColorPointerEXT function: glIsEnabled with argument GL_COLOR_ARRAY_EXT glGet with argument GL_COLOR_ARRAY_SIZE_EXT glGet with argument GL_COLOR_ARRAY_TYPE_EXT glGet with argument GL_COLOR_ARRAY_STRIDE_EXT glGet with argument GL_COLOR_ARRAY_COUNT_EXT glGetPointervEXT with argument GL_COLOR_ARRAY_POINTER_EXT
Errors
GL_INVALID_VALUE is generated if size is not 3 or 4. GL_INVALID_ENUM is generated if type is not an accepted value. GL_INVALID_VALUE is generated if stride or count is negative.
See Also
glArrayElementEXT, glDrawArraysEXT, glEdgeFlagPointerEXT, glIndexPointerEXT, glNormalPointerEXT, glTexCoordPointerEXT, glVertexPointerEXT, glGetString wglGetProcAddress
| Пригласи друзей и счет твоего мобильника всегда будет положительным! |
| Пригласи друзей и счет твоего мобильника всегда будет положительным! |
glColorPointerEXT
Функция glColorPointerEXT определяет массив цветов.
пустота glColorPointerEXT( размер БЛЕСКА, тип GLenum, большой шаг GLsizei, счет GLsizei, const GLvoid *указатель );
Параметры
размер
Определяет количество компонентов за цвет. Величина должна быть или 3 или 4.
тип
Определяет тип данных каждого цветного компонента в цветном массиве. Приемлемые типы данных определены следующими константами: GL_BYTE, GL_UNSIGNED_BYTE, GL_SHORT, GL_UNSIGNED_SHORT, GL_INT, GL_UNSIGNED_INT, GL_FLOAT, или GL_DOUBLE_EXT.
большой шаг
Определяет байтовое смещение между последовательными цветами. Когда большой шаг является нулем, цвета плотно упакованы в массив.
счет
Определяет количество статических цветов, считаясь из первого цвета.
указатель
Определяет указатель в первый компонент первого цветного элемента в цветном массиве.
Замечания
Функция glColorPointerEXT определяет позицию и формат данных массива цветных компонентов, чтобы использоваться при предоставлении. Параметр большого шага определяет байтовое смещение от одного цвета до следующего, включение упаковки вершины atributes в единственном массиве или памяти в отдельном подготавливается. В некоторых реализациях, хранящих вершину приписывается в единственном массиве может быть более эффективным чем использование отдельное подготавливается. Начиная с первого цветного элемента массива, счет указывает общее число статических элементов. Ваше приложение может модифицировать статические элементы, но как только элементы будут модифицированы, приложение должно явно определить массив снова перед использованием массива для любого предоставления. Не-статические цветные элементы массива не доступны пока Вы не назовете glDrawArraysEXT или glArrayElementEXT.
Цветной массив приспособлен когда Вы определяете константу GL_COLOR_ARRAY_EXT с glEnable. Когда приспособлено таким образом, цветной массив использован когда Вы называете glDrawArraysEXT или glArrayElementEXT. По умолчанию, цветной массив является вызовами disabled. glColorPointerEXT не введены в дисплейные списки. Когда Вы определяете цветной массив, использовавший glColorPointerEXT, величины всех функциональных цветных параметров массива сохранены в клиент-боковом состоянии и статические элементы массива могут быть кешированы. Поскольку цветные параметры массива являются клиент-боковым состоянием, их величины не сохранены или восстановлены glPushAttrib и glPopAttrib.
Хотя никакая ошибка не сгенерирована когда Вы определяете цветной массив в пределах glBegin и пары glEnd, результаты неопределенные.
Примечание
Отметьте что функция glColorPointerEXT является функцией расширения, которая - не часть стандартной библиотеки OpenGL но - часть расширения GL_EXT_vertex_array. Для того, чтобы проверять независимо вашу реализацию опор OpenGL glColorPointerEXT, glGetString вызова(GL_EXTENSIONS). Если это возвращает GL_EXT_vertex_array, glColorPointerEXT поддерживан. Для того, чтобы получать функциональный адрес функции расширения, назовите wglGetProcAddress.
Следующее функций извлекает информацию имело отношение к функции glColorPointerEXT: glIsEnabled АРГУМЕНТОМ GL_COLOR_ARRAY_EXT glGet с аргументом GL_COLOR_ARRAY_SIZE_EXT glGet с аргументом GL_COLOR_ARRAY_TYPE_EXT glGet с аргументом GL_COLOR_ARRAY_STRIDE_EXT glGet с аргументом GL_COLOR_ARRAY_COUNT_EXT glGetPointervEXT с аргументом GL_COLOR_ARRAY_POINTER_EXT
Ошибки
GL_INVALID_VALUE сгенерирован если размер - не 3 или 4. GL_INVALID_ENUM сгенерирован если тип не является допустимой величиной. GL_INVALID_VALUE сгенерирован если большой шаг или счет отрицательное.
Смотри Также
glArrayElementEXT, glDrawArraysEXT, glEdgeFlagPointerEXT, glIndexPointerEXT, glNormalPointerEXT, glTexCoordPointerEXT, glVertexPointerEXT, glGetString wglGetProcAddress
| |
|
|
| |