Ссылка 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параметр.attribsA
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.
drawdrawable объект — который должен быть окном 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еслиgdevsNULL. 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еслиdspIDsNULL. 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Контекст рендеринга.
fontIDID шрифта связался со шрифтом, символьные глифы которого Вы хотите использовать.
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.
hiviewHIView возражают для установки.
Возвращаемое значение
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_BITAGL_0_BITМаленькая глубина 0.
Доступный в OS X v10.0 и позже.
-
AGL_1_BITAGL_1_BITМаленькая глубина 1 бита.
Доступный в OS X v10.0 и позже.
-
AGL_2_BITAGL_2_BITМаленькая глубина 2 битов.
Доступный в OS X v10.0 и позже.
-
AGL_3_BITAGL_3_BITМаленькая глубина 3 битов.
Доступный в OS X v10.0 и позже.
-
AGL_4_BITAGL_4_BITМаленькая глубина 4 битов.
Доступный в OS X v10.0 и позже.
-
AGL_5_BITAGL_5_BITМаленькая глубина 5 битов.
Доступный в OS X v10.0 и позже.
-
AGL_6_BITAGL_6_BITМаленькая глубина 6 битов.
Доступный в OS X v10.0 и позже.
-
AGL_8_BITAGL_8_BITМаленькая глубина 7 битов.
Доступный в OS X v10.0 и позже.
-
AGL_10_BITAGL_10_BITМаленькая глубина 10 битов.
Доступный в OS X v10.0 и позже.
-
AGL_12_BITAGL_12_BITМаленькая глубина 12 битов.
Доступный в OS X v10.0 и позже.
-
AGL_16_BITAGL_16_BITМаленькая глубина 16 битов.
Доступный в OS X v10.0 и позже.
-
AGL_24_BITAGL_24_BITМаленькая глубина 24 битов.
Доступный в OS X v10.0 и позже.
-
AGL_32_BITAGL_32_BITМаленькая глубина 32 битов.
Доступный в OS X v10.0 и позже.
-
AGL_48_BITAGL_48_BITМаленькая глубина 48 битов.
Доступный в OS X v10.0 и позже.
-
AGL_64_BITAGL_64_BITМаленькая глубина 64 битов.
Доступный в OS X v10.0 и позже.
-
AGL_96_BITAGL_96_BITМаленькая глубина 96 битов.
Доступный в OS X v10.0 и позже.
-
AGL_128_BITAGL_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_NONEAGL_NONEИспользуемый для завершения списка атрибутов формата пикселя.
Доступный в OS X v10.0 и позже.
-
AGL_ALL_RENDERERSAGL_ALL_RENDERERSЭта константа является булевым атрибутом. Если это присутствует в массиве атрибутов, выбор формата пикселя открыт для всех доступных средств рендеринга, включая отладку и средства рендеринга специального назначения, которые не являются совместимым OpenGL. Не предоставляйте значение эту константу, потому что ее присутствие в массиве подразумевает
true.Доступный в OS X v10.0 и позже.
-
AGL_BUFFER_SIZEAGL_BUFFER_SIZEПрисваиваемое значение является неотрицательным целым числом, указывающим число битов на цветной буфер. Для форматов пикселя RGBA размер буфера является суммой красного, зеленого, синего цвета, и альфа-размеры. Для форматов пикселя индекса цвета размер буфера является размером индексов цвета. Самый маленький буфер индекса цвета, по крайней мере, указанного размера предпочтен. Проигнорированный, если
AGL_RGBAатрибут утверждается.Доступный в OS X v10.0 и позже.
-
AGL_LEVELAGL_LEVELПрисваиваемое значение является целым числом, указывающим уровень кадрового буфера формата пикселя. Положительные уровни соответствуют кадровым буферам, накладывающим буфер по умолчанию, и отрицательные уровни соответствуют кадровым буферам, лежавшим в основе уровня по умолчанию. Буферный нуль уровня соответствует кадровому буферу по умолчанию дисплея. Буферный уровень каждый - первый кадровый буфер наложения, уровень два второй кадровый буфер наложения, и т.д. Отрицательные буферные уровни соответствуют, лежал в основе кадровых буферов.
Доступный в OS X v10.0 и позже.
-
AGL_RGBAAGL_RGBAЭта константа является булевым атрибутом. Если это присутствует в массиве атрибутов, указывает, что цвет буферизует хранилище, красное, зеленое, синее, и альфа-значения. В этом случае только форматы пикселя RGBA рассматривают. Не предоставляйте значение эту константу, потому что ее присутствие в массиве подразумевает
true.Если этот атрибут не присутствует в массиве атрибутов, цветные буферы хранят индексы цвета. В этом случае только форматы пикселя индекса цвета рассматривают.
Доступный в OS X v10.0 и позже.
-
AGL_DOUBLEBUFFERAGL_DOUBLEBUFFERЭта константа является булевым атрибутом. Если это присутствует в массиве атрибутов, только форматы пикселя с двойной буферизацией рассматривают. Иначе, только однобуферные форматы пикселя рассматривают. Не предоставляйте значение эту константу, потому что ее присутствие в массиве подразумевает
true.Доступный в OS X v10.0 и позже.
-
AGL_STEREOAGL_STEREOЭта константа является булевым атрибутом. Если это присутствует в массиве атрибутов, только форматы пикселя стерео рассматривают. Иначе, только monoscopic форматы пикселя рассматриваются. Не предоставляйте значение эту константу, потому что ее присутствие в массиве подразумевает
true.Доступный в OS X v10.0 и позже.
-
AGL_AUX_BUFFERSAGL_AUX_BUFFERSПрисваиваемое значение является неотрицательным целым числом, указывающим число вспомогательных буферов, которые доступны. Значение
0указывает, что не существуют никакие вспомогательные буферы. Предпочтены форматы пикселя с самым маленьким числом вспомогательных буферов, встречающих или превышающих конкретное количество.Доступный в OS X v10.0 и позже.
-
AGL_RED_SIZEAGL_RED_SIZEПрисваиваемое значение является неотрицательным целым числом, указывающим число красных битов компонента. Значение
0еслиAGL_RGBAатрибутGL_FALSE. Предпочтен красный буфер, наиболее близко соответствующий указанный размер.Доступный в OS X v10.0 и позже.
-
AGL_GREEN_SIZEAGL_GREEN_SIZEПрисваиваемое значение является неотрицательным целым числом, указывающим число зеленых битов компонента. Значение
0еслиAGL_RGBAатрибутGL_FALSE. Предпочтен зеленый буфер, наиболее близко соответствующий указанный размер.Доступный в OS X v10.0 и позже.
-
AGL_BLUE_SIZEAGL_BLUE_SIZEПрисваиваемое значение является неотрицательным целым числом, указывающим число синих битов компонента. Значение
0еслиAGL_RGBAатрибутGL_FALSE. Предпочтен синий буфер, наиболее близко соответствующий указанный размер.Доступный в OS X v10.0 и позже.
-
AGL_ALPHA_SIZEAGL_ALPHA_SIZEПрисваиваемое значение является неотрицательным целым числом, указывающим число альфа-компонентных битов. Значение
0еслиAGL_RGBAатрибутGL_FALSE. Предпочтен альфа-буфер, наиболее близко соответствующий указанный размер.Доступный в OS X v10.0 и позже.
-
AGL_DEPTH_SIZEAGL_DEPTH_SIZEПрисваиваемое значение является неотрицательным целым числом, указывающим число битов в буфере глубины. Предпочтен буфер глубины, наиболее близко соответствующий указанный размер.
Доступный в OS X v10.0 и позже.
-
AGL_STENCIL_SIZEAGL_STENCIL_SIZEПрисваиваемое значение является неотрицательным целым числом, указывающим число битов в буфере шаблонов. Самый маленький буфер шаблонов, по крайней мере, указанного размера предпочтен.
Доступный в OS X v10.0 и позже.
-
AGL_ACCUM_RED_SIZEAGL_ACCUM_RED_SIZEПрисваиваемое значение является неотрицательным целым числом, указывающим число битов красного цвета, сохраненного в буфере накопления. Предпочтен красный буфер накопления, наиболее близко соответствующий указанный размер.
Доступный в OS X v10.0 и позже.
-
AGL_ACCUM_GREEN_SIZEAGL_ACCUM_GREEN_SIZEПрисваиваемое значение является неотрицательным целым числом, указывающим число битов зеленого цвета, сохраненного в буфере накопления. Предпочтен зеленый буфер накопления, наиболее близко соответствующий указанный размер.
Доступный в OS X v10.0 и позже.
-
AGL_ACCUM_BLUE_SIZEAGL_ACCUM_BLUE_SIZEПрисваиваемое значение является неотрицательным целым числом, указывающим число битов синего цвета, сохраненного в буфере накопления. Предпочтен синий буфер накопления, наиболее близко соответствующий указанный размер.
Доступный в OS X v10.0 и позже.
-
AGL_ACCUM_ALPHA_SIZEAGL_ACCUM_ALPHA_SIZEПрисваиваемое значение является неотрицательным целым числом, указывающим число битов альфы, сохраненной в буфере накопления. Предпочтен альфа-буфер накопления, наиболее близко соответствующий указанный размер.
Доступный в OS X v10.0 и позже.
-
AGL_PIXEL_SIZEAGL_PIXEL_SIZEПрисваиваемое значение является неотрицательным целым числом, указывающим биты на пиксель кадрового буфера числа. Размер пикселя является числом битов, требуемых сохранить каждый пиксель в цветном буфере, включая неиспользованные биты. Если формат пикселя имеет альфа-канал, который сохранен в отдельном буфере, его размер не включен в размер пикселя.
Доступный в OS X v10.0 и позже.
-
AGL_MINIMUM_POLICYAGL_MINIMUM_POLICYЭта константа является булевым атрибутом. Если это присутствует в массиве атрибутов, политика выбора формата пикселя изменена для цвета, глубины и буферов накопления, таким образом, что только рассматривают буферы размера, больше, чем или равный желаемому размеру. Не предоставляйте значение эту константу, потому что ее присутствие в массиве подразумевает
true.Доступный в OS X v10.0 и позже.
-
AGL_MAXIMUM_POLICYAGL_MAXIMUM_POLICYЭта константа является булевым атрибутом. Если это присутствует в массиве атрибутов, политика выбора формата пикселя изменена для цвета, глубины и буферов накопления, таким образом, что, если ненулевой размер буфера требуют, предпочтен самый большой доступный буфер. Не предоставляйте значение эту константу, потому что ее присутствие в массиве подразумевает
true.Доступный в OS X v10.0 и позже.
-
AGL_OFFSCREENAGL_OFFSCREENЭта константа является булевым атрибутом. Если это присутствует в массиве атрибутов, только средства рендеринга, которые способны к рендерингу к внеэкранной области памяти и имеют буферную глубину точно, равняются желаемой буферной глубине, рассматриваются. Не предоставляйте значение эту константу, потому что ее присутствие в массиве подразумевает
true, и таким образом включает атрибут.Если включено, и если drawable объект, в настоящее время присоединяемый к контексту рендеринга, является внеэкранным drawable объектом, присваиваемые значения являются шириной, высотой и байтами строки внеэкранной области памяти. Если включено, и если drawable объект не является внеэкранным типом, ширина, высота и байты строки - каждый
0. КогдаAGL_OFFSCREENатрибут присутствует,AGL_CLOSEST_POLICYатрибут подразумевается.Доступный в OS X v10.0 и позже.
-
AGL_FULLSCREENAGL_FULLSCREENЭта константа является булевым атрибутом. Если это присутствует в массиве атрибутов, только средства рендеринга, которые способны к рендерингу к полноэкранному drawable объекту, рассматривают. Кроме того,
gdevsпараметр должен быть установлен на указатель наGDeviceна котором полноэкранный рендеринг желаем иndevпараметр должен быть установлен на1.Если настоящее, и если drawable объект, который в настоящее время присоединен к контексту рендеринга, является полноэкранным drawable объектом, присваиваемые значения, является шириной, высотой и частотой обновления полноэкранного устройства, округленного к самому близкому целому числу. Если настоящее, и если drawable объект не является полноэкранным типом, шириной, высотой и частотой обновления, является каждым
0.Доступный в OS X v10.0 и позже.
-
AGL_SAMPLE_BUFFERS_ARBAGL_SAMPLE_BUFFERS_ARBПрисваиваемое значение является числом мультидемонстрационных буферов.
Доступный в OS X v10.2 и позже.
-
AGL_SAMPLES_ARBAGL_SAMPLES_ARBПрисваиваемое значение является числом выборок на мультидемонстрационный буфер.
Доступный в OS X v10.2 и позже.
-
AGL_AUX_DEPTH_STENCILAGL_AUX_DEPTH_STENCILПрисваиваемое значение является независимой глубиной и/или буферами шаблонов для вспомогательного буфера.
Доступный в OS X v10.2 и позже.
-
AGL_COLOR_FLOATAGL_COLOR_FLOATЭта константа является булевым атрибутом. Если это присутствует в массиве атрибутов, цветные буферы хранят пиксели с плавающей точкой. Не предоставляйте значение эту константу, потому что ее присутствие в массиве подразумевает
true.Доступный в OS X v10.3 и позже.
-
AGL_MULTISAMPLEAGL_MULTISAMPLEЭта константа является булевым атрибутом. Если это присутствует в массиве атрибутов, указывает подсказку к драйверу, чтобы предпочесть мультивыбирать. Не предоставляйте значение эту константу, потому что ее присутствие в массиве подразумевает
true.Доступный в OS X v10.3 и позже.
-
AGL_SUPERSAMPLEAGL_SUPERSAMPLEЭта константа является булевым атрибутом. Если это присутствует в массиве атрибутов, указывает подсказку к драйверу для предпочтения избыточной выборки. Не предоставляйте значение эту константу, потому что ее присутствие в массиве подразумевает
true.Доступный в OS X v10.3 и позже.
-
AGL_SAMPLE_ALPHAAGL_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_BITAGL_MONOSCOPIC_BITЛевый буфер.
Доступный в OS X v10.0 и позже.
-
AGL_STEREOSCOPIC_BITAGL_STEREOSCOPIC_BITЛевый и правый буфер.
Доступный в OS X v10.0 и позже.
-
AGL_SINGLEBUFFER_BITAGL_SINGLEBUFFER_BITПередний буфер.
Доступный в OS X v10.0 и позже.
-
AGL_DOUBLEBUFFER_BITAGL_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_BITAGL_RGB8_BITУказывает формат, имеющий 8 бит на пиксель с расположением канала RGB: RGB=7:0, обратная карта цветов.
Доступный в OS X v10.0 и позже.
-
AGL_RGB8_A8_BITAGL_RGB8_A8_BITУказывает формат бит на пиксель ARGB 8-8 и каналы, расположенные в следующих битах: A=7:0, RGB=7:0, обратная карта цветов.
Доступный в OS X v10.0 и позже.
-
AGL_BGR233_BITAGL_BGR233_BITУказывает формат, имеющий 8 бит на пиксель с расположением канала RGB и каналы, расположенные в следующих битах: B=7:6, G=5:3, R=2:0
Доступный в OS X v10.0 и позже.
-
AGL_BGR233_A8_BITAGL_BGR233_A8_BITУказывает формат бит на пиксель ARGB 8-8 и каналы, расположенные в следующих битах: A=7:0, B=7:6, G=5:3, R=2:0
Доступный в OS X v10.0 и позже.
-
AGL_RGB332_BITAGL_RGB332_BITУказывает формат, имеющий 8 бит на пиксель с расположением канала RGB и каналы, расположенные в следующих битах: R=7:5, G=4:2, B=1:0
Доступный в OS X v10.0 и позже.
-
AGL_RGB332_A8_BITAGL_RGB332_A8_BITУказывает формат бит на пиксель ARGB 8-8 и каналы, расположенные в следующих битах: A=7:0, R=7:5, G=4:2, B=1:0
Доступный в OS X v10.0 и позже.
-
AGL_RGB444_BITAGL_RGB444_BITУказывает формат, имеющий 16 бит на пиксель с расположением канала RGB и каналы, расположенные в следующих битах: R=11:8, G=7:4, B=3:0
Доступный в OS X v10.0 и позже.
-
AGL_ARGB4444_BITAGL_ARGB4444_BITУказывает формат, имеющий 16 бит на пиксель с расположением канала ARGB и каналы, расположенные в следующих битах: A=15:12, R=11:8, G=7:4, B=3:0
Доступный в OS X v10.0 и позже.
-
AGL_RGB444_A8_BITAGL_RGB444_A8_BITУказывает формат, имеющий 8-16 бит на пиксель с расположением канала ARGB и каналы, расположенные в следующих битах: A=7:0, R=11:8, G=7:4, B=3:0
Доступный в OS X v10.0 и позже.
-
AGL_RGB555_BITAGL_RGB555_BITУказывает формат, имеющий 16 бит на пиксель с расположением канала RGB и каналы, расположенные в следующих битах: R=14:10, G=9:5, B=4:0. Главный бит не используется.
Доступный в OS X v10.0 и позже.
-
AGL_ARGB1555_BITAGL_ARGB1555_BITУказывает формат, имеющий 16 бит на пиксель с расположением канала ARGB и каналы, расположенные в следующих битах: A=15, R=14:10, G=9:5, B=4:0
Доступный в OS X v10.0 и позже.
-
AGL_RGB555_A8_BITAGL_RGB555_A8_BITУказывает формат, имеющий 8-16 бит на пиксель с расположением канала ARGB и каналы, расположенные в следующих битах: A=7:0, R=14:10, G=9:5, B=4:0
Доступный в OS X v10.0 и позже.
-
AGL_RGB565_BITAGL_RGB565_BITУказывает формат, имеющий 16 бит на пиксель с расположением канала RGB и каналы, расположенные в следующих битах: R=15:11, G=10:5, B=4:0
Доступный в OS X v10.0 и позже.
-
AGL_RGB565_A8_BITAGL_RGB565_A8_BITУказывает формат, имеющий 8-16 бит на пиксель с расположением канала ARGB и каналы, расположенные в следующих битах: A=7:0, R=15:11, G=10:5, B=4:0
Доступный в OS X v10.0 и позже.
-
AGL_RGB888_BITAGL_RGB888_BITУказывает формат, имеющий 32 бита на пиксель с расположением канала RGB и каналы, расположенные в следующих битах: R=23:16, G=15:8, B=7:0; R, G, и B берут 1 байт каждый.
Доступный в OS X v10.0 и позже.
-
AGL_ARGB8888_BITAGL_ARGB8888_BITУказывает формат, имеющий 32 бита на пиксель с расположением канала ARGB и каналы, расположенные в следующих битах: A=31:24, R=23:16, G=15:8, B=7:0
Доступный в OS X v10.0 и позже.
-
AGL_RGB888_A8_BITAGL_RGB888_A8_BITУказывает формат, имеющий 8-32 бита на пиксель с расположением канала ARGB и каналы, расположенные в следующих битах: A=7:0, R=23:16, G=15:8, B=7:0
Доступный в OS X v10.0 и позже.
-
AGL_RGB101010_BITAGL_RGB101010_BITУказывает формат, имеющий 32 бита на пиксель с расположением канала RGB и каналы, расположенные в следующих битах: R=29:20, G=19:10, B=9:0
Доступный в OS X v10.0 и позже.
-
AGL_ARGB2101010_BITAGL_ARGB2101010_BITУказывает формат, имеющий 32 бита на пиксель с расположением канала ARGB и каналы, расположенные в следующих битах: A=31:30 R=29:20, G=19:10, B=9:0
Доступный в OS X v10.0 и позже.
-
AGL_RGB101010_A8_BITAGL_RGB101010_A8_BITУказывает формат, имеющий 8-32 бита на пиксель с расположением канала ARGB и каналы, расположенные в следующих битах: A=7:0 R=29:20, G=19:10, B=9:0
Доступный в OS X v10.0 и позже.
-
AGL_RGB121212_BITAGL_RGB121212_BITУказывает формат, имеющий 48 бит на пиксель с расположением канала RGB и каналы, расположенные в следующих битах: R=35:24, G=23:12, B=11:0
Доступный в OS X v10.0 и позже.
-
AGL_ARGB12121212_BITAGL_ARGB12121212_BITУказывает формат, имеющий 48 бит на пиксель с расположением канала ARGB и каналы, расположенные в следующих битах: A=47:36, R=35:24, G=23:12, B=11:0
Доступный в OS X v10.0 и позже.
-
AGL_RGB161616_BITAGL_RGB161616_BITУказывает формат, имеющий 64 бита на пиксель с расположением канала RGB и каналы, расположенные в следующих битах: R=47:32, G=31:16, B=15:0
Доступный в OS X v10.0 и позже.
-
AGL_ARGB16161616_BITAGL_ARGB16161616_BITУказывает формат, имеющий 64 бита на пиксель с расположением канала ARGB и каналы, расположенные в следующих битах: A=63:48, R=47:32, G=31:16, B=15:0
Доступный в OS X v10.0 и позже.
-
AGL_INDEX8_BITAGL_INDEX8_BITУказывает таблицу цветов на 8 битов. (Осуждаемый)
Доступный в OS X v10.0 и позже.
-
AGL_INDEX16_BITAGL_INDEX16_BITУказывает таблицу цветов на 16 битов. (Осуждаемый)
Доступный в OS X v10.0 и позже.
-
AGL_RGBFLOAT64_BITAGL_RGBFLOAT64_BITУказывает формат, имеющий 64 бита на пиксель с расположением канала RGB, полузначениями с плавающей точкой. (Полуплавание является 16-разрядным значением с плавающей точкой.)
Доступный в OS X v10.3 и позже.
-
AGL_RGBAFLOAT64_BITAGL_RGBAFLOAT64_BITУказывает формат, имеющий 64 бита на пиксель с расположением канала ARGB, полузначениями с плавающей точкой. (Полуплавание является 16-разрядным значением с плавающей точкой.)
Доступный в OS X v10.3 и позже.
-
AGL_RGBFLOAT128_BITAGL_RGBFLOAT128_BITУказывает формат, имеющий 128 бит на пиксель с расположением канала RGB, значениями с плавающей точкой IEEE.
Доступный в OS X v10.3 и позже.
-
AGL_RGBAFLOAT128_BITAGL_RGBAFLOAT128_BITУказывает формат, имеющий 128 бит на пиксель с расположением канала ARGB, значениями с плавающей точкой IEEE.
Доступный в OS X v10.3 и позже.
-
AGL_RGBFLOAT256_BITAGL_RGBFLOAT256_BITУказывает формат, имеющий 256 бит на пиксель с расположением канала RGB, IEEE двойные значения.
Доступный в OS X v10.3 и позже.
-
AGL_RGBAFLOAT256_BITAGL_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_RECTAGL_SWAP_RECTВключите или установите прямоугольник подкачки. Связанный параметр должен содержать четыре значения: координаты окна x и y прямоугольника подкачки, сопровождаемого его шириной и высотой. Если включено, область окна, затронутого функцией
aglSwapBuffersограничивается подпрямоугольником всего окна.Доступный в OS X v10.0 и позже.
-
AGL_BUFFER_RECTAGL_BUFFER_RECTВключите или установите буферный прямоугольник. Связанный параметр должен содержать четыре значения: координаты окна x и y буферного прямоугольника, относительно границ структуры окна, сопровождаемого его шириной и высотой. Если включено, drawable прямоугольник окна и все его связанные буферы ограничиваются указанным прямоугольником.
Доступный в OS X v10.0 и позже.
-
AGL_SWAP_LIMITAGL_SWAP_LIMITВключите или отключите подкачку асинхронный предел.
Доступный в OS X v10.2 и позже.
-
AGL_COLORMAP_TRACKINGAGL_COLORMAP_TRACKINGВключите или отключите отслеживание карты цветов.
Доступный в OS X v10.0 и позже.
-
AGL_COLORMAP_ENTRYAGL_COLORMAP_ENTRYПрисваиваемое значение является записью карты цветов, указывает как {
index, r, g, b}.Доступный в OS X v10.0 и позже.
-
AGL_RASTERIZATIONAGL_RASTERIZATIONВключите или отключите всю растеризацию 2D и 3D примитивов. Можно использовать эту опцию отладить и охарактеризовать производительность драйвера OpenGL без фактического рендеринга.
Доступный в OS X v10.0 и позже.
-
AGL_SWAP_INTERVALAGL_SWAP_INTERVALСвязанный параметр содержит одно значение: текущая установка интервала подкачки. Значение
0указывает для не синхронизации с вертикалью, восстанавливают. Все другие значения указывают для синхронизации с вертикалью, восстанавливают.Доступный в OS X v10.0 и позже.
-
AGL_STATE_VALIDATIONAGL_STATE_VALIDATIONВключает или отключает проверку состояния для многоэкранной функциональности. Если включено, библиотека AGL проверяет состояние контекста рендеринга каждый раз когда функция
aglUpdateContextвызывается, чтобы гарантировать, что это находится в надлежащем состоянии для переключения между средствами рендеринга. Обычно, состояние проверено только, когда фактически необходимо переключить средства рендеринга. Эта опция полезна, когда Вы захотите использовать единственную систему контроля для тестирования этого, приложение выполнит правильно в многократной системе контроля.Доступный в OS X v10.0 и позже.
-
AGL_BUFFER_NAMEAGL_BUFFER_NAMEПрисваиваемое значение является буферным именем. Можно использовать эту опцию позволить многократным контекстам OpenGL совместно использовать буфер.
Доступный в OS X v10.0 и позже.
-
AGL_ORDER_CONTEXT_TO_FRONTAGL_ORDER_CONTEXT_TO_FRONTУказывает для упорядочивания текущего контекста рендеринга перед всеми другими контекстами.
Доступный в OS X v10.1 и позже.
-
AGL_CONTEXT_SURFACE_IDAGL_CONTEXT_SURFACE_IDПрисваиваемым значением является ID drawable поверхности для контекста рендеринга. Вы не можете установить это значение, потому что система устанавливает его. Однако можно получить значение с помощью функции
aglGetInteger.Доступный в OS X v10.2 и позже.
-
AGL_CONTEXT_DISPLAY_IDAGL_CONTEXT_DISPLAY_IDПрисваиваемое значение является списком дисплея IDs всех дисплеев, затронутых контекстом рендеринга максимум до 32 дисплеев. Вы не можете установить этот список значений, потому что система присваивает Значения идентификаторов дисплея. Однако можно получить значение с помощью функции
aglGetInteger.Доступный в OS X v10.2 и позже.
-
AGL_SURFACE_ORDERAGL_SURFACE_ORDERПрисваиваемое значение является позицией поверхности OpenGL относительно окна. Значение
1средние значения, что позиция выше окна; значение–1указывает позицию, которая является ниже окна.Доступный в OS X v10.2 и позже.
-
AGL_SURFACE_OPACITYAGL_SURFACE_OPACITYПрисваиваемое значение указывает непрозрачность поверхности OpenGL. Значение
1означает, что поверхность непрозрачна (значение по умолчанию);0абсолютно прозрачные средние значения.Доступный в OS X v10.2 и позже.
-
AGL_CLIP_REGIONAGL_CLIP_REGIONВключает или устанавливает drawable область отсечения. Присваиваемое значение является a
rgnHandleтип данных, определяющий область отсечения.Доступный в OS X v10.2 и позже.
-
AGL_FS_CAPTURE_SINGLEAGL_FS_CAPTURE_SINGLEВключает получение единственного дисплея для полноэкранного рендеринга. Эта опция отключена по умолчанию.
Доступный в OS X v10.2 и позже.
-
AGL_SURFACE_BACKING_SIZEAGL_SURFACE_BACKING_SIZEПрисваиваемое значение указывает ширину и высоту размера поддержки поверхности.
Доступный в OS X v10.4 и позже.
-
AGL_ENABLE_SURFACE_BACKING_SIZEAGL_ENABLE_SURFACE_BACKING_SIZEВключите или отключите поверхностное переопределение размера поддержки.
Доступный в OS X v10.4 и позже.
-
AGL_SURFACE_VOLATILEAGL_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_ERRORAGL_NO_ERRORНикакая ошибка.
Доступный в OS X v10.0 и позже.
-
AGL_BAD_ATTRIBUTEAGL_BAD_ATTRIBUTEНедопустимый атрибут формата пикселя.
Доступный в OS X v10.0 и позже.
-
AGL_BAD_PROPERTYAGL_BAD_PROPERTYНедопустимое свойство средства рендеринга.
Доступный в OS X v10.0 и позже.
-
AGL_BAD_PIXELFMTAGL_BAD_PIXELFMTНедопустимый формат пикселя.
Доступный в OS X v10.0 и позже.
-
AGL_BAD_RENDINFOAGL_BAD_RENDINFOНедопустимая информация средства рендеринга.
Доступный в OS X v10.0 и позже.
-
AGL_BAD_CONTEXTAGL_BAD_CONTEXTНедопустимый контекст рендеринга.
Доступный в OS X v10.0 и позже.
-
AGL_BAD_DRAWABLEAGL_BAD_DRAWABLEНедопустимый drawable объект. Изменение виртуальных экранов (средства рендеринга) перестало работать, если поверхностная ширина и высота не могут быть установлены в значения, которые требуют, или если создание drawable объекта или поверхностей должно было поддерживать пиксельный буфер сбои по другим причинам.
Доступный в OS X v10.0 и позже.
-
AGL_BAD_GDEVAGL_BAD_GDEVНедопустимое графическое устройство.
Доступный в OS X v10.0 и позже.
-
AGL_BAD_STATEAGL_BAD_STATEНедопустимое состояние контекста рендеринга.
Доступный в OS X v10.0 и позже.
-
AGL_BAD_VALUEAGL_BAD_VALUEНедопустимое численное значение.
Доступный в OS X v10.0 и позже.
-
AGL_BAD_MATCHAGL_BAD_MATCHНедопустимый контекст рендеринга доли.
Доступный в OS X v10.0 и позже.
-
AGL_BAD_ENUMAGL_BAD_ENUMНедопустимый enumerant.
Доступный в OS X v10.0 и позже.
-
AGL_BAD_OFFSCREENAGL_BAD_OFFSCREENНедопустимый внеэкранный drawable объект.
Доступный в OS X v10.0 и позже.
-
AGL_BAD_FULLSCREENAGL_BAD_FULLSCREENНедопустимый полноэкранный drawable объект.
Доступный в OS X v10.0 и позже.
-
AGL_BAD_WINDOWAGL_BAD_WINDOWНедопустимое окно.
Доступный в OS X v10.0 и позже.
-
AGL_BAD_POINTERAGL_BAD_POINTERНедопустимый указатель.
Доступный в OS X v10.0 и позже.
-
AGL_BAD_MODULEAGL_BAD_MODULEНедопустимый модуль кода.
Доступный в OS X v10.0 и позже.
-
AGL_BAD_ALLOCAGL_BAD_ALLOCСбой выделения памяти.
Доступный в OS X v10.0 и позже.
-
AGL_BAD_CONNECTIONAGL_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_SIZEAGL_FORMAT_CACHE_SIZEПрисваиваемое значение является размером положительного кэша формата пикселя и первоначально установлено в
5. Если Ваше приложение должно использоватьnразличные списки атрибутов для выбораnразличные форматы пикселя неоднократно, тогда приложение должно установить размер кэша вnмаксимизировать производительность. После того, как Ваше приложение вызываетaglChoosePixelFormatфункционируйте в последний раз, Вы могли бы хотеть установить размер кэша в1минимизировать память, используемую библиотекой AGL.Доступный в OS X v10.0 и позже.
-
AGL_CLEAR_FORMAT_CACHEAGL_CLEAR_FORMAT_CACHEТо, когда присваиваемое значение является ненулевым, указывает для сброса кэша формата пикселя. Очистка кэша не влияет на размер кэша для будущего хранения форматов пикселя. Для минимизации памяти, использованной кэшем, приложение должно также установить размер кэша в
1.Доступный в OS X v10.0 и позже.
-
AGL_RETAIN_RENDERERSAGL_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_IDAGL_RENDERER_IDПрисваиваемое значение является неотрицательным целым числом, указывающим средство рендеринга. Если настоящее, средства рендеринга OpenGL, соответствующие указанный ID предпочтено, посмотрите Средство рендеринга IDs для возможных значений. Можно передать эту константу функции aglDescribeRenderer.
Доступный в OS X v10.0 и позже.
-
AGL_SINGLE_RENDERERAGL_SINGLE_RENDERERЭта константа является булевым атрибутом. Если это присутствует в массиве атрибутов, указывает, что единственный формат пикселя представляет единственное средство рендеринга для всех экранов. В системах с многократными экранами эта опция отключает возможность библиотеки AGL управлять различными мониторами через различные карты графического акселератора с единственным контекстом рендеринга AGL.. Не предоставляйте значение эту константу, потому что ее присутствие в массиве подразумевает
true.Доступный в OS X v10.0 и позже.
-
AGL_NO_RECOVERYAGL_NO_RECOVERYЭта константа является булевым атрибутом. Если это присутствует в массиве атрибутов, указывает, что опции восстановления после отказа отключены для этого формата пикселя. Обычно, если ускоренное средство рендеринга не может присоединить к drawable объекту вследствие недостаточной видеопамяти, AGL автоматически переключается на другое средство рендеринга. Этот атрибут отключает эти опции так, чтобы рендеринг был всегда сделан выбранным средством рендеринга. Например, если аппаратно ускоренное средство рендеринга исчерпает ресурсы, с этой включенной опцией Вы не получите средство рендеринга программного обеспечения как нейтрализацию.
Доступный в OS X v10.0 и позже.
-
AGL_ACCELERATEDAGL_ACCELERATEDЭта константа является булевым атрибутом. Если это присутствует в массиве атрибутов, указывает средства рендеринга, которые присоединены к аппаратно ускоренному графическому устройству. Обычно невозможно поддерживать больше чем одно ускоренное графическое устройство, потому что обычно, когда окно охватывает больше чем одно устройство, OpenGL использует средство рендеринга программного обеспечения. Можно передать эту константу функции aglDescribeRenderer, чтобы узнать, аппаратно ускорено ли определенное средство рендеринга.
Доступный в OS X v10.0 и позже.
-
AGL_CLOSEST_POLICYAGL_CLOSEST_POLICYПрисваиваемое значение указывает цветной размер буфера. Когда установлено, эта опция изменяет политику выбора формата пикселя, таким образом, что цветной буфер, самый близкий к требуемому размеру, предпочтен, независимо от фактической цветной буферной глубины поддерживаемого графического устройства.
Доступный в OS X v10.0 и позже.
-
AGL_ROBUSTAGL_ROBUSTЭта константа является булевым атрибутом. Если это присутствует в массиве атрибутов, указывает, что AGL должен рассмотреть только те средства рендеринга, не имеющие никаких видов отказа связанными с отсутствием ресурсов видеокарты. Можно передать эту константу функции aglDescribeRenderer.
Доступный в OS X v10.0 и позже.
-
AGL_BACKING_STOREAGL_BACKING_STOREЭта константа является булевым атрибутом. Если это присутствует в массиве атрибутов, указывает, что AGL должен рассмотреть только те средства рендеринга, имеющие задний буфер цвета полный размер drawable объекта (независимо от видимости окна). AGL гарантирует, что заднее содержимое буфера будет допустимо после вызова к
aglSwapBuffersфункция. Можно передать эту константу функции aglDescribeRenderer.Доступный в OS X v10.0 и позже.
-
AGL_MP_SAFEAGL_MP_SAFEЭта константа является булевым атрибутом. Если это присутствует в массиве атрибутов, указывает средство рендеринга, которое является многопроцессорным сейфом. Этот атрибут осуждается в OS X, потому что все средства рендеринга могут принять команды для потоков, работающих на втором процессоре. Однако это не означает, что все средства рендеринга ориентированы на многопотоковое исполнение или повторно используемы.
Доступный в OS X v10.0 и позже.
-
AGL_WINDOWAGL_WINDOWЭта константа является булевым атрибутом. Если это присутствует в массиве атрибутов, указывает, что формат пикселя может использоваться для рендеринга к экранному окну. Можно передать эту константу функции aglDescribeRenderer.
Доступный в OS X v10.0 и позже.
-
AGL_MULTISCREENAGL_MULTISCREENЭта константа является булевым атрибутом. Если это присутствует в массиве атрибутов, указывает, что средство рендеринга способно к управлению многократными экранами с тем же контекстом рендеринга. (Единственное окно может охватить многократные экраны.) Можно передать эту константу функции aglDescribeRenderer.
Доступный в OS X v10.0 и позже.
-
AGL_VIRTUAL_SCREENAGL_VIRTUAL_SCREENПрисваиваемое значение является целым числом, указывающим виртуальное экранное число формата пикселя.
Доступный в OS X v10.0 и позже.
-
AGL_COMPLIANTAGL_COMPLIANTЭта константа является булевым атрибутом. Если это присутствует в массиве атрибутов, указывает формат пикселя, который полностью совместим с OpenGL. Все средства рендеринга OS X совместимы OpenGL. Можно передать эту константу функции aglDescribeRenderer.
Доступный в OS X v10.0 и позже.
-
AGL_PBUFFERAGL_PBUFFERЭта константа является булевым атрибутом. Если это присутствует в массиве атрибутов, указывает, что средство рендеринга может представить к пиксельному буферу. Можно передать эту константу функции aglDescribeRenderer.
Доступный в OS X v10.3 и позже.
-
AGL_REMOTE_PBUFFERAGL_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_IDAGL_RENDERER_GENERIC_IDУниверсальный дисплей.
Осуждаемый на основанных на Intel компьютерах Macintosh.
Доступный в OS X v10.0 и позже.
-
AGL_RENDERER_GENERIC_FLOAT_IDAGL_RENDERER_GENERIC_FLOAT_IDСредство рендеринга программного обеспечения с плавающей точкой, оптимизированное для основанных на векторе процессоров, программируемо, и штриховка поддержек.
Доступный в OS X v10.3 и позже.
-
AGL_RENDERER_APPLE_SW_IDAGL_RENDERER_APPLE_SW_IDСредство рендеринга программного обеспечения Apple.
Доступный в OS X v10.2 и позже.
-
AGL_RENDERER_ATI_RAGE_128_IDAGL_RENDERER_ATI_RAGE_128_IDГнев ATI 128 дисплеев.
Доступный в OS X v10.2 и позже.
-
AGL_RENDERER_ATI_RADEON_IDAGL_RENDERER_ATI_RADEON_IDATI дисплей Radeon.
Доступный в OS X v10.2 и позже.
-
AGL_RENDERER_ATI_RAGE_PRO_IDAGL_RENDERER_ATI_RAGE_PRO_IDГнев ATI Pro дисплей.
Доступный в OS X v10.2 и позже.
-
AGL_RENDERER_ATI_RADEON_8500_IDAGL_RENDERER_ATI_RADEON_8500_IDATI дисплей Radeon 8500.
Доступный в OS X v10.2 и позже.
-
AGL_RENDERER_ATI_RADEON_9700_IDAGL_RENDERER_ATI_RADEON_9700_IDATI дисплей Radeon 9700.
Доступный в OS X v10.3 и позже.
-
AGL_RENDERER_ATI_RADEON_X1000_IDAGL_RENDERER_ATI_RADEON_X1000_IDATI дисплей Radeon 9700.
Доступный в OS X v10.5 и позже.
-
AGL_RENDERER_NVIDIA_GEFORCE_2MX_IDAGL_RENDERER_NVIDIA_GEFORCE_2MX_IDДисплей NVIDIA GeForce 2MX или NVIDIA GeForce 4MX.
Доступный в OS X v10.2 и позже.
-
AGL_RENDERER_NVIDIA_GEFORCE_3_IDAGL_RENDERER_NVIDIA_GEFORCE_3_IDДисплей NVIDIA GeForce 3 или NVIDIA GeForce 4 Ti.
Доступный в OS X v10.2 и позже.
-
AGL_RENDERER_NVIDIA_GEFORCE_FX_IDAGL_RENDERER_NVIDIA_GEFORCE_FX_IDNVIDIA GeForce FX, GeForce 6 или дисплей GeForce 7.
Доступный в OS X v10.3 и позже.
-
AGL_RENDERER_VT_BLADE_XP2_IDAGL_RENDERER_VT_BLADE_XP2_IDДеревенский дисплей Троник.
Доступный в OS X v10.3 и позже.
-
AGL_RENDERER_INTEL_900_IDAGL_RENDERER_INTEL_900_IDДисплей Intel GMA 900.
Доступный в OS X v10.5 и позже.
-
AGL_RENDERER_MESA_3DFX_IDAGL_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_MODESAGL_BUFFER_MODESПрисваиваемое значение может быть поразрядным
ORиз любой из констант, указанных в Буферных Флагах Режима.Доступный в OS X v10.0 и позже.
-
AGL_MIN_LEVELAGL_MIN_LEVELПрисваиваемое значение указывает минимальный буферный уровень наложения. Отрицательные величины указывают, лежал в основе буфера.
Доступный в OS X v10.0 и позже.
-
AGL_MAX_LEVELAGL_MAX_LEVELПрисваиваемое значение указывает максимальный буферный уровень наложения.
Доступный в OS X v10.0 и позже.
-
AGL_COLOR_MODESAGL_COLOR_MODESПрисваиваемое значение может быть поразрядным
ORиз любой из констант, указанных в цвете Режимы.Доступный в OS X v10.0 и позже.
-
AGL_ACCUM_MODESAGL_ACCUM_MODESПрисваиваемое значение может быть поразрядным
ORиз любой из констант, указанных в цвете Режимы.Доступный в OS X v10.0 и позже.
-
AGL_DEPTH_MODESAGL_DEPTH_MODESПрисваиваемое значение может быть поразрядным
ORиз любой из констант, указанных в Битовых глубинах.Доступный в OS X v10.0 и позже.
-
AGL_STENCIL_MODESAGL_STENCIL_MODESПрисваиваемое значение может быть поразрядным
ORиз любой из констант, указанных в Битовых глубинах.Доступный в OS X v10.0 и позже.
-
AGL_MAX_AUX_BUFFERSAGL_MAX_AUX_BUFFERSПрисваиваемое значение является максимальным количеством вспомогательных буферов, которые могут поддерживаться средством рендеринга.
Доступный в OS X v10.0 и позже.
-
AGL_VIDEO_MEMORYAGL_VIDEO_MEMORYПрисваиваемое значение является суммой видеопамяти.
Доступный в OS X v10.0 и позже.
-
AGL_TEXTURE_MEMORYAGL_TEXTURE_MEMORYПрисваиваемое значение является суммой памяти текстуры.
Доступный в OS X v10.0 и позже.
-
AGL_RENDERER_COUNTAGL_RENDERER_COUNTПрисваиваемое значение является числом средств рендеринга.
Доступный в OS X v10.3 и позже.
Обсуждение
Можно передать эти константы функции aglDescribeRenderer для обнаружения значения свойства для определенного средства рендеринга.
-
