From 84a018f05a3f05ec12acbb9aa9f4cfc50f9ae62a Mon Sep 17 00:00:00 2001 From: Randy Heit Date: Tue, 22 Sep 2009 02:54:19 +0000 Subject: [PATCH] - Added support for defining the full color range of a special colormap. SVN r1865 (trunk) --- docs/rh-log.txt | 4 + src/r_things.cpp | 4 - src/thingdef/thingdef_properties.cpp | 31 +++++-- src/v_palette.cpp | 73 +++++++++------- src/v_palette.h | 8 +- src/win32/fb_d3d9.cpp | 81 ++++++++---------- src/win32/win32iface.h | 2 - wadsrc/static/shaders/d3d/shaders.ps | 12 +-- .../shaders/d3d/sm14/SpecialColormap.pso | Bin 248 -> 276 bytes .../shaders/d3d/sm14/SpecialColormapInv.pso | Bin 264 -> 0 bytes .../shaders/d3d/sm14/SpecialColormapPal.pso | Bin 372 -> 388 bytes .../d3d/sm14/SpecialColormapPalInv.pso | Bin 388 -> 0 bytes wadsrc/static/shaders/d3d/sm14/build.bat | 2 - .../shaders/d3d/sm20/SpecialColormap.pso | Bin 300 -> 364 bytes .../shaders/d3d/sm20/SpecialColormapInv.pso | Bin 316 -> 0 bytes .../shaders/d3d/sm20/SpecialColormapPal.pso | Bin 424 -> 488 bytes .../d3d/sm20/SpecialColormapPalInv.pso | Bin 440 -> 0 bytes wadsrc/static/shaders/d3d/sm20/build.bat | 2 - .../shaders/d3d/sm30/SpecialColormap.pso | Bin 300 -> 352 bytes .../shaders/d3d/sm30/SpecialColormapInv.pso | Bin 316 -> 0 bytes .../shaders/d3d/sm30/SpecialColormapPal.pso | Bin 424 -> 476 bytes .../d3d/sm30/SpecialColormapPalInv.pso | Bin 440 -> 0 bytes wadsrc/static/shaders/d3d/sm30/build.bat | 2 - 23 files changed, 113 insertions(+), 108 deletions(-) delete mode 100644 wadsrc/static/shaders/d3d/sm14/SpecialColormapInv.pso delete mode 100644 wadsrc/static/shaders/d3d/sm14/SpecialColormapPalInv.pso delete mode 100644 wadsrc/static/shaders/d3d/sm20/SpecialColormapInv.pso delete mode 100644 wadsrc/static/shaders/d3d/sm20/SpecialColormapPalInv.pso delete mode 100644 wadsrc/static/shaders/d3d/sm30/SpecialColormapInv.pso delete mode 100644 wadsrc/static/shaders/d3d/sm30/SpecialColormapPalInv.pso diff --git a/docs/rh-log.txt b/docs/rh-log.txt index 42a25f927..4b809f315 100644 --- a/docs/rh-log.txt +++ b/docs/rh-log.txt @@ -1,4 +1,8 @@ September 21, 2009 +- Added support for defining the full color range of a special colormap. +- Moved the code for specialcolormap and colormapstyle in D3DFB::SetStyle() + at the end of the normally-colored block so that they get all the proper + texture format setup. - Fixed: In letterbox modes, the clipping window needs to be adjusted down. September 21, 2009 (Changes by Graf Zahl) diff --git a/src/r_things.cpp b/src/r_things.cpp index e0e6a63cc..8a938ef9b 100644 --- a/src/r_things.cpp +++ b/src/r_things.cpp @@ -1823,10 +1823,6 @@ void R_DrawRemainingPlayerSprites() { // Yuck! There needs to be a better way to store colormaps in the vissprite... :( ptrdiff_t specialmap = (vis->colormap - SpecialColormaps[0].Colormap) / sizeof(FSpecialColormap); - if (SpecialColormaps[specialmap].Inverted) - { - vis->RenderStyle.Flags ^= STYLEF_InvertSource; - } special = &SpecialColormaps[specialmap]; } else if (colormap->Color == PalEntry(255,255,255) && diff --git a/src/thingdef/thingdef_properties.cpp b/src/thingdef/thingdef_properties.cpp index 0c579efa2..2a32d3160 100644 --- a/src/thingdef/thingdef_properties.cpp +++ b/src/thingdef/thingdef_properties.cpp @@ -1608,7 +1608,7 @@ DEFINE_CLASS_PROPERTY_PREFIX(powerup, color, C_f, Inventory) //========================================================================== // //========================================================================== -DEFINE_CLASS_PROPERTY_PREFIX(powerup, colormap, FFFI, Inventory) +DEFINE_CLASS_PROPERTY_PREFIX(powerup, colormap, FFFfff, Inventory) { PalEntry * pBlendColor; @@ -1626,14 +1626,27 @@ DEFINE_CLASS_PROPERTY_PREFIX(powerup, colormap, FFFI, Inventory) return; } - PROP_FLOAT_PARM(r, 0); - PROP_FLOAT_PARM(g, 1); - PROP_FLOAT_PARM(b, 2); - PROP_INT_PARM(inv, 3); - - - - *pBlendColor = MakeSpecialColormap(AddSpecialColormap(r, g, b, !!inv)); + if (PROP_PARM_COUNT == 3) + { + PROP_FLOAT_PARM(r, 0); + PROP_FLOAT_PARM(g, 1); + PROP_FLOAT_PARM(b, 2); + *pBlendColor = MakeSpecialColormap(AddSpecialColormap(0, 0, 0, r, g, b)); + } + else if (PROP_PARM_COUNT == 6) + { + PROP_FLOAT_PARM(r1, 0); + PROP_FLOAT_PARM(g1, 1); + PROP_FLOAT_PARM(b1, 2); + PROP_FLOAT_PARM(r2, 0); + PROP_FLOAT_PARM(g2, 1); + PROP_FLOAT_PARM(b2, 2); + *pBlendColor = MakeSpecialColormap(AddSpecialColormap(r1, g1, b1, r2, g2, b2)); + } + else + { + I_Error("\"power.colormap\" must have either 3 or 6 parameters\n"); + } } //========================================================================== diff --git a/src/v_palette.cpp b/src/v_palette.cpp index 85570caa0..043e006fa 100644 --- a/src/v_palette.cpp +++ b/src/v_palette.cpp @@ -66,27 +66,26 @@ BYTE DesaturateColormap[31][256]; struct FSpecialColormapParameters { - float Colorize[3]; - bool Inverted; + float Start[3], End[3]; }; static FSpecialColormapParameters SpecialColormapParms[] = { // Doom invulnerability is an inverted grayscale. // Strife uses it when firing the Sigil - { { 1, 1, 1 }, true }, + { { 1, 1, 1 }, { 0, 0, 0 } }, // Heretic invulnerability is a golden shade. - { { 1.5, 0.75, 0 }, false }, + { { 0, 0, 0 }, { 1.5, 0.75, 0 }, }, // [BC] Build the Doomsphere colormap. It is red! - { { 1.5, 0, 0 }, false }, + { { 0, 0, 0 }, { 1.5, 0, 0 } }, // [BC] Build the Guardsphere colormap. It's a greenish-white kind of thing. - { { 1.25, 1.5, 1 }, false }, + { { 0, 0, 0 }, { 1.25, 1.5, 1 } }, // Build a blue colormap. - { { 0, 0, 1.5 }, false }, + {{ 0, 0, 0 }, { 0, 0, 1.5 } }, }; static void FreeSpecialLights(); @@ -361,14 +360,24 @@ static bool FixBuildPalette (BYTE *opal, int lump, bool blood) return true; } -int AddSpecialColormap(double r, double g, double b, bool inv) +int AddSpecialColormap(double r1, double g1, double b1, double r2, double g2, double b2) { + // Clamp these in range for the hardware shader. + r1 = clamp(r1, 0.0, 2.0); + g1 = clamp(g1, 0.0, 2.0); + b1 = clamp(b1, 0.0, 2.0); + r2 = clamp(r2, 0.0, 2.0); + g2 = clamp(g2, 0.0, 2.0); + b2 = clamp(b2, 0.0, 2.0); + for(unsigned i=0; iColorize[0] = float(r); - cm->Colorize[1] = float(g); - cm->Colorize[2] = float(b); - cm->Inverted = inv; + cm->ColorizeStart[0] = float(r1); + cm->ColorizeStart[1] = float(g1); + cm->ColorizeStart[2] = float(b1); + cm->ColorizeEnd[0] = float(r2); + cm->ColorizeEnd[1] = float(g2); + cm->ColorizeEnd[2] = float(b2); + + r2 -= r1; + g2 -= g1; + b2 -= b1; + r1 *= 255; + g1 *= 255; + b1 *= 255; for (int c = 0; c < 256; c++) { double intensity = (GPalette.BaseColors[c].r * 77 + GPalette.BaseColors[c].g * 143 + GPalette.BaseColors[c].b * 37) / 256.0; - if (inv) - { - intensity = 255 - intensity; - } - PalEntry pe = PalEntry( MIN(255, int(intensity*r)), - MIN(255, int(intensity*g)), - MIN(255, int(intensity*b))); + PalEntry pe = PalEntry( MIN(255, int(r1 + intensity*r2)), + MIN(255, int(g1 + intensity*g2)), + MIN(255, int(b1 + intensity*b2))); cm->Colormap[c] = ColorMatcher.Pick(pe); // This table is used by the texture composition code - for(int i = 0;i < 256; i++) - { - intensity = inv? 255-i : i; - cm->GrayscaleToColor[i] = PalEntry( MIN(255, int(intensity*r)), - MIN(255, int(intensity*g)), - MIN(255, int(intensity*b))); - } + cm->GrayscaleToColor[c] = pe; } return SpecialColormaps.Size() - 1; } @@ -456,8 +464,9 @@ void InitPalette () for (int i = 0; i < countof(SpecialColormapParms); ++i) { - AddSpecialColormap(SpecialColormapParms[i].Colorize[0], SpecialColormapParms[i].Colorize[1], - SpecialColormapParms[i].Colorize[2], SpecialColormapParms[i].Inverted); + AddSpecialColormap(SpecialColormapParms[i].Start[0], SpecialColormapParms[i].Start[1], + SpecialColormapParms[i].Start[2], SpecialColormapParms[i].End[0], + SpecialColormapParms[i].End[1], SpecialColormapParms[i].End[2]); } // desaturated colormaps for(int m = 0; m < 31; m++) diff --git a/src/v_palette.h b/src/v_palette.h index 186c25d5e..30bc9e8cf 100644 --- a/src/v_palette.h +++ b/src/v_palette.h @@ -97,8 +97,8 @@ enum struct FSpecialColormap { - float Colorize[3]; - bool Inverted; + float ColorizeStart[3]; + float ColorizeEnd[3]; BYTE Colormap[256]; PalEntry GrayscaleToColor[256]; }; @@ -124,7 +124,7 @@ inline int GetSpecialColormap(int blend) return IsSpecialColormap(blend) ? blend & 0xFFFF : NOFIXEDCOLORMAP; } -int AddSpecialColormap(double r, double g, double b, bool inv); +int AddSpecialColormap(double r1, double g1, double b1, double r2, double g2, double b2); @@ -152,7 +152,7 @@ void V_SetBlend (int blendr, int blendg, int blendb, int blenda); // V_ForceBlend() // // Normally, V_SetBlend() does nothing if the new blend is the -// same as the old. This function will performing the blending +// same as the old. This function will perform the blending // even if the blend hasn't changed. void V_ForceBlend (int blendr, int blendg, int blendb, int blenda); diff --git a/src/win32/fb_d3d9.cpp b/src/win32/fb_d3d9.cpp index 08e97a3bb..82fc19f45 100644 --- a/src/win32/fb_d3d9.cpp +++ b/src/win32/fb_d3d9.cpp @@ -224,9 +224,7 @@ const char *const D3DFB::ShaderNames[D3DFB::NUM_SHADERS] = "VertexColor.pso", "SpecialColormap.pso", - "SpecialColormapInv.pso", "SpecialColorMapPal.pso", - "SpecialColorMapPalInv.pso", "InGameColormap.pso", "InGameColormapDesat.pso", @@ -2984,8 +2982,7 @@ void D3DFB::EndQuadBatch() { int select; - select = !!(quad->Flags & BQF_InvertSource); - select |= !!(quad->Flags & BQF_Paletted) << 1; + select = !!(quad->Flags & BQF_Paletted); SetPixelShader(Shaders[SHADER_SpecialColormap + select]); } else if (quad->ShaderNum == BQS_InGameColormap) @@ -3115,47 +3112,7 @@ bool D3DFB::SetStyle(D3DTex *tex, DrawParms &parms, D3DCOLOR &color0, D3DCOLOR & SetColorOverlay(parms.colorOverlay, alpha, color0, color1); - if (parms.specialcolormap != NULL) - { // Emulate an invulnerability or similar colormap. - if (style.Flags & STYLEF_InvertSource) - { - quad.Flags |= BQF_InvertSource; - } - if (fmt == D3DFMT_L8) - { - quad.Flags |= BQF_GamePalette; - } - quad.ShaderNum = BQS_SpecialColormap; - color0 = D3DCOLOR_COLORVALUE(parms.specialcolormap->Colorize[0]/2, - parms.specialcolormap->Colorize[1]/2, parms.specialcolormap->Colorize[2]/2, 1); - color1 = D3DCOLOR_ARGB(255,0,0,0); - } - else if (parms.colormapstyle != NULL) - { // Emulate the fading from an in-game colormap (colorized, faded, and desaturated) - if (style.Flags & STYLEF_InvertSource) - { - quad.Flags |= BQF_InvertSource; - } - if (fmt == D3DFMT_L8) - { - quad.Flags |= BQF_GamePalette; - } - if (parms.colormapstyle->Desaturate != 0) - { - quad.Flags |= BQF_Desaturated; - } - quad.ShaderNum = BQS_InGameColormap; - color0 = D3DCOLOR_ARGB(parms.colormapstyle->Desaturate, - parms.colormapstyle->Color.r, - parms.colormapstyle->Color.g, - parms.colormapstyle->Color.b); - double fadelevel = parms.colormapstyle->FadeLevel; - color1 = D3DCOLOR_ARGB(DWORD((1 - fadelevel) * 255), - DWORD(parms.colormapstyle->Fade.r * fadelevel), - DWORD(parms.colormapstyle->Fade.g * fadelevel), - DWORD(parms.colormapstyle->Fade.b * fadelevel)); - } - else if (style.Flags & STYLEF_ColorIsFixed) + if (style.Flags & STYLEF_ColorIsFixed) { if (style.Flags & STYLEF_InvertSource) { // Since the source color is a constant, we can invert it now @@ -3219,10 +3176,42 @@ bool D3DFB::SetStyle(D3DTex *tex, DrawParms &parms, D3DCOLOR &color0, D3DCOLOR & { quad.Flags |= BQF_InvertSource; } + + if (parms.specialcolormap != NULL) + { // Emulate an invulnerability or similar colormap. + float *start, *end; + start = parms.specialcolormap->ColorizeStart; + end = parms.specialcolormap->ColorizeEnd; + if (quad.Flags & BQF_InvertSource) + { + quad.Flags &= ~BQF_InvertSource; + swap(start, end); + } + quad.ShaderNum = BQS_SpecialColormap; + color0 = D3DCOLOR_RGBA(DWORD(start[0]/2*255), DWORD(start[1]/2*255), DWORD(start[2]/2*255), color0 >> 24); + color1 = D3DCOLOR_RGBA(DWORD(end[0]/2*255), DWORD(end[1]/2*255), DWORD(end[2]/2*255), color1 >> 24); + } + else if (parms.colormapstyle != NULL) + { // Emulate the fading from an in-game colormap (colorized, faded, and desaturated) + if (parms.colormapstyle->Desaturate != 0) + { + quad.Flags |= BQF_Desaturated; + } + quad.ShaderNum = BQS_InGameColormap; + color0 = D3DCOLOR_ARGB(parms.colormapstyle->Desaturate, + parms.colormapstyle->Color.r, + parms.colormapstyle->Color.g, + parms.colormapstyle->Color.b); + double fadelevel = parms.colormapstyle->FadeLevel; + color1 = D3DCOLOR_ARGB(DWORD((1 - fadelevel) * 255), + DWORD(parms.colormapstyle->Fade.r * fadelevel), + DWORD(parms.colormapstyle->Fade.g * fadelevel), + DWORD(parms.colormapstyle->Fade.b * fadelevel)); + } } // For unmasked images, force the alpha from the image data to be ignored. - if (!parms.masked) + if (!parms.masked && quad.ShaderNum != BQS_InGameColormap) { color0 = (color0 & D3DCOLOR_RGBA(255, 255, 255, 0)) | D3DCOLOR_COLORVALUE(0, 0, 0, alpha); color1 &= D3DCOLOR_RGBA(255, 255, 255, 0); diff --git a/src/win32/win32iface.h b/src/win32/win32iface.h index 59741597a..26d8bf91d 100644 --- a/src/win32/win32iface.h +++ b/src/win32/win32iface.h @@ -310,9 +310,7 @@ private: SHADER_VertexColor, SHADER_SpecialColormap, - SHADER_SpecialColormapInv, SHADER_SpecialColorMapPal, - SHADER_SpecialColorMapPalInv, SHADER_InGameColormap, SHADER_InGameColormapDesat, diff --git a/wadsrc/static/shaders/d3d/shaders.ps b/wadsrc/static/shaders/d3d/shaders.ps index cf2899dcc..3039c7e2a 100644 --- a/wadsrc/static/shaders/d3d/shaders.ps +++ b/wadsrc/static/shaders/d3d/shaders.ps @@ -59,13 +59,15 @@ float4 VertexColor(float4 color : COLOR0) : COLOR // Emulate one of the special colormaps. (Invulnerability, gold, etc.) -float4 SpecialColormap(float2 tex_coord : TEXCOORD0, float4 icolor : COLOR0) : COLOR +float4 SpecialColormap(float2 tex_coord : TEXCOORD0, float4 start : COLOR0, float4 end : COLOR1) : COLOR { - // We can't store values greater than 1.0 in a color register, so we multiply - // intensity by 2 and expect the caller to divide icolor by 2. float4 color = SampleTexture(tex_coord); - float intensity = 2 * Grayscale(color); - color.rgb = icolor.rgb * intensity; + float4 range = end - start; + // We can't store values greater than 1.0 in a color register, so we multiply + // the final result by 2 and expect the caller to divide the start and end by 2. + color.rgb = 2 * (start + Grayscale(color) * range); + // Duplicate alpha semantics of NormalColor. + color.a = start.a + color.a * end.a; return color; } diff --git a/wadsrc/static/shaders/d3d/sm14/SpecialColormap.pso b/wadsrc/static/shaders/d3d/sm14/SpecialColormap.pso index 4d934e7c9379a5a5ccf85046b37f75f87762864f..8dc3111b2a45ffe3f1c37803a8e1c1503aeb8212 100644 GIT binary patch delta 83 zcmeytIE87#2_Gf~1_nk3_67!qCleVNo=o6iU|?Wk-~jO(*chHHU||3O_C`jACk;#t e|3TstSQr=_7{F@&H!w2%pTNNIf5QL&3=9BZaTay} delta 55 zcmbQj^n-E22?GuW1_nk3js^yXCk<>2PZlsTfB=a9zk!v3!GVE+y@8S8e>(%ilL`O- HGcW)EchC-G diff --git a/wadsrc/static/shaders/d3d/sm14/SpecialColormapInv.pso b/wadsrc/static/shaders/d3d/sm14/SpecialColormapInv.pso deleted file mode 100644 index db027196e6d6775fb8c513f821f5a78467e68a26..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 264 zcmZQ!{Qv*oe_aOW5Jx8&1_p*|1_lO@7!v~n1BlPS$iPs-z`)?bz`(%FzyRVh_%J{~ z3l_2 z6vrFJn=trhCKu%w=ckn@Xas30xEQ-cSSkc(B&MVmDLCin7G&n67AaWj8Jg;un_KD` z7#J8ZtX{p^31k2Re**)Mg3*VG0R-3^7#N;RWMp_UfrEj8fr){mfsx@!0~^DW1uP(G2KGh=I$A5S)>il3JwToS$2enUh+iV5w(ls%LI)sb^qdV8F0?^=c=OK@9v23=B^; zfc(zDz}&#Vz|g?Nz_5UcA#}mt{|pQuHH;87AaMo;2KELSY%4h9Bh1_nluTmu`!lLagc3@l6x91RQ%{~H(?{!d_J_}>5$V_;x!fEf7%q!w%r Y6Icw)ZvffBz`@_Z#PFoy|9=Js0A&Inj{pDw delta 76 zcmaFEw1#QIIY#!0w`CnT7#Nrt88{jk7@jn+F+5qo1m-g~Ff#lHV^#(RW(EfK21W)3 VkeUgM3=B*R9Q+`5!~g#b3;@)25>)^I diff --git a/wadsrc/static/shaders/d3d/sm20/SpecialColormapInv.pso b/wadsrc/static/shaders/d3d/sm20/SpecialColormapInv.pso deleted file mode 100644 index 27f8f26f2759ad4fe514d9ddbe795623326cf85a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 316 zcmZQz`v3pme;o$r5Jx8&1_p*|1_lO@7!v~n1BlPi$iPs-z`)?bz`(%Fz`(%Bz{KDK zQp3Q&5Cc-mz{bGHAjOaZ74ytZOiyK4y_$uAhk+3cArj%KnduoN#SDxL%nXbSEDVeg zVTOX@c%yg&2H(u&qWt3gv=Rl4AWa1ipI{$_;EcqS)FK7v{M>@foYW!(OFbhqJxfy~ zJtGSf69#z(29OgQ7#Ns0AlU2^pzH|@9Q+HMz)t3GU|@K%fq~=60wx9qW<~~f5WkU) x;r{{-FrTr3k>N=L8v{%p#Aj$=WMF7u1?y)Avl$qkOkf1r$pJR6;s1XI1^@=pH~Iho diff --git a/wadsrc/static/shaders/d3d/sm20/SpecialColormapPal.pso b/wadsrc/static/shaders/d3d/sm20/SpecialColormapPal.pso index 5985d0ba5cc60ec1053c8aaea0a447af136182bb..d8c347c63f12f0fbc2ade8878cb1e3f55d46ed62 100644 GIT binary patch delta 138 zcmZ3%{DOId6eBPH1bGGqCI$wE21W+{$o|6F#K;|WcWXUk>P&>69WS?0|Q?JBZG7!BZD+p4Fdyv1IRoE25GQ9kQyei X*b@-H0c0iv2Y&+-!;^;p{}~tnX(SvJ delta 74 zcmaFCyn=ay6eA=1WOc?s8%73>1_p*F4Qvcg7BDd|Ff%eRHZU^$2V+(S24)5Z_69}< W29TNwj0_A+3>^F*cEkVw3=9B#CJ`_I diff --git a/wadsrc/static/shaders/d3d/sm20/SpecialColormapPalInv.pso b/wadsrc/static/shaders/d3d/sm20/SpecialColormapPalInv.pso deleted file mode 100644 index eb523d2ef6d720ca38532cd04e7119265aff3dad..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 440 zcmZQz`v3pme|rY!5Jx8&1_p-X3=9k)F%|{}1`wa2k%8d=0|P@20|Nsy0|Nsi0~13D zNDTu6Lkn1pk%5tcjiCoBHV34gfr){Ufs0`URBQ)WjE#YjK?*MBnVXoN%CLGh3j+@W z$OJ~H+JMBI)RK}^1{MZxY~sH8DGaL_8JHOu8CV!#dcspP(=$qn848Nyjp7X$d^3}a z@{9A+N)$ALG!;C2f_)T%GZIr$ixiyma|<$aQi~KU^^DB)EKQB{j4Vt{7~~lkm>3us z8W^FmU~EPX{sm6ppx|#{V0f~Df#b;n76t|u1_tH^kQq!23=5bT zLXp)pFmgOuz{J47%*enF($mPs@P7dZn9tb2$nd0rjR7VP;xjZbGB7l-g6&`jvl$qk ROkf1LkppaJ!~g#b3;?-@OHu#; diff --git a/wadsrc/static/shaders/d3d/sm20/build.bat b/wadsrc/static/shaders/d3d/sm20/build.bat index e424d92a7..3d503d4f5 100644 --- a/wadsrc/static/shaders/d3d/sm20/build.bat +++ b/wadsrc/static/shaders/d3d/sm20/build.bat @@ -9,9 +9,7 @@ fxc ..\shaders.ps /Tps_2_0 /O3 /ERedToAlpha -DINVERT=1 /FoRedToAlphaInv.pso fxc ..\shaders.ps /Tps_2_0 /O3 /EVertexColor /FoVertexColor.pso fxc ..\shaders.ps /Tps_2_0 /O3 /ESpecialColormap -DPALTEX=0 -DINVERT=0 /FoSpecialColormap.pso -fxc ..\shaders.ps /Tps_2_0 /O3 /ESpecialColormap -DPALTEX=0 -DINVERT=1 /FoSpecialColormapInv.pso fxc ..\shaders.ps /Tps_2_0 /O3 /ESpecialColormap -DPALTEX=1 -DINVERT=0 /FoSpecialColormapPal.pso -fxc ..\shaders.ps /Tps_2_0 /O3 /ESpecialColormap -DPALTEX=1 -DINVERT=1 /FoSpecialColormapPalInv.pso fxc ..\shaders.ps /Tps_2_0 /O3 /EInGameColormap -DPALTEX=0 -DINVERT=0 -DDESAT=0 /FoInGameColormap.pso fxc ..\shaders.ps /Tps_2_0 /O3 /EInGameColormap -DPALTEX=0 -DINVERT=0 -DDESAT=1 /FoInGameColormapDesat.pso diff --git a/wadsrc/static/shaders/d3d/sm30/SpecialColormap.pso b/wadsrc/static/shaders/d3d/sm30/SpecialColormap.pso index d815257d5288b04648629ce9e941633dfc908c17..c1f4d8f356f86772fec6de2ddf6029ea62c5af6e 100644 GIT binary patch delta 154 zcmZ3(^nhu?xqAKy@(c`2Tnvm2Obie<0|UbZ1`hrOj0_A+3=I4Yj0{gEFflMNGcd3> zFfcr6WMX(S!HI!^nUR4X#Gk;x@niu9n9m4O+rY-~WC05U0}BHOM*}0n{{|+8{}UJ( h{x^Wd7}y&a85ltNKx!v234;vg02>Sz{QsYU0RWO4A^!jX delta 101 zcmaFBw1#QIxj6O-@(c`23=9kt7&!PBI599VGcfQsFfcrsz`*fj0SB1R2;w)eF+5qo m2vWL z3z)!sb`Zajjp6?SMv(J4I2srj{x@)dXz|g?J@Dr?$iGhKcfdeG=q=A9qNyGpD3=9C~ Ci5PAG delta 58 zcmcb^yn=ay6eA=1WOc?w9R?1L1_p-z4NMFS%nS^S4GatnV9W~QbFhQij0{gE{Qu9u F002^{3&j8c diff --git a/wadsrc/static/shaders/d3d/sm30/SpecialColormapPalInv.pso b/wadsrc/static/shaders/d3d/sm30/SpecialColormapPalInv.pso deleted file mode 100644 index 9c57af2dc3a7b5219f280fcf14138274f6260295..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 440 zcmZQz{{R2qe|rY!5Jx8&1_p-X3=9k)F%|{}1`wa2k%8d=0|P@2NSJ|vfsuiUp#-Fc zfq|g~EXK&d$iT+X0~MRYz`(%7z{J4Fz{RivDz*bG#>T+NAO#om%uP&BWmvtMg@K0w zWC9~pZ9rm9YDq~d0}BH;HgVtl6o%D|49pCS3@i*VJ>jXD=@})(3s z7#J8E7#J8Dm>3uqFfoK8sbOef{VrXCm$#a18g533F!vFsa3;u;= diff --git a/wadsrc/static/shaders/d3d/sm30/build.bat b/wadsrc/static/shaders/d3d/sm30/build.bat index d0edc16b7..fe6602b86 100644 --- a/wadsrc/static/shaders/d3d/sm30/build.bat +++ b/wadsrc/static/shaders/d3d/sm30/build.bat @@ -9,9 +9,7 @@ fxc ..\shaders.ps /Tps_3_0 /O3 /ERedToAlpha -DINVERT=1 /FoRedToAlphaInv.pso fxc ..\shaders.ps /Tps_3_0 /O3 /EVertexColor /FoVertexColor.pso fxc ..\shaders.ps /Tps_3_0 /O3 /ESpecialColormap -DPALTEX=0 -DINVERT=0 /FoSpecialColormap.pso -fxc ..\shaders.ps /Tps_3_0 /O3 /ESpecialColormap -DPALTEX=0 -DINVERT=1 /FoSpecialColormapInv.pso fxc ..\shaders.ps /Tps_3_0 /O3 /ESpecialColormap -DPALTEX=1 -DINVERT=0 /FoSpecialColormapPal.pso -fxc ..\shaders.ps /Tps_3_0 /O3 /ESpecialColormap -DPALTEX=1 -DINVERT=1 /FoSpecialColormapPalInv.pso fxc ..\shaders.ps /Tps_3_0 /O3 /EInGameColormap -DPALTEX=0 -DINVERT=0 -DDESAT=0 /FoInGameColormap.pso fxc ..\shaders.ps /Tps_3_0 /O3 /EInGameColormap -DPALTEX=0 -DINVERT=0 -DDESAT=1 /FoInGameColormapDesat.pso