|
@@ -65,45 +65,9 @@ void GFXGLCardProfiler::setupCardCapabilities()
|
|
|
setCapability("maxTextureHeight", maxTexSize);
|
|
|
setCapability("maxTextureSize", maxTexSize);
|
|
|
|
|
|
- // If extensions haven't been inited, we're in trouble here.
|
|
|
- bool suppVBO = (gglHasExtension(ARB_vertex_buffer_object) || glVersion >= 1.499f);
|
|
|
- setCapability("GL::suppVertexBufferObject", suppVBO);
|
|
|
-
|
|
|
- // check if render to texture supported is available
|
|
|
- bool suppRTT = gglHasExtension(EXT_framebuffer_object);
|
|
|
- setCapability("GL::suppRenderTexture", suppRTT);
|
|
|
-
|
|
|
- bool suppBlit = gglHasExtension(EXT_framebuffer_blit);
|
|
|
- setCapability("GL::suppRTBlit", suppBlit);
|
|
|
-
|
|
|
- bool suppFloatTex = gglHasExtension(ARB_texture_float);
|
|
|
- setCapability("GL::suppFloatTexture", suppFloatTex);
|
|
|
-
|
|
|
// Check for anisotropic filtering support.
|
|
|
bool suppAnisotropic = gglHasExtension( EXT_texture_filter_anisotropic );
|
|
|
- setCapability( "GL::suppAnisotropic", suppAnisotropic );
|
|
|
-
|
|
|
- // check to see if we have the fragment shader extension or the gl version is high enough for glsl to be core
|
|
|
- // also check to see if the language version is high enough
|
|
|
- F32 glslVersion = dAtof(reinterpret_cast<const char*>(glGetString( GL_SHADING_LANGUAGE_VERSION)));
|
|
|
- bool suppSPU = (gglHasExtension(ARB_fragment_shader) || glVersion >= 1.999f) && glslVersion >= 1.0999;
|
|
|
- setCapability("GL::suppFragmentShader", suppSPU);
|
|
|
-
|
|
|
- bool suppAppleFence = gglHasExtension(APPLE_fence);
|
|
|
- setCapability("GL::APPLE::suppFence", suppAppleFence);
|
|
|
-
|
|
|
- // When enabled, call glGenerateMipmapEXT() to generate mipmaps instead of relying on GL_GENERATE_MIPMAP
|
|
|
- setCapability("GL::Workaround::needsExplicitGenerateMipmap", false);
|
|
|
- // When enabled, binds and unbinds a texture target before doing the depth buffer copy. Failure to do
|
|
|
- // so will cause a hard freeze on Mac OS 10.4 with a Radeon X1600
|
|
|
- setCapability("GL::Workaround::X1600DepthBufferCopy", false);
|
|
|
- // When enabled, does not copy the last column and row of the depth buffer in a depth buffer copy. Failure
|
|
|
- // to do so will cause a kernel panic on Mac OS 10.5(.1) with a Radeon HD 2600 (fixed in 10.5.2)
|
|
|
- setCapability("GL::Workaround::HD2600DepthBufferCopy", false);
|
|
|
-
|
|
|
- // Certain Intel drivers have a divide by 0 crash if mipmaps are specified with
|
|
|
- // glTexSubImage2D.
|
|
|
- setCapability("GL::Workaround::noManualMips", false);
|
|
|
+ setCapability( "GL_EXT_TEXTURE_FILTER_ANISOTROPIC", suppAnisotropic );
|
|
|
}
|
|
|
|
|
|
bool GFXGLCardProfiler::_queryCardCap(const String& query, U32& foundResult)
|