]> de.git.xonotic.org Git - xonotic/darkplaces.git/blobdiff - vid_shared.c
don't allow stencil without bitsperpixel 32
[xonotic/darkplaces.git] / vid_shared.c
index 88f2dbb8418820e0ec3c7579c8c7120e8e613aaa..6cf000ac49d9a2a4e8ee94074da8e117579f2e07 100644 (file)
@@ -181,6 +181,8 @@ void (GLAPIENTRY *qglCopyTexSubImage3D)(GLenum target, GLint level, GLint xoffse
 
 void (GLAPIENTRY *qglScissor)(GLint x, GLint y, GLsizei width, GLsizei height);
 
+void (GLAPIENTRY *qglPolygonOffset)(GLfloat factor, GLfloat units);
+
 int GL_CheckExtension(const char *name, const gl_extensionfunctionlist_t *funcs, const char *disableparm, int silent)
 {
        int failed = false;
@@ -305,6 +307,7 @@ static gl_extensionfunctionlist_t opengl110funcs[] =
        {"glCopyTexSubImage1D", (void **) &qglCopyTexSubImage1D},
        {"glCopyTexSubImage2D", (void **) &qglCopyTexSubImage2D},
        {"glScissor", (void **) &qglScissor},
+       {"glPolygonOffset", (void **) &qglPolygonOffset},
        {NULL, NULL}
 };
 
@@ -538,6 +541,12 @@ void VID_Open(void)
                        Cvar_SetValueQuick(&vid_stencil, 1);
        }
 
+       if (vid_stencil.integer && vid_bitsperpixel.integer != 32)
+       {
+               Con_Printf("vid_stencil not allowed without vid_bitsperpixel 32, turning off vid_stencil\n");
+               Cvar_SetValueQuick(&vid_stencil, 0);
+       }
+
        Con_Printf("Starting video system\n");
        if (!VID_Mode(vid_fullscreen.integer, vid_width.integer, vid_height.integer, vid_bitsperpixel.integer, vid_stencil.integer))
        {