mirror of https://github.com/ZDoom/zdbsp.git
Fixed ZDBSP seg splitter. On occasion it assigned the offset to the incorrect of the two segs created by a split.
SVN r118 (trunk)
This commit is contained in:
parent
714383b6c0
commit
e601a49695
|
@ -952,9 +952,10 @@ DWORD FNodeBuilder::SplitSeg (DWORD segnum, int splitvert, int v1InFront)
|
||||||
newseg = Segs[segnum];
|
newseg = Segs[segnum];
|
||||||
dx = double(Vertices[splitvert].x - Vertices[newseg.v1].x);
|
dx = double(Vertices[splitvert].x - Vertices[newseg.v1].x);
|
||||||
dy = double(Vertices[splitvert].y - Vertices[newseg.v1].y);
|
dy = double(Vertices[splitvert].y - Vertices[newseg.v1].y);
|
||||||
newseg.offset += fixed_t (sqrt (dx*dx + dy*dy));
|
|
||||||
if (v1InFront > 0)
|
if (v1InFront > 0)
|
||||||
{
|
{
|
||||||
|
newseg.offset += fixed_t (sqrt (dx*dx + dy*dy));
|
||||||
|
|
||||||
newseg.v1 = splitvert;
|
newseg.v1 = splitvert;
|
||||||
Segs[segnum].v2 = splitvert;
|
Segs[segnum].v2 = splitvert;
|
||||||
|
|
||||||
|
@ -971,6 +972,8 @@ DWORD FNodeBuilder::SplitSeg (DWORD segnum, int splitvert, int v1InFront)
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
Segs[segnum].offset += fixed_t (sqrt (dx*dx + dy*dy));
|
||||||
|
|
||||||
Segs[segnum].v1 = splitvert;
|
Segs[segnum].v1 = splitvert;
|
||||||
newseg.v2 = splitvert;
|
newseg.v2 = splitvert;
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue