|
| БЕСПЛАТНАЯ ежедневная online лотерея! Выигрывай каждый день БЕСПЛАТНО! |
|
|
glTexCoordPointerEXT
The glTexCoordPointerEXT function defines an array of texture coordinates.
void glTexCoordPointerEXT( GLint size, GLenum type, GLsizei stride, GLsizei count, const GLvoid *pointer );
Parameters
size
Specifies the number of coordinates per array element. The value of size must be 1, 2, 3, or 4.
type
Specifies the datatype of each texture coordinate in the array using the following symbolic constants: GL_SHORT, GL_INT, GL_FLOAT, and GL_DOUBLE_EXT.
stride
Specifies the byte offset between consecutive array elements. When stride is zero, the array elements are tightly packed in the array.
count
Specifies the number of array elements, counting from the first, that are static.
pointer
Specifies a pointer to the first coordinate of the first element in the array.
Remarks
The glTexCoordPointerEXT function specifies the location and data of an array of texture coordinates to use when rendering.The size parameter specifies the number of coordinates used for each element of the array.The type parameter specifies the datatype of each texture coordinate and the stride parameter determines the byte offset from one array element to the next, enabling the packing of vertexes and attributes in a single array or storage in separate arrays. In some implementations storing the vertexes and attributes in a single array can be more efficient than using separate arrays. Starting from the first 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 array elements are not accessed until you call glDrawArraysEXT or glArrayElementEXT.
A texture coordinate array is enabled when you specify the GL_TEXTURE_COORD_ARRAY_EXT constant with glEnable. When enabled, glDrawArraysEXT and glArrayElementEXT use the texture coordinate array. By default the texture coordinate array is disabled. You cannot include glTexCoordPointerEXT in display lists. When you specify a texture coordinate array using glTexCoordPointerEXT, the values of all the function's texture coordinate array parameters are saved in a client-side state, and static array elements can be cached. Because the texture coordinate array parameters are client-side state, their values are not saved or restored by glPushAttrib and glPopAttrib.
Although no error is generated when you call glTexCoordPointerEXT within glBegin and glEnd pairs, the results are undefined.
Note
Note The glTexCoordPointerEXT 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 glTexCoordPointerEXT , call glGetString(GL_EXTENSIONS). If it returns GL_EXT_vertex_array, glTexCoordPointerEXT is supported. To obtain the address of an extension function, call wglGetProcAddress.
The following functions retrieve information related to the glTexCoordPointerEXT function: glIsEnabled with argument GL_TEXTURE_COORD_ARRAY_EXT glGet with argument GL_TEXTURE_COORD_ARRAY_SIZE_EXT glGet with argument GL_TEXTURE_COORD_ARRAY_STRIDE_EXT glGet with argument GL_TEXTURE_COORD_ARRAY_COUNT_EXT glGet with argument GL_TEXTURE_COORD_ARRAY_TYPE_EXT glGetPointervEXT with argument GL_TEXTURE_COORD_ARRAY_POINTER_EXT
Errors
GL_INVALID_VALUE is generated if size is not 1, 2, 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, glColorPointerEXT, glDrawArraysEXT, glEdgeFlagPointerEXT, glGetPointervEXT, glIndexPointerEXT, glNormalPointerEXT, glVertexPointerEXT, glGetString, wglGetProcAddress
| Пригласи друзей и счет твоего мобильника всегда будет положительным! |
| Пригласи друзей и счет твоего мобильника всегда будет положительным! |
glTexCoordPointerEXT
Функция glTexCoordPointerEXT определяет массив координат текстуры.
пустота glTexCoordPointerEXT( размер БЛЕСКА, тип GLenum, большой шаг GLsizei, счет GLsizei, const GLvoid *указатель );
Параметры
размер
Определяет количество координат за элемент массива. Величина размера должна быть 1, 2, 3, или 4.
тип
Определяет datatype каждой координаты текстуры в массиве, использовавшем следующие символические константы: GL_SHORT, GL_INT, GL_FLOAT, и GL_DOUBLE_EXT.
большой шаг
Определяет байтовую компенсацию между последовательными элементами массива. Когда большой шаг является нулем, элементы массива плотно упакованы в массив.
счет
Определяет номер элементов массива, считаясь из первого, который статический.
указатель
Определяет указатель в первую координату первого элемента в массиве.
Замечания
Функция glTexCoordPointerEXT определяет позицию и данные массива координат текстуры, чтобы использоваться при предоставлении.Размер параметра определяет количество координат использованных для каждого элемента массива.Параметр типа определяет datatype каждой координаты текстуры и параметр большого шага определяет байтовое смещение от одного элемента массива до следующего, включения упаковки вершин и атрибутов в единственном массиве или памяти в отдельном подготавливается. В некоторых реализациях, хранящих вершины и атрибуты в единственном массиве могут быть более эффективными чем использование разделять подготавливается. Начиная с первого элемента массива, счет указывает общее число статических элементов. Ваше приложение может модифицировать статические элементы, но как только элементы будут модифицированы, приложение должно явно определить массив снова перед использованием массива для любого предоставления. Не-статические элементы массива не доступны пока Вы не назовете glDrawArraysEXT или glArrayElementEXT.
Координатный массив текстуры приспособлен когда Вы определяете константу GL_TEXTURE_COORD_ARRAY_EXT с glEnable. Когда приспособлено, glDrawArraysEXT и glArrayElementEXT использует координатный массив текстуры. По умолчанию координатный массив текстуры выведен из строя. Вы не можете включить glTexCoordPointerEXT в дисплейных списках. Когда Вы определяете координатный массив текстуры, использовавший glTexCoordPointerEXT, величины всей функциональной текстуры координируют параметры массива сохранены в клиент-боковом состоянии, и статические элементы массива могут быть кешированы. Поскольку параметры координатного массива текстуры являются клиент-боковым состоянием, их величины не сохранены или восстановлены glPushAttrib и glPopAttrib.
Хотя никакая ошибка не сгенерирована когда Вы называете glTexCoordPointerEXT в пределах glBegin и пары glEnd, результаты неопределенные.
Примечание
Отметьте что функция glTexCoordPointerEXT является функцией расширения, которая - не часть стандартной библиотеки OpenGL но - часть расширения GL_EXT_vertex_array. Для того, чтобы проверять независимо вашу реализацию опор OpenGL glTexCoordPointerEXT , glGetString вызова(GL_EXTENSIONS). Если это возвращает GL_EXT_vertex_array, glTexCoordPointerEXT поддерживан. Для того, чтобы получать адрес функции расширения, назовите wglGetProcAddress.
Следующее функций извлекает информацию имело отношение к функции glTexCoordPointerEXT: glIsEnabled АРГУМЕНТОМ GL_TEXTURE_COORD_ARRAY_EXT glGet с аргументом GL_TEXTURE_COORD_ARRAY_SIZE_EXT glGet с аргументом GL_TEXTURE_COORD_ARRAY_STRIDE_EXT glGet с аргументом GL_TEXTURE_COORD_ARRAY_COUNT_EXT glGet с аргументом GL_TEXTURE_COORD_ARRAY_TYPE_EXT glGetPointervEXT с аргументом GL_TEXTURE_COORD_ARRAY_POINTER_EXT
Ошибки
GL_INVALID_VALUE сгенерирован если размер - не 1, 2, 3, или 4. GL_INVALID_ENUM сгенерирован если тип не является допустимой величиной. GL_INVALID_VALUE сгенерирован если большой шаг или счет отрицательное.
Смотри Также
glArrayElementEXT, glColorPointerEXT, glDrawArraysEXT, glEdgeFlagPointerEXT, glGetPointervEXT, glIndexPointerEXT, glNormalPointerEXT, glVertexPointerEXT, glGetString, wglGetProcAddress
| |
|
|
| |