mirror of
https://github.com/ZDoom/raze-gles.git
synced 2024-12-27 20:20:40 +00:00
- fix sky palette in Polymost mode.
This commit is contained in:
parent
6fca2de7f3
commit
db7527fa43
2 changed files with 10 additions and 7 deletions
|
@ -396,7 +396,7 @@ static void polymost_drawpoly(vec2f_t const * const dpxy, int32_t const n, int32
|
|||
|
||||
int palid = TRANSLATION(Translation_Remap + curbasepal, globalpal);
|
||||
GLInterface.SetFade(globalfloorpal);
|
||||
bool success = GLInterface.SetTexture(globalskytex? globalskytex : tileGetTexture(globalpicnum), palid, sampleroverride);
|
||||
bool success = GLInterface.SetTexture(globalskytex? globalskytex : tileGetTexture(globalpicnum), globalskytex? 0 : palid, sampleroverride);
|
||||
if (!success)
|
||||
{
|
||||
tsiz.x = tsiz.y = 1;
|
||||
|
@ -1319,9 +1319,13 @@ static void polymost_flatskyrender(vec2f_t const* const dpxy, int32_t const n, i
|
|||
float const fglobalang = FixedToFloat(qglobalang);
|
||||
int32_t dapyscale, dapskybits, dapyoffs, daptileyscale;
|
||||
int16_t const * dapskyoff = getpsky(globalpicnum, &dapyscale, &dapskybits, &dapyoffs, &daptileyscale);
|
||||
globalskytex = skytile? nullptr : GetSkyTexture(globalpicnum, dapskybits, dapskyoff);
|
||||
int remap = TRANSLATION(Translation_Remap + curbasepal, globalpal);
|
||||
globalskytex = skytile? nullptr : GetSkyTexture(globalpicnum, dapskybits, dapskyoff, remap);
|
||||
int realskybits = dapskybits;
|
||||
if (globalskytex) dapskybits = 0;
|
||||
if (globalskytex)
|
||||
{
|
||||
dapskybits = 0;
|
||||
}
|
||||
|
||||
ghoriz = (qglobalhoriz*(1.f/65536.f)-float(ydimen>>1))*dapyscale*(1.f/65536.f)+float(ydimen>>1)+ghorizcorrect;
|
||||
|
||||
|
|
|
@ -43,7 +43,7 @@
|
|||
|
||||
FGameTexture* GetSkyTexture(int basetile, int lognumtiles, const int16_t *tilemap, int remap)
|
||||
{
|
||||
char synthname[60];
|
||||
FString synthname;
|
||||
|
||||
|
||||
if ((lognumtiles == 0 && remap == 0) || lognumtiles > 4)
|
||||
|
@ -53,12 +53,11 @@ FGameTexture* GetSkyTexture(int basetile, int lognumtiles, const int16_t *tilema
|
|||
}
|
||||
|
||||
int numtiles = 1 << lognumtiles;
|
||||
mysnprintf(synthname, 60, "%04x", basetile);
|
||||
synthname.Format("Sky%04x%02x", basetile, remap);
|
||||
for(int i = 0; i < numtiles; i++)
|
||||
{
|
||||
synthname[4+i] = 'A' + tilemap[i];
|
||||
synthname += 'A' + tilemap[i];
|
||||
};
|
||||
synthname[4+numtiles] = 0;
|
||||
auto tex = TexMan.FindGameTexture(synthname);
|
||||
if (tex) return tex;
|
||||
|
||||
|
|
Loading…
Reference in a new issue