X-Git-Url: http://git.xonotic.org/?a=blobdiff_plain;f=palette.c;h=f9d68bf5eeac36becb16ade92747602aff0e8e81;hb=d949ada62429d7c3ce992580c430ebc1cd916abf;hp=7b6fb8d6bbc0b9bfb86e5b59bed5d7288731a5e6;hpb=478d62db60c893ca2708215ea85786997d7027aa;p=xonotic%2Fdarkplaces.git diff --git a/palette.c b/palette.c index 7b6fb8d6..f9d68bf5 100644 --- a/palette.c +++ b/palette.c @@ -16,7 +16,9 @@ unsigned int palette_bgra_alpha[256]; unsigned int palette_bgra_nocolormap[256]; unsigned int palette_bgra_nocolormapnofullbrights[256]; unsigned int palette_bgra_nofullbrights[256]; +unsigned int palette_bgra_nofullbrights_transparent[256]; unsigned int palette_bgra_onlyfullbrights[256]; +unsigned int palette_bgra_onlyfullbrights_transparent[256]; unsigned int palette_bgra_pantsaswhite[256]; unsigned int palette_bgra_shirtaswhite[256]; unsigned int palette_bgra_transparent[256]; @@ -133,11 +135,17 @@ static void Palette_SetupSpecialPalettes(void) palette_bgra_nofullbrights[i] = palette_bgra_complete[i]; for (i = fullbright_start;i < fullbright_end;i++) palette_bgra_nofullbrights[i] = palette_bgra_complete[0]; + for (i = 0;i < 256;i++) + palette_bgra_nofullbrights_transparent[i] = palette_bgra_nofullbrights[i]; + palette_bgra_nofullbrights_transparent[transparentcolor] = 0; for (i = 0;i < 256;i++) palette_bgra_onlyfullbrights[i] = 0; for (i = fullbright_start;i < fullbright_end;i++) palette_bgra_onlyfullbrights[i] = palette_bgra_complete[i]; + for (i = 0;i < 256;i++) + palette_bgra_onlyfullbrights_transparent[i] = palette_bgra_onlyfullbrights[i]; + palette_bgra_onlyfullbrights_transparent[transparentcolor] = 0; for (i = 0;i < 256;i++) palette_bgra_nocolormapnofullbrights[i] = palette_bgra_complete[i]; @@ -196,7 +204,8 @@ static void Palette_LoadQ2Colormap(void) unsigned char *out = (unsigned char *) q2palette_bgra_complete; // palette is accessed as 32bit for speed reasons, but is created as 8bit bytes int i; LoadPCX_PaletteOnly(q2colormapfile, filesize, q2palette_rgb[0]); - for (i = 0;i < 256;i++) + // this stops at color 255 because it is a pink transparent color that we don't actually want to preserve color on. + for (i = 0;i < 255;i++) { out[i*4+2] = q2palette_rgb[i][0]; out[i*4+1] = q2palette_rgb[i][1];