]> de.git.xonotic.org Git - xonotic/darkplaces.git/blobdiff - gl_draw.c
hush a warning in Fantasy Quake (SOLID_BSP on a sprite - makes no sense,
[xonotic/darkplaces.git] / gl_draw.c
index 164eebdde647be6130efa63466537a931122c757..2f4367c1c3fdd07f43f29e0757a16a6f7060ed39 100644 (file)
--- a/gl_draw.c
+++ b/gl_draw.c
@@ -550,6 +550,7 @@ static void _DrawQ_Setup(void)
 
        GL_DepthMask(true);
        GL_DepthRange(0, 1);
+       GL_PolygonOffset(0, 0);
        GL_DepthTest(false);
        GL_Color(1,1,1,1);
        GL_AlphaTest(false);
@@ -671,7 +672,7 @@ static void DrawQ_GetTextColor(float color[4], int colorindex, float r, float g,
 
 float DrawQ_String(float startx, float starty, const char *text, int maxlen, float w, float h, float basered, float basegreen, float baseblue, float basealpha, int flags, int *outcolor, qboolean ignorecolorcodes)
 {
-       int i, num, shadow, colorindex;
+       int i, num, shadow, colorindex = STRING_COLOR_DEFAULT;
        float x = startx, y, s, t, u, v;
        float *av, *at, *ac;
        float color[4];
@@ -711,8 +712,6 @@ float DrawQ_String(float startx, float starty, const char *text, int maxlen, flo
                        x += r_textshadow.value;
                        y += r_textshadow.value;
                }
-               // because this loop increments x before it draws, we must bias x first
-               x -= w;
                for (i = 0;i < maxlen && text[i];i++, x += w)
                {
                        if (text[i] == ' ')
@@ -779,6 +778,10 @@ float DrawQ_String(float startx, float starty, const char *text, int maxlen, flo
                        GL_LockArrays(0, 0);
                }
        }
+
+       if (outcolor)
+               *outcolor = colorindex;
+
        // note: this relies on the proper text (not shadow) being drawn last
        return x;
 }
@@ -943,6 +946,7 @@ void R_DrawGamma(void)
                R_Mesh_ResetTextureState();
                GL_DepthMask(true);
                GL_DepthRange(0, 1);
+               GL_PolygonOffset(0, 0);
                GL_DepthTest(false);
                if (v_color_enable.integer)
                {