Spec-Zone .ru
спецификации, руководства, описания, API

Библиотека разработчика Mac

Разработчик

Ссылка платформы AGL ссылка AGL

Опции
Развертывание Target:

На этой странице

Ссылка AGL

AGL (Библиотека Графики Apple) API является частью реализации Apple OpenGL в OS X. AGL содержит специфичную для системы управления окнами реализацию функций OpenGL и команды для Углерода. Используя функции AGL, можно создать и уничтожить контексты рендеринга AGL, выбрать средства рендеринга OpenGL, подкачать буферы и выполнить операции на drawable объектах (окна, пиксельные буферы, внеэкранная память и полноэкранные графические устройства).

Для использования AGL от платформы Углерода приложение должно соединиться и с AGL и с OpenGL (OpenGL/OpenGL.h) платформы.

Функции

  • Создает формат пикселя с предоставленными атрибутами.

    Объявление

    Objective C

    AGLPixelFormat aglCreatePixelFormat ( const GLint *attribs );

    Параметры

    attribs

    Атрибуты для формата пикселя.

    Возвращаемое значение

    Объект формата пикселя.

    Оператор импорта

    Objective C

    @import AGL;

    Доступность

    Доступный в OS X v10.5 и позже.

    Осуждаемый в OS X v10.9.

  • Создает объект формата пикселя, удовлетворяющий ограничения указанного буфера и атрибутов средства рендеринга.

    Объявление

    Objective C

    AGLPixelFormat aglChoosePixelFormat ( const void *gdevs, GLint ndev, const GLint *attribs );

    Параметры

    gdevs

    Указатель на AGLDevice тип данных, содержащий массив устройств графики Mac OS. AGL выбирает форматы пикселя и средства рендеринга, которые являются подходящими для этих устройств. Для создания формата пикселя возражают, что поддерживает все устройства в системе, передаче NULL.

    ndev

    Число графических устройств, которые Ваше приложение предоставляет в gdevs параметр. Передача 0 если Вы также передаете NULL для gdevs параметр.

    attribs

    A NULL завершенный массив, содержащий список атрибутов средства рендеринга и буфера. Атрибуты могут быть булевской переменной или целым числом. Если атрибут является целым числом, необходимо сразу предоставить требуемое значение после атрибута. Если атрибут является булевской переменной, не предоставляйте значение, потому что его присутствие в массиве атрибутов подразумевает a true значение. Для получения информации об атрибутах, которые можно предоставить, посмотрите Атрибуты Буфера и Средства рендеринга, “Renderer Attributes”, и Обсуждение ниже.

    Возвращаемое значение

    Новый объект формата пикселя, содержащий информацию о формате пикселя и список виртуальных экранов. Возвраты NULL если система не может найти формат пикселя и виртуальный экран, удовлетворяющий ограничения атрибутов средства рендеринга и буфера.

    Обсуждение

    После того, как объект формата пикселя создается успешно, целочисленные атрибуты установлены в значения, которые являются как близко к требуемому значению, как может быть предоставлен системой. Значения атрибута могут отличаться для каждого виртуального экрана. Можно использовать AGL_MINIMUM_POLICY и AGL_MAXIMUM_POLICY атрибуты, чтобы управлять, как система выбирает установку. Для получения дополнительной информации о выборе атрибутов см. Руководство по программированию OpenGL для Mac.

    Булевы константы атрибута включают следующий. Для полных описаний посмотрите Атрибуты Буфера и Средства рендеринга и “Renderer Attributes”.

    Следующее является целочисленными константами атрибута и должно сопровождаться значением. Для полных описаний посмотрите Атрибуты Буфера и Средства рендеринга и “Renderer Attributes”.

    Оператор импорта

    Objective C

    @import AGL;

    Доступность

    Доступный в OS X v10.0 и позже.

    Осуждаемый в OS X v10.9.

  • Получает значение атрибута, связанного с объектом формата пикселя.

    Объявление

    Objective C

    GLboolean aglDescribePixelFormat ( AGLPixelFormat pix, GLint attrib, GLint *value );

    Параметры

    pix

    Объект формата пикселя запросить.

    attrib

    Атрибут, значение которого Вы хотите получить. Для списка возможных атрибутов посмотрите Атрибуты Буфера и Средства рендеринга.

    value

    По возврату, точкам к значению атрибута.

    Возвращаемое значение

    Возвраты GL_FALSE если это перестало работать по какой-либо причине, GL_TRUE иначе. Если ошибка происходит, вызовите функцию aglGetError определить, какова ошибка.

    Обсуждение

    В многоэкранных системах, поддерживающих многократные средства рендеринга одновременно, aglChoosePixelFormat может возвратить список больше чем одного объекта формата пикселя. Для получения данных в объектах формата пикселя кроме первого в списке вызвать aglNextPixelFormat. Тогда передайте возвращенный объект формата пикселя aglDescribePixelFormat получать значение атрибута.

    Оператор импорта

    Objective C

    @import AGL;

    Доступность

    Доступный в OS X v10.0 и позже.

    Осуждаемый в OS X v10.9.

    См. также

    aglCreateContext

  • Освобождает память, связанную с объектом формата пикселя.

    Объявление

    Objective C

    void aglDestroyPixelFormat ( AGLPixelFormat pix );

    Параметры

    pix

    Объект формата пикселя, средства которого Вы хотите высвободить. Это должно быть объектом формата пикселя, возвращенным функциейaglChoosePixelFormat. AGL устанавливает a AGL_BAD_PIXELFMT ошибка, если Вы передаете возвращенное значение от функции aglNextPixelFormat или pix параметр не является допустимым форматом пикселя.

    Обсуждение

    Копия данных формата пикселя сделана aglCreateContext функция, таким образом, Ваше приложение может сразу освободить формат пикселя после создания контекста рендеринга с ним. С другой стороны, объект формата пикселя может быть полезен для перечисления виртуальных экранов, когда многократные средства рендеринга поддерживаются, таким образом, можно хотеть сохранить его.

    Оператор импорта

    Objective C

    @import AGL;

    Доступность

    Доступный в OS X v10.0 и позже.

    Осуждаемый в OS X v10.9.

    См. также

    aglDescribePixelFormat

  • Получает объект формата пикселя CGL, связанный с форматом пикселя AGL.

    Объявление

    Objective C

    GLboolean aglGetCGLPixelFormat ( AGLPixelFormat pix, void **cgl_pix );

    Параметры

    pix

    Объект формата пикселя AGL.

    cgl_pix

    По возврату, точкам к объекту формата пикселя CGL, связанному с указанным форматом пикселя AGL.

    Возвращаемое значение

    Возвраты GL_FALSE если это перестало работать по какой-либо причине, GL_TRUE иначе. Если ошибка происходит, вызовите функцию aglGetError определить, какова ошибка.

    Обсуждение

    Необходимо использовать эту функцию только, когда абсолютно необходимо передать объект формата пикселя CGL функции не-AGL. Можно бросить возвращенный объект формата пикселя CGL к другому типу данных по мере необходимости. Обратите внимание на то, что уничтожение объекта формата пикселя AGL также уничтожает объект формата пикселя CGL, таким образом делание ссылки на данные возвратилось недопустимый.

    Оператор импорта

    Objective C

    @import AGL;

    Доступность

    Доступный в OS X v10.4 и позже.

    Осуждаемый в OS X v10.9.

  • Возвращает графические устройства, поддерживаемые объектом формата пикселя.

    Объявление

    Objective C

    CGDirectDisplayID * aglDisplaysOfPixelFormat ( AGLPixelFormat pix, GLint *ndevs );

    Параметры

    pix

    Объект формата пикселя.

    ndevs

    По возврату, точкам к числу устройств в списке, возвращенном функцией.

    Возвращаемое значение

    Массив дисплея IDs или или NULL если функция перестала работать по какой-либо причине. Если ошибка происходит, вызовите функцию aglGetError определить, какова ошибка.

    Обсуждение

    Вы обычно используете эту функцию после того, как Вы вызовете функцию aglChoosePixelFormat, который может возвратить список больше чем одного объекта формата пикселя. Первый объект формата пикселя в списке, как гарантируют, будет поддерживать все графические устройства, которые требуют от той функции. Вы вызываете aglDisplaysOfPixelFormat узнать, какие графические устройства поддерживаются другими объектами формата пикселя в списке.

    Оператор импорта

    Objective C

    @import AGL;

    Доступность

    Доступный в OS X v10.5 и позже.

    Осуждаемый в OS X v10.9.

  • Возвращает графические устройства, поддерживаемые объектом формата пикселя.

    Оператор осуждения

    Использовать aglDisplaysOfPixelFormat вместо этого.

    Объявление

    Objective C

    GDHandle * aglDevicesOfPixelFormat ( AGLPixelFormat pix, GLint *ndevs );

    Параметры

    pix

    Объект формата пикселя.

    ndevs

    По возврату, точкам к числу устройств в списке, возвращенном функцией.

    Возвращаемое значение

    Массив графических устройств или или NULL если функция перестала работать по какой-либо причине. Если ошибка происходит, вызовите функцию aglGetError определить, какова ошибка.

    Обсуждение

    Вы обычно используете эту функцию после того, как Вы вызовете функцию aglChoosePixelFormat, который может возвратить список больше чем одного объекта формата пикселя. Первый объект формата пикселя в списке, как гарантируют, будет поддерживать все графические устройства, которые требуют от той функции.

    Оператор импорта

    Objective C

    @import AGL;

    Доступность

    Доступный в OS X v10.0 и позже.

    Осуждаемый в OS X v10.5.

  • Возвращает следующий объект формата пикселя в списке объектов формата пикселя.

    Объявление

    Objective C

    AGLPixelFormat aglNextPixelFormat ( AGLPixelFormat pix );

    Параметры

    pix

    Указатель на объект формата пикселя.

    Возвращаемое значение

    Следующий формат пикселя возражает в списке форматов пикселя. Возвраты NULL если pix если функция перестала работать по какой-либо причине, параметр представляет последний объект формата пикселя в списке или. Если ошибка происходит, вызовите функцию aglGetError определить, какова ошибка.

    Обсуждение

    Вы обычно используете эту функцию после того, как Вы вызвали функцию aglChoosePixelFormat, когда все графические устройства в системе не поддерживаются единственным средством рендеринга, который генерирует список больше чем одного объекта формата пикселя. Найти число средств рендеринга связалось с объектом формата пикселя, можно вызвать aglNextPixelFormat выполнить итерации через список и считать записи.

    Оператор импорта

    Objective C

    @import AGL;

    Доступность

    Доступный в OS X v10.0 и позже.

    Осуждаемый в OS X v10.9.

    См. также

    aglDescribePixelFormat

  • Создает контекст рендеринга AGL.

    Объявление

    Objective C

    AGLContext aglCreateContext ( AGLPixelFormat pix, AGLContext share );

    Параметры

    pix

    Создание объекта формата пикселя путем вызывания функции aglChoosePixelFormat.

    share

    Контекст рендеринга, с которым можно совместно использовать OpenGL, возражает состоянию — включая объекты текстуры, программы и дисплейные списки программы построения теней, объекты массива вершины, буферные объекты вершины, пиксельные буферные объекты и объекты кадрового буфера — и объектному состоянию, связанному который каждые из этих типов объектов. Передача NULL указать, что никакое совместное использование не должно иметь место.

    Возвращаемое значение

    Новый контекст рендеринга. aglCreateContext функциональные возвраты NULL если функция перестала работать по какой-либо причине. Можно вызвать функцию aglGetError определить, какова ошибка.

    Обсуждение

    Если формат пикселя возражает, что Вы предоставляете, в состоянии поддерживать многократные графические устройства, то контекст рендеринга может представить прозрачно через поддерживаемые устройства. С контекстом рендеринга многократного устройства совместное использование возможно только, когда отношение между средствами рендеринга и графическими устройствами, которые они поддерживают, является тем же для всех совместно использующихся контекстов рендеринга. Обычно Вы достигаете лучших результатов при помощи того же объекта формата пикселя для всех совместно использованные контексты рендеринга. Для получения дополнительной информации см. Руководство по программированию OpenGL для Mac.

    Оператор импорта

    Objective C

    @import AGL;

    Доступность

    Доступный в OS X v10.0 и позже.

    Осуждаемый в OS X v10.9.

  • Копирует указанные переменные состояния от одного контекста рендеринга до другого.

    Объявление

    Objective C

    GLboolean aglCopyContext ( AGLContext src, AGLContext dst, GLuint mask );

    Параметры

    src

    Исходный контекст рендеринга.

    dst

    Место назначения, представляющее контекст.

    mask

    Маска, указывающая переменные состояния для копирования. Передайте немного поля, содержащего поразрядное OR из имен переменной состояния, которые Вы хотите скопировать. Используйте символьные константы маски, передающиеся функции OpenGL glPushAttrib. Для копирования как можно большего количества переменных состояния предоставьте константу GL_ALL_ATTRIB_BITS. Для описания символьных констант маски см. Справочник OpenGL.

    Возвращаемое значение

    Возвраты GL_FALSE если функция перестала работать по какой-либо причине, GL_TRUE иначе. Если ошибка происходит, вызовите функцию aglGetError определить, какова ошибка.

    Обсуждение

    Не все значения состояния OpenGL могут быть скопированы. Например, пиксельный пакет и распаковывает состояние, представляет состояние режима, и выбор и состояние обратной связи не копируются. Состояние, которое может быть скопировано, является точно состоянием, которым управляет вызов OpenGL glPushAttrib.

    Оператор импорта

    Objective C

    @import AGL;

    Доступность

    Доступный в OS X v10.0 и позже.

    Осуждаемый в OS X v10.8.

  • Освобождает ресурсы, связанные с контекстом рендеринга.

    Объявление

    Objective C

    GLboolean aglDestroyContext ( AGLContext ctx );

    Параметры

    ctx

    Контекст рендеринга, средства которого Вы хотите высвободить.

    Возвращаемое значение

    Возвраты GL_FALSE если это перестало работать по какой-либо причине, GL_TRUE иначе. Если ошибка происходит, вызовите функцию aglGetError определить, какова ошибка.

    Обсуждение

    Эта функция освобождает все ресурсы, используемые контекстом рендеринга, переданным ему. Если контекст рендеринга, который Вы передаете, является текущим контекстом рендеринга, текущий контекст установлен в NULL и нет никакого текущего контекста рендеринга после того, как выполнится функция.

    После того, как Вы вызываете эту функцию, необходимо удостовериться, что Вы не используете уничтоженный контекст рендеринга. Это включает использование макросы AGL, в которых контекст рендеринга явно передается OpenGL.

    Оператор импорта

    Objective C

    @import AGL;

    Доступность

    Доступный в OS X v10.0 и позже.

    Осуждаемый в OS X v10.9.

  • Получает CGL рендеринг контекста, связанного с контекстом рендеринга AGL.

    Объявление

    Objective C

    GLboolean aglGetCGLContext ( AGLContext ctx, void **cgl_ctx );

    Параметры

    ctx

    Контекст рендеринга AGL.

    cgl_ctx

    По возврату, точкам к CGL рендеринг контекста, связанного с указанным контекстом рендеринга AGL.

    Возвращаемое значение

    Возвраты GL_FALSE если это перестало работать по какой-либо причине, GL_TRUE иначе. Если ошибка происходит, вызовите функцию aglGetError определить, какова ошибка.

    Обсуждение

    Необходимо использовать эту функцию только, когда абсолютно необходимо использовать функцию не-AGL, требующую CGL рендеринг контекста. Можно бросить возвращенный CGL рендеринг контекста к другому типу данных по мере необходимости. Обратите внимание на то, что уничтожение контекста рендеринга AGL также уничтожает CGL рендеринг контекста, таким образом представляя ссылку на данные, возвращенную этой недопустимой функцией.

    Оператор импорта

    Objective C

    @import AGL;

    Доступность

    Доступный в OS X v10.4 и позже.

    Осуждаемый в OS X v10.9.

  • Возвращает текущий контекст рендеринга.

    Объявление

    Objective C

    AGLContext aglGetCurrentContext ( void );

    Возвращаемое значение

    Текущий контекст рендеринга. Если нет никакого текущего контекста рендеринга, возвратов NULL.

    Оператор импорта

    Objective C

    @import AGL;

    Доступность

    Доступный в OS X v10.0 и позже.

    Осуждаемый в OS X v10.9.

    См. также

    aglSetCurrentContext

  • Устанавливает указанный контекст рендеринга как текущий контекст рендеринга.

    Объявление

    Objective C

    GLboolean aglSetCurrentContext ( AGLContext ctx );

    Параметры

    ctx

    Контекст рендеринга для установки как текущий контекст рендеринга. Передача NULL выпускать текущий контекст рендеринга, не присваивая новый.

    Возвращаемое значение

    Возвраты GL_FALSE если это перестало работать по какой-либо причине, GL_TRUE иначе. Если ошибка происходит, вызовите функцию aglGetError определить, какова ошибка.

    Обсуждение

    Может быть только один текущий контекст рендеринга. Последующие вызовы рендеринга OpenGL воздействуют на текущий контекст рендеринга для изменения drawable объекта, связанного с ним.

    Можно использовать макросы AGL, чтобы обойти текущий механизм контекста рендеринга и поддержать собственный текущий контекст рендеринга.

    Контекст является текущим на основе на поток. Многократные потоки должны сериализировать вызовы в тот же контекст.

    Оператор импорта

    Objective C

    @import AGL;

    Доступность

    Доступный в OS X v10.0 и позже.

    Осуждаемый в OS X v10.9.

    См. также

    aglGetCurrentContext

  • Обменивается буферами передней и задней части указанного контекста рендеринга.

    Объявление

    Objective C

    void aglSwapBuffers ( AGLContext ctx );

    Параметры

    ctx

    Контекст рендеринга, буферы которого Вы хотите подкачать. AGL устанавливает AGL_BAD_CONTEXT ошибка, если ctx параметр не является допустимым контекстом рендеринга AGL.

    Обсуждение

    aglSwapBuffers функционируйте или подкачивает буферы или копирует заднее содержимое буфера в передний буфер. Прежде чем это возвратится, aglSwapBuffers вызывает функцию OpenGL glFlush.

    Для синхронизации с монитором восстанавливают, устанавливают текущий интервал подкачки (AGL_SWAP_INTERVAL) к 1 путем вызывания функции aglSetInteger.

    Оператор импорта

    Objective C

    @import AGL;

    Доступность

    Доступный в OS X v10.0 и позже.

    Осуждаемый в OS X v10.9.

  • Уведомляет контекст рендеринга, что изменилась геометрия окна.

    Объявление

    Objective C

    GLboolean aglUpdateContext ( AGLContext ctx );

    Параметры

    ctx

    Контекст рендеринга, которому нужно обновление.

    Возвращаемое значение

    Возвраты GL_FALSE если это перестало работать по какой-либо причине, GL_TRUE иначе. Если ошибка происходит, вызовите функцию aglGetError определить, какова ошибка.

    Обсуждение

    Необходимо вызвать aglUpdateContext функционируйте любое время когда геометрия drawable объектных изменений. Необходимо вызвать эту функцию после завершения любого перемещения или изменить размеры действия.

    Оператор импорта

    Objective C

    @import AGL;

    Доступность

    Доступный в OS X v10.0 и позже.

    Осуждаемый в OS X v10.9.

    См. также

    aglSetDrawable

  • aglEnable aglEnable (OS X v10.9)

    Включает опцию для контекста рендеринга.

    Объявление

    Objective C

    GLboolean aglEnable ( AGLContext ctx, GLenum pname );

    Параметры

    ctx

    Контекст рендеринга.

    pname

    Опция Вы хотите включить. Можно передать любую из констант, перечисленных в Опциях Контекста и Параметрах, указывающих, что им можно включить или отключить.

    Возвращаемое значение

    Возвраты GL_FALSE если это перестало работать по какой-либо причине, GL_TRUE иначе. Если ошибка происходит, вызовите функцию aglGetError определить, какова ошибка.

    Обсуждение

    Для установки значения, связанного с опцией контекста рендеринга, используйте функцию aglSetInteger. Например, если Вы включаете AGL_SWAP_RECT, можно указать область окна, затронутого aglSwapBuffers функция путем установки прямоугольного размера с функцией aglSetInteger.

    Оператор импорта

    Objective C

    @import AGL;

    Доступность

    Доступный в OS X v10.0 и позже.

    Осуждаемый в OS X v10.9.

    См. также

    aglDisable
    aglIsEnabled

  • aglDisable aglDisable (OS X v10.9)

    Отключает опцию для контекста рендеринга.

    Объявление

    Objective C

    GLboolean aglDisable ( AGLContext ctx, GLenum pname );

    Параметры

    ctx

    Контекст рендеринга.

    pname

    Возможность, которую Вы хотите отключить. Можно передать любую из констант, перечисленных в Опциях Контекста и Параметрах, указывающих, что им можно включить или отключить.

    Возвращаемое значение

    Возвраты GL_FALSE если это перестало работать по какой-либо причине, GL_TRUE иначе. Если ошибка происходит, вызовите функцию aglGetError определить, какова ошибка.

    Оператор импорта

    Objective C

    @import AGL;

    Доступность

    Доступный в OS X v10.0 и позже.

    Осуждаемый в OS X v10.9.

    См. также

    aglEnable

  • aglIsEnabled aglIsEnabled (OS X v10.9)

    Отчеты, включена ли опция для контекста рендеринга.

    Объявление

    Objective C

    GLboolean aglIsEnabled ( AGLContext ctx, GLenum pname );

    Параметры

    ctx

    Контекст рендеринга.

    pname

    Возможность, состояние которой Вы хотите проверить. Можно передать любую из констант, перечисленных в Опциях Контекста и Параметрах, указывающих, что им можно включить или отключить.

    Возвращаемое значение

    GL_FALSE если опция отключена или если она перестала работать по какой-либо причине; GL_TRUE иначе. Если ошибка происходит, вызовите функцию aglGetError определить, какова ошибка.

    Оператор импорта

    Objective C

    @import AGL;

    Доступность

    Доступный в OS X v10.0 и позже.

    Осуждаемый в OS X v10.9.

    См. также

    aglEnable
    aglDisable

  • Устанавливает значение опции для контекста рендеринга.

    Объявление

    Objective C

    GLboolean aglSetInteger ( AGLContext ctx, GLenum pname, const GLint *params );

    Параметры

    ctx

    Контекст рендеринга.

    pname

    Опция контекста рендеринга, значение которой Вы хотите установить. Можно передать любую из констант, перечисленных в Опциях Контекста и Параметрах, имеющих связанное целочисленное значение.

    params

    Указатель на значение для установки параметра на.

    Возвращаемое значение

    Возвраты GL_FALSE если это перестало работать по какой-либо причине, GL_TRUE иначе. Если ошибка происходит, вызовите функцию aglGetError определить, какова ошибка.

    Обсуждение

    Использовать aglEnable включить опцию.

    Оператор импорта

    Objective C

    @import AGL;

    Доступность

    Доступный в OS X v10.0 и позже.

    Осуждаемый в OS X v10.9.

    См. также

    aglGetInteger

  • Получает целочисленную установку опции контекста AGL.

    Объявление

    Objective C

    GLboolean aglGetInteger ( AGLContext ctx, GLenum pname, GLint *params );

    Параметры

    ctx

    Контекст рендеринга.

    pname

    Опция, значение которой Вы хотите получить. Можно передать любую из констант, перечисленных в Опциях Контекста и Параметрах, имеющих присваиваемое значение.

    params

    По возврату, точкам к значению опции.

    Возвращаемое значение

    Возвраты GL_FALSE если это перестало работать по какой-либо причине, GL_TRUE иначе. Если ошибка происходит, вызовите функцию aglGetError определить, какова ошибка. Посмотрите Коды ошибки для получения дополнительной информации.

    Обсуждение

    Использовать aglEnable включить опцию.

    Оператор импорта

    Objective C

    @import AGL;

    Доступность

    Доступный в OS X v10.0 и позже.

    Осуждаемый в OS X v10.9.

    См. также

    aglSetInteger

  • Возвращает drawable объект, присоединенный к контексту рендеринга.

    Объявление

    Objective C

    AGLDrawable aglGetDrawable ( AGLContext ctx );

    Параметры

    ctx

    Контекст рендеринга это присоединено к окну или графическому устройству.

    Возвращаемое значение

    drawable объект (или окно Carbon или полноэкранный графический порт), который присоединен к контексту рендеринга, или NULL по любой из следующих причин:

    • Никакой drawable объект не присоединяется.

    • Пиксель буферная или внеэкранная область памяти присоединяется.

    • Функция перестала работать по любой причине.

    Если возвращается функция NULL, вызовите функцию aglGetError определить, какова ошибка.

    Обсуждение

    Если контекст рендеринга является пиксельным буферным контекстом, вызвать aglGetPBuffer.

    Оператор импорта

    Objective C

    @import AGL;

    Доступность

    Доступный в OS X v10.0 и позже.

    Осуждаемый в OS X v10.5.

    См. также

    aglSetDrawable

  • Присоединяет контекст рендеринга к окну Carbon.

    Объявление

    Objective C

    GLboolean aglSetDrawable ( AGLContext ctx, AGLDrawable draw );

    Параметры

    ctx

    Контекст рендеринга, возвращенный функцией aglCreateContext.

    draw

    drawable объект — который должен быть окном Carbon — для присоединения к контексту рендеринга AGL. Необходимо предоставить a CGrafPtr тип данных получен из допустимого окна. Функция Менеджера окон GetWindowPort возвраты CGrafPtr связанный с окном Carbon. Отключить рендеринг для контекста рендеринга, передачи NULL.

    Возвращаемое значение

    Возвраты GL_FALSE если это перестало работать по какой-либо причине, GL_TRUE иначе. Если ошибка происходит, вызовите функцию aglGetError определить, какова ошибка.

    Обсуждение

    После вызывания этой функции AGL направляет последующие вызовы рендеринга OpenGL к указанному контексту рендеринга для изменения содержания окна. Кроме того, функция aglSetDrawable выполняет все действия, выполняемые aglUpdateContext.

    Когда контекст рендеринга первоначально присоединен к окну, его область просмотра установлена в полный размер окна. Если контекст рендеринга впоследствии присоединен к тому же окну, его область просмотра неизменна.

    Оператор импорта

    Objective C

    @import AGL;

    Доступность

    Доступный в OS X v10.0 и позже.

    Осуждаемый в OS X v10.5.

    См. также

    aglGetDrawable

  • Присоединяет контекст рендеринга к полноэкранному устройству графики.

    Объявление

    Objective C

    GLboolean aglSetFullScreen ( AGLContext ctx, GLsizei width, GLsizei height, GLsizei freq, GLint device );

    Параметры

    ctx

    Контекст рендеринга.

    width

    Ширина, в пикселях, графического устройства. Это значение должно быть точным совпадением графическому устройству.

    height

    Высота, в пикселях, графического устройства. Это значение должно быть точным совпадением графическому устройству.

    freq

    Частота обновления графического устройства, в Герц. Если Вы указываете a frequency из 0, AGL использует самую высокую частоту обновления, доступную для указанного width и height. При указании ненулевой частоты AGL выбирает самую близкую частоту, доступную для данной геометрии. Если дисплей обеспечивает только a 0 частота обновления, AGL соответствует его width и height независимо от значения frequency переданный.

    device

    Этот параметр проигнорирован в OS X, где все устройства, которые совместимы с форматом пикселя контекста рендеринга, рассматривают при выборе полноэкранного устройства графики.

    Возвращаемое значение

    Возвраты GL_FALSE если это перестало работать по какой-либо причине, GL_TRUE иначе. Если ошибка происходит, вызовите функцию aglGetError определить, какова ошибка.

    Обсуждение

    Передача 0 для ширины, 0 для высоты, и 0 поскольку частота устанавливает полноэкранный контекст на текущей высоте, ширине и частоте обновления.

    После вызова этой функции, последующие вызовы рендеринга OpenGL, направленные к полноэкранному графическому устройству. Контекст рендеринга должен быть создан относительно формата пикселя, поддерживающего полноэкранное устройство, которое можно запросить путем передачи AGL_FULLSCREEN к функции aglChoosePixelFormat. aglSetFullScreen функция также выполняет все действия, выполняемые aglUpdateContext. aglSetFullScreen функционируйте информация об использовании, полученная из использования объекта формата пикселя для создания контекста рендеринга для выбора глубины цвета для полноэкранного режима отображения.

    Когда контекст рендеринга первоначально присоединен к полноэкранному устройству графики, его область просмотра установлена в полный размер устройства. Если контекст рендеринга впоследствии присоединен к тому же устройству, его область просмотра неизменна. Для отключения контекста рендеринга вызвать aglSetDrawable с draw набор параметра к NULL.

    Оператор импорта

    Objective C

    @import AGL;

    Доступность

    Доступный в OS X v10.0 и позже.

    Осуждаемый в OS X v10.6.

    См. также

    aglGetDrawable

  • Присоединяет контекст рендеринга к внеэкранной области памяти.

    Объявление

    Objective C

    GLboolean aglSetOffScreen ( AGLContext ctx, GLsizei width, GLsizei height, GLsizei rowbytes, GLvoid *baseaddr );

    Параметры

    ctx

    Контекст рендеринга, возвращенный функцией aglCreateContext.

    width

    Ширина, в пикселях, внеэкранной области памяти.

    height

    Высота, в пикселях, внеэкранной области памяти.

    rowbytes

    Число байтов в каждой строке внеэкранной области памяти.

    baseaddr

    Указатель на базовый адрес области памяти.

    Возвращаемое значение

    Возвраты GL_FALSE если это перестало работать по какой-либо причине, GL_TRUE иначе. Если это перестало работать, вызовите функцию aglGetError определить, какова ошибка.

    Обсуждение

    После вызова этой функции последующие вызовы рендеринга OpenGL изменяют внеэкранную память. Контекст рендеринга должен быть создан относительно формата пикселя, поддерживающего вне экрана рендеринг, который можно запросить путем передачи AGL_OFFSCREEN к aglChoosePixelFormat функция. aglSetOffScreen функция также выполняет все действия, выполняемые aglUpdateContext. Размер пикселя формата пикселя установлен так, чтобы это было равно буферной глубине внеэкранной области.

    Когда контекст рендеринга присоединен к внеэкранной области памяти, ее область просмотра установлена в полный размер внеэкранной области.

    Оператор импорта

    Objective C

    @import AGL;

    Доступность

    Доступный в OS X v10.0 и позже.

    Осуждаемый в OS X v10.7.

  • Создает пиксельный буфер указанного размера, совместимого с указанной целью текстуры.

    Объявление

    Objective C

    GLboolean aglCreatePBuffer ( GLint width, GLint height, GLenum target, GLenum internalFormat, GLint max_level, AGLPbuffer *pbuffer );

    Параметры

    width

    Ширина, в пикселях, пиксельного буфера.

    height

    Высота, в пикселях, пиксельного буфера.

    target

    Константа, указывающая тип пиксельной буферной целевой текстуры. Можно предоставить любую из следующих целей текстуры:

    • GL_TEXTURE_2D, текстура, размерности которой являются питанием два.

    • GL_TEXTURE_RECTANGLE_EXT, текстура, размерности которой не являются питанием два.

    • GL_TEXTURE_CUBE_MAP, отображенная кубическая текстура.

    internalFormat

    Константа, указывающая внутренний цветной формат пиксельного буфера, который может быть GL_RGB или GL_RGBA. Управления форматом, используется ли альфа-канал пиксельного буфера для текстурирования операций.

    max_level

    Максимальный уровень допустимой подробности множественного отображения. Передача 0 для пиксельного буфера это не использует, множественно отображается. Значение передало, никогда не должен превышать фактическое максимальное количество уровней множественного отображения, которые могут быть представлены с данной шириной и высотой.

    pbuffer

    По возврату, точкам к новому пиксельному буферному объекту.

    Возвращаемое значение

    Возвраты GL_FALSE если это перестало работать по какой-либо причине, GL_TRUE иначе. Если ошибка происходит, вызовите функцию aglGetError определить, какова ошибка.

    Обсуждение

    Эта функция не имеет никакого знания контекстов OpenGL или объектов формата пикселя и в частности не выделяет хранение, необходимое для буфера фактического пикселя. Когда Вы вызываете функцию, эти операции происходят aglSetPBuffer.

    Можно определить размерные пределы пиксельного буфера путем вызывания функции OpenGL glGetInteger. Можно счесть максимальный размер поддерживаемым путем запросов GL_MAX_VIEWPORT_DIMS и минимальный размер путем запросов GL_MIN_PBUFFER_VIEWPORT_DIMS_APPLE, который возвращает два целочисленных значения (подобный GL_MAX_VIEWPORT_DIMS). Все пиксельные буферные размерности, которые Вы запрашиваете с функцией aglCreatePBuffer должен находиться в пределах этих пределов (включительно) и должен соответствовать любым ограничениям, наложенным текстурой, предназначаются для Вас выбор.

    Максимальный размер области просмотра, поддерживаемый в OS X, является довольно большим. Необходимо учесть сумму видеопамяти или системной памяти, требуемой поддерживать требуемый пиксельный размер буфера, включая дополнительную память, необходимую для многократных буферов и опций, таких как мультивыборка.

    Оператор импорта

    Objective C

    @import AGL;

    Доступность

    Доступный в OS X v10.3 и позже.

    Осуждаемый в OS X v10.7.

  • Высвобождает средства, связанные с пиксельным буферным объектом.

    Объявление

    Objective C

    GLboolean aglDestroyPBuffer ( AGLPbuffer pbuffer );

    Параметры

    pbuffer

    Пиксельный буфер возражает, чьи средства Вы хотите высвободить.

    Возвращаемое значение

    Возвраты GL_FALSE если это перестало работать по какой-либо причине, GL_TRUE иначе. Если ошибка происходит, вызовите функцию aglGetError определить, какова ошибка.

    Обсуждение

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

    Оператор импорта

    Objective C

    @import AGL;

    Доступность

    Доступный в OS X v10.3 и позже.

    Осуждаемый в OS X v10.7.

    См. также

    aglCreatePBuffer

  • Получает информацию, описывающую указанный пиксельный буферный объект.

    Объявление

    Objective C

    GLboolean aglDescribePBuffer ( AGLPbuffer pbuffer, GLint *width, GLint *height, GLenum *target, GLenum *internalFormat, GLint *max_level );

    Параметры

    pbuffer

    Пиксельный буферный объект.

    width

    По возврату, точкам к ширине, в пикселях, пиксельного буфера.

    height

    По возврату, точкам к высоте, в пикселях, пиксельного буфера.

    target

    По возврату, точкам к константе, указывающей пиксельный буферный целевой тип текстуры, такой как:

    • GL_TEXTURE_2D, текстура, размерности которой являются питанием два.

    • GL_TEXTURE_RECTANGLE_EXT, текстура, размерности которой не являются питанием два.

    • GL_TEXTURE_CUBE_MAP, отображенная кубическая текстура.

    internalFormat

    По возврату, точкам к константе, указывающей внутренний цветной формат пиксельного буфера — также GL_RGB или GL_RGBA.

    max_level

    По возврату, точкам к максимальному уровню подробности множественного отображения или 0 если пиксельный буфер не использует, множественно отображается.

    Возвращаемое значение

    Возвраты GL_FALSE если это перестало работать по какой-либо причине, GL_TRUE иначе. Если ошибка происходит, вызовите функцию aglGetError определить, какова ошибка.

    Обсуждение

    Ширина, высота, цель текстуры и внутренний цветной формат текстуры пиксельного буферного объекта установлены при его создании и не могут быть изменены, не уничтожая и затем создавая объект снова. Когда пиксельный буферный объект присоединен к контексту рендеринга путем вызывания функции aglSetPBuffer, уровень установлен.

    Оператор импорта

    Objective C

    @import AGL;

    Доступность

    Доступный в OS X v10.3 и позже.

    Осуждаемый в OS X v10.7.

    См. также

    aglCreatePBuffer

  • Получает пиксельный буфер и его параметры для указанного контекста рендеринга.

    Объявление

    Objective C

    GLboolean aglGetPBuffer ( AGLContext ctx, AGLPbuffer *pbuffer, GLint *face, GLint *level, GLint *screen );

    Параметры

    ctx

    Контекст рендеринга.

    pbuffer

    По возврату, точкам к пиксельному буферному объекту, присоединенному к контексту рендеринга.

    face

    По возврату, точкам к поверхности карты куба, установленной, если пиксельный буферный целевой тип текстуры GL_TEXTURE_CUBE_MAP; иначе 0 поскольку вся другая текстура предназначается для типов.

    level

    По возврату, точкам к текущему уровню множественного отображения для рисования.

    screen

    По возврату, точкам к текущему виртуальному экранному числу, как установлено последним допустимым вызовом к aglSetPBuffer.

    Возвращаемое значение

    Возвраты GL_FALSE если это перестало работать по какой-либо причине, GL_TRUE иначе. Если ошибка происходит, вызовите функцию aglGetError определить, какова ошибка.

    Оператор импорта

    Objective C

    @import AGL;

    Доступность

    Доступный в OS X v10.3 и позже.

    Осуждаемый в OS X v10.7.

    См. также

    aglSetPBuffer

  • Присоединяет пиксельный буферный объект к контексту рендеринга.

    Объявление

    Objective C

    GLboolean aglSetPBuffer ( AGLContext ctx, AGLPbuffer pbuffer, GLint face, GLint level, GLint screen );

    Параметры

    ctx

    Контекст рендеринга.

    pbuffer

    Пиксельный буферный объект.

    face

    Если буферная цель текстуры является типом, карта куба обращается, чтобы нарисовать GL_TEXTURE_CUBE_MAP; иначе передача 0.

    level

    Уровень множественного отображения для рисования. Когда пиксельный буферный объект создавался, это не должно превышать максимальный набор уровня множественного отображения. Передача 0 для не поддерживающей цели текстуры множественно отображается.

    screen

    Виртуальное экранное значение. Виртуальный экран определяет средство рендеринга, что использование OpenGL для рисования к пикселю буферизует объект. Для лучшей производительности, для пиксельного буфера, используемого в качестве источника текстуры, необходимо предоставить виртуальное экранное значение, приводящее к использованию того же средства рендеринга, используемого контекстом, это - цель текстурирования.

    Возвращаемое значение

    Возвраты GL_FALSE если это перестало работать по какой-либо причине, GL_TRUE иначе. Если ошибка происходит, вызовите функцию aglGetError определить, какова ошибка. Дополнительную информацию см. в Обсуждении.

    Обсуждение

    В первый раз, когда Вы вызываете эту функцию для определенного пиксельного буферного объекта, система создает необходимые буферы. Буферы создаются для поддержки форматов пикселя, используемых для создания контекста рендеринга. Требования хранения для пикселя буферизуют объекты, которые могут быть довольно большими, очень подобны требованиям для окон или представлений с присоединенными контекстами OpenGL. Все drawable объекты конкурируют за те же дефицитные ресурсы. Эта функция может перестать работать, существует недостаточно непрерывного VRAM для каждого буфера. Лучше кодировать защитно со схемой, сокращающей потребление ресурсов, не заставляя приложение обратиться к отказу. Если, конечно, отказ не является единственной жизнеспособной альтернативой.

    Возможность присоединить pbuffer к контексту поддерживается только на средствах рендеринга тот экспорт GL_APPLE_pixel_buffer в GL_EXTENSIONS строка. Прежде, чем вызвать эту функцию, необходимо программно определить, возможно ли присоединить pbuffer к контексту путем запросов GL_EXTENSIONS в контексте и поиске GL_APPLE_pixel_buffer. Если то расширение не будет присутствовать, то средство рендеринга не позволит устанавливать pbuffer. (В этом случае функция правильно возвращается GL_FALSE, несмотря на то, что ошибка, возвращенная aglGetError может вводить в заблуждение.)

    В порядке производительности это средства рендеринга, которых необходимо рассмотреть использование при установке контекста рендеринга для присоединения к pbuffer:

    • Аппаратное средство рендеринга.

    • Универсальный рендеринг, но только с внеэкранным форматом пикселя и glTexSubImage.

    • Средство рендеринга программного обеспечения Apple, поддерживающее pbuffers в OS X v10.4.8 и позже.

    Оператор импорта

    Objective C

    @import AGL;

    Доступность

    Доступный в OS X v10.3 и позже.

    Осуждаемый в OS X v10.7.

    См. также

    aglGetPBuffer

  • Связывает содержание пиксельного буфера к источнику данных для объекта текстуры.

    Объявление

    Objective C

    GLboolean aglTexImagePBuffer ( AGLContext ctx, AGLPbuffer pbuffer, GLint source );

    Параметры

    ctx

    Контекст рендеринга, который является целевым контекстом для работы текстуры. Это - контекст, к которому Вы планируете представить содержание. Это не контекст, присоединенный к пиксельному буферу.

    pbuffer

    Пиксельный буферный объект.

    source

    Исходный буфер для текстурирования от, который должен быть допустимым буфером OpenGL такой как GL_FRONT или GL_BACK и должно быть совместимо с буфером и атрибутами средства рендеринга, что Вы раньше создавали контекст рендеринга, присоединенный к пиксельному буферу. Это означает, что пиксельный буфер должен обладать рассматриваемым буфером для работы текстурирования для следования.

    Возвращаемое значение

    Возвраты GL_FALSE если это перестало работать по какой-либо причине, GL_TRUE иначе. Если ошибка происходит, вызовите функцию aglGetError определить, какова ошибка.

    Обсуждение

    Необходимо генерировать и связать имя текстуры (использующий стандартные вызовы текстурирования OpenGL), который совместим с пиксельной буферной целью текстуры. Не предоставляйте объект текстуры, использовавшийся ранее для непиксельного буфера текстурирование операций, если Вы сначала не вызывают функцию OpenGL glDeleteTextures и затем регенерируйте имя текстуры.

    При изменении содержания пиксельного буфера, который использование множественно отображает уровни, необходимо вызвать эту функцию снова прежде, чем нарисовать с пиксельным буфером, гарантировать, что содержание синхронизируется с OpenGL. Для пиксельных буферов без множественных отображений просто снова переплетите к объекту текстуры синхронизировать содержание.

    Никакие вызовы текстурирования OpenGL, изменяющие пиксельное буферное содержание текстуры, не разрешены (такой как glTexSubImage2D или glCopyTexImage2D) с пикселем буферизуют текстуру как место назначения. Разрешено использовать команды текстурирования для чтения данных из пиксельной буферной текстуры, такой как glCopyTexImage2D, с пикселем буферизуют текстуру как источник. Также законно использовать функции OpenGL такой как glReadPixels для чтения содержания пикселя буферизуют непосредственно через пиксельный буферный контекст.

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

    Когда пиксельный буферный объект является источником текстуры, Вы не должны совместно использовать контекст. Можно использовать независимые форматы пикселя и контексты OpenGL и для пиксельного буфера и для целевого drawable объекта, не совместно используя ресурсы, и все еще текстурировать использование пиксельного буфера в целевом контексте.

    Для получения дополнительной информации о том, как использовать пиксельный буферный объект в качестве источника текстуры, см. Руководство по программированию OpenGL для Mac.

    Оператор импорта

    Objective C

    @import AGL;

    Доступность

    Доступный в OS X v10.3 и позже.

    Осуждаемый в OS X v10.7.

  • Позволяет текстурировать от drawable объекта, имеющего присоединенный контекст рендеринга, с помощью поверхностного содержания в качестве исходных данных для текстуры.

    Объявление

    Objective C

    void aglSurfaceTexture ( AGLContext context, GLenum target, GLenum internalformat, AGLContext surfacecontext );

    Параметры

    context

    Контекст рендеринга присоединил к окну, это - цель работы текстуры.

    target

    Константа, указывающая целевую текстуру OpenGL. Можно предоставить любую из целей текстуры, определенных спецификацией OpenGL, включая:

    • GL_TEXTURE_2D, текстура, размерности которой являются питанием два.

    • GL_TEXTURE_RECTANGLE_EXT, текстура, размерности которой не являются питанием два.

    • GL_TEXTURE_CUBE_MAP, отображенная кубическая текстура.

    internalformat

    Константа, указывающая внутренний цветной формат текстуры — также GL_RGB или GL_RGBA.

    surfacecontext

    Контекст рендеринга это присоединено к окну, это - источник данных текстуры.

    Обсуждение

    aglSurfaceTexture функция ведет себя подобная функции glTexImage2D. Текстура целевой и внутренний формат должен поддерживаться средством рендеринга целевого контекста рендеринга и геометрией источника drawable объект, должна быть совместима с целью текстуры. Например, если цель текстуры GL_TEXTURE_2D, окно должно соответствовать двухмерному питанием.

    Прежде, чем вызвать эту функцию необходимо использовать вызовы OpenGL для установки текстуры OpenGL, именуемой целевым параметром. Т.е. позвольте текстурировать, генерируйте имя текстуры, свяжите его с целью текстуры и т.д. Для получения дополнительной информации см. Руководство по программированию OpenGL.

    Цель и исходные окна должны использовать то же средство рендеринга (виртуальный экран) или функциональные сбои, как правило не текстурируя целевой контекст рендеринга.

    Если контекст рендеринга поверхности не присоединен к оконному drawable объекту, состояние ошибки происходит; drawable объект не может быть внеэкранной областью или пиксельным буфером. Также возможно получить стандартные ошибки OpenGL, подобные ошибкам, которые могут произойти для функции glTexImage2D. Используйте функцию glError запрашивать ошибки OpenGL.

    Оператор импорта

    Objective C

    @import AGL;

    Доступность

    Доступный в OS X v10.2 и позже.

    Осуждаемый в OS X v10.5.

  • aglGetError aglGetError (OS X v10.9)

    Возвращает код ошибки AGL.

    Объявление

    Objective C

    GLenum aglGetError ( void );

    Возвращаемое значение

    Значение глобального флага ошибки AGL. Посмотрите Коды ошибки для полного описания кодов ошибки, которые могут быть возвращены.

    Обсуждение

    Эта функция подобна функции OpenGL glGetError. Вы вызываете функцию aglGetError каждый раз, когда AGL функционирует возвраты FALSE получать код ошибки связалось с состоянием ошибки. Каждая ошибка присваивается числовой код и символьное имя. Когда ошибка происходит, флаг ошибки установлен в надлежащее значение кода ошибки. Никакие другие ошибки не зарегистрированы до aglGetError вызывается, код ошибки возвращается, и флаг сбрасывается к AGL_NO_ERROR. Если вызов к aglGetError возвраты AGL_NO_ERROR, это означает, что не было никакой обнаруживаемой ошибки начиная с последней возможности к aglGetError.

    Оператор импорта

    Objective C

    @import AGL;

    Доступность

    Доступный в OS X v10.0 и позже.

    Осуждаемый в OS X v10.9.

    См. также

    aglErrorString

  • Возвращает строку, описывающую указанный код ошибки AGL.

    Объявление

    Objective C

    const GLubyte * aglErrorString ( GLenum code );

    Параметры

    code

    Код ошибки AGL, возвращенный функцией aglGetError. Для описания этих констант посмотрите Коды ошибки.

    Возвращаемое значение

    Строка ошибки, описывающая код ошибки, передала в code параметр. Если код недопустим, возвращает строку “Никакой такой код ошибки”.

    Оператор импорта

    Objective C

    @import AGL;

    Доступность

    Доступный в OS X v10.0 и позже.

    Осуждаемый в OS X v10.9.

    См. также

    aglGetError

  • aglConfigure aglConfigure (OS X v10.9)

    Устанавливает значение глобальной опции.

    Объявление

    Objective C

    GLboolean aglConfigure ( GLenum pname, GLuint param );

    Параметры

    pname

    Имя опции, значение которой Вы хотите установить. Посмотрите Глобально Сконфигурированные Опции для списка констант, которые можно передать.

    param

    Значение для установки опции в.

    Возвращаемое значение

    Возвраты GL_FALSE если это перестало работать по какой-либо причине, GL_TRUE иначе. Если ошибка происходит, вызовите функцию aglGetError определить, какова ошибка.

    Обсуждение

    Эта функция изменяет значения опций, влияющих на работу OpenGL во всех контекстах рендеринга в приложении, не только текущем контексте рендеринга.

    Оператор импорта

    Objective C

    @import AGL;

    Доступность

    Доступный в OS X v10.0 и позже.

    Осуждаемый в OS X v10.9.

  • Получает номера основной версии и номера вспомогательной версии библиотеки AGL.

    Объявление

    Objective C

    void aglGetVersion ( GLint *major, GLint *minor );

    Параметры

    major

    По возврату, точкам ему номер основной версии библиотеки AGL.

    minor

    По возврату, точкам к номеру вспомогательной версии библиотеки AGL.

    Обсуждение

    Реализации AGL с тем же номером основной версии вверх совместимы, означая, что реализация с самым высоким незначительным числом является надмножеством версии с самым низким незначительным числом.

    Определенные функции, такие как индексная поддержка цвета, осуждаются в OS X. Текущая версия AGL не могла бы быть полным надмножеством AGL для Mac OS 9 или более ранних версий AGL.

    Оператор импорта

    Objective C

    @import AGL;

    Доступность

    Доступный в OS X v10.0 и позже.

    Осуждаемый в OS X v10.9.

  • Сбрасывает библиотеку AGL.

    Оператор осуждения

    Эта функция не необходима в OS X.

    Объявление

    Objective C

    void aglResetLibrary ( void );

    Оператор импорта

    Objective C

    @import AGL;

    Доступность

    Доступный в OS X v10.0 и позже.

    Осуждаемый в OS X v10.9.

  • Получает значение, связанное со свойством средства рендеринга.

    Объявление

    Objective C

    GLboolean aglDescribeRenderer ( AGLRendererInfo rend, GLint prop, GLint *value );

    Параметры

    rend

    Непрозрачный информационный объект средства рендеринга, содержащий описание возможностей средства рендеринга, которые Вы хотите проверить. Вы получаете информационный объект средства рендеринга путем вызывания функции aglQueryRendererInfo.

    prop

    Свойство средства рендеринга, значение которого Вы хотите получить. Посмотрите Свойства Средства рендеринга для списка констант, которые можно предоставить для этого параметра. Существует также много констант, описанных в Атрибутах Буфера и Средства рендеринга, которые можно предоставить к этой функции.

    value

    По возврату, точкам к значению требуемого свойства.

    Возвращаемое значение

    Возвраты GL_FALSE если это перестало работать по какой-либо причине, GL_TRUE иначе. Если ошибка происходит, вызовите функцию aglGetError определить, какова ошибка.

    Оператор импорта

    Objective C

    @import AGL;

    Доступность

    Доступный в OS X v10.0 и позже.

    Осуждаемый в OS X v10.9.

  • Освобождает ресурсы, связанные с информационным объектом средства рендеринга.

    Объявление

    Objective C

    void aglDestroyRendererInfo ( AGLRendererInfo rend );

    Параметры

    rend

    Информационный объект средства рендеринга, средства которого Вы хотите высвободить.

    Обсуждение

    AGL устанавливает a AGL_BAD_RENDINFO ошибка, если Вы передаете недопустимый информационный объект средства рендеринга. Можно проверить на эту ошибку путем вызова aglGetError.

    Оператор импорта

    Objective C

    @import AGL;

    Доступность

    Доступный в OS X v10.0 и позже.

    Осуждаемый в OS X v10.9.

    См. также

    aglQueryRendererInfo

  • Возвращает следующий информационный объект средства рендеринга.

    Объявление

    Objective C

    AGLRendererInfo aglNextRendererInfo ( AGLRendererInfo rend );

    Параметры

    rend

    Информационный объект средства рендеринга, содержащий один или несколько информационных объектов средства рендеринга. Вы получаете информационный объект средства рендеринга путем вызывания функции aglQueryRendererInfo.

    Возвращаемое значение

    Следующий информационный объект средства рендеринга в списке. Возвраты NULL если функция перестала работать по какой-либо причине, если объект является последним в списке или. В случае отказа вызовите функцию aglGetError определить, какова ошибка.

    Обсуждение

    Вы обычно используете эту функцию для итерации через список информационных объектов средства рендеринга, возвращенных функцией aglQueryRendererInfo. Большинство систем имеет больше чем одно средство рендеринга, установленное, потому что поддержка различных буферных глубин обычно предоставляется отдельными средствами рендеринга.

    Оператор импорта

    Objective C

    @import AGL;

    Доступность

    Доступный в OS X v10.0 и позже.

    Осуждаемый в OS X v10.9.

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

    Оператор осуждения

    Вместо этого используйте aglQueryRendererInfoForCGDirectDisplayIDs.

    Объявление

    Objective C

    AGLRendererInfo aglQueryRendererInfo ( const AGLDevice *gdevs, GLint ndev );

    Параметры

    gdevs

    Указатель на список графических устройств, которыми Вы хотите ограничить запрос. Передача NULL получить информацию для всех графических устройств в системе.

    ndev

    Число графических устройств в gdev. Передача 0 если gdevs NULL. AGL устанавливает AGL_BAD_DEVICE ошибка, если ndev параметр является ненулевым и gdevs параметр не является массивом допустимых устройств.

    Возвращаемое значение

    Информационный объект средства рендеринга, описывающий все средства рендеринга, которые в состоянии управлять устройствами, указанными gdevs параметр. Функциональные возвраты NULL если это перестало работать по какой-либо причине. Если ошибка происходит, вызовите функцию aglGetError определить, какова ошибка.

    Обсуждение

    Эта функция обычно возвращает список больше чем одного информационного объекта средства рендеринга — один для каждого средства рендеринга, найденного в системе. К данным доступа в первом олове информационного объекта средства рендеринга список вызовите функцию aglDescribeRenderer. К данным доступа в информационном объекте средства рендеринга, который не является первым в списке, использовать aglNextRendererInfo.

    Оператор импорта

    Objective C

    @import AGL;

    Доступность

    Доступный в OS X v10.0 и позже.

    Осуждаемый в OS X v10.5.

    См. также

    aglDestroyRendererInfo

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

    Объявление

    Objective C

    AGLRendererInfo aglQueryRendererInfoForCGDirectDisplayIDs ( const CGDirectDisplayID *dspIDs, GLint ndev );

    Параметры

    dspIDs

    Указатель на список IDs, которым Вы хотите ограничить запрос.. Передача NULL получить информацию для всех графических устройств в системе.

    ndev

    Число графических устройств в dspIDs. Передача 0 если dspIDs NULL. AGL устанавливает AGL_BAD_DEVICE ошибка, если ndev параметр является ненулевым и dspIDs параметр не является массивом допустимых устройств.

    Оператор импорта

    Objective C

    @import AGL;

    Доступность

    Доступный в OS X v10.5 и позже.

    Осуждаемый в OS X v10.9.

  • aglUseFont aglUseFont (OS X v10.5)

    Создает списки дисплея с поэлементным отображением из шрифта.

    Объявление

    Objective C

    GLboolean aglUseFont ( AGLContext ctx, GLint fontID, Style face, GLint size, GLint first, GLint count, GLint base );

    Параметры

    ctx

    Контекст рендеринга.

    fontID

    ID шрифта связался со шрифтом, символьные глифы которого Вы хотите использовать. fontID значение может идентифицировать любое семейство шрифтов, которое допустимо для передачи в TextFont функция.

    face

    Стиль шрифта. face значение может быть любым допустимым стилем, который может быть передан в TextFace функция.

    size

    Размер шрифта.

    first

    Индекс первого глифа, который будет использовать.

    count

    Число глифов для использования.

    base

    Индекс первого дисплейного списка, который генерирует.

    Возвращаемое значение

    Возвраты GL_FALSE если это перестало работать по какой-либо причине, GL_TRUE иначе. Если ошибка происходит, вызовите функцию aglGetError определить, какова ошибка.

    Обсуждение

    Дисплейный список содержит одну или более команд OpenGL, которые сохранены и доступны, чтобы быть выполненными позже Вашим приложением. aglUseFont функция генерирует ряд дисплейных списков, каждый из которых содержит единственный вызов к OpenGL glBitmap функция. AGL генерирует имена для каждого дисплейного списка при помощи значения, указанного в base параметр и увеличивающийся последовательно до base + count – 1.

    Прототип для glBitmap функция:

    • void glBitmap(GLsizei width,
    • GLsizei height,
    • GLfloat xorig,
    • GLfloat yorig,
    • GLfloat xmove,
    • GLfloat ymove,
    • const GLubyte *bitmap)

    AGL генерирует параметры для каждого glBitmap команда в каждом дисплейном списке с помощью соблюдающих правил:

    • Параметры форматирования —xorig, yorig, width, и height— вычислены из метрик шрифта, предоставленных в шрифте как 0, спуск шрифта – 1, ширина шрифта и подъем шрифта + спуск, соответственно.

    • xmove параметр на основе width метрика глифа.

    • ymove установлен в 0.

    • Изображение глифа преобразовывается в надлежащий формат для bitmap параметр.

    AGL создает пустые дисплейные списки для всех глифов, которые Вы запрашиваете и которые не определяются в шрифте. Для текущих шрифтов посмотрите файл fonts.h.

    Для получения дополнительной информации о glBitmap функция видит Справочник OpenGL. Вы могли бы также хотеть посмотреть на glNewList функция, которая является функцией что использование AGL для генерации дисплейных списков.

    Оператор импорта

    Objective C

    @import AGL;

    Доступность

    Доступный в OS X v10.0 и позже.

    Осуждаемый в OS X v10.5.

  • Возвращает текущее виртуальное экранное число, связанное с контекстом рендеринга.

    Объявление

    Objective C

    GLint aglGetVirtualScreen ( AGLContext ctx );

    Параметры

    ctx

    Контекст рендеринга.

    Возвращаемое значение

    Возвращает виртуальное экранное число контекста. Значение всегда 0 в единственной системе контроля и –1 если функция перестала работать по какой-либо причине. Если ошибка происходит, вызовите функцию aglGetError определить, какова ошибка.

    Обсуждение

    Текущий виртуальный экран установлен автоматически функцией aglUpdateContext. Когда drawable объект перемещен или изменен через графические границы устройств, текущий виртуальный экран может измениться. Изменение на текущем виртуальном экране может влиять на возвращаемые значения некоторых функций OpenGL и в большинстве случаев также означает, что изменилось средство рендеринга.

    Для получения дальнейшей информации на виртуальных экранах, см. Руководство по программированию OpenGL для Mac.

    Оператор импорта

    Objective C

    @import AGL;

    Доступность

    Доступный в OS X v10.0 и позже.

    Осуждаемый в OS X v10.9.

    См. также

    aglSetVirtualScreen

  • Вызывает последующие команды OpenGL к указанному виртуальному экрану.

    Объявление

    Objective C

    GLboolean aglSetVirtualScreen ( AGLContext ctx, GLint screen );

    Параметры

    ctx

    Контекст рендеринга.

    screen

    Виртуальное экранное число, которое должно быть значением между 0 и число виртуальных экранов минус один. Можно получить число виртуальных экранов, доступных связанный с контекстом рендеринга путем вызывания функции aglDescribePixelFormat, передача в объекте формата пикселя раньше создавала контекст рендеринга и постоянный атрибут AGL_VIRTUAL_SCREEN.

    Возвращаемое значение

    Возвраты GL_FALSE если это перестало работать по какой-либо причине, GL_TRUE иначе. Если ошибка происходит, вызовите функцию aglGetError определить, какова ошибка.

    Обсуждение

    Необходимо использовать aglSetVirtualScreen функционируйте только, когда будет необходимо переопределить поведение по умолчанию. Текущий виртуальный экран обычно устанавливается автоматически функциями aglSetDrawable или aglUpdateContext. Установка виртуального экрана вынуждает средство рендеринга, связанное с виртуальным экраном обработать команды OpenGL, данные к указанному контексту. Изменение виртуального экрана изменяет текущее средство рендеринга. Поскольку текущий виртуальный экран определяет, какое средство рендеринга OpenGL обрабатывает команды, возвращаемые значения всех glGetXXX функции могут быть затронуты текущим виртуальным экраном.

    Для получения дальнейшей информации на виртуальных экранах, см. Руководство по программированию OpenGL для Mac.

    Оператор импорта

    Objective C

    @import AGL;

    Доступность

    Доступный в OS X v10.0 и позже.

    Осуждаемый в OS X v10.9.

    См. также

    aglGetVirtualScreen

  • Устанавливает контекст AGL в указанное окно.

    Объявление

    Objective C

    GLboolean aglSetWindowRef ( AGLContext ctx, WindowRef window );

    Параметры

    ctx

    Контекст AGL.

    window

    Окно для установки.

    Возвращаемое значение

    true если успешно установлено окно; false иначе.

    Оператор импорта

    Objective C

    @import AGL;

    Доступность

    Доступный в OS X v10.5 и позже.

    Осуждаемый в OS X v10.9.

  • Получает окно, связанное с контекстом AGL.

    Объявление

    Objective C

    WindowRef aglGetWindowRef ( AGLContext ctx );

    Параметры

    ctx

    Контекст AGL, окно которого Вы хотите получить.

    Возвращаемое значение

    Окно связалось с контекстом.

    Оператор импорта

    Objective C

    @import AGL;

    Доступность

    Доступный в OS X v10.5 и позже.

    Осуждаемый в OS X v10.9.

  • Устанавливает контекст AGL в указанный объект HIView.

    Объявление

    Objective C

    GLboolean aglSetHIViewRef ( AGLContext ctx, HIViewRef hiview );

    Параметры

    ctx

    Контекст AGL.

    hiview

    HIView возражают для установки.

    Возвращаемое значение

    true если успешно установлен объект HIView; false иначе.

    Оператор импорта

    Objective C

    @import AGL;

    Доступность

    Доступный в OS X v10.5 и позже.

    Осуждаемый в OS X v10.9.

  • Получает объект HIView, связанный с контекстом AGL.

    Объявление

    Objective C

    HIViewRef aglGetHIViewRef ( AGLContext ctx );

    Параметры

    ctx

    Контекст AGL, HIView которого возражают Вам, хочет получить.

    Возвращаемое значение

    Объект HIView связался с контекстом.

    Оператор импорта

    Objective C

    @import AGL;

    Доступность

    Доступный в OS X v10.5 и позже.

    Осуждаемый в OS X v10.9.

