作为研究的一部分,我必须能够编译和运行基于OpenGL 4.5的程序,而我只有Mac才能这样做。我在VM中使用Ubuntu来具有更易于编程的环境,但是我的软件和硬件(macOS Sierra 10.12.6,Intel HD Graphics 4000)仅限于3.3上下文。这是其他信息(从Ubuntu VM运行):
$ glxinfo | grep 'OpenGL core'
OpenGL core profile version string: 3.3 (Core Profile) Mesa 18.0.5
OpenGL core profile shading language version string: 3.30
OpenGL core profile context flags: (none)
OpenGL core profile profile mask: core profile
OpenGL core profile extensions:
分配使用GLFW。我一直在尝试使其与Mesa(使用llvmpipe一起使用)一起进行软件渲染,以使其独立于硬件功能(如果我理解正确的话),但是当我尝试创建窗口时窗口创建总是失败4.5上下文。我环顾四周,尝试使用export LIBGL_ALWAYS_SOFTWARE=1
无济于事。构建链使用CMAKE来构建分配和实际的GLFW库,以实现其价值(我注意到它使用带有xorg-dev
包的X11)。
Mesa是否实现任何版本的OpenGL 4?如果可以,我是否可以强制在GLFW上进行软件渲染,以便创建OpenGL 4.x上下文?
答案 0 :(得分:1)
Mesa是否实现任何版本的OpenGL 4?
他们的英特尔和Radeon硬件驱动程序do。
...我可以强制在GLFW上进行软件渲染,以便创建OpenGL 4.x上下文吗?
不,Mesa的所有软件渲染器(softpipe
, llvmpipe
, & swr
)都在OpenGL 3.3上达到了顶峰。