-sprite_kludge 0
and, if you don't see anything different, try:
-sprite_kludge 1
And boot into your test map -- it looks like the following check will remove sprites, since it seems the previous team tried to correct the clipping:
Code: Select all
// fix for sprites that sit wrongly into the floor/ceiling
int y_clipping = YCLIP_Soft;
if (is_model || (mo->flags & MF_FUZZY) || (mo->hyperflags & HF_HOVER))
{
[b]y_clipping = YCLIP_Never;[/b]
}
Code: Select all
else if (sprite_kludge==0 && gzb < [b]mo->floorz[/b])
{
// explosion ?
if (mo->info->flags & MF_MISSILE)
{
[b]y_clipping = YCLIP_Hard;[/b]
}
else
{
[b]gzt += mo->floorz - gzb;
gzb = mo->floorz;[/b]
}
}
else if (sprite_kludge==0 && gzt > [b]mo->ceilingz[/b])
{
// explosion ?
if (mo->info->flags & MF_MISSILE)
{
[b]y_clipping = YCLIP_Hard;[/b]
}
else
{
[b]gzb -= gzt - mo->ceilingz;
gzt = mo->ceilingz;[/b]
}
}
At any rate, try that and let me know if it works any differently. I have a good understanding of how Y-clipping works now, so please let me know. If this all fails to produce results, I may have a solution ready. . .
EDIT:
Saw this in the disabled part of the code, in THING rendering:
Code: Select all
// Note that sprites are not clipped by the lowest floor or
// highest ceiling, OR by *solid* extrafloors (even translucent
// ones) -- UNLESS y_clipping == YCLIP_Hard.