We have this application that uses OpenGL to display in a window.
We purposely choose NOT to use hardware-accelerated mode (PFD_GENERIC_ACCELERATED) to render our OpenGL calls for support and stability reason over performance. We are doing it by rendering OpenGL calls to a bitmap instead of Window and we use PFD_GENERIC_FORMAT only. We then ‘bitblt’ that bitmap to the window. This has been working well for us for a while and we encountered a very few of support calls regarding to bad video drivers.
Lately, we got some video drivers issues from our customers who running our application with certain Intel video cards. Our application crashes. We traced the crash to the code in Intel’s driver. The crash would go way if we upgrade the video driver or if we turn off the graphics acceleration completely at Window system level.
I am really puzzled that why our application would ever be affected by vendor’s driver issue since we only use openGL in generic mode which uses Microsoft’s OpenGL driver, not any vendor’s driver.
Can someone explain to me what my problem is? My understanding is that if you use generic mode of openGL, you are using Microsoft’s OpenGL implementation. If so, why our OpenGL application crashes in Intel’s video driver’s code? Could it be that we use OpenGL resources or calls that aren’t available from Microsoft’s OpenGL implementation and therefore it has to default to the vendor’s implementation?