我终于在CentOS 7机器上使用OpenGL成功编译了一个Qt应用程序(C ++)。该应用程序最初是为Windows开发的。
我有一个显示黑屏的OpenGL场景。如果我在Windows环境中使用Windows版本的Qt编译项目,它就可以工作。
除了在OpenGl场景中看不到结果外,所有控件和功能都正常工作。经过几次搜索,我发现它可能是一个3D加速问题,我被建议尝试禁用它。
我在CentOS系统上使用Mesa库:
glxinfo | grep vendor
server glx vendor string: SGI
client glx vendor string: Mesa Project and SGI
OpenGL vendor string: VMware, Inc.
我可以看到3D加速已开启:
glxinfo | grep rendering
direct rendering: Yes
如何禁用它?
答案 0 :(得分:1)
使用环境变量LIBGL_ALWAYS_SOFTWARE=1
。它禁用硬件加速。来自Mesa3D文档:
LIBGL_ALWAYS_SOFTWARE - 如果设置,则始终使用软件渲染