Matlab openGL Предупреждение - PullRequest
0 голосов
/ 08 ноября 2018

Мне поручено обновить множество устаревших моделей и скриптов, созданных в более старой версии Matlab / Simulink, и обеспечить их бесперебойную работу в R2018b.Помимо других требований, мне не разрешается выдавать какие-либо предупреждения при выполнении сценариев .m или моделей Simulink.Как правило, это утомительно, но выполнить это просто.

Однако есть особое предупреждение о том, что Matlab не дает мне подсказок о возможных источниках:

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

Ссылка открывает страницу справки Matlab под названием Устранение проблем с низкоуровневой графикой , которая описывает проблемы, которых я не нахожу(или, по крайней мере, не замечая)

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

Кто-нибудь имеет представление о том, как сузить, какой тип функции блока Simulink может вызвать это предупреждение?

Ответы [ 2 ]

0 голосов
/ 08 ноября 2018

Как отметили datenwolf и Ander , в первую очередь необходимо обновить драйверы. Если это не сработает, и ваша единственная проблема в том, что вы получаете предупреждение, но ваша графика по-прежнему отображается нормально, у вас есть два других варианта.

Во-первых, вы можете просто изменить настройки рендеринга OpenGL, используя opengl. Следующее установит ваше предпочтение на 'software' и сохранит этот параметр для будущих сессий:

opengl('save', 'software');

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

w = warning('query', 'last');

Поле w.identifier даст вам идентификатор для предупреждающего сообщения, которое, как я полагаю, будет 'MATLAB:hg:AutoSoftwareOpenGL' в этом случае. Затем вы можете добавить следующую строку в файл startup.m , чтобы это предупреждение подавлялось при каждом открытии MATLAB:

warning('off', 'MATLAB:hg:AutoSoftwareOpenGL');
0 голосов
/ 08 ноября 2018

Установите оригинальные драйверы поставщиков для вашего графического процессора. Драйверы, установленные Windows по умолчанию, не имеют полной поддержки OpenGL. Загрузите пакет драйверов непосредственно с веб-сайта Intel, AMD или NVidia, в зависимости от того, какой у вас графический процессор.

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

Вы ничего не можете с этим поделать, кроме как убедиться, что система, на которой вы используете Matlab, имеет надлежащую поддержку OpenGL!

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