Типы данных

  • Представляет указатель на непрозрачный объект контекста AGL.

    Объявление

    Objective C

    typedef struct __AGLContextRec *AGLContext;

    Обсуждение

    Этот тип данных указывает на структуру, что использование AGL для поддержания состояния и другой информации связалось с контекстом рендеринга OpenGL. Используйте функции, описанные в Управляющих Контекстах и Получении и Установке Опций Контекста создать, управлять, получить доступ, и освободить объект контекста AGL.

    Оператор импорта

    Objective C

    @import AGL;

    Доступность

    Доступный в OS X v10.0 и позже.

    Осуждаемый в OS X v10.9.

  • Определяет ссылку на список графических устройств.

    Объявление

    Objective C

    typedef GDHandle AGLDevice;

    Оператор импорта

    Objective C

    @import AGL;

    Доступность

    Доступный в OS X v10.0 и позже.

    Осуждаемый в OS X v10.5.

  • Определяет непрозрачный тип данных, представляющий окно Carbon.

    Объявление

    Objective C

    typedef CGrafPtr AGLDrawable;

    Обсуждение

    Этот тип данных указывает на структуру, что использование AGL для отслеживания информацию должно было передать операции рендеринга от битов в памяти к экранным пикселям, связанным с окном Carbon. Этим типом данных является CGrafPtr «под капотом». Функция Менеджера окон GetWindowPort возвраты CGrafPtr связанный с окном Carbon.

    Оператор импорта

    Objective C

    @import AGL;

    Доступность

    Доступный в OS X v10.0 и позже.

    Осуждаемый в OS X v10.5.

  • Представляет указатель на буферный объект непрозрачного пикселя.

    Объявление

    Objective C

    typedef struct __AGLPBufferRec *AGLPbuffer;

    Обсуждение

    Этот тип данных указывает на структуру, что AGL использует для аппаратно ускоренного внеэкранного получения. Используйте функции, описанные в Управляющих Пиксельных Буферах, чтобы создать, управлять, получить доступ, и освободить пиксельный буферный объект.

    Оператор импорта

    Objective C

    @import AGL;

    Доступность

    Доступный в OS X v10.0 и позже.

    Осуждаемый в OS X v10.9.

  • Представляет указатель на объект формата непрозрачного пикселя.

    Объявление

    Objective C

    typedef struct __AGLPixelFormatRec *AGLPixelFormat;

    Обсуждение

    Этот тип данных указывает на структуру что использование AGL для поддержания формата пикселя и виртуальной информации об экране для данного набора средства рендеринга и буферных опций. Используйте функции, описанные в Управлении Объектами Формата пикселя создать, управлять, получить доступ, и освободить объект формата пикселя.

    Оператор импорта

    Objective C

    @import AGL;

    Доступность

    Доступный в OS X v10.0 и позже.

    Осуждаемый в OS X v10.9.

  • Представляет указатель на непрозрачный информационный объект средства рендеринга.

    Объявление

    Objective C

    typedef struct __AGLRendererInfoRec *AGLRendererInfo;

    Обсуждение

    Этот тип данных указывает на структуру, что использование AGL для поддержания информации о средствах рендеринга связалось с дисплеем. Используйте функции, описанные в Получении информации Средства рендеринга, чтобы создать, получить доступ, и освободить информационный объект средства рендеринга.

    Оператор импорта

    Objective C

    @import AGL;

    Доступность

    Доступный в OS X v10.0 и позже.

    Осуждаемый в OS X v10.9.

