- the fourth.
This commit is contained in:
parent
6dee9ff566
commit
8ab562ef13
107 changed files with 1041 additions and 1041 deletions
|
|
@ -9,7 +9,7 @@ struct FMiniBSP;
|
|||
struct FEventInfo
|
||||
{
|
||||
int Vertex;
|
||||
DWORD FrontSeg;
|
||||
uint32_t FrontSeg;
|
||||
};
|
||||
|
||||
struct FEvent
|
||||
|
|
@ -62,12 +62,12 @@ class FNodeBuilder
|
|||
int linedef;
|
||||
sector_t *frontsector;
|
||||
sector_t *backsector;
|
||||
DWORD next;
|
||||
DWORD nextforvert;
|
||||
DWORD nextforvert2;
|
||||
uint32_t next;
|
||||
uint32_t nextforvert;
|
||||
uint32_t nextforvert2;
|
||||
int loopnum; // loop number for split avoidance (0 means splitting is okay)
|
||||
DWORD partner; // seg on back side
|
||||
DWORD storedseg; // seg # in the GL_SEGS lump
|
||||
uint32_t partner; // seg on back side
|
||||
uint32_t storedseg; // seg # in the GL_SEGS lump
|
||||
|
||||
int planenum;
|
||||
bool planefront;
|
||||
|
|
@ -75,8 +75,8 @@ class FNodeBuilder
|
|||
};
|
||||
struct FPrivVert : FSimpleVert
|
||||
{
|
||||
DWORD segs; // segs that use this vertex as v1
|
||||
DWORD segs2; // segs that use this vertex as v2
|
||||
uint32_t segs; // segs that use this vertex as v1
|
||||
uint32_t segs2; // segs that use this vertex as v2
|
||||
|
||||
bool operator== (const FPrivVert &other)
|
||||
{
|
||||
|
|
@ -89,19 +89,19 @@ class FNodeBuilder
|
|||
};
|
||||
union USegPtr
|
||||
{
|
||||
DWORD SegNum;
|
||||
uint32_t SegNum;
|
||||
FPrivSeg *SegPtr;
|
||||
};
|
||||
struct FSplitSharer
|
||||
{
|
||||
double Distance;
|
||||
DWORD Seg;
|
||||
uint32_t Seg;
|
||||
bool Forward;
|
||||
};
|
||||
|
||||
struct glseg_t : public seg_t
|
||||
{
|
||||
DWORD Partner;
|
||||
uint32_t Partner;
|
||||
};
|
||||
|
||||
|
||||
|
|
@ -220,11 +220,11 @@ private:
|
|||
|
||||
TArray<node_t> Nodes;
|
||||
TArray<subsector_t> Subsectors;
|
||||
TArray<DWORD> SubsectorSets;
|
||||
TArray<uint32_t> SubsectorSets;
|
||||
TArray<FPrivSeg> Segs;
|
||||
TArray<FPrivVert> Vertices;
|
||||
TArray<USegPtr> SegList;
|
||||
TArray<BYTE> PlaneChecked;
|
||||
TArray<uint8_t> PlaneChecked;
|
||||
TArray<FSimpleLine> Planes;
|
||||
|
||||
TArray<int> Touched; // Loops a splitter touches on a vertex
|
||||
|
|
@ -233,8 +233,8 @@ private:
|
|||
|
||||
TArray<FSplitSharer> SplitSharers; // Segs colinear with the current splitter
|
||||
|
||||
DWORD HackSeg; // Seg to force to back of splitter
|
||||
DWORD HackMate; // Seg to use in front of hack seg
|
||||
uint32_t HackSeg; // Seg to force to back of splitter
|
||||
uint32_t HackMate; // Seg to use in front of hack seg
|
||||
FLevel &Level;
|
||||
bool GLNodes; // Add minisegs to make GL nodes?
|
||||
|
||||
|
|
@ -249,17 +249,17 @@ private:
|
|||
void GroupSegPlanesSimple ();
|
||||
void FindPolyContainers (TArray<FPolyStart> &spots, TArray<FPolyStart> &anchors);
|
||||
bool GetPolyExtents (int polynum, fixed_t bbox[4]);
|
||||
int MarkLoop (DWORD firstseg, int loopnum);
|
||||
int MarkLoop (uint32_t firstseg, int loopnum);
|
||||
void AddSegToBBox (fixed_t bbox[4], const FPrivSeg *seg);
|
||||
int CreateNode (DWORD set, unsigned int count, fixed_t bbox[4]);
|
||||
int CreateSubsector (DWORD set, fixed_t bbox[4]);
|
||||
int CreateNode (uint32_t set, unsigned int count, fixed_t bbox[4]);
|
||||
int CreateSubsector (uint32_t set, fixed_t bbox[4]);
|
||||
void CreateSubsectorsForReal ();
|
||||
bool CheckSubsector (DWORD set, node_t &node, DWORD &splitseg);
|
||||
bool CheckSubsectorOverlappingSegs (DWORD set, node_t &node, DWORD &splitseg);
|
||||
bool ShoveSegBehind (DWORD set, node_t &node, DWORD seg, DWORD mate); int SelectSplitter (DWORD set, node_t &node, DWORD &splitseg, int step, bool nosplit);
|
||||
void SplitSegs (DWORD set, node_t &node, DWORD splitseg, DWORD &outset0, DWORD &outset1, unsigned int &count0, unsigned int &count1);
|
||||
DWORD SplitSeg (DWORD segnum, int splitvert, int v1InFront);
|
||||
int Heuristic (node_t &node, DWORD set, bool honorNoSplit);
|
||||
bool CheckSubsector (uint32_t set, node_t &node, uint32_t &splitseg);
|
||||
bool CheckSubsectorOverlappingSegs (uint32_t set, node_t &node, uint32_t &splitseg);
|
||||
bool ShoveSegBehind (uint32_t set, node_t &node, uint32_t seg, uint32_t mate); int SelectSplitter (uint32_t set, node_t &node, uint32_t &splitseg, int step, bool nosplit);
|
||||
void SplitSegs (uint32_t set, node_t &node, uint32_t splitseg, uint32_t &outset0, uint32_t &outset1, unsigned int &count0, unsigned int &count1);
|
||||
uint32_t SplitSeg (uint32_t segnum, int splitvert, int v1InFront);
|
||||
int Heuristic (node_t &node, uint32_t set, bool honorNoSplit);
|
||||
|
||||
// Returns:
|
||||
// 0 = seg is in front
|
||||
|
|
@ -270,16 +270,16 @@ private:
|
|||
|
||||
void FixSplitSharers (const node_t &node);
|
||||
double AddIntersection (const node_t &node, int vertex);
|
||||
void AddMinisegs (const node_t &node, DWORD splitseg, DWORD &fset, DWORD &rset);
|
||||
DWORD CheckLoopStart (fixed_t dx, fixed_t dy, int vertex1, int vertex2);
|
||||
DWORD CheckLoopEnd (fixed_t dx, fixed_t dy, int vertex2);
|
||||
void RemoveSegFromVert1 (DWORD segnum, int vertnum);
|
||||
void RemoveSegFromVert2 (DWORD segnum, int vertnum);
|
||||
DWORD AddMiniseg (int v1, int v2, DWORD partner, DWORD seg1, DWORD splitseg);
|
||||
void AddMinisegs (const node_t &node, uint32_t splitseg, uint32_t &fset, uint32_t &rset);
|
||||
uint32_t CheckLoopStart (fixed_t dx, fixed_t dy, int vertex1, int vertex2);
|
||||
uint32_t CheckLoopEnd (fixed_t dx, fixed_t dy, int vertex2);
|
||||
void RemoveSegFromVert1 (uint32_t segnum, int vertnum);
|
||||
void RemoveSegFromVert2 (uint32_t segnum, int vertnum);
|
||||
uint32_t AddMiniseg (int v1, int v2, uint32_t partner, uint32_t seg1, uint32_t splitseg);
|
||||
void SetNodeFromSeg (node_t &node, const FPrivSeg *pseg) const;
|
||||
|
||||
int CloseSubsector (TArray<glseg_t> &segs, int subsector, vertex_t *outVerts);
|
||||
DWORD PushGLSeg (TArray<glseg_t> &segs, const FPrivSeg *seg, vertex_t *outVerts);
|
||||
uint32_t PushGLSeg (TArray<glseg_t> &segs, const FPrivSeg *seg, vertex_t *outVerts);
|
||||
void PushConnectingGLSeg (int subsector, TArray<glseg_t> &segs, vertex_t *v1, vertex_t *v2);
|
||||
int OutputDegenerateSubsector (TArray<glseg_t> &segs, int subsector, bool bForward, double lastdot, FPrivSeg *&prev, vertex_t *outVerts);
|
||||
|
||||
|
|
@ -287,7 +287,7 @@ private:
|
|||
|
||||
double InterceptVector (const node_t &splitter, const FPrivSeg &seg);
|
||||
|
||||
void PrintSet (int l, DWORD set);
|
||||
void PrintSet (int l, uint32_t set);
|
||||
|
||||
FNodeBuilder &operator= (const FNodeBuilder &) { return *this; }
|
||||
};
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue