

- #Opengl extensions viewer crashes driver
- #Opengl extensions viewer crashes code
- #Opengl extensions viewer crashes download
#Opengl extensions viewer crashes driver
If your OpenGL version is lower than 3.2.1, then it is likely the game cannot be played on your system, however, updating your graphic card driver may resolve the problem if your driver can support it.
#Opengl extensions viewer crashes download
(Choose the left download option, not the ES version). Download the free program OpenGL Extensions Viewer through this link.

Remember that you need to go through this setup/teardown everytime your plugin gets called through NP-API.The minimum OpenGL version required is: 3.2.1. If you do not have this version or higher, then this game may not be compatible with your system.

In C++ you could wrap the whole OpenGL context in a class for this. This saves the whole extension reinitialisation thing. Since in Window extension functions pointers depend on the context it makes sense to put them into a structure and call them through that one. function pointers to the other context remember that we also need to reset extension may depend on the active context, so you must reinitialise this is essential, as in Windows the addresses of extensions first unbind old context/DC from current thread HRC hOldContext = wglGetCurrentContext() For OpenGL this means, everytime before you start using it you should rebind your context: HDC hOldDC = wglGetCurrentDC() But OpenGL, namely its extensions require some special precautions, especially if the host program makes use of OpenGL as well.Īny kind of plugin or DLL that makes use of OpenGL must take care, that is puts its required resources into a sane state before using them, and put them back once done. Windows handles getting invalid should not cause a program to crash per so. But could this work with some more work? Another idea I have is to track the visible region somehow, but I haven't looked in to this yet. I did some quick testing that failed, which is probably because of my lame Win32 skills. I have an idea that it could work if I created my own child window to the plugin window where I could handle my own DC. I've Google for several hours now but without finding any help. I've noticed NPP_SetWindow get's called when this happens, but those calls are ignored in NpapiPluginModule_NPP.cpp, so my there is no way of hooking in to this event. This probably results in that the Rendering Context is invalid, but it is still being used in the plugin and that causes the crash. I believe what is happening is that Chrome releases and creates a new HDC whenever the visible dimensions of the plugin is changed. I haven't got Firefox installed but I'm guessing it's a NpApi thing, since it's working in Internet Explorer. The problem is that as soon as the browser window is re-sized so that the visible region of the plugin is changed or the the extension is somehow scrolled outside the visible area of the scroll box, the plugin crashes in Chrome.
#Opengl extensions viewer crashes code
(Ignore the strange code in onWindowResized, it's just some testing that remained in the commit.) I'm using a windowed plugin and I'm drawing from a separate thread. I'm developing a plugin using FireBreath on Windows (for now) that among other things is displaying a webcam feed using OpenGL.
