当我启动 unity3d 时,标题栏中显示“OpenGL 2.1(已弃用)”。
运行glxinfo | grep version
显示如下:
server glx version string: 1.4
client glx version string: 1.4
GLX version: 1.4
OpenGL core profile version string: 4.3.0 NVIDIA 361.45.11
OpenGL core profile shading language version string: 4.30 NVIDIA via Cg compiler
OpenGL version string: 4.5.0 NVIDIA 361.45.11
OpenGL shading language version string: 4.50
...所以我有 OpenGL 4?
我该如何修复 unity3d 的问题?
答案1
从Unity 论坛:
目前,渲染后端被强制使用 OpenGL 2.1,直到我们解决 Linux 编辑器中 OpenGL 核心的一些剩余问题。
和:
Unity 有多个渲染后端,即使在同一个平台上也是如此。OpenGL 2.1 应该会在不久的将来被移除,取而代之的是“glcore”,它处理现代 OpenGL 版本提供的功能,如曲面细分和计算着色器,因此名称中带有“已弃用”字样。目前,glcore 存在一些严重问题,因此编辑器已修复为旧版,但经过实战测试的渲染器。所以不用担心,这并不意味着您的 GPU 或驱动程序有问题。
更新: 自版本起5.5.0b1,Unity 现在使用 OpenGL 核心渲染后端。这意味着您的开发环境必须支持 OpenGL 核心配置文件 3.2 或更高版本。
答案2
unity3d 不支持 OpenGL 4,仅支持 OpenGL 3.0+。警告告诉您,您正在运行已弃用的旧版 OpenGL,您应该更新驱动程序。