Ссылка AGL
AGL (Библиотека Графики Apple) API является частью реализации Apple OpenGL в OS X. AGL содержит специфичную для системы управления окнами реализацию функций OpenGL и команды для Углерода. Используя функции AGL, можно создать и уничтожить контексты рендеринга AGL, выбрать средства рендеринга OpenGL, подкачать буферы и выполнить операции на drawable объектах (окна, пиксельные буферы, внеэкранная память и полноэкранные графические устройства).
Для использования AGL от платформы Углерода приложение должно соединиться и с AGL и с OpenGL (OpenGL/OpenGL.h
) платформы.
-
aglCreatePixelFormat aglCreatePixelFormat
(OS X v10.9)Создает формат пикселя с предоставленными атрибутами.
Объявление
Objective C
AGLPixelFormat aglCreatePixelFormat ( const GLint *attribs );
Параметры
attribs
Атрибуты для формата пикселя.
Возвращаемое значение
Объект формата пикселя.
Оператор импорта
Objective C
@import AGL;
Доступность
Доступный в OS X v10.5 и позже.
Осуждаемый в OS X v10.9.
-
aglChoosePixelFormat aglChoosePixelFormat
(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
завершенный массив, содержащий список атрибутов средства рендеринга и буфера. Атрибуты могут быть булевской переменной или целым числом. Если атрибут является целым числом, необходимо сразу предоставить требуемое значение после атрибута. Если атрибут является булевской переменной, не предоставляйте значение, потому что его присутствие в массиве атрибутов подразумевает atrue
значение. Для получения информации об атрибутах, которые можно предоставить, посмотрите Атрибуты Буфера и Средства рендеринга,“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.
-
aglDescribePixelFormat aglDescribePixelFormat
(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.
См. также
-
aglDestroyPixelFormat aglDestroyPixelFormat
(OS X v10.9)Освобождает память, связанную с объектом формата пикселя.
Объявление
Objective C
void aglDestroyPixelFormat ( AGLPixelFormat pix );
Параметры
pix
Объект формата пикселя, средства которого Вы хотите высвободить. Это должно быть объектом формата пикселя, возвращенным функцией
aglChoosePixelFormat
. AGL устанавливает aAGL_BAD_PIXELFMT
ошибка, если Вы передаете возвращенное значение от функцииaglNextPixelFormat
илиpix
параметр не является допустимым форматом пикселя.Обсуждение
Копия данных формата пикселя сделана
aglCreateContext
функция, таким образом, Ваше приложение может сразу освободить формат пикселя после создания контекста рендеринга с ним. С другой стороны, объект формата пикселя может быть полезен для перечисления виртуальных экранов, когда многократные средства рендеринга поддерживаются, таким образом, можно хотеть сохранить его.Оператор импорта
Objective C
@import AGL;
Доступность
Доступный в OS X v10.0 и позже.
Осуждаемый в OS X v10.9.
См. также
-
aglGetCGLPixelFormat aglGetCGLPixelFormat
(OS X v10.9)Получает объект формата пикселя 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.
-
aglDisplaysOfPixelFormat aglDisplaysOfPixelFormat
(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.
-
aglDevicesOfPixelFormat aglDevicesOfPixelFormat
(OS X v10.5)Возвращает графические устройства, поддерживаемые объектом формата пикселя.
Оператор осуждения
Использовать
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.
См. также
-
aglNextPixelFormat aglNextPixelFormat
(OS X v10.9)Возвращает следующий объект формата пикселя в списке объектов формата пикселя.
Объявление
Objective C
AGLPixelFormat aglNextPixelFormat ( AGLPixelFormat pix );
Параметры
pix
Указатель на объект формата пикселя.
Возвращаемое значение
Следующий формат пикселя возражает в списке форматов пикселя. Возвраты
NULL
еслиpix
если функция перестала работать по какой-либо причине, параметр представляет последний объект формата пикселя в списке или. Если ошибка происходит, вызовите функциюaglGetError
определить, какова ошибка.Обсуждение
Вы обычно используете эту функцию после того, как Вы вызвали функцию
aglChoosePixelFormat
, когда все графические устройства в системе не поддерживаются единственным средством рендеринга, который генерирует список больше чем одного объекта формата пикселя. Найти число средств рендеринга связалось с объектом формата пикселя, можно вызватьaglNextPixelFormat
выполнить итерации через список и считать записи.Оператор импорта
Objective C
@import AGL;
Доступность
Доступный в OS X v10.0 и позже.
Осуждаемый в OS X v10.9.
См. также
-
aglCreateContext aglCreateContext
(OS X v10.9)Создает контекст рендеринга 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.
-
aglCopyContext aglCopyContext
(OS X v10.8)Копирует указанные переменные состояния от одного контекста рендеринга до другого.
Объявление
Objective C
GLboolean aglCopyContext ( AGLContext src, AGLContext dst, GLuint mask );
Параметры
src
Исходный контекст рендеринга.
dst
Место назначения, представляющее контекст.
mask
Маска, указывающая переменные состояния для копирования. Передайте немного поля, содержащего поразрядное
OR
из имен переменной состояния, которые Вы хотите скопировать. Используйте символьные константы маски, передающиеся функции OpenGLglPushAttrib
. Для копирования как можно большего количества переменных состояния предоставьте константу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.
-
aglDestroyContext aglDestroyContext
(OS X v10.9)Освобождает ресурсы, связанные с контекстом рендеринга.
Объявление
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.
См. также
-
aglGetCGLContext aglGetCGLContext
(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.
-
aglGetCurrentContext aglGetCurrentContext
(OS X v10.9)Возвращает текущий контекст рендеринга.
Объявление
Objective C
AGLContext aglGetCurrentContext ( void );
Возвращаемое значение
Текущий контекст рендеринга. Если нет никакого текущего контекста рендеринга, возвратов
NULL
.Оператор импорта
Objective C
@import AGL;
Доступность
Доступный в OS X v10.0 и позже.
Осуждаемый в OS X v10.9.
См. также
-
aglSetCurrentContext aglSetCurrentContext
(OS X v10.9)Устанавливает указанный контекст рендеринга как текущий контекст рендеринга.
Объявление
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.
См. также
-
aglSwapBuffers aglSwapBuffers
(OS X v10.9)Обменивается буферами передней и задней части указанного контекста рендеринга.
Объявление
Objective C
void aglSwapBuffers ( AGLContext ctx );
Параметры
ctx
Контекст рендеринга, буферы которого Вы хотите подкачать. AGL устанавливает
AGL_BAD_CONTEXT
ошибка, еслиctx
параметр не является допустимым контекстом рендеринга AGL.Обсуждение
aglSwapBuffers
функционируйте или подкачивает буферы или копирует заднее содержимое буфера в передний буфер. Прежде чем это возвратится,aglSwapBuffers
вызывает функцию OpenGLglFlush
.Для синхронизации с монитором восстанавливают, устанавливают текущий интервал подкачки (
AGL_SWAP_INTERVAL
) к1
путем вызывания функцииaglSetInteger
.Оператор импорта
Objective C
@import AGL;
Доступность
Доступный в OS X v10.0 и позже.
Осуждаемый в OS X v10.9.
-
aglUpdateContext aglUpdateContext
(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.
См. также
-
Включает опцию для контекста рендеринга.
Объявление
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 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.
См. также
-
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.
См. также
-
aglSetInteger aglSetInteger
(OS X v10.9)Устанавливает значение опции для контекста рендеринга.
Объявление
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 aglGetInteger
(OS X v10.9)Получает целочисленную установку опции контекста 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.
См. также
-
aglGetDrawable aglGetDrawable
(OS X v10.5)Возвращает 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 aglSetDrawable
(OS X v10.5)Присоединяет контекст рендеринга к окну 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.
См. также
-
aglSetFullScreen aglSetFullScreen
(OS X v10.6)Присоединяет контекст рендеринга к полноэкранному устройству графики.
Объявление
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 выбирает самую близкую частоту, доступную для данной геометрии. Если дисплей обеспечивает только a0
частота обновления, 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.
См. также
-
aglSetOffScreen aglSetOffScreen
(OS X v10.7)Присоединяет контекст рендеринга к внеэкранной области памяти.
Объявление
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.
-
aglCreatePBuffer aglCreatePBuffer
(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.
См. также
-
aglDestroyPBuffer aglDestroyPBuffer
(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.
См. также
-
aglDescribePBuffer aglDescribePBuffer
(OS X v10.7)Получает информацию, описывающую указанный пиксельный буферный объект.
Объявление
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.
См. также
-
aglGetPBuffer aglGetPBuffer
(OS X v10.7)Получает пиксельный буфер и его параметры для указанного контекста рендеринга.
Объявление
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 aglSetPBuffer
(OS X v10.7)Присоединяет пиксельный буферный объект к контексту рендеринга.
Объявление
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.
См. также
-
aglTexImagePBuffer aglTexImagePBuffer
(OS X v10.7)Связывает содержание пиксельного буфера к источнику данных для объекта текстуры.
Объявление
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.
-
aglSurfaceTexture aglSurfaceTexture
(OS X v10.5)Позволяет текстурировать от 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 aglErrorString
(OS X v10.9)Возвращает строку, описывающую указанный код ошибки AGL.
Объявление
Objective C
const GLubyte * aglErrorString ( GLenum code );
Параметры
code
Код ошибки AGL, возвращенный функцией aglGetError. Для описания этих констант посмотрите Коды ошибки.
Возвращаемое значение
Строка ошибки, описывающая код ошибки, передала в
code
параметр. Если код недопустим, возвращает строку “Никакой такой код ошибки”.Оператор импорта
Objective C
@import AGL;
Доступность
Доступный в OS X v10.0 и позже.
Осуждаемый в OS X v10.9.
См. также
-
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.
-
aglGetVersion aglGetVersion
(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.
-
aglResetLibrary aglResetLibrary
(OS X v10.9)Сбрасывает библиотеку AGL.
Оператор осуждения
Эта функция не необходима в OS X.
Объявление
Objective C
void aglResetLibrary ( void );
Оператор импорта
Objective C
@import AGL;
Доступность
Доступный в OS X v10.0 и позже.
Осуждаемый в OS X v10.9.
-
aglDescribeRenderer aglDescribeRenderer
(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.
-
aglDestroyRendererInfo aglDestroyRendererInfo
(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.
См. также
-
aglNextRendererInfo aglNextRendererInfo
(OS X v10.9)Возвращает следующий информационный объект средства рендеринга.
Объявление
Objective C
AGLRendererInfo aglNextRendererInfo ( AGLRendererInfo rend );
Параметры
rend
Информационный объект средства рендеринга, содержащий один или несколько информационных объектов средства рендеринга. Вы получаете информационный объект средства рендеринга путем вызывания функции
aglQueryRendererInfo
.Возвращаемое значение
Следующий информационный объект средства рендеринга в списке. Возвраты
NULL
если функция перестала работать по какой-либо причине, если объект является последним в списке или. В случае отказа вызовите функциюaglGetError
определить, какова ошибка.Обсуждение
Вы обычно используете эту функцию для итерации через список информационных объектов средства рендеринга, возвращенных функцией
aglQueryRendererInfo
. Большинство систем имеет больше чем одно средство рендеринга, установленное, потому что поддержка различных буферных глубин обычно предоставляется отдельными средствами рендеринга.Оператор импорта
Objective C
@import AGL;
Доступность
Доступный в OS X v10.0 и позже.
Осуждаемый в OS X v10.9.
-
aglQueryRendererInfo aglQueryRendererInfo
(OS X v10.5)Создает и возвращает информационный объект средства рендеринга, содержащий свойства и оценивающий за все средства рендеринга, управляющие указанными дисплеями.
Оператор осуждения
Вместо этого используйте
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.
См. также
-
Создает и возвращает информационный объект средства рендеринга, содержащий свойства и оценивающий за все средства рендеринга, управляющие указанными дисплеями.
Объявление
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
функция генерирует ряд дисплейных списков, каждый из которых содержит единственный вызов к OpenGLglBitmap
функция. 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.
-
aglGetVirtualScreen aglGetVirtualScreen
(OS X v10.9)Возвращает текущее виртуальное экранное число, связанное с контекстом рендеринга.
Объявление
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 aglSetVirtualScreen
(OS X v10.9)Вызывает последующие команды 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.
См. также
-
aglSetWindowRef aglSetWindowRef
(OS X v10.9)Устанавливает контекст 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.
-
aglGetWindowRef aglGetWindowRef
(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.
-
aglSetHIViewRef aglSetHIViewRef
(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.
-
aglGetHIViewRef aglGetHIViewRef
(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 для обнаружения значения свойства для определенного средства рендеринга.
-