X-Git-Url: http://git.xonotic.org/?a=blobdiff_plain;ds=sidebyside;f=gl_draw.c;h=6697db4263d7c1d1e096e1deebcb334fb650ad9f;hb=9e160a615b83477f8eec2ba38e16afff6ea9bac4;hp=7fdde68f6587992d55f978ed8b2e2e8a820bce1c;hpb=e685876f8e234d1a353bfdbc89a0b0e022fe520c;p=xonotic%2Fdarkplaces.git diff --git a/gl_draw.c b/gl_draw.c index 7fdde68f..6697db42 100644 --- a/gl_draw.c +++ b/gl_draw.c @@ -536,7 +536,7 @@ cachepic_t *Draw_NewPic(const char *picname, int width, int height, int alpha, u pic->height = height; if (pic->tex) R_FreeTexture(pic->tex); - pic->tex = R_LoadTexture2D(drawtexturepool, picname, width, height, pixels_bgra, TEXTYPE_BGRA, (alpha ? TEXF_ALPHA : 0) | TEXF_ALLOWUPDATES, -1, NULL); + pic->tex = R_LoadTexture2D(drawtexturepool, picname, width, height, pixels_bgra, TEXTYPE_BGRA, (alpha ? TEXF_ALPHA : 0), -1, NULL); return pic; } @@ -982,9 +982,9 @@ void GL_Draw_Init (void) static void _DrawQ_Setup(void) { r_viewport_t viewport; - if (r_refdef.draw2dstage) + if (r_refdef.draw2dstage == 1) return; - r_refdef.draw2dstage = true; + r_refdef.draw2dstage = 1; CHECKGLERROR R_Viewport_InitOrtho(&viewport, &identitymatrix, r_refdef.view.x, vid.height - r_refdef.view.y - r_refdef.view.height, r_refdef.view.width, r_refdef.view.height, 0, 0, vid_conwidth.integer, vid_conheight.integer, -10, 100, NULL); R_SetViewport(&viewport); @@ -1975,7 +1975,13 @@ void DrawQ_ResetClipArea(void) void DrawQ_Finish(void) { - r_refdef.draw2dstage = false; + r_refdef.draw2dstage = 0; +} + +void DrawQ_RecalcView(void) +{ + if(r_refdef.draw2dstage) + r_refdef.draw2dstage = -1; // next draw call will set viewport etc. again } static float blendvertex3f[9] = {-5000, -5000, 10, 10000, -5000, 10, -5000, 10000, 10};