static dllfunction_t arbfbofuncs[] =
{
- {"glIsRenderbufferARB" , (void **) &qglIsRenderbuffer},
- {"glBindRenderbufferARB" , (void **) &qglBindRenderbuffer},
- {"glDeleteRenderbuffersARB" , (void **) &qglDeleteRenderbuffers},
- {"glGenRenderbuffersARB" , (void **) &qglGenRenderbuffers},
- {"glRenderbufferStorageARB" , (void **) &qglRenderbufferStorage},
- {"glRenderbufferStorageMultisampleARB" , (void **) &qglRenderbufferStorageMultisample}, // not in GL_EXT_framebuffer_object
- {"glGetRenderbufferParameterivARB" , (void **) &qglGetRenderbufferParameteriv},
- {"glIsFramebufferARB" , (void **) &qglIsFramebuffer},
- {"glBindFramebufferARB" , (void **) &qglBindFramebuffer},
- {"glDeleteFramebuffersARB" , (void **) &qglDeleteFramebuffers},
- {"glGenFramebuffersARB" , (void **) &qglGenFramebuffers},
- {"glCheckFramebufferStatusARB" , (void **) &qglCheckFramebufferStatus},
- {"glFramebufferTexture1DARB" , (void **) &qglFramebufferTexture1D},
- {"glFramebufferTexture2DARB" , (void **) &qglFramebufferTexture2D},
- {"glFramebufferTexture3DARB" , (void **) &qglFramebufferTexture3D},
- {"glFramebufferTextureLayerARB" , (void **) &qglFramebufferTextureLayer}, // not in GL_EXT_framebuffer_object
- {"glFramebufferRenderbufferARB" , (void **) &qglFramebufferRenderbuffer},
- {"glGetFramebufferAttachmentParameterivARB" , (void **) &qglGetFramebufferAttachmentParameteriv},
- {"glBlitFramebufferARB" , (void **) &qglBlitFramebuffer}, // not in GL_EXT_framebuffer_object
- {"glGenerateMipmapARB" , (void **) &qglGenerateMipmap},
+ {"glIsRenderbuffer" , (void **) &qglIsRenderbuffer},
+ {"glBindRenderbuffer" , (void **) &qglBindRenderbuffer},
+ {"glDeleteRenderbuffers" , (void **) &qglDeleteRenderbuffers},
+ {"glGenRenderbuffers" , (void **) &qglGenRenderbuffers},
+ {"glRenderbufferStorage" , (void **) &qglRenderbufferStorage},
+ {"glRenderbufferStorageMultisample" , (void **) &qglRenderbufferStorageMultisample}, // not in GL_EXT_framebuffer_object
+ {"glGetRenderbufferParameteriv" , (void **) &qglGetRenderbufferParameteriv},
+ {"glIsFramebuffer" , (void **) &qglIsFramebuffer},
+ {"glBindFramebuffer" , (void **) &qglBindFramebuffer},
+ {"glDeleteFramebuffers" , (void **) &qglDeleteFramebuffers},
+ {"glGenFramebuffers" , (void **) &qglGenFramebuffers},
+ {"glCheckFramebufferStatus" , (void **) &qglCheckFramebufferStatus},
+ {"glFramebufferTexture1D" , (void **) &qglFramebufferTexture1D},
+ {"glFramebufferTexture2D" , (void **) &qglFramebufferTexture2D},
+ {"glFramebufferTexture3D" , (void **) &qglFramebufferTexture3D},
+ {"glFramebufferTextureLayer" , (void **) &qglFramebufferTextureLayer}, // not in GL_EXT_framebuffer_object
+ {"glFramebufferRenderbuffer" , (void **) &qglFramebufferRenderbuffer},
+ {"glGetFramebufferAttachmentParameteriv" , (void **) &qglGetFramebufferAttachmentParameteriv},
+ {"glBlitFramebuffer" , (void **) &qglBlitFramebuffer}, // not in GL_EXT_framebuffer_object
+ {"glGenerateMipmap" , (void **) &qglGenerateMipmap},
{NULL, NULL}
};
vid.support.ext_framebuffer_object = true;
else
vid.support.ext_framebuffer_object = GL_CheckExtension("GL_EXT_framebuffer_object", extfbofuncs, "-nofbo", false);
+
vid.support.ext_packed_depth_stencil = GL_CheckExtension("GL_EXT_packed_depth_stencil", NULL, "-nopackeddepthstencil", false);
vid.support.ext_stencil_two_side = GL_CheckExtension("GL_EXT_stencil_two_side", stenciltwosidefuncs, "-nostenciltwoside", false);
vid.support.ext_texture_3d = GL_CheckExtension("GL_EXT_texture3D", texture3dextfuncs, "-notexture3d", false);
(vid_sRGB_fallback.integer >= 3) // force fallback
||
(vid_sRGB_fallback.integer >= 2 && // fallback if framebuffer is 8bit
- !(r_viewfbo.integer >= 2 && vid.support.ext_framebuffer_object && vid.samples < 2))
+ !(r_viewfbo.integer >= 2 && vid.support.ext_framebuffer_object && vid.support.arb_texture_non_power_of_two && vid.samples < 2))
)
vid.sRGB2D = vid.sRGB3D = false;
if (!vid_opened)
{
- SCR_BeginLoadingPlaque();
+ SCR_BeginLoadingPlaque(false);
return;
}
vid.support.ext_blend_subtract = true;
vid.support.ext_draw_range_elements = true;
vid.support.ext_framebuffer_object = true;
+
vid.support.ext_texture_3d = true;
//vid.support.ext_texture_compression_s3tc = true;
vid.support.ext_texture_filter_anisotropic = true;