- Fixed: When P_Add3DFloor() adds the "inside" plane, it needs to copy the translucency flags

from the original plane.

SVN r4006 (trunk)
This commit is contained in:
Randy Heit 2013-01-02 03:01:03 +00:00
parent efbaab3440
commit 4228386837
2 changed files with 9 additions and 5 deletions

View file

@ -108,7 +108,7 @@ void F3DFloor::UpdateColormap(FDynamicColormap *&map)
// Add one 3D floor to the sector
//
//==========================================================================
static void P_Add3DFloor(sector_t* sec, sector_t* sec2, line_t* master, int flags,int transluc)
static void P_Add3DFloor(sector_t* sec, sector_t* sec2, line_t* master, int flags, int alpha)
{
F3DFloor* ffloor;
unsigned i;
@ -179,7 +179,7 @@ static void P_Add3DFloor(sector_t* sec, sector_t* sec2, line_t* master, int flag
ffloor->flags = flags;
ffloor->master = master;
ffloor->alpha = transluc;
ffloor->alpha = alpha;
ffloor->top.vindex = ffloor->bottom.vindex = -1;
// The engine cannot handle sloped translucent floors. Sorry
@ -200,7 +200,11 @@ static void P_Add3DFloor(sector_t* sec, sector_t* sec2, line_t* master, int flag
// kg3D - software renderer only hack
// this is really required because of ceilingclip and floorclip
if(flags & FF_BOTHPLANES) P_Add3DFloor(sec, sec2, master, FF_EXISTS | FF_THISINSIDE | FF_RENDERPLANES | FF_NOSHADE | FF_SEETHROUGH | FF_SHOOTTHROUGH | (flags & FF_INVERTSECTOR), transluc);
if(flags & FF_BOTHPLANES)
{
P_Add3DFloor(sec, sec2, master, FF_EXISTS | FF_THISINSIDE | FF_RENDERPLANES | FF_NOSHADE | FF_SEETHROUGH | FF_SHOOTTHROUGH |
(flags & (FF_INVERTSECTOR | FF_TRANSLUCENT | FF_ADDITIVETRANS)), alpha);
}
}
//==========================================================================