1.问题描述
在自己的电脑上能显示3D点云,在另一台电脑上显示总会出现崩溃,最后找出的原因是那台电脑的显卡版本太低,不支持我使用的OpenGL库。(被气死)
2.详细描述
在那台电脑上调试,每次到glClearColor(0.0f,0.0f,0.0f,1.0f);就会出现中断,弹出一个窗口,显示读取位置异常(指针异常,glClearColor函数中的d_1_0_Core指针果然为NULL)。d_1_0_Core是一个回调函数指针,去找d_1_0_Core的赋值位置,结果没有找到,后来发现glClearColor前面的函数initializeOpenGLFunctions()返回布尔型,就在其前面加上bool b =打断点查看返回值,结果发现返回值果然是false,在我的电脑上返回值是true,再根据网上的一些资料初步推断,这是由于电脑的显卡版本过低,不支持我的OpenGL库(我使用的是QOpenGLFunctions_3_3_Core),去别的电脑一试,果然没有这个问题,就是这个原因。
弄了半天结果发现软件根本没有问题,简直要气炸了。故记录于此,以作警示。