X

解决cocos2dx不能在win8运行

cocos2dx本身是跨平台的,但是由于升级win8.1后有些显卡驱动不支持,而报错说OpenGL的问题,其实重新安装显卡驱动就能解决。这里记录下遇到的问题及解决方法。

前段时间安装了win8.1操作系统并安装了Visual Studio 2013,在运行cocos2dx3alpha预览版的HelloCpp程序的时候一直报错:

GLFWError #65544 Happen, WGL: Failed to find a suitable pixel format 0x00F7A593 处的第一机会异常(在 HelloCpp.exe 中): 0xC0000005: 读取位置 0x00000200 时发生访问冲突。 0x00F7A593 处有未经处理的异常(在 HelloCpp.exe 中): 0xC0000005: 读取位置 0x00000200 时发生访问冲突。

并且调试发现glfwCreateWindow返回null,经过google后发现是OpenGL版本比较小,这里cocos2dx还有个问题,openGL版本检查在后面,其实是运行不到版本检查的代码的,解决这个问题只需要更新显卡驱动,使得OpenGl版本不小于1.5就可以了。

查看OpenGL版本

window没有自带工具可以查看OpenGL版本的,可以使用OpenGL Extensions Viewer这个工具来查看,支持OSX/Windows/IOS/Android。请到这里下载。 我的查看后竟然是1.0版本。

更新显卡驱动

win8.1更新显卡驱动不太容易,在我机器上不论怎么安装都一直是微软自己的驱动。在设备管理器里卸载显卡驱动后重启,又会被自动安装微软自己的显卡驱动。网上说去安全模式卸载,可是还是不管用。最后搜到一篇文章用工具卸载,并重新手动安装显卡驱动,成功了。

提示:最好去安全模式卸载并禁用win8.1的自动更新显卡驱动。
卸载工具:DDU(Display Driver Uninstaller),请到这里下载。
卸载教程:win8.1更新显卡驱动教程请到这里查看。

最后

这里的问题主要是OpenGL版本太低导致的,更cocos2dx版本及操作系统没有关系,只是win8.1有更多机器会出现显卡驱动兼容性问题。
等显卡驱动更新完成后就能正常运行cocos2dx的HelloCpp程序了。
如果还是不能运行,查看OpenGL版本小于1.5,那就是机器台老了,换机器吧。

This post was last modified on 2019 年 02 月 25 日 01:55

View Comments (1)

  • 囧,我在mac上与遇到这个问题,不过我查了下OpenGL的版本,是4.多的,应该就不是OpenGL版本低的问题了吧。。

This website uses cookies.