在Mac上的Ubuntu VM上使用Mesa / OpenGL 4.5进行软件渲染

时间:2018-10-11 23:11:31

标签: c++ macos ubuntu opengl mesa

作为研究的一部分,我必须能够编译和运行基于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上下文?

1 个答案:

答案 0 :(得分:1)

  

Mesa是否实现任何版本的OpenGL 4?

他们的英特尔和Radeon硬件驱动程序do

  

...我可以强制在GLFW上进行软件渲染,以便创建OpenGL 4.x上下文吗?

不,Mesa的所有软件渲染器(softpipe, llvmpipe, & swr)都在OpenGL 3.3上达到了顶峰。