//=============================================================================
/* Support Routines */
#define FONT_FILESIZE 13468
//=============================================================================
/* Support Routines */
#define FONT_FILESIZE 13468
#define CACHEPICHASHSIZE 256
static cachepic_t *cachepichash[CACHEPICHASHSIZE];
static cachepic_t cachepics[MAX_CACHED_PICS];
#define CACHEPICHASHSIZE 256
static cachepic_t *cachepichash[CACHEPICHASHSIZE];
static cachepic_t cachepics[MAX_CACHED_PICS];
return R_LoadTexture2D(drawtexturepool, "mousepointer", 16, 16, &buffer[0][0], TEXTYPE_RGBA, TEXF_ALPHA | TEXF_PRECACHE, NULL);
}
return R_LoadTexture2D(drawtexturepool, "mousepointer", 16, 16, &buffer[0][0], TEXTYPE_RGBA, TEXF_ALPHA | TEXF_PRECACHE, NULL);
}
// FIXME: move this to client somehow
cachepic_t *Draw_CachePic (const char *path, qboolean persistent)
{
// FIXME: move this to client somehow
cachepic_t *Draw_CachePic (const char *path, qboolean persistent)
{
- unsigned char *pix;
- // conchars is a raw image and with the wrong transparent color
- pix = (unsigned char *)p;
- for (i = 0;i < 128 * 128;i++)
- if (pix[i] == 0)
- pix[i] = 255;
- pic->tex = R_LoadTexture2D(drawtexturepool, path, 128, 128, pix, TEXTYPE_PALETTE, flags, palette_complete);
+ // conchars is a raw image and with color 0 as transparent instead of 255
+ pic->tex = R_LoadTexture2D(drawtexturepool, path, 128, 128, (unsigned char *)p, TEXTYPE_PALETTE, flags, palette_font);
- pic->tex = R_LoadTexture2D(drawtexturepool, path, p->width, p->height, p->data, TEXTYPE_PALETTE, flags, palette_complete);
+ pic->tex = R_LoadTexture2D(drawtexturepool, path, p->width, p->height, p->data, TEXTYPE_PALETTE, flags, palette_transparent);
}
}
if (pic->tex == NULL && !strcmp(path, "gfx/conchars"))
pic->tex = draw_generateconchars();
}
}
if (pic->tex == NULL && !strcmp(path, "gfx/conchars"))
pic->tex = draw_generateconchars();
drawtexturepool = R_AllocTexturePool();
numcachepics = 0;
memset(cachepichash, 0, sizeof(cachepichash));
char_texture = Draw_CachePic("gfx/conchars", true)->tex;
drawtexturepool = R_AllocTexturePool();
numcachepics = 0;
memset(cachepichash, 0, sizeof(cachepichash));
char_texture = Draw_CachePic("gfx/conchars", true)->tex;
r_view_x = bound(0, r_refdef.x, vid.width - r_refdef.width);
r_view_y = bound(0, r_refdef.y, vid.height - r_refdef.height);
r_view_z = 0;
r_view_x = bound(0, r_refdef.x, vid.width - r_refdef.width);
r_view_y = bound(0, r_refdef.y, vid.height - r_refdef.height);
r_view_z = 0;
r_view_matrix = r_refdef.viewentitymatrix;
GL_ColorMask(r_refdef.colormask[0], r_refdef.colormask[1], r_refdef.colormask[2], 1);
qglViewport(r_view_x, vid.height - (r_view_y + r_view_height), r_view_width, r_view_height);
GL_SetupView_Mode_Ortho(0, 0, vid_conwidth.integer, vid_conheight.integer, -10, 100);
qglDepthFunc(GL_LEQUAL);
r_view_matrix = r_refdef.viewentitymatrix;
GL_ColorMask(r_refdef.colormask[0], r_refdef.colormask[1], r_refdef.colormask[2], 1);
qglViewport(r_view_x, vid.height - (r_view_y + r_view_height), r_view_width, r_view_height);
GL_SetupView_Mode_Ortho(0, 0, vid_conwidth.integer, vid_conheight.integer, -10, 100);
qglDepthFunc(GL_LEQUAL);
+ case DRAWQUEUE_LINEWIDTH:
+ qglLineWidth(x);
+ break;
+ case DRAWQUEUE_LINES:
+ mesh = (drawqueuemesh_t *)(dq + 1);
+ GL_Color(c[0], c[1], c[2], c[3]);
+ qglBegin(GL_LINE_LOOP);
+ for (num = 0;num < mesh->num_vertices;num++)
+ qglVertex2f(mesh->data_vertex3f[num*3+0], mesh->data_vertex3f[num*3+1]);
+ qglEnd();
+ break;