Константы

  • Определите разрешения для буферов глубины и буферов шаблонов.

    Объявление

    Objective C

    #define AGL_0_BIT 0x00000001 #define AGL_1_BIT 0x00000002 #define AGL_2_BIT 0x00000004 #define AGL_3_BIT 0x00000008 #define AGL_4_BIT 0x00000010 #define AGL_5_BIT 0x00000020 #define AGL_6_BIT 0x00000040 #define AGL_8_BIT 0x00000080 #define AGL_10_BIT 0x00000100 #define AGL_12_BIT 0x00000200 #define AGL_16_BIT 0x00000400 #define AGL_24_BIT 0x00000800 #define AGL_32_BIT 0x00001000 #define AGL_48_BIT 0x00002000 #define AGL_64_BIT 0x00004000 #define AGL_96_BIT 0x00008000 #define AGL_128_BIT 0x00010000

    Константы

    • AGL_0_BIT

      AGL_0_BIT

      Маленькая глубина 0.

      Доступный в OS X v10.0 и позже.

    • AGL_1_BIT

      AGL_1_BIT

      Маленькая глубина 1 бита.

      Доступный в OS X v10.0 и позже.

    • AGL_2_BIT

      AGL_2_BIT

      Маленькая глубина 2 битов.

      Доступный в OS X v10.0 и позже.

    • AGL_3_BIT

      AGL_3_BIT

      Маленькая глубина 3 битов.

      Доступный в OS X v10.0 и позже.

    • AGL_4_BIT

      AGL_4_BIT

      Маленькая глубина 4 битов.

      Доступный в OS X v10.0 и позже.

    • AGL_5_BIT

      AGL_5_BIT

      Маленькая глубина 5 битов.

      Доступный в OS X v10.0 и позже.

    • AGL_6_BIT

      AGL_6_BIT

      Маленькая глубина 6 битов.

      Доступный в OS X v10.0 и позже.

    • AGL_8_BIT

      AGL_8_BIT

      Маленькая глубина 7 битов.

      Доступный в OS X v10.0 и позже.

    • AGL_10_BIT

      AGL_10_BIT

      Маленькая глубина 10 битов.

      Доступный в OS X v10.0 и позже.

    • AGL_12_BIT

      AGL_12_BIT

      Маленькая глубина 12 битов.

      Доступный в OS X v10.0 и позже.

    • AGL_16_BIT

      AGL_16_BIT

      Маленькая глубина 16 битов.

      Доступный в OS X v10.0 и позже.

    • AGL_24_BIT

      AGL_24_BIT

      Маленькая глубина 24 битов.

      Доступный в OS X v10.0 и позже.

    • AGL_32_BIT

      AGL_32_BIT

      Маленькая глубина 32 битов.

      Доступный в OS X v10.0 и позже.

    • AGL_48_BIT

      AGL_48_BIT

      Маленькая глубина 48 битов.

      Доступный в OS X v10.0 и позже.

    • AGL_64_BIT

      AGL_64_BIT

      Маленькая глубина 64 битов.

      Доступный в OS X v10.0 и позже.

    • AGL_96_BIT

      AGL_96_BIT

      Маленькая глубина 96 битов.

      Доступный в OS X v10.0 и позже.

    • AGL_128_BIT

      AGL_128_BIT

      Маленькая глубина 128 битов.

      Доступный в OS X v10.0 и позже.

  • Укажите, что атрибуты раньше создавали объект формата пикселя.

    Объявление

    Objective C

    #define AGL_NONE 0 #define AGL_ALL_RENDERERS 1 #define AGL_BUFFER_SIZE 2 #define AGL_LEVEL 3 #define AGL_RGBA 4 #define AGL_DOUBLEBUFFER 5 #define AGL_STEREO 6 #define AGL_AUX_BUFFERS 7 #define AGL_RED_SIZE 8 #define AGL_GREEN_SIZE 9 #define AGL_BLUE_SIZE 10 #define AGL_ALPHA_SIZE 11 #define AGL_DEPTH_SIZE 12 #define AGL_STENCIL_SIZE 13 #define AGL_ACCUM_RED_SIZE 14 #define AGL_ACCUM_GREEN_SIZE 15 #define AGL_ACCUM_BLUE_SIZE 16 #define AGL_ACCUM_ALPHA_SIZE 17 #define AGL_PIXEL_SIZE 50 #define AGL_MINIMUM_POLICY 51 #define AGL_MAXIMUM_POLICY 52 #define AGL_OFFSCREEN 53 #define AGL_FULLSCREEN 54 #define AGL_SAMPLE_BUFFERS_ARB 55 #define AGL_SAMPLES_ARB 56 #define AGL_AUX_DEPTH_STENCIL 57 #define AGL_COLOR_FLOAT 58 #define AGL_MULTISAMPLE 59 #define AGL_SUPERSAMPLE 60 #define AGL_SAMPLE_ALPHA 61

    Константы

    • AGL_NONE

      AGL_NONE

      Используемый для завершения списка атрибутов формата пикселя.

      Доступный в OS X v10.0 и позже.

    • AGL_ALL_RENDERERS

      AGL_ALL_RENDERERS

      Эта константа является булевым атрибутом. Если это присутствует в массиве атрибутов, выбор формата пикселя открыт для всех доступных средств рендеринга, включая отладку и средства рендеринга специального назначения, которые не являются совместимым OpenGL. Не предоставляйте значение эту константу, потому что ее присутствие в массиве подразумевает true.

      Доступный в OS X v10.0 и позже.

    • AGL_BUFFER_SIZE

      AGL_BUFFER_SIZE

      Присваиваемое значение является неотрицательным целым числом, указывающим число битов на цветной буфер. Для форматов пикселя RGBA размер буфера является суммой красного, зеленого, синего цвета, и альфа-размеры. Для форматов пикселя индекса цвета размер буфера является размером индексов цвета. Самый маленький буфер индекса цвета, по крайней мере, указанного размера предпочтен. Проигнорированный, если AGL_RGBA атрибут утверждается.

      Доступный в OS X v10.0 и позже.

    • AGL_LEVEL

      AGL_LEVEL

      Присваиваемое значение является целым числом, указывающим уровень кадрового буфера формата пикселя. Положительные уровни соответствуют кадровым буферам, накладывающим буфер по умолчанию, и отрицательные уровни соответствуют кадровым буферам, лежавшим в основе уровня по умолчанию. Буферный нуль уровня соответствует кадровому буферу по умолчанию дисплея. Буферный уровень каждый - первый кадровый буфер наложения, уровень два второй кадровый буфер наложения, и т.д. Отрицательные буферные уровни соответствуют, лежал в основе кадровых буферов.

      Доступный в OS X v10.0 и позже.

    • AGL_RGBA

      AGL_RGBA

      Эта константа является булевым атрибутом. Если это присутствует в массиве атрибутов, указывает, что цвет буферизует хранилище, красное, зеленое, синее, и альфа-значения. В этом случае только форматы пикселя RGBA рассматривают. Не предоставляйте значение эту константу, потому что ее присутствие в массиве подразумевает true.

      Если этот атрибут не присутствует в массиве атрибутов, цветные буферы хранят индексы цвета. В этом случае только форматы пикселя индекса цвета рассматривают.

      Доступный в OS X v10.0 и позже.

    • AGL_DOUBLEBUFFER

      AGL_DOUBLEBUFFER

      Эта константа является булевым атрибутом. Если это присутствует в массиве атрибутов, только форматы пикселя с двойной буферизацией рассматривают. Иначе, только однобуферные форматы пикселя рассматривают. Не предоставляйте значение эту константу, потому что ее присутствие в массиве подразумевает true.

      Доступный в OS X v10.0 и позже.

    • AGL_STEREO

      AGL_STEREO

      Эта константа является булевым атрибутом. Если это присутствует в массиве атрибутов, только форматы пикселя стерео рассматривают. Иначе, только monoscopic форматы пикселя рассматриваются. Не предоставляйте значение эту константу, потому что ее присутствие в массиве подразумевает true.

      Доступный в OS X v10.0 и позже.

    • AGL_AUX_BUFFERS

      AGL_AUX_BUFFERS

      Присваиваемое значение является неотрицательным целым числом, указывающим число вспомогательных буферов, которые доступны. Значение 0 указывает, что не существуют никакие вспомогательные буферы. Предпочтены форматы пикселя с самым маленьким числом вспомогательных буферов, встречающих или превышающих конкретное количество.

      Доступный в OS X v10.0 и позже.

    • AGL_RED_SIZE

      AGL_RED_SIZE

      Присваиваемое значение является неотрицательным целым числом, указывающим число красных битов компонента. Значение 0 если AGL_RGBA атрибут GL_FALSE. Предпочтен красный буфер, наиболее близко соответствующий указанный размер.

      Доступный в OS X v10.0 и позже.

    • AGL_GREEN_SIZE

      AGL_GREEN_SIZE

      Присваиваемое значение является неотрицательным целым числом, указывающим число зеленых битов компонента. Значение 0 если AGL_RGBA атрибут GL_FALSE. Предпочтен зеленый буфер, наиболее близко соответствующий указанный размер.

      Доступный в OS X v10.0 и позже.

    • AGL_BLUE_SIZE

      AGL_BLUE_SIZE

      Присваиваемое значение является неотрицательным целым числом, указывающим число синих битов компонента. Значение 0 если AGL_RGBA атрибут GL_FALSE. Предпочтен синий буфер, наиболее близко соответствующий указанный размер.

      Доступный в OS X v10.0 и позже.

    • AGL_ALPHA_SIZE

      AGL_ALPHA_SIZE

      Присваиваемое значение является неотрицательным целым числом, указывающим число альфа-компонентных битов. Значение 0 если AGL_RGBA атрибут GL_FALSE. Предпочтен альфа-буфер, наиболее близко соответствующий указанный размер.

      Доступный в OS X v10.0 и позже.

    • AGL_DEPTH_SIZE

      AGL_DEPTH_SIZE

      Присваиваемое значение является неотрицательным целым числом, указывающим число битов в буфере глубины. Предпочтен буфер глубины, наиболее близко соответствующий указанный размер.

      Доступный в OS X v10.0 и позже.

    • AGL_STENCIL_SIZE

      AGL_STENCIL_SIZE

      Присваиваемое значение является неотрицательным целым числом, указывающим число битов в буфере шаблонов. Самый маленький буфер шаблонов, по крайней мере, указанного размера предпочтен.

      Доступный в OS X v10.0 и позже.

    • AGL_ACCUM_RED_SIZE

      AGL_ACCUM_RED_SIZE

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

      Доступный в OS X v10.0 и позже.

    • AGL_ACCUM_GREEN_SIZE

      AGL_ACCUM_GREEN_SIZE

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

      Доступный в OS X v10.0 и позже.

    • AGL_ACCUM_BLUE_SIZE

      AGL_ACCUM_BLUE_SIZE

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

      Доступный в OS X v10.0 и позже.

    • AGL_ACCUM_ALPHA_SIZE

      AGL_ACCUM_ALPHA_SIZE

      Присваиваемое значение является неотрицательным целым числом, указывающим число битов альфы, сохраненной в буфере накопления. Предпочтен альфа-буфер накопления, наиболее близко соответствующий указанный размер.

      Доступный в OS X v10.0 и позже.

    • AGL_PIXEL_SIZE

      AGL_PIXEL_SIZE

      Присваиваемое значение является неотрицательным целым числом, указывающим биты на пиксель кадрового буфера числа. Размер пикселя является числом битов, требуемых сохранить каждый пиксель в цветном буфере, включая неиспользованные биты. Если формат пикселя имеет альфа-канал, который сохранен в отдельном буфере, его размер не включен в размер пикселя.

      Доступный в OS X v10.0 и позже.

    • AGL_MINIMUM_POLICY

      AGL_MINIMUM_POLICY

      Эта константа является булевым атрибутом. Если это присутствует в массиве атрибутов, политика выбора формата пикселя изменена для цвета, глубины и буферов накопления, таким образом, что только рассматривают буферы размера, больше, чем или равный желаемому размеру. Не предоставляйте значение эту константу, потому что ее присутствие в массиве подразумевает true.

      Доступный в OS X v10.0 и позже.

    • AGL_MAXIMUM_POLICY

      AGL_MAXIMUM_POLICY

      Эта константа является булевым атрибутом. Если это присутствует в массиве атрибутов, политика выбора формата пикселя изменена для цвета, глубины и буферов накопления, таким образом, что, если ненулевой размер буфера требуют, предпочтен самый большой доступный буфер. Не предоставляйте значение эту константу, потому что ее присутствие в массиве подразумевает true.

      Доступный в OS X v10.0 и позже.

    • AGL_OFFSCREEN

      AGL_OFFSCREEN

      Эта константа является булевым атрибутом. Если это присутствует в массиве атрибутов, только средства рендеринга, которые способны к рендерингу к внеэкранной области памяти и имеют буферную глубину точно, равняются желаемой буферной глубине, рассматриваются. Не предоставляйте значение эту константу, потому что ее присутствие в массиве подразумевает true, и таким образом включает атрибут.

      Если включено, и если drawable объект, в настоящее время присоединяемый к контексту рендеринга, является внеэкранным drawable объектом, присваиваемые значения являются шириной, высотой и байтами строки внеэкранной области памяти. Если включено, и если drawable объект не является внеэкранным типом, ширина, высота и байты строки - каждый 0. Когда AGL_OFFSCREEN атрибут присутствует, AGL_CLOSEST_POLICY атрибут подразумевается.

      Доступный в OS X v10.0 и позже.

    • AGL_FULLSCREEN

      AGL_FULLSCREEN

      Эта константа является булевым атрибутом. Если это присутствует в массиве атрибутов, только средства рендеринга, которые способны к рендерингу к полноэкранному drawable объекту, рассматривают. Кроме того, gdevs параметр должен быть установлен на указатель на GDevice на котором полноэкранный рендеринг желаем и ndev параметр должен быть установлен на 1.

      Если настоящее, и если drawable объект, который в настоящее время присоединен к контексту рендеринга, является полноэкранным drawable объектом, присваиваемые значения, является шириной, высотой и частотой обновления полноэкранного устройства, округленного к самому близкому целому числу. Если настоящее, и если drawable объект не является полноэкранным типом, шириной, высотой и частотой обновления, является каждым 0.

      Доступный в OS X v10.0 и позже.

    • AGL_SAMPLE_BUFFERS_ARB

      AGL_SAMPLE_BUFFERS_ARB

      Присваиваемое значение является числом мультидемонстрационных буферов.

      Доступный в OS X v10.2 и позже.

    • AGL_SAMPLES_ARB

      AGL_SAMPLES_ARB

      Присваиваемое значение является числом выборок на мультидемонстрационный буфер.

      Доступный в OS X v10.2 и позже.

    • AGL_AUX_DEPTH_STENCIL

      AGL_AUX_DEPTH_STENCIL

      Присваиваемое значение является независимой глубиной и/или буферами шаблонов для вспомогательного буфера.

      Доступный в OS X v10.2 и позже.

    • AGL_COLOR_FLOAT

      AGL_COLOR_FLOAT

      Эта константа является булевым атрибутом. Если это присутствует в массиве атрибутов, цветные буферы хранят пиксели с плавающей точкой. Не предоставляйте значение эту константу, потому что ее присутствие в массиве подразумевает true.

      Доступный в OS X v10.3 и позже.

    • AGL_MULTISAMPLE

      AGL_MULTISAMPLE

      Эта константа является булевым атрибутом. Если это присутствует в массиве атрибутов, указывает подсказку к драйверу, чтобы предпочесть мультивыбирать. Не предоставляйте значение эту константу, потому что ее присутствие в массиве подразумевает true.

      Доступный в OS X v10.3 и позже.

    • AGL_SUPERSAMPLE

      AGL_SUPERSAMPLE

      Эта константа является булевым атрибутом. Если это присутствует в массиве атрибутов, указывает подсказку к драйверу для предпочтения избыточной выборки. Не предоставляйте значение эту константу, потому что ее присутствие в массиве подразумевает true.

      Доступный в OS X v10.3 и позже.

    • AGL_SAMPLE_ALPHA

      AGL_SAMPLE_ALPHA

      Эта константа является булевым атрибутом. Если это присутствует в массиве атрибутов, альфа-фильтрации запроса при мультивыборке. Не предоставляйте значение эту константу, потому что ее присутствие в массиве подразумевает true.

      Доступный в OS X v10.3 и позже.

    Обсуждение

    Каждая из этих констант может быть присвоена, массив атрибута передал функции aglChoosePixelFormat. Они могут также быть переданы функции aglDescribePixelFormat.

  • Определите константы, используемые для установки буферных режимов.

    Объявление

    Objective C

    #define AGL_MONOSCOPIC_BIT 0x00000001 #define AGL_STEREOSCOPIC_BIT 0x00000002 #define AGL_SINGLEBUFFER_BIT 0x00000004 #define AGL_DOUBLEBUFFER_BIT 0x00000008

    Константы

    • AGL_MONOSCOPIC_BIT

      AGL_MONOSCOPIC_BIT

      Левый буфер.

      Доступный в OS X v10.0 и позже.

    • AGL_STEREOSCOPIC_BIT

      AGL_STEREOSCOPIC_BIT

      Левый и правый буфер.

      Доступный в OS X v10.0 и позже.

    • AGL_SINGLEBUFFER_BIT

      AGL_SINGLEBUFFER_BIT

      Передний буфер.

      Доступный в OS X v10.0 и позже.

    • AGL_DOUBLEBUFFER_BIT

      AGL_DOUBLEBUFFER_BIT

      Буфер передней и задней части.

      Доступный в OS X v10.0 и позже.

  • Укажите форматы и информацию макета цветового канала для цветного буфера.

    Объявление

    Objective C

    #define AGL_RGB8_BIT 0x00000001 #define AGL_RGB8_A8_BIT 0x00000002 #define AGL_BGR233_BIT 0x00000004 #define AGL_BGR233_A8_BIT 0x00000008 #define AGL_RGB332_BIT 0x00000010 #define AGL_RGB332_A8_BIT 0x00000020 #define AGL_RGB444_BIT 0x00000040 #define AGL_ARGB4444_BIT 0x00000080 #define AGL_RGB444_A8_BIT 0x00000100 #define AGL_RGB555_BIT 0x00000200 #define AGL_ARGB1555_BIT 0x00000400 #define AGL_RGB555_A8_BIT 0x00000800 #define AGL_RGB565_BIT 0x00001000 #define AGL_RGB565_A8_BIT 0x00002000 #define AGL_RGB888_BIT 0x00004000 #define AGL_ARGB8888_BIT 0x00008000 #define AGL_RGB888_A8_BIT 0x00010000 #define AGL_RGB101010_BIT 0x00020000 #define AGL_ARGB2101010_BIT 0x00040000 #define AGL_RGB101010_A8_BIT 0x00080000 #define AGL_RGB121212_BIT 0x00100000 #define AGL_ARGB12121212_BIT 0x00200000 #define AGL_RGB161616_BIT 0x00400000 #define AGL_ARGB16161616_BIT 0x00800000 #define AGL_INDEX8_BIT 0x20000000 #define AGL_INDEX16_BIT 0x40000000 #define AGL_RGBFLOAT64_BIT 0x01000000 #define AGL_RGBAFLOAT64_BIT 0x02000000 #define AGL_RGBFLOAT128_BIT 0x04000000 #define AGL_RGBAFLOAT128_BIT 0x08000000 #define AGL_RGBFLOAT256_BIT 0x01000000 #define AGL_RGBAFLOAT256_BIT 0x02000000

    Константы

    • AGL_RGB8_BIT

      AGL_RGB8_BIT

      Указывает формат, имеющий 8 бит на пиксель с расположением канала RGB: RGB=7:0, обратная карта цветов.

      Доступный в OS X v10.0 и позже.

    • AGL_RGB8_A8_BIT

      AGL_RGB8_A8_BIT

      Указывает формат бит на пиксель ARGB 8-8 и каналы, расположенные в следующих битах: A=7:0, RGB=7:0, обратная карта цветов.

      Доступный в OS X v10.0 и позже.

    • AGL_BGR233_BIT

      AGL_BGR233_BIT

      Указывает формат, имеющий 8 бит на пиксель с расположением канала RGB и каналы, расположенные в следующих битах: B=7:6, G=5:3, R=2:0

      Доступный в OS X v10.0 и позже.

    • AGL_BGR233_A8_BIT

      AGL_BGR233_A8_BIT

      Указывает формат бит на пиксель ARGB 8-8 и каналы, расположенные в следующих битах: A=7:0, B=7:6, G=5:3, R=2:0

      Доступный в OS X v10.0 и позже.

    • AGL_RGB332_BIT

      AGL_RGB332_BIT

      Указывает формат, имеющий 8 бит на пиксель с расположением канала RGB и каналы, расположенные в следующих битах: R=7:5, G=4:2, B=1:0

      Доступный в OS X v10.0 и позже.

    • AGL_RGB332_A8_BIT

      AGL_RGB332_A8_BIT

      Указывает формат бит на пиксель ARGB 8-8 и каналы, расположенные в следующих битах: A=7:0, R=7:5, G=4:2, B=1:0

      Доступный в OS X v10.0 и позже.

    • AGL_RGB444_BIT

      AGL_RGB444_BIT

      Указывает формат, имеющий 16 бит на пиксель с расположением канала RGB и каналы, расположенные в следующих битах: R=11:8, G=7:4, B=3:0

      Доступный в OS X v10.0 и позже.

    • AGL_ARGB4444_BIT

      AGL_ARGB4444_BIT

      Указывает формат, имеющий 16 бит на пиксель с расположением канала ARGB и каналы, расположенные в следующих битах: A=15:12, R=11:8, G=7:4, B=3:0

      Доступный в OS X v10.0 и позже.

    • AGL_RGB444_A8_BIT

      AGL_RGB444_A8_BIT

      Указывает формат, имеющий 8-16 бит на пиксель с расположением канала ARGB и каналы, расположенные в следующих битах: A=7:0, R=11:8, G=7:4, B=3:0

      Доступный в OS X v10.0 и позже.

    • AGL_RGB555_BIT

      AGL_RGB555_BIT

      Указывает формат, имеющий 16 бит на пиксель с расположением канала RGB и каналы, расположенные в следующих битах: R=14:10, G=9:5, B=4:0. Главный бит не используется.

      Доступный в OS X v10.0 и позже.

    • AGL_ARGB1555_BIT

      AGL_ARGB1555_BIT

      Указывает формат, имеющий 16 бит на пиксель с расположением канала ARGB и каналы, расположенные в следующих битах: A=15, R=14:10, G=9:5, B=4:0

      Доступный в OS X v10.0 и позже.

    • AGL_RGB555_A8_BIT

      AGL_RGB555_A8_BIT

      Указывает формат, имеющий 8-16 бит на пиксель с расположением канала ARGB и каналы, расположенные в следующих битах: A=7:0, R=14:10, G=9:5, B=4:0

      Доступный в OS X v10.0 и позже.

    • AGL_RGB565_BIT

      AGL_RGB565_BIT

      Указывает формат, имеющий 16 бит на пиксель с расположением канала RGB и каналы, расположенные в следующих битах: R=15:11, G=10:5, B=4:0

      Доступный в OS X v10.0 и позже.

    • AGL_RGB565_A8_BIT

      AGL_RGB565_A8_BIT

      Указывает формат, имеющий 8-16 бит на пиксель с расположением канала ARGB и каналы, расположенные в следующих битах: A=7:0, R=15:11, G=10:5, B=4:0

      Доступный в OS X v10.0 и позже.

    • AGL_RGB888_BIT

      AGL_RGB888_BIT

      Указывает формат, имеющий 32 бита на пиксель с расположением канала RGB и каналы, расположенные в следующих битах: R=23:16, G=15:8, B=7:0; R, G, и B берут 1 байт каждый.

      Доступный в OS X v10.0 и позже.

    • AGL_ARGB8888_BIT

      AGL_ARGB8888_BIT

      Указывает формат, имеющий 32 бита на пиксель с расположением канала ARGB и каналы, расположенные в следующих битах: A=31:24, R=23:16, G=15:8, B=7:0

      Доступный в OS X v10.0 и позже.

    • AGL_RGB888_A8_BIT

      AGL_RGB888_A8_BIT

      Указывает формат, имеющий 8-32 бита на пиксель с расположением канала ARGB и каналы, расположенные в следующих битах: A=7:0, R=23:16, G=15:8, B=7:0

      Доступный в OS X v10.0 и позже.

    • AGL_RGB101010_BIT

      AGL_RGB101010_BIT

      Указывает формат, имеющий 32 бита на пиксель с расположением канала RGB и каналы, расположенные в следующих битах: R=29:20, G=19:10, B=9:0

      Доступный в OS X v10.0 и позже.

    • AGL_ARGB2101010_BIT

      AGL_ARGB2101010_BIT

      Указывает формат, имеющий 32 бита на пиксель с расположением канала ARGB и каналы, расположенные в следующих битах: A=31:30 R=29:20, G=19:10, B=9:0

      Доступный в OS X v10.0 и позже.

    • AGL_RGB101010_A8_BIT

      AGL_RGB101010_A8_BIT

      Указывает формат, имеющий 8-32 бита на пиксель с расположением канала ARGB и каналы, расположенные в следующих битах: A=7:0 R=29:20, G=19:10, B=9:0

      Доступный в OS X v10.0 и позже.

    • AGL_RGB121212_BIT

      AGL_RGB121212_BIT

      Указывает формат, имеющий 48 бит на пиксель с расположением канала RGB и каналы, расположенные в следующих битах: R=35:24, G=23:12, B=11:0

      Доступный в OS X v10.0 и позже.

    • AGL_ARGB12121212_BIT

      AGL_ARGB12121212_BIT

      Указывает формат, имеющий 48 бит на пиксель с расположением канала ARGB и каналы, расположенные в следующих битах: A=47:36, R=35:24, G=23:12, B=11:0

      Доступный в OS X v10.0 и позже.

    • AGL_RGB161616_BIT

      AGL_RGB161616_BIT

      Указывает формат, имеющий 64 бита на пиксель с расположением канала RGB и каналы, расположенные в следующих битах: R=47:32, G=31:16, B=15:0

      Доступный в OS X v10.0 и позже.

    • AGL_ARGB16161616_BIT

      AGL_ARGB16161616_BIT

      Указывает формат, имеющий 64 бита на пиксель с расположением канала ARGB и каналы, расположенные в следующих битах: A=63:48, R=47:32, G=31:16, B=15:0

      Доступный в OS X v10.0 и позже.

    • AGL_INDEX8_BIT

      AGL_INDEX8_BIT

      Указывает таблицу цветов на 8 битов. (Осуждаемый)

      Доступный в OS X v10.0 и позже.

    • AGL_INDEX16_BIT

      AGL_INDEX16_BIT

      Указывает таблицу цветов на 16 битов. (Осуждаемый)

      Доступный в OS X v10.0 и позже.

    • AGL_RGBFLOAT64_BIT

      AGL_RGBFLOAT64_BIT

      Указывает формат, имеющий 64 бита на пиксель с расположением канала RGB, полузначениями с плавающей точкой. (Полуплавание является 16-разрядным значением с плавающей точкой.)

      Доступный в OS X v10.3 и позже.

    • AGL_RGBAFLOAT64_BIT

      AGL_RGBAFLOAT64_BIT

      Указывает формат, имеющий 64 бита на пиксель с расположением канала ARGB, полузначениями с плавающей точкой. (Полуплавание является 16-разрядным значением с плавающей точкой.)

      Доступный в OS X v10.3 и позже.

    • AGL_RGBFLOAT128_BIT

      AGL_RGBFLOAT128_BIT

      Указывает формат, имеющий 128 бит на пиксель с расположением канала RGB, значениями с плавающей точкой IEEE.

      Доступный в OS X v10.3 и позже.

    • AGL_RGBAFLOAT128_BIT

      AGL_RGBAFLOAT128_BIT

      Указывает формат, имеющий 128 бит на пиксель с расположением канала ARGB, значениями с плавающей точкой IEEE.

      Доступный в OS X v10.3 и позже.

    • AGL_RGBFLOAT256_BIT

      AGL_RGBFLOAT256_BIT

      Указывает формат, имеющий 256 бит на пиксель с расположением канала RGB, IEEE двойные значения.

      Доступный в OS X v10.3 и позже.

    • AGL_RGBAFLOAT256_BIT

      AGL_RGBAFLOAT256_BIT

      Указывает формат, имеющий 256 бит на пиксель с расположением канала ARGB, IEEE двойные значения.

      Доступный в OS X v10.3 и позже.

  • Определите опции и параметры, применяющиеся к определенному контексту рендеринга.

    Объявление

    Objective C

    #define AGL_SWAP_RECT 200 #define AGL_BUFFER_RECT 202 #define AGL_SWAP_LIMIT 203 #define AGL_COLORMAP_TRACKING 210 #define AGL_COLORMAP_ENTRY 212 #define AGL_RASTERIZATION 220 #define AGL_SWAP_INTERVAL 222 #define AGL_STATE_VALIDATION 230 #define AGL_BUFFER_NAME 231 #define AGL_ORDER_CONTEXT_TO_FRONT 232 #define AGL_CONTEXT_SURFACE_ID 233 #define AGL_CONTEXT_DISPLAY_ID 234 #define AGL_SURFACE_ORDER 235 #define AGL_SURFACE_OPACITY 236 #define AGL_CLIP_REGION 254 #define AGL_FS_CAPTURE_SINGLE 255 #define AGL_SURFACE_BACKING_SIZE 304 #define AGL_ENABLE_SURFACE_BACKING_SIZE 305 #define AGL_SURFACE_VOLATILE 306

    Константы

    • AGL_SWAP_RECT

      AGL_SWAP_RECT

      Включите или установите прямоугольник подкачки. Связанный параметр должен содержать четыре значения: координаты окна x и y прямоугольника подкачки, сопровождаемого его шириной и высотой. Если включено, область окна, затронутого функцией aglSwapBuffers ограничивается подпрямоугольником всего окна.

      Доступный в OS X v10.0 и позже.

    • AGL_BUFFER_RECT

      AGL_BUFFER_RECT

      Включите или установите буферный прямоугольник. Связанный параметр должен содержать четыре значения: координаты окна x и y буферного прямоугольника, относительно границ структуры окна, сопровождаемого его шириной и высотой. Если включено, drawable прямоугольник окна и все его связанные буферы ограничиваются указанным прямоугольником.

      Доступный в OS X v10.0 и позже.

    • AGL_SWAP_LIMIT

      AGL_SWAP_LIMIT

      Включите или отключите подкачку асинхронный предел.

      Доступный в OS X v10.2 и позже.

    • AGL_COLORMAP_TRACKING

      AGL_COLORMAP_TRACKING

      Включите или отключите отслеживание карты цветов.

      Доступный в OS X v10.0 и позже.

    • AGL_COLORMAP_ENTRY

      AGL_COLORMAP_ENTRY

      Присваиваемое значение является записью карты цветов, указывает как {index, r, g, b}.

      Доступный в OS X v10.0 и позже.

    • AGL_RASTERIZATION

      AGL_RASTERIZATION

      Включите или отключите всю растеризацию 2D и 3D примитивов. Можно использовать эту опцию отладить и охарактеризовать производительность драйвера OpenGL без фактического рендеринга.

      Доступный в OS X v10.0 и позже.

    • AGL_SWAP_INTERVAL

      AGL_SWAP_INTERVAL

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

      Доступный в OS X v10.0 и позже.

    • AGL_STATE_VALIDATION

      AGL_STATE_VALIDATION

      Включает или отключает проверку состояния для многоэкранной функциональности. Если включено, библиотека AGL проверяет состояние контекста рендеринга каждый раз когда функция aglUpdateContext вызывается, чтобы гарантировать, что это находится в надлежащем состоянии для переключения между средствами рендеринга. Обычно, состояние проверено только, когда фактически необходимо переключить средства рендеринга. Эта опция полезна, когда Вы захотите использовать единственную систему контроля для тестирования этого, приложение выполнит правильно в многократной системе контроля.

      Доступный в OS X v10.0 и позже.

    • AGL_BUFFER_NAME

      AGL_BUFFER_NAME

      Присваиваемое значение является буферным именем. Можно использовать эту опцию позволить многократным контекстам OpenGL совместно использовать буфер.

      Доступный в OS X v10.0 и позже.

    • AGL_ORDER_CONTEXT_TO_FRONT

      AGL_ORDER_CONTEXT_TO_FRONT

      Указывает для упорядочивания текущего контекста рендеринга перед всеми другими контекстами.

      Доступный в OS X v10.1 и позже.

    • AGL_CONTEXT_SURFACE_ID

      AGL_CONTEXT_SURFACE_ID

      Присваиваемым значением является ID drawable поверхности для контекста рендеринга. Вы не можете установить это значение, потому что система устанавливает его. Однако можно получить значение с помощью функции aglGetInteger.

      Доступный в OS X v10.2 и позже.

    • AGL_CONTEXT_DISPLAY_ID

      AGL_CONTEXT_DISPLAY_ID

      Присваиваемое значение является списком дисплея IDs всех дисплеев, затронутых контекстом рендеринга максимум до 32 дисплеев. Вы не можете установить этот список значений, потому что система присваивает Значения идентификаторов дисплея. Однако можно получить значение с помощью функции aglGetInteger.

      Доступный в OS X v10.2 и позже.

    • AGL_SURFACE_ORDER

      AGL_SURFACE_ORDER

      Присваиваемое значение является позицией поверхности OpenGL относительно окна. Значение 1 средние значения, что позиция выше окна; значение –1 указывает позицию, которая является ниже окна.

      Доступный в OS X v10.2 и позже.

    • AGL_SURFACE_OPACITY

      AGL_SURFACE_OPACITY

      Присваиваемое значение указывает непрозрачность поверхности OpenGL. Значение 1 означает, что поверхность непрозрачна (значение по умолчанию); 0 абсолютно прозрачные средние значения.

      Доступный в OS X v10.2 и позже.

    • AGL_CLIP_REGION

      AGL_CLIP_REGION

      Включает или устанавливает drawable область отсечения. Присваиваемое значение является a rgnHandle тип данных, определяющий область отсечения.

      Доступный в OS X v10.2 и позже.

    • AGL_FS_CAPTURE_SINGLE

      AGL_FS_CAPTURE_SINGLE

      Включает получение единственного дисплея для полноэкранного рендеринга. Эта опция отключена по умолчанию.

      Доступный в OS X v10.2 и позже.

    • AGL_SURFACE_BACKING_SIZE

      AGL_SURFACE_BACKING_SIZE

      Присваиваемое значение указывает ширину и высоту размера поддержки поверхности.

      Доступный в OS X v10.4 и позже.

    • AGL_ENABLE_SURFACE_BACKING_SIZE

      AGL_ENABLE_SURFACE_BACKING_SIZE

      Включите или отключите поверхностное переопределение размера поддержки.

      Доступный в OS X v10.4 и позже.

    • AGL_SURFACE_VOLATILE

      AGL_SURFACE_VOLATILE

      Отмечает поверхность как кандидата на удаление.

      Доступный в OS X v10.4 и позже.

  • Определяет коды ошибки, которые могут быть возвращены aglGetError функция.

    Объявление

    Objective C

    #define AGL_NO_ERROR 0 #define AGL_BAD_ATTRIBUTE 10000 #define AGL_BAD_PROPERTY 10001 #define AGL_BAD_PIXELFMT 10002 #define AGL_BAD_RENDINFO 10003 #define AGL_BAD_CONTEXT 10004 #define AGL_BAD_DRAWABLE 10005 #define AGL_BAD_GDEV 10006 #define AGL_BAD_STATE 10007 #define AGL_BAD_VALUE 10008 #define AGL_BAD_MATCH 10009 #define AGL_BAD_ENUM 10010 #define AGL_BAD_OFFSCREEN 10011 #define AGL_BAD_FULLSCREEN 10012 #define AGL_BAD_WINDOW 10013 #define AGL_BAD_POINTER 10014 #define AGL_BAD_MODULE 10015 #define AGL_BAD_ALLOC 10016 #define AGL_BAD_CONNECTION 10017

    Константы

    • AGL_NO_ERROR

      AGL_NO_ERROR

      Никакая ошибка.

      Доступный в OS X v10.0 и позже.

    • AGL_BAD_ATTRIBUTE

      AGL_BAD_ATTRIBUTE

      Недопустимый атрибут формата пикселя.

      Доступный в OS X v10.0 и позже.

    • AGL_BAD_PROPERTY

      AGL_BAD_PROPERTY

      Недопустимое свойство средства рендеринга.

      Доступный в OS X v10.0 и позже.

    • AGL_BAD_PIXELFMT

      AGL_BAD_PIXELFMT

      Недопустимый формат пикселя.

      Доступный в OS X v10.0 и позже.

    • AGL_BAD_RENDINFO

      AGL_BAD_RENDINFO

      Недопустимая информация средства рендеринга.

      Доступный в OS X v10.0 и позже.

    • AGL_BAD_CONTEXT

      AGL_BAD_CONTEXT

      Недопустимый контекст рендеринга.

      Доступный в OS X v10.0 и позже.

    • AGL_BAD_DRAWABLE

      AGL_BAD_DRAWABLE

      Недопустимый drawable объект. Изменение виртуальных экранов (средства рендеринга) перестало работать, если поверхностная ширина и высота не могут быть установлены в значения, которые требуют, или если создание drawable объекта или поверхностей должно было поддерживать пиксельный буфер сбои по другим причинам.

      Доступный в OS X v10.0 и позже.

    • AGL_BAD_GDEV

      AGL_BAD_GDEV

      Недопустимое графическое устройство.

      Доступный в OS X v10.0 и позже.

    • AGL_BAD_STATE

      AGL_BAD_STATE

      Недопустимое состояние контекста рендеринга.

      Доступный в OS X v10.0 и позже.

    • AGL_BAD_VALUE

      AGL_BAD_VALUE

      Недопустимое численное значение.

      Доступный в OS X v10.0 и позже.

    • AGL_BAD_MATCH

      AGL_BAD_MATCH

      Недопустимый контекст рендеринга доли.

      Доступный в OS X v10.0 и позже.

    • AGL_BAD_ENUM

      AGL_BAD_ENUM

      Недопустимый enumerant.

      Доступный в OS X v10.0 и позже.

    • AGL_BAD_OFFSCREEN

      AGL_BAD_OFFSCREEN

      Недопустимый внеэкранный drawable объект.

      Доступный в OS X v10.0 и позже.

    • AGL_BAD_FULLSCREEN

      AGL_BAD_FULLSCREEN

      Недопустимый полноэкранный drawable объект.

      Доступный в OS X v10.0 и позже.

    • AGL_BAD_WINDOW

      AGL_BAD_WINDOW

      Недопустимое окно.

      Доступный в OS X v10.0 и позже.

    • AGL_BAD_POINTER

      AGL_BAD_POINTER

      Недопустимый указатель.

      Доступный в OS X v10.0 и позже.

    • AGL_BAD_MODULE

      AGL_BAD_MODULE

      Недопустимый модуль кода.

      Доступный в OS X v10.0 и позже.

    • AGL_BAD_ALLOC

      AGL_BAD_ALLOC

      Сбой выделения памяти.

      Доступный в OS X v10.0 и позже.

    • AGL_BAD_CONNECTION

      AGL_BAD_CONNECTION

      Неспособный соединиться с сервером окна.

      Доступный в OS X v10.3 и позже.

    Обсуждение

    В отличие от многих Углерод APIs, функции AGL не возвращают коды результата для определенных состояний ошибки. Вместо этого функции AGL тот сбой любой возврат GL_FALSE или NULL. Можно узнать специфический характер ошибки путем вызывания функции aglGetError, который возвращает надлежащий код ошибки.

  • Укажите опции, применяющиеся глобально.

    Объявление

    Objective C

    #define AGL_FORMAT_CACHE_SIZE 501 #define AGL_CLEAR_FORMAT_CACHE 502 #define AGL_RETAIN_RENDERERS 503

    Константы

    • AGL_FORMAT_CACHE_SIZE

      AGL_FORMAT_CACHE_SIZE

      Присваиваемое значение является размером положительного кэша формата пикселя и первоначально установлено в 5. Если Ваше приложение должно использовать n различные списки атрибутов для выбора n различные форматы пикселя неоднократно, тогда приложение должно установить размер кэша в n максимизировать производительность. После того, как Ваше приложение вызывает aglChoosePixelFormat функционируйте в последний раз, Вы могли бы хотеть установить размер кэша в 1 минимизировать память, используемую библиотекой AGL.

      Доступный в OS X v10.0 и позже.

    • AGL_CLEAR_FORMAT_CACHE

      AGL_CLEAR_FORMAT_CACHE

      То, когда присваиваемое значение является ненулевым, указывает для сброса кэша формата пикселя. Очистка кэша не влияет на размер кэша для будущего хранения форматов пикселя. Для минимизации памяти, использованной кэшем, приложение должно также установить размер кэша в 1.

      Доступный в OS X v10.0 и позже.

    • AGL_RETAIN_RENDERERS

      AGL_RETAIN_RENDERERS

      Указывает, сохранить ли загруженные сменные средства рендеринга в памяти. Когда присваиваемое значение будет ненулевым, библиотека AGL не разгрузит сменных средств рендеринга, даже если они больше не будут использоваться. Эта опция полезна для улучшения производительности приложений, неоднократно уничтожающих и воссоздающих их единственное (или в последний раз) рендеринг контекста. Обычно, когда последний контекст рендеринга, создаваемый определенным сменным средством рендеринга, уничтожается, то средство рендеринга разгружено из памяти. Когда присваиваемое значение является нулем, AGL возвращается к его нормальному режиму работы и всем средствам рендеринга, не использующимся, разгружены.

      Доступный в OS X v10.0 и позже.

    Обсуждение

    Можно передать любую из этих опций, вместе с надлежащим значением, к функции aglConfigure.

  • Определите опции для управления средствами рендеринга.

    Объявление

    Objective C

    #define AGL_RENDERER_ID 70 #define AGL_SINGLE_RENDERER 71 #define AGL_NO_RECOVERY 72 #define AGL_ACCELERATED 73 #define AGL_CLOSEST_POLICY 74 #define AGL_ROBUST 75 #define AGL_BACKING_STORE 76 #define AGL_MP_SAFE 78 #define AGL_WINDOW 80 #define AGL_MULTISCREEN 81 #define AGL_VIRTUAL_SCREEN 82 #define AGL_COMPLIANT 83 #define AGL_PBUFFER 90 #define AGL_REMOTE_PBUFFER 91

    Константы

    • AGL_RENDERER_ID

      AGL_RENDERER_ID

      Присваиваемое значение является неотрицательным целым числом, указывающим средство рендеринга. Если настоящее, средства рендеринга OpenGL, соответствующие указанный ID предпочтено, посмотрите Средство рендеринга IDs для возможных значений. Можно передать эту константу функции aglDescribeRenderer.

      Доступный в OS X v10.0 и позже.

    • AGL_SINGLE_RENDERER

      AGL_SINGLE_RENDERER

      Эта константа является булевым атрибутом. Если это присутствует в массиве атрибутов, указывает, что единственный формат пикселя представляет единственное средство рендеринга для всех экранов. В системах с многократными экранами эта опция отключает возможность библиотеки AGL управлять различными мониторами через различные карты графического акселератора с единственным контекстом рендеринга AGL.. Не предоставляйте значение эту константу, потому что ее присутствие в массиве подразумевает true.

      Доступный в OS X v10.0 и позже.

    • AGL_NO_RECOVERY

      AGL_NO_RECOVERY

      Эта константа является булевым атрибутом. Если это присутствует в массиве атрибутов, указывает, что опции восстановления после отказа отключены для этого формата пикселя. Обычно, если ускоренное средство рендеринга не может присоединить к drawable объекту вследствие недостаточной видеопамяти, AGL автоматически переключается на другое средство рендеринга. Этот атрибут отключает эти опции так, чтобы рендеринг был всегда сделан выбранным средством рендеринга. Например, если аппаратно ускоренное средство рендеринга исчерпает ресурсы, с этой включенной опцией Вы не получите средство рендеринга программного обеспечения как нейтрализацию.

      Доступный в OS X v10.0 и позже.

    • AGL_ACCELERATED

      AGL_ACCELERATED

      Эта константа является булевым атрибутом. Если это присутствует в массиве атрибутов, указывает средства рендеринга, которые присоединены к аппаратно ускоренному графическому устройству. Обычно невозможно поддерживать больше чем одно ускоренное графическое устройство, потому что обычно, когда окно охватывает больше чем одно устройство, OpenGL использует средство рендеринга программного обеспечения. Можно передать эту константу функции aglDescribeRenderer, чтобы узнать, аппаратно ускорено ли определенное средство рендеринга.

      Доступный в OS X v10.0 и позже.

    • AGL_CLOSEST_POLICY

      AGL_CLOSEST_POLICY

      Присваиваемое значение указывает цветной размер буфера. Когда установлено, эта опция изменяет политику выбора формата пикселя, таким образом, что цветной буфер, самый близкий к требуемому размеру, предпочтен, независимо от фактической цветной буферной глубины поддерживаемого графического устройства.

      Доступный в OS X v10.0 и позже.

    • AGL_ROBUST

      AGL_ROBUST

      Эта константа является булевым атрибутом. Если это присутствует в массиве атрибутов, указывает, что AGL должен рассмотреть только те средства рендеринга, не имеющие никаких видов отказа связанными с отсутствием ресурсов видеокарты. Можно передать эту константу функции aglDescribeRenderer.

      Доступный в OS X v10.0 и позже.

    • AGL_BACKING_STORE

      AGL_BACKING_STORE

      Эта константа является булевым атрибутом. Если это присутствует в массиве атрибутов, указывает, что AGL должен рассмотреть только те средства рендеринга, имеющие задний буфер цвета полный размер drawable объекта (независимо от видимости окна). AGL гарантирует, что заднее содержимое буфера будет допустимо после вызова к aglSwapBuffers функция. Можно передать эту константу функции aglDescribeRenderer.

      Доступный в OS X v10.0 и позже.

    • AGL_MP_SAFE

      AGL_MP_SAFE

      Эта константа является булевым атрибутом. Если это присутствует в массиве атрибутов, указывает средство рендеринга, которое является многопроцессорным сейфом. Этот атрибут осуждается в OS X, потому что все средства рендеринга могут принять команды для потоков, работающих на втором процессоре. Однако это не означает, что все средства рендеринга ориентированы на многопотоковое исполнение или повторно используемы.

      Доступный в OS X v10.0 и позже.

    • AGL_WINDOW

      AGL_WINDOW

      Эта константа является булевым атрибутом. Если это присутствует в массиве атрибутов, указывает, что формат пикселя может использоваться для рендеринга к экранному окну. Можно передать эту константу функции aglDescribeRenderer.

      Доступный в OS X v10.0 и позже.

    • AGL_MULTISCREEN

      AGL_MULTISCREEN

      Эта константа является булевым атрибутом. Если это присутствует в массиве атрибутов, указывает, что средство рендеринга способно к управлению многократными экранами с тем же контекстом рендеринга. (Единственное окно может охватить многократные экраны.) Можно передать эту константу функции aglDescribeRenderer.

      Доступный в OS X v10.0 и позже.

    • AGL_VIRTUAL_SCREEN

      AGL_VIRTUAL_SCREEN

      Присваиваемое значение является целым числом, указывающим виртуальное экранное число формата пикселя.

      Доступный в OS X v10.0 и позже.

    • AGL_COMPLIANT

      AGL_COMPLIANT

      Эта константа является булевым атрибутом. Если это присутствует в массиве атрибутов, указывает формат пикселя, который полностью совместим с OpenGL. Все средства рендеринга OS X совместимы OpenGL. Можно передать эту константу функции aglDescribeRenderer.

      Доступный в OS X v10.0 и позже.

    • AGL_PBUFFER

      AGL_PBUFFER

      Эта константа является булевым атрибутом. Если это присутствует в массиве атрибутов, указывает, что средство рендеринга может представить к пиксельному буферу. Можно передать эту константу функции aglDescribeRenderer.

      Доступный в OS X v10.3 и позже.

    • AGL_REMOTE_PBUFFER

      AGL_REMOTE_PBUFFER

      Эта константа является булевым атрибутом. Если это присутствует в массиве атрибутов, указывает, что средство рендеринга может представить оффлайн к пиксельному буферу.

      Доступный в OS X v10.3 и позже.

  • Определите константы, указывающие аппаратные и программные средства рендеринга.

    Объявление

    Objective C

    #define AGL_RENDERER_GENERIC_ID 0x00020200 #define AGL_RENDERER_GENERIC_FLOAT_ID 0x00020400 #define AGL_RENDERER_APPLE_SW_ID 0x00020600 #define AGL_RENDERER_ATI_RAGE_128_ID 0x00021000 #define AGL_RENDERER_ATI_RADEON_ID 0x00021200 #define AGL_RENDERER_ATI_RAGE_PRO_ID 0x00021400 #define AGL_RENDERER_ATI_RADEON_8500_ID 0x00021600 #define AGL_RENDERER_ATI_RADEON_9700_ID 0x00021800 #define AGL_RENDERER_ATI_RADEON_X1000_ID 0x00021900 #define AGL_RENDERER_NVIDIA_GEFORCE_2MX_ID 0x00022000 #define AGL_RENDERER_NVIDIA_GEFORCE_3_ID 0x00022200 #define AGL_RENDERER_NVIDIA_GEFORCE_FX_ID 0x00022400 #define AGL_RENDERER_VT_BLADE_XP2_ID 0x00023000 #define AGL_RENDERER_INTEL_900_ID 0x00024000 #define AGL_RENDERER_MESA_3DFX_ID 0x00040000

    Константы

    • AGL_RENDERER_GENERIC_ID

      AGL_RENDERER_GENERIC_ID

      Универсальный дисплей.

      Осуждаемый на основанных на Intel компьютерах Macintosh.

      Доступный в OS X v10.0 и позже.

    • AGL_RENDERER_GENERIC_FLOAT_ID

      AGL_RENDERER_GENERIC_FLOAT_ID

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

      Доступный в OS X v10.3 и позже.

    • AGL_RENDERER_APPLE_SW_ID

      AGL_RENDERER_APPLE_SW_ID

      Средство рендеринга программного обеспечения Apple.

      Доступный в OS X v10.2 и позже.

    • AGL_RENDERER_ATI_RAGE_128_ID

      AGL_RENDERER_ATI_RAGE_128_ID

      Гнев ATI 128 дисплеев.

      Доступный в OS X v10.2 и позже.

    • AGL_RENDERER_ATI_RADEON_ID

      AGL_RENDERER_ATI_RADEON_ID

      ATI дисплей Radeon.

      Доступный в OS X v10.2 и позже.

    • AGL_RENDERER_ATI_RAGE_PRO_ID

      AGL_RENDERER_ATI_RAGE_PRO_ID

      Гнев ATI Pro дисплей.

      Доступный в OS X v10.2 и позже.

    • AGL_RENDERER_ATI_RADEON_8500_ID

      AGL_RENDERER_ATI_RADEON_8500_ID

      ATI дисплей Radeon 8500.

      Доступный в OS X v10.2 и позже.

    • AGL_RENDERER_ATI_RADEON_9700_ID

      AGL_RENDERER_ATI_RADEON_9700_ID

      ATI дисплей Radeon 9700.

      Доступный в OS X v10.3 и позже.

    • AGL_RENDERER_ATI_RADEON_X1000_ID

      AGL_RENDERER_ATI_RADEON_X1000_ID

      ATI дисплей Radeon 9700.

      Доступный в OS X v10.5 и позже.

    • AGL_RENDERER_NVIDIA_GEFORCE_2MX_ID

      AGL_RENDERER_NVIDIA_GEFORCE_2MX_ID

      Дисплей NVIDIA GeForce 2MX или NVIDIA GeForce 4MX.

      Доступный в OS X v10.2 и позже.

    • AGL_RENDERER_NVIDIA_GEFORCE_3_ID

      AGL_RENDERER_NVIDIA_GEFORCE_3_ID

      Дисплей NVIDIA GeForce 3 или NVIDIA GeForce 4 Ti.

      Доступный в OS X v10.2 и позже.

    • AGL_RENDERER_NVIDIA_GEFORCE_FX_ID

      AGL_RENDERER_NVIDIA_GEFORCE_FX_ID

      NVIDIA GeForce FX, GeForce 6 или дисплей GeForce 7.

      Доступный в OS X v10.3 и позже.

    • AGL_RENDERER_VT_BLADE_XP2_ID

      AGL_RENDERER_VT_BLADE_XP2_ID

      Деревенский дисплей Троник.

      Доступный в OS X v10.3 и позже.

    • AGL_RENDERER_INTEL_900_ID

      AGL_RENDERER_INTEL_900_ID

      Дисплей Intel GMA 900.

      Доступный в OS X v10.5 и позже.

    • AGL_RENDERER_MESA_3DFX_ID

      AGL_RENDERER_MESA_3DFX_ID

      Мезаструктура 3DFX дисплей.

      Доступный в OS X v10.2 и позже.

  • Укажите константы, которые можно использовать для запросов свойств средства рендеринга.

    Объявление

    Objective C

    #define AGL_BUFFER_MODES 100 #define AGL_MIN_LEVEL 101 #define AGL_MAX_LEVEL 102 #define AGL_COLOR_MODES 103 #define AGL_ACCUM_MODES 104 #define AGL_DEPTH_MODES 105 #define AGL_STENCIL_MODES 106 #define AGL_MAX_AUX_BUFFERS 107 #define AGL_VIDEO_MEMORY 120 #define AGL_TEXTURE_MEMORY 121 #define AGL_RENDERER_COUNT 128

    Константы

    • AGL_BUFFER_MODES

      AGL_BUFFER_MODES

      Присваиваемое значение может быть поразрядным OR из любой из констант, указанных в Буферных Флагах Режима.

      Доступный в OS X v10.0 и позже.

    • AGL_MIN_LEVEL

      AGL_MIN_LEVEL

      Присваиваемое значение указывает минимальный буферный уровень наложения. Отрицательные величины указывают, лежал в основе буфера.

      Доступный в OS X v10.0 и позже.

    • AGL_MAX_LEVEL

      AGL_MAX_LEVEL

      Присваиваемое значение указывает максимальный буферный уровень наложения.

      Доступный в OS X v10.0 и позже.

    • AGL_COLOR_MODES

      AGL_COLOR_MODES

      Присваиваемое значение может быть поразрядным OR из любой из констант, указанных в цвете Режимы.

      Доступный в OS X v10.0 и позже.

    • AGL_ACCUM_MODES

      AGL_ACCUM_MODES

      Присваиваемое значение может быть поразрядным OR из любой из констант, указанных в цвете Режимы.

      Доступный в OS X v10.0 и позже.

    • AGL_DEPTH_MODES

      AGL_DEPTH_MODES

      Присваиваемое значение может быть поразрядным OR из любой из констант, указанных в Битовых глубинах.

      Доступный в OS X v10.0 и позже.

    • AGL_STENCIL_MODES

      AGL_STENCIL_MODES

      Присваиваемое значение может быть поразрядным OR из любой из констант, указанных в Битовых глубинах.

      Доступный в OS X v10.0 и позже.

    • AGL_MAX_AUX_BUFFERS

      AGL_MAX_AUX_BUFFERS

      Присваиваемое значение является максимальным количеством вспомогательных буферов, которые могут поддерживаться средством рендеринга.

      Доступный в OS X v10.0 и позже.

    • AGL_VIDEO_MEMORY

      AGL_VIDEO_MEMORY

      Присваиваемое значение является суммой видеопамяти.

      Доступный в OS X v10.0 и позже.

    • AGL_TEXTURE_MEMORY

      AGL_TEXTURE_MEMORY

      Присваиваемое значение является суммой памяти текстуры.

      Доступный в OS X v10.0 и позже.

    • AGL_RENDERER_COUNT

      AGL_RENDERER_COUNT

      Присваиваемое значение является числом средств рендеринга.

      Доступный в OS X v10.3 и позже.

    Обсуждение

    Можно передать эти константы функции aglDescribeRenderer для обнаружения значения свойства для определенного средства рендеринга.