opengl

Управление визуализацией OpenGL

Описание

пример

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

d = opengl('data') возвращает те же данные, которые предоставляются с opengl info, но хранит его в структуре. Начиная с R2019a, этот синтаксис больше не рекомендуется.

пример

opengl software использует версию программного обеспечения OpenGL, чтобы отобразить последующую графику для текущего сеанса работы с MATLAB. Эта команда работает только в Windows® систем.

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

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

пример

opengl('save',pref) устанавливает настройки так, чтобы будущие сеансы MATLAB на этом компьютере использовали предпочтительную версию OpenGL. Задайте pref как 'software', 'hardware', 'hardwarebasic', или 'none'. Эта команда не влияет на текущий сеанс.

Примеры

свернуть все

Использование opengl info Команда отображения информацию о реализации OpenGL, используемой в настоящее время MATLAB. Например, отобразите поставщика, версию и поддерживаемые графические функции. Также отобразите, использует ли MATLAB аппаратно ускоренную реализацию или программную реализацию OpenGL.

opengl info
                          Version: '2.1 Mesa 17.1.3'
                           Vendor: 'Brian Paul'
                         Renderer: 'Mesa X11'
                   MaxTextureSize: 16384
                           Visual: 'Visual 0x23, (RGBA 32 bits (8 8 8 8), Z depth 16 bits, Hardware acceleration, Double buffer, Antialias 0 samples)'
                         Software: 'true'
             HardwareSupportLevel: 'none'
        SupportsGraphicsSmoothing: 0
    SupportsDepthPeelTransparency: 1
       SupportsAlignVertexCenters: 0
                       Extensions: {152x1 cell}
               MaxFrameBufferSize: 16384

Использование opengl info команда, определите ваше графическое оборудование путем проверки Vendor и Renderer поля.

opengl info
                          Version: '3.3.0'
                           Vendor: 'NVIDIA Corporation'
                         Renderer: 'Quadro 400/PCIe/SSE2'
            RendererDriverVersion: '9.18.13.3182'
        RendererDriverReleaseDate: '11-Nov-2013'
                   MaxTextureSize: 8192
                           Visual: 'Visual 0x07, (RGBA 32 bits...'
                         Software: 'false'
             HardwareSupportLevel: 'full'
        SupportsGraphicsSmoothing: 1
    SupportsDepthPeelTransparency: 1
       SupportsAlignVertexCenters: 1
                       Extensions: {248x1 cell}
               MaxFrameBufferSize: 8192

Примечание

Если возвращенные поля содержат линию Software: 'true', затем вы используете программное обеспечение OpenGL и имя, указанное в Vendor поле не является вашим поставщиком графического оборудования. Вместо этого, Vendor поле указывает производителя программного обеспечения OpenGL реализации.

Закройте все рисунки, переключитесь на аппаратный OpenGL и выпустите opengl info команда. Затем вернитесь к программному обеспечению OpenGL.

close all 
opengl hardware
opengl info
opengl software

Запустите MATLAB с -nosoftwareopengl флаг. Затем выдайте opengl info команда.

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

opengl software

Эта команда работает только с системами Windows.

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

opengl('save','software')

Входные параметры

свернуть все

Информация о реализации OpenGL, используемой в настоящее время MATLAB, указывается как info. The opengl info команда возвращает поля, перечисленные в этой таблице.

FieldDescription
VersionВерсия реализации OpenGL.
VendorПроизводитель реализации OpenGL.
RendererDriverVersionВерсия драйвера OpenGL (системы Windows только с аппаратным ускорением OpenGL). Это поле не отображается на виртуальных машинах.
RendererDriverReleaseDateДата релиза драйвера OpenGL (системы Windows только с аппаратным ускорением OpenGL). Это поле не отображается на виртуальных машинах.
Renderer

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

MaxTextureSize

Максимальный размер текстуры, поддерживаемый реализацией OpenGL.

VisualОтобразите свойства реализации OpenGL.
SoftwareПрограммное обеспечение OpenGL включено, возвращается как 'true' или 'false'.
HardwareSupportLevel

Уровень аппаратной поддержки, возвращенный как одно из следующих значений:

  • 'full' - Аппаратное ускорение OpenGL (все графические функции включены)

  • 'basic' - Базовая версия OpenGL с аппаратным ускорением (некоторые графические функции отключены)

  • 'none' - Программное обеспечение OpenGL

