bool GLGraphics::wglExtensionSupported(const char *extension_name)
{
    // this is pointer to function which returns pointer to string with list of all wgl extensions
    PFNWGLGETEXTENSIONSSTRINGEXTPROC _wglGetExtensionsStringEXT = NULL;

    // determine pointer to wglGetExtensionsStringEXT function
    _wglGetExtensionsStringEXT = (PFNWGLGETEXTENSIONSSTRINGEXTPROC)wglGetProcAddress("wglGetExtensionsStringEXT");

    if (strstr(_wglGetExtensionsStringEXT(), extension_name) == NULL)
    {
        // string was not found
        return false;
    }

    // extension is supported
    return true;
}
Пример #2
0
int _glfwPlatformExtensionSupported( const char *extension )
{
    const GLubyte *extensions;
    WGLGETEXTENSIONSSTRINGEXT_T _wglGetExtensionsStringEXT;
    WGLGETEXTENSIONSSTRINGARB_T _wglGetExtensionsStringARB;

    // Try wglGetExtensionsStringEXT
    _wglGetExtensionsStringEXT = (WGLGETEXTENSIONSSTRINGEXT_T)
        wglGetProcAddress( "wglGetExtensionsStringEXT" );
    if( _wglGetExtensionsStringEXT != NULL )
    {
        extensions = (GLubyte *) _wglGetExtensionsStringEXT();
        if( extensions != NULL )
        {
            if( _glfwStringInExtensionString( extension, extensions ) )
            {
                return GL_TRUE;
            }
        }
    }

    // Try wglGetExtensionsStringARB
    _wglGetExtensionsStringARB = (WGLGETEXTENSIONSSTRINGARB_T)
        wglGetProcAddress( "wglGetExtensionsStringARB" );
    if( _wglGetExtensionsStringARB != NULL )
    {
        extensions = (GLubyte *) _wglGetExtensionsStringARB(_glfwWin.DC);
        if( extensions != NULL )
        {
            if( _glfwStringInExtensionString( extension, extensions ) )
            {
                return GL_TRUE;
            }
        }
    }

    return GL_FALSE;
}
Пример #3
0
bool GLApp::WGLExtSupported(std::string extName)
{
	PFNWGLGETEXTENSIONSSTRINGEXTPROC _wglGetExtensionsStringEXT = NULL;
	_wglGetExtensionsStringEXT = (PFNWGLGETEXTENSIONSSTRINGEXTPROC)wglGetProcAddress("wglGetExtensionsStringEXT");
	return !(strstr(_wglGetExtensionsStringEXT(), extName.c_str()) == NULL);
}