【问题标题】:Matlab openGL WarningMatlab openGL警告
【发布时间】:2018-11-08 11:44:22
【问题描述】:

我的任务是升级在旧版本的 Matlab/Simulink 中制作的许多旧模型和脚本,并使其在 R2018b 中顺利运行。除其他要求外,我不允许在执行 .m 脚本或 Simulink 模型时发出任何警告。这通常很乏味,但很容易遵守。

但是,有一个具体的警告,Matlab 没有给我提示可能的来源:

警告:MATLAB 已通过切换到软件 OpenGL 禁用了一些高级图形渲染功能。如需更多信息,请点击此处

该链接打开标题为 Resolving Low-Level Graphics Issues 的 Matlab 帮助页面,该页面描述了我没有发现(或至少没有注意到)的问题

我确实注意到我运行的许多脚本会创建和关闭图形,但这是按程序完成的。我无法将此警告与某些特定功能或特性相关联。我正在使用 Windows Server 机器。

有没有人知道如何缩小 Simulink 块可能导致此警告的哪种功能?

【问题讨论】:

  • 警告是 MATLAB 使用的不是 GPU,而是 CPU。如果您的计算机中有 GPU,并且它用于图形(不是计算 GPU),请确保更新驱动程序并在 MATLAB 中键入 opengl hardware,这应该会切换渲染器并删除警告。

标签: matlab opengl


【解决方案1】:

正如datenwolfAnder 指出的那样,首先要尝试更新驱动程序。如果这不起作用,并且您唯一的问题是您收到警告但您的图形仍然可以正常渲染,那么您还有其他两个选项可以尝试。

首先,您可以使用opengl 简单地修改您的 OpenGL 渲染首选项。以下会将您的偏好设置为 'software' 并保存该设置以供以后的会话使用:

opengl('save', 'software');

或者,您可以尝试suppress that particular warning message。收到警告后,调用warning 函数:

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

w.identifier 字段将为您提供警告消息的 ID,我相信在这种情况下将是 'MATLAB:hg:AutoSoftwareOpenGL'。然后,您可以将以下行添加到您的 startup.m 文件中,以便每次打开 MATLAB 时都会抑制此警告:

warning('off', 'MATLAB:hg:AutoSoftwareOpenGL');

【讨论】:

    【解决方案2】:

    为您的 GPU 安装原始供应商驱动程序。默认情况下由 Windows 安装的驱动程序缺乏对 OpenGL 的完全支持。直接从 Intel、AMD 或 NVidia 的网站下载驱动程序包,具体取决于您拥有的 GPU。

    如果您没有 GPU,例如在虚拟机中运行时,则无法避免该警告,因为 Matlab 没有其他选择,只能使用它附带的软件 OpenGL 实现。

    除了确保您运行 Matlab 的系统确实具有适当的 OpenGL 支持之外,您无能为力!

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-08-13
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多