Если MATLAB обнаруживает неподдерживаемый драйвер, это поле также содержит 'known graphics driver issues'.

SupportsGraphicsSmoothingПоддержка функции сглаживания графики, возвращенная следующим 1 если поддерживается или 0 в противном случае.
SupportsDepthPeelTransparencyПоддержка функции очистки от глубины, возвращенная следующим 1 если поддерживается или 0 в противном случае.
SupportsAlignVertexCentersВыравнивание поддержки функций по центрам вершин, возвращаемое следующим 1 если поддерживается или 0 в противном случае.
Extensions

Расширенные возможности, поддерживаемые реализацией OpenGL.

MaxFrameBufferSize

Максимальный buffer size системы координат, поддерживаемый реализацией OpenGL.

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

Программное обеспечение OpenGL, заданное как software.

Для перехода на программное обеспечение OpenGL:

  • В системах Windows выполните opengl software.

  • На Linux® systems, запустите MATLAB с -softwareopengl флаг.

  • Системы Macintosh не поддерживают программное обеспечение OpenGL.

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

Аппаратное ускорение OpenGL, заданное как hardware. Все системы поддерживают использование opengl hardware команда переключения с базового оборудования на аппаратный OpenGL. Однако использование opengl hardware поддерживаются только системами Windows команда переключения с программного обеспечения на оборудование OpenGL. Чтобы переключиться с программного обеспечения на оборудование в системах Linux, запустите MATLAB с -nosoftwareopengl флаг.

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

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

Выбор версии OpenGL для будущих сеансов, заданное как один из следующих опций:

  • 'software' - Программное обеспечение OpenGL. Эта опция недоступна в системах Macintosh.

  • 'hardware' - Аппаратное ускорение OpenGL.

  • 'hardwarebasic' - Аппаратное ускорение OpenGL с отключенными расширенными графическими функциями. Для получения дополнительной информации см. Раздел «Продвинутые графические функции».

  • 'none' - Значение по умолчанию для вашей системы.

Подробнее о

свернуть все

Продвинутые графические функции

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

  • Используете ли вы оборудование, основное оборудование или программное обеспечение OpenGL. Чтобы определить, какую реализацию вы используете, проверьте HardwareSupportLevel поле возвращено opengl info.

  • Версия реализации OpenGL. Чтобы определить используемую версию, проверьте Version поле возвращено opengl info. Чтобы получить последнюю версию, доступную для вашего графического оборудования, обновите графические драйверы с веб-сайта производителя компьютера. Дополнительные сведения об обновлении графических драйверов см. в разделе Системные требования для графики.

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

Графическая функция Оборудование OpenGL Базовое оборудование OpenGL Программное обеспечение OpenGL в WindowsПрограммное обеспечение OpenGL на Linux
Сглаживание графикиПоддерживается для OpenGL 2.1 или вышеПоддерживается для OpenGL 2.1 или вышеНе поддерживаетсяНе поддерживается
Порядко-независимая прозрачностьПоддерживается для OpenGL 2.1 или вышеОтключенныйНе поддерживаетсяПоддержанный
Выравнивание по центрам вершинПоддерживается для OpenGL 2.1 или вышеОтключенныйНе поддерживаетсяНе поддерживается
Аппаратно ускоренные маркерыПоддерживается для OpenGL 4.0 или вышеОтключенныйНе поддерживаетсяНе поддерживается

Сглаживание графики

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

Эта таблица показывает различие, когда функция включена или отключена. Чтобы выключить эту функцию для конкретного рисунка, установите GraphicsSmoothing свойство рисунка, чтобы 'off'.

При поддержке и активацииКогда не поддерживаются или отключены

(Изменение масштаба в виде)


(Изменение масштаба в виде)


Порядко-независимая прозрачность

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

При поддержкеКогда не поддерживается

Выравнивание по центрам вершин

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

Эта таблица показывает различие, когда функция включена или отключена.

При поддержке и активацииКогда не поддерживаются или отключены

Аппаратно-ускоренные маркеры

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

При поддержкеКогда не поддерживается

Совет

  • Painters является альтернативным методом визуализации для отображения и печати экрана. Для получения дополнительной информации смотрите Renderer рисунка свойство.

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

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

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

    • Вы не имеете графического оборудования или ваше графическое оборудование не поддерживает аппаратное обеспечение OpenGL.

Вопросы совместимости

расширить все

Не рекомендуемый запуск в R2019a

Представлено до R2006a