X-Git-Url: http://de.git.xonotic.org/?p=xonotic%2Fdarkplaces.git;a=blobdiff_plain;f=gl_draw.c;h=eae39c7490bc1c03c7a29d5775a07eac5663ebc7;hp=dab25100246b0f597060a34a5bce785b99aa4853;hb=023d02148e88cc846dbd76ffa312703c2eef1cd7;hpb=6f1a935ecaf044b18f487094317fcef26a467316 diff --git a/gl_draw.c b/gl_draw.c index dab25100..eae39c74 100644 --- a/gl_draw.c +++ b/gl_draw.c @@ -446,7 +446,7 @@ reload: // show up the right size in the menu even if they were replaced with // higher or lower resolution versions dpsnprintf(lmpname, sizeof(lmpname), "%s.lmp", pic->name); - if (!strncmp(pic->name, "gfx/", 4) && (lmpdata = FS_LoadFile(lmpname, tempmempool, false, &lmpsize))) + if ((!strncmp(pic->name, "gfx/", 4) || (gamemode == GAME_BLOODOMNICIDE && !strncmp(pic->name, "locale/", 6))) && (lmpdata = FS_LoadFile(lmpname, tempmempool, false, &lmpsize))) { if (developer_loading.integer) Con_Printf("loading lump \"%s\"\n", pic->name); @@ -1971,8 +1971,6 @@ void DrawQ_Mesh (drawqueuemesh_t *mesh, int flags, qboolean hasalpha) void DrawQ_LineLoop (drawqueuemesh_t *mesh, int flags) { - int num; - _DrawQ_SetupAndProcessDrawFlag(flags, NULL, 1); if(!r_draw2d.integer && !r_draw2d_force) return; @@ -1984,16 +1982,19 @@ void DrawQ_LineLoop (drawqueuemesh_t *mesh, int flags) case RENDERPATH_GL13: case RENDERPATH_GL20: #ifndef USE_GLES2 - CHECKGLERROR - qglBegin(GL_LINE_LOOP); - for (num = 0;num < mesh->num_vertices;num++) { - if (mesh->data_color4f) - GL_Color(mesh->data_color4f[num*4+0], mesh->data_color4f[num*4+1], mesh->data_color4f[num*4+2], mesh->data_color4f[num*4+3]); - qglVertex2f(mesh->data_vertex3f[num*3+0], mesh->data_vertex3f[num*3+1]); + int num; + CHECKGLERROR + qglBegin(GL_LINE_LOOP); + for (num = 0;num < mesh->num_vertices;num++) + { + if (mesh->data_color4f) + GL_Color(mesh->data_color4f[num*4+0], mesh->data_color4f[num*4+1], mesh->data_color4f[num*4+2], mesh->data_color4f[num*4+3]); + qglVertex2f(mesh->data_vertex3f[num*3+0], mesh->data_vertex3f[num*3+1]); + } + qglEnd(); + CHECKGLERROR } - qglEnd(); - CHECKGLERROR #endif break; case RENDERPATH_D3D9: @@ -2062,14 +2063,8 @@ void DrawQ_Line (float width, float x1, float y1, float x2, float y2, float r, f } } -void DrawQ_Lines (float width, int numlines, const float *vertex3f, const float *color4f, int flags) +void DrawQ_Lines (float width, int numlines, int flags, qboolean hasalpha) { - int i; - qboolean hasalpha = false; - for (i = 0;i < numlines*2;i++) - if (color4f[i*4+3] < 1.0f) - hasalpha = true; - _DrawQ_SetupAndProcessDrawFlag(flags, NULL, hasalpha ? 0.5f : 1.0f); if(!r_draw2d.integer && !r_draw2d_force) @@ -2087,7 +2082,6 @@ void DrawQ_Lines (float width, int numlines, const float *vertex3f, const float //qglLineWidth(width);CHECKGLERROR CHECKGLERROR - R_Mesh_PrepareVertices_Generic_Arrays(numlines*2, vertex3f, color4f, NULL); qglDrawArrays(GL_LINES, 0, numlines*2); CHECKGLERROR break; @@ -2117,10 +2111,10 @@ void DrawQ_SetClipArea(float x, float y, float width, float height) // We have to convert the con coords into real coords // OGL uses top to bottom - ix = (int)(0.5 + x * ((float)vid.width / vid_conwidth.integer)); - iy = (int)(0.5 + y * ((float) vid.height / vid_conheight.integer)); - iw = (int)(0.5 + (x+width) * ((float)vid.width / vid_conwidth.integer)) - ix; - ih = (int)(0.5 + (y+height) * ((float) vid.height / vid_conheight.integer)) - iy; + ix = (int)(0.5 + x * ((float)r_refdef.view.width / vid_conwidth.integer)) + r_refdef.view.x; + iy = (int)(0.5 + y * ((float)r_refdef.view.height / vid_conheight.integer)) + r_refdef.view.y; + iw = (int)(0.5 + width * ((float)r_refdef.view.width / vid_conwidth.integer)); + ih = (int)(0.5 + height * ((float)r_refdef.view.height / vid_conheight.integer)); switch(vid.renderpath) { case RENDERPATH_GL11: