Spec-Zone .ru
спецификации, руководства, описания, API
Spec-Zone .ru
спецификации, руководства, описания, API
Библиотека разработчика Mac Разработчик
Поиск

 

Эта страница руководства является частью версии 5.0 Инструментов XCode

Получить эти инструменты:

Если Вы выполняете версию Инструментов XCode кроме 5,0, просматриваете документацию локально:

Читать страницы руководства

Страницы руководства предназначаются как справочник для людей, уже понимающих технологию.

  • Чтобы изучить, как руководство организовано или узнать о синтаксисе команды, прочитайте страницу руководства для страниц справочника (5).

  • Для получения дополнительной информации об этой технологии, ищите другую документацию в Библиотеке Разработчика Apple.

  • Для получения общей информации о записи сценариев оболочки, считайте Shell, Пишущий сценарий Учебника для начинающих.



GLDRAWELEMENTSINSTAN(3G)                         OpenGL 3.3                         GLDRAWELEMENTSINSTAN(3G)



NAME
       glDrawElementsInstanced - draw multiple instances of a set of elements

C SPECIFICATION
       void glDrawElementsInstanced(GLenum mode, GLsizei count, GLenum type, const void * indices,
                                    GLsizei primcount);

PARAMETERS
       mode
           Specifies what kind of primitives to render. Symbolic constants GL_POINTS, GL_LINE_STRIP,
           GL_LINE_LOOP, GL_LINES, GL_LINE_STRIP_ADJACENCY, GL_LINES_ADJACENCY, GL_TRIANGLE_STRIP,
           GL_TRIANGLE_FAN, GL_TRIANGLES, GL_TRIANGLE_STRIP_ADJACENCY and GL_TRIANGLES_ADJACENCY are
           accepted.

       count
           Specifies the number of elements to be rendered.

       type
           Specifies the type of the values in indices. Must be one of GL_UNSIGNED_BYTE, GL_UNSIGNED_SHORT,
           or GL_UNSIGNED_INT.

       indices
           Specifies a pointer to the location where the indices are stored.

       primcount
           Specifies the number of instances of the specified range of indices to be rendered.

DESCRIPTION
       glDrawElementsInstanced behaves identically to glDrawElements() except that primcount instances of
       the set of elements are executed and the value of the internal counter instanceID advances for each
       iteration.  instanceID is an internal 32-bit integer counter that may be read by a vertex shader as
       gl_InstanceID.


       glDrawElementsInstanced has the same effect as:

               if (mode, count, or type is invalid )
                   generate appropriate error
               else {
                   for (int i = 0; i < primcount ; i++) {
                       instanceID = i;
                       glDrawElements(mode, count, type, indices);
                   }
                   instanceID = 0;
               }


NOTES
       glDrawElementsInstanced is available only if the GL version is 3.1 or greater.


       GL_LINE_STRIP_ADJACENCY, GL_LINES_ADJACENCY, GL_TRIANGLE_STRIP_ADJACENCY and GL_TRIANGLES_ADJACENCY
       are available only if the GL version is 3.2 or greater.

ERRORS
       GL_INVALID_ENUM is generated if mode is not one of GL_POINTS, GL_LINE_STRIP, GL_LINE_LOOP, GL_LINES,
       GL_TRIANGLE_STRIP, GL_TRIANGLE_FAN, or GL_TRIANGLES.


       GL_INVALID_VALUE is generated if count or primcount are negative.


       GL_INVALID_OPERATION is generated if a geometry shader is active and mode is incompatible with the
       input primitive type of the geometry shader in the currently installed program object.


       GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to an enabled array and
       the buffer object's data store is currently mapped.

SEE ALSO
       glDrawElements(), glDrawArraysInstanced()


COPYRIGHT
       Copyright (C) 2010 Khronos Group. This material may be distributed subject to the terms and
       conditions set forth in the Open Publication License, v 1.0, 8 June 1999.
       http://opencontent.org/openpub/.



OpenGL 3.3                                       03/08/2011                         GLDRAWELEMENTSINSTAN(3G)

Сообщение о проблемах

Способ сообщить о проблеме с этой страницей руководства зависит от типа проблемы:

Ошибки содержания
Ошибки отчета в содержании этой документации к проекту OpenGL.
Отчеты об ошибках
Сообщите об ошибках в функциональности описанного инструмента или API через Генератор отчетов Ошибки.
Форматирование проблем
Отчет, форматирующий ошибки в интерактивной версии этих страниц со ссылками на отзыв ниже.