我已经制作了一个非常基本的SDL应用程序,它继续进行主循环的几次迭代,但随后崩溃了。我将错误定位在 SDL_GL_SwapWindow 中,前两次工作,然后崩溃。这是一个非常简化的版本,我实际上已经尝试过,它做了同样的事情。
SDL_Init(SDL_INIT_EVERYTHING);
SDL_Window* SDLWindow = SDL_CreateWindow("Balls", SDL_WINDOWPOS_CENTERED, SDL_WINDOWPOS_CENTERED, 800, 600, SDL_WINDOW_OPENGL | SDL_WINDOW_SHOWN);
SDL_GLContext SDLGLContext = SDL_GL_CreateContext(SDLWindow);
glewInit();
glViewport(0, 0, 800, 600);
SDL_GL_SwapWindow(SDLWindow);
SDL_GL_SwapWindow(SDLWindow);
SDL_GL_SwapWindow(SDLWindow); //crashes here
return 0;
前两个调用工作正常,第三个调用程序崩溃了。奇怪的是,崩溃发生在 igd10umd32.dll 中,调试器不允许我阅读那个文件。我在网上查了一下,但没有尝试修复图书馆的工作。此外,如果问题出现在这个库中,它可能不会出现在这种奇怪的情况下。
甚至更奇怪的是,该程序在我的第二台笔记本电脑上工作正常。当我在那里编译并在笔记本电脑上运行时,它也运行良好。
我正在使用Windows 10.我曾多次使用SDL / OpenGL,从未遇到过类似的事情。什么可能导致这种混乱行为的想法?
答案 0 :(得分:0)
解决。它只不过是一个NVIDIA错误。更新驱动程序摆脱了所有问题。