mirror of
https://github.com/ZDoom/gzdoom-last-svn.git
synced 2025-06-04 19:20:53 +00:00
- Changed the default key for am_toggletexture to P so as not to conflict with the default chat key.
- fixed: Extraction of partner segs was broken in the internal node builder. - removed some obsolete code for a never implemented render data caching system. - made output of 'dumpgeometry' CCMD only go to the log file because printing it to the console takes several minutes, even for small maps. - version bump to 1.5.02. git-svn-id: http://mancubus.net/svn/hosted/gzdoom/trunk@916 b0f79afe-0144-0410-b225-9a4edf0717df
This commit is contained in:
parent
801d3d43bf
commit
4005528b42
8 changed files with 32 additions and 271 deletions
|
@ -176,7 +176,7 @@ static const FBinding DefAutomapBindings[] =
|
||||||
{
|
{
|
||||||
{ "f", "am_togglefollow" },
|
{ "f", "am_togglefollow" },
|
||||||
{ "g", "am_togglegrid" },
|
{ "g", "am_togglegrid" },
|
||||||
{ "t", "am_toggletexture" },
|
{ "p", "am_toggletexture" },
|
||||||
{ "m", "am_setmark" },
|
{ "m", "am_setmark" },
|
||||||
{ "c", "am_clearmarks" },
|
{ "c", "am_clearmarks" },
|
||||||
{ "0", "am_gobig" },
|
{ "0", "am_gobig" },
|
||||||
|
|
|
@ -445,52 +445,6 @@ void gl_RecalcVertexHeights(vertex_t * v)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
//==========================================================================
|
|
||||||
//
|
|
||||||
// Mark sectors dirty
|
|
||||||
//
|
|
||||||
//==========================================================================
|
|
||||||
int DirtyCount;
|
|
||||||
|
|
||||||
void sector_t::SetDirty(bool dolines, bool dovertices)
|
|
||||||
{
|
|
||||||
Dirty.Clock();
|
|
||||||
if (currentrenderer == 1 && this == §ors[sectornum])
|
|
||||||
{
|
|
||||||
dirty = true;
|
|
||||||
|
|
||||||
if (dirtyframe[0] != gl_frameCount)
|
|
||||||
{
|
|
||||||
DirtyCount++;
|
|
||||||
dirtyframe[0] = gl_frameCount;
|
|
||||||
for(unsigned i = 0; i < e->SectorDependencies.Size(); i++)
|
|
||||||
e->SectorDependencies[i]->dirty = true;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (dolines)
|
|
||||||
{
|
|
||||||
if (dirtyframe[1] != gl_frameCount)
|
|
||||||
{
|
|
||||||
dirtyframe[1] = gl_frameCount;
|
|
||||||
|
|
||||||
for(unsigned i = 0; i < e->SideDependencies.Size(); i++)
|
|
||||||
e->SideDependencies[i]->dirty = true;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if (dovertices)
|
|
||||||
{
|
|
||||||
if (dirtyframe[2] != gl_frameCount)
|
|
||||||
{
|
|
||||||
dirtyframe[2] = gl_frameCount;
|
|
||||||
|
|
||||||
for(unsigned i = 0; i < e->VertexDependencies.Size(); i++)
|
|
||||||
e->VertexDependencies[i]->dirty = true;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
Dirty.Unclock();
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
void gl_InitData()
|
void gl_InitData()
|
||||||
|
@ -513,55 +467,39 @@ CCMD(dumpgeometry)
|
||||||
{
|
{
|
||||||
sector_t * sector = §ors[i];
|
sector_t * sector = §ors[i];
|
||||||
|
|
||||||
Printf("Sector %d\n",i);
|
Printf(PRINT_LOG, "Sector %d\n",i);
|
||||||
for(int j=0;j<sector->subsectorcount;j++)
|
for(int j=0;j<sector->subsectorcount;j++)
|
||||||
{
|
{
|
||||||
subsector_t * sub = sector->subsectors[j];
|
subsector_t * sub = sector->subsectors[j];
|
||||||
|
|
||||||
Printf(" Subsector %d - real sector = %d - %s\n", sub-subsectors, sub->sector->sectornum, sub->hacked&1? "hacked":"");
|
Printf(PRINT_LOG, " Subsector %d - real sector = %d - %s\n", sub-subsectors, sub->sector->sectornum, sub->hacked&1? "hacked":"");
|
||||||
for(DWORD k=0;k<sub->numlines;k++)
|
for(DWORD k=0;k<sub->numlines;k++)
|
||||||
{
|
{
|
||||||
seg_t * seg = sub->firstline + k;
|
seg_t * seg = sub->firstline + k;
|
||||||
if (seg->linedef)
|
if (seg->linedef)
|
||||||
{
|
{
|
||||||
Printf(" (%4.4f, %4.4f), (%4.4f, %4.4f) - seg %d, linedef %d, side %d",
|
Printf(PRINT_LOG, " (%4.4f, %4.4f), (%4.4f, %4.4f) - seg %d, linedef %d, side %d",
|
||||||
FIXED2FLOAT(seg->v1->x), FIXED2FLOAT(seg->v1->y), FIXED2FLOAT(seg->v2->x), FIXED2FLOAT(seg->v2->y),
|
FIXED2FLOAT(seg->v1->x), FIXED2FLOAT(seg->v1->y), FIXED2FLOAT(seg->v2->x), FIXED2FLOAT(seg->v2->y),
|
||||||
seg-segs, seg->linedef-lines, seg->sidedef != seg->linedef->sidedef[0]);
|
seg-segs, seg->linedef-lines, seg->sidedef != seg->linedef->sidedef[0]);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
Printf(" (%4.4f, %4.4f), (%4.4f, %4.4f) - seg %d, miniseg",
|
Printf(PRINT_LOG, " (%4.4f, %4.4f), (%4.4f, %4.4f) - seg %d, miniseg",
|
||||||
FIXED2FLOAT(seg->v1->x), FIXED2FLOAT(seg->v1->y), FIXED2FLOAT(seg->v2->x), FIXED2FLOAT(seg->v2->y),
|
FIXED2FLOAT(seg->v1->x), FIXED2FLOAT(seg->v1->y), FIXED2FLOAT(seg->v2->x), FIXED2FLOAT(seg->v2->y),
|
||||||
seg-segs);
|
seg-segs);
|
||||||
}
|
}
|
||||||
if (seg->PartnerSeg)
|
if (seg->PartnerSeg)
|
||||||
{
|
{
|
||||||
subsector_t * sub2 = seg->PartnerSeg->Subsector();
|
subsector_t * sub2 = seg->PartnerSeg->Subsector();
|
||||||
Printf(", back sector = %d, real back sector = %d", sub2->render_sector->sectornum, seg->PartnerSeg->frontsector->sectornum);
|
Printf(PRINT_LOG, ", back sector = %d, real back sector = %d", sub2->render_sector->sectornum, seg->PartnerSeg->frontsector->sectornum);
|
||||||
}
|
}
|
||||||
Printf("\n");
|
else if (seg->backsector)
|
||||||
|
{
|
||||||
|
Printf(PRINT_LOG, ", back sector = %d (no partnerseg)", seg->backsector->sectornum);
|
||||||
|
}
|
||||||
|
|
||||||
|
Printf(PRINT_LOG, "\n");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
CCMD(dumpdependencies)
|
|
||||||
{
|
|
||||||
for(int i=0;i<numsectors;i++)
|
|
||||||
{
|
|
||||||
Printf(PRINT_LOG, "Dependencies of sector %d\n", i);
|
|
||||||
for(unsigned j = 0; j < sectors[i].e->VertexDependencies.Size(); j++)
|
|
||||||
{
|
|
||||||
Printf(PRINT_LOG,"\tVertex %d\n", int(sectors[i].e->VertexDependencies[j] - vertexes));
|
|
||||||
}
|
|
||||||
for(unsigned j = 0; j < sectors[i].e->SideDependencies.Size(); j++)
|
|
||||||
{
|
|
||||||
Printf(PRINT_LOG,"\tSide %d (Line %d)\n", int(sectors[i].e->SideDependencies[j] - sides), (sectors[i].e->SideDependencies[j]->linedef-lines));
|
|
||||||
}
|
|
||||||
for(unsigned j = 0; j < sectors[i].e->SectorDependencies.Size(); j++)
|
|
||||||
{
|
|
||||||
Printf(PRINT_LOG,"\tSector %d\n", int(sectors[i].e->SectorDependencies[j] - sectors));
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
|
@ -116,14 +116,6 @@ static void PrepareSectorData()
|
||||||
TArray<subsector_t *> undetermined;
|
TArray<subsector_t *> undetermined;
|
||||||
subsector_t * ss;
|
subsector_t * ss;
|
||||||
|
|
||||||
// Account for ZDoom space optimizations that cannot be done for GL
|
|
||||||
for(i=0;i<numsegs;i++)
|
|
||||||
{
|
|
||||||
unsigned int partner= glsegextras[i].PartnerSeg;
|
|
||||||
if (partner < numsegs) segs[i].PartnerSeg = &segs[partner];
|
|
||||||
else segs[i].PartnerSeg = NULL;
|
|
||||||
}
|
|
||||||
|
|
||||||
// look up sector number for each subsector
|
// look up sector number for each subsector
|
||||||
for (i = 0; i < numsubsectors; i++)
|
for (i = 0; i < numsubsectors; i++)
|
||||||
{
|
{
|
||||||
|
@ -271,130 +263,6 @@ static void PrepareTransparentDoors(sector_t * sector)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
//===========================================================================
|
|
||||||
//
|
|
||||||
// collect other objects depending on sector changes
|
|
||||||
//
|
|
||||||
//===========================================================================
|
|
||||||
|
|
||||||
static void AddDependency(sector_t *mysec, sector_t *addsec, int *checkmap)
|
|
||||||
{
|
|
||||||
int mysecnum = int(mysec - sectors);
|
|
||||||
int addsecnum = int(addsec - sectors);
|
|
||||||
if (addsec != mysec)
|
|
||||||
{
|
|
||||||
if (checkmap[addsecnum] < mysecnum)
|
|
||||||
{
|
|
||||||
checkmap[addsecnum] = mysecnum;
|
|
||||||
mysec->e->SectorDependencies.Push(addsec);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// This ignores vertices only used for seg splitting because those aren't needed here
|
|
||||||
for(int i=0; i < addsec->linecount; i++)
|
|
||||||
{
|
|
||||||
line_t *l = addsec->lines[i];
|
|
||||||
int vtnum1 = int(l->v1 - vertexes);
|
|
||||||
int vtnum2 = int(l->v2 - vertexes);
|
|
||||||
|
|
||||||
if (checkmap[numsectors + vtnum1] < mysecnum)
|
|
||||||
{
|
|
||||||
checkmap[numsectors + vtnum1] = mysecnum;
|
|
||||||
mysec->e->VertexDependencies.Push(&vertexes[vtnum1]);
|
|
||||||
}
|
|
||||||
|
|
||||||
if (checkmap[numsectors + vtnum2] < mysecnum)
|
|
||||||
{
|
|
||||||
checkmap[numsectors + vtnum2] = mysecnum;
|
|
||||||
mysec->e->VertexDependencies.Push(&vertexes[vtnum2]);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
//===========================================================================
|
|
||||||
//
|
|
||||||
// Sets up dependency lists for invalidating precalculated data
|
|
||||||
//
|
|
||||||
//===========================================================================
|
|
||||||
|
|
||||||
static void SetupDependencies()
|
|
||||||
{
|
|
||||||
int *checkmap = new int[numvertexes + numlines + numsectors];
|
|
||||||
TArray<int> *vt_linelists = new TArray<int>[numvertexes];
|
|
||||||
|
|
||||||
for(int i=0;i<numlines;i++)
|
|
||||||
{
|
|
||||||
line_t * line = &lines[i];
|
|
||||||
int v1i = int(line->v1 - vertexes);
|
|
||||||
int v2i = int(line->v2 - vertexes);
|
|
||||||
|
|
||||||
vt_linelists[v1i].Push(i);
|
|
||||||
vt_linelists[v2i].Push(i);
|
|
||||||
}
|
|
||||||
memset(checkmap, -1, sizeof(int) * (numvertexes + numlines + numsectors));
|
|
||||||
|
|
||||||
|
|
||||||
for(int i=0;i<numsectors;i++)
|
|
||||||
{
|
|
||||||
sector_t *mSector = §ors[i];
|
|
||||||
|
|
||||||
AddDependency(mSector, mSector, checkmap);
|
|
||||||
|
|
||||||
for(unsigned j = 0; j < mSector->e->FakeFloor.Sectors.Size(); j++)
|
|
||||||
{
|
|
||||||
sector_t *sec = mSector->e->FakeFloor.Sectors[j];
|
|
||||||
// no need to make sectors dependent that don't make visual use of the heightsec
|
|
||||||
if (sec->GetHeightSec() == mSector)
|
|
||||||
{
|
|
||||||
AddDependency(mSector, sec, checkmap);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
for(unsigned j = 0; j < mSector->e->XFloor.attached.Size(); j++)
|
|
||||||
{
|
|
||||||
sector_t *sec = mSector->e->XFloor.attached[j];
|
|
||||||
extsector_t::xfloor &x = sec->e->XFloor;
|
|
||||||
|
|
||||||
for(unsigned l = 0;l < x.ffloors.Size(); l++)
|
|
||||||
{
|
|
||||||
// Check if we really need to bother with this 3D floor
|
|
||||||
F3DFloor * rover = x.ffloors[l];
|
|
||||||
if (rover->model != mSector) continue;
|
|
||||||
if (!(rover->flags & FF_EXISTS)) continue;
|
|
||||||
if (rover->flags&FF_NOSHADE) continue; // FF_NOSHADE doesn't create any wall splits
|
|
||||||
|
|
||||||
AddDependency(mSector, sec, checkmap);
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
for(unsigned j = 0; j < mSector->e->VertexDependencies.Size(); j++)
|
|
||||||
{
|
|
||||||
int vtindex = int(mSector->e->VertexDependencies[j] - vertexes);
|
|
||||||
for(unsigned k = 0; k < vt_linelists[vtindex].Size(); k++)
|
|
||||||
{
|
|
||||||
int ln = vt_linelists[vtindex][k];
|
|
||||||
|
|
||||||
if (checkmap[numvertexes + numsectors + ln] < i)
|
|
||||||
{
|
|
||||||
checkmap[numvertexes + numsectors + ln] = i;
|
|
||||||
side_t *sd1 = lines[ln].sidedef[0];
|
|
||||||
side_t *sd2 = lines[ln].sidedef[1];
|
|
||||||
if (sd1 != NULL) mSector->e->SideDependencies.Push(sd1);
|
|
||||||
if (sd2 != NULL) mSector->e->SideDependencies.Push(sd2);
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
}
|
|
||||||
mSector->e->SectorDependencies.ShrinkToFit();
|
|
||||||
mSector->e->SideDependencies.ShrinkToFit();
|
|
||||||
mSector->e->VertexDependencies.ShrinkToFit();
|
|
||||||
}
|
|
||||||
|
|
||||||
delete [] checkmap;
|
|
||||||
delete [] vt_linelists;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
//==========================================================================
|
//==========================================================================
|
||||||
//
|
//
|
||||||
//
|
//
|
||||||
|
@ -533,6 +401,12 @@ static void PrepareSegs()
|
||||||
for(int i=0;i<numsegs;i++)
|
for(int i=0;i<numsegs;i++)
|
||||||
{
|
{
|
||||||
seg_t *seg = &segs[i];
|
seg_t *seg = &segs[i];
|
||||||
|
|
||||||
|
// Account for ZDoom space optimizations that cannot be done for GL
|
||||||
|
unsigned int partner= glsegextras[i].PartnerSeg;
|
||||||
|
if (partner < numsegs) seg->PartnerSeg = &segs[partner];
|
||||||
|
else seg->PartnerSeg = NULL;
|
||||||
|
|
||||||
if (seg->sidedef == NULL) continue; // miniseg
|
if (seg->sidedef == NULL) continue; // miniseg
|
||||||
int sidenum = int(seg->sidedef - sides);
|
int sidenum = int(seg->sidedef - sides);
|
||||||
|
|
||||||
|
@ -594,7 +468,6 @@ void gl_PreprocessLevel()
|
||||||
PrepareSegs();
|
PrepareSegs();
|
||||||
PrepareSectorData();
|
PrepareSectorData();
|
||||||
InitVertexData();
|
InitVertexData();
|
||||||
SetupDependencies();
|
|
||||||
for(i=0;i<numsectors;i++)
|
for(i=0;i<numsectors;i++)
|
||||||
{
|
{
|
||||||
sectors[i].dirty = true;
|
sectors[i].dirty = true;
|
||||||
|
@ -604,11 +477,6 @@ void gl_PreprocessLevel()
|
||||||
|
|
||||||
gl_InitPortals();
|
gl_InitPortals();
|
||||||
|
|
||||||
for(i=0;i<numsides;i++)
|
|
||||||
{
|
|
||||||
sides[i].dirty = true;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (GLRenderer != NULL)
|
if (GLRenderer != NULL)
|
||||||
{
|
{
|
||||||
GLRenderer->SetupLevel();
|
GLRenderer->SetupLevel();
|
||||||
|
|
|
@ -163,23 +163,6 @@ ADD_STAT(lightstats)
|
||||||
return out;
|
return out;
|
||||||
}
|
}
|
||||||
|
|
||||||
extern int DirtyCount;
|
|
||||||
|
|
||||||
ADD_STAT(dirty)
|
|
||||||
{
|
|
||||||
static FString buff;
|
|
||||||
static int lasttime=0;
|
|
||||||
int t=I_FPSTime();
|
|
||||||
if (t-lasttime>1000)
|
|
||||||
{
|
|
||||||
buff.Format("Dirty=%2.8f (%d)\n", Dirty.TimeMS(), DirtyCount);
|
|
||||||
lasttime=t;
|
|
||||||
}
|
|
||||||
Dirty.Reset();
|
|
||||||
DirtyCount = 0;
|
|
||||||
return buff;
|
|
||||||
}
|
|
||||||
|
|
||||||
void AppendMissingTextureStats(FString &out);
|
void AppendMissingTextureStats(FString &out);
|
||||||
extern int viewpitch;
|
extern int viewpitch;
|
||||||
|
|
||||||
|
|
|
@ -115,7 +115,15 @@ void FNodeBuilder::Extract (node_t *&outNodes, int &nodeCount,
|
||||||
for (i = 0; i < segCount; ++i)
|
for (i = 0; i < segCount; ++i)
|
||||||
{
|
{
|
||||||
outSegs[i] = *(seg_t *)&segs[i];
|
outSegs[i] = *(seg_t *)&segs[i];
|
||||||
outSegExtras[i].PartnerSeg = segs[i].Partner;
|
|
||||||
|
if (segs[i].Partner != DWORD_MAX)
|
||||||
|
{
|
||||||
|
outSegExtras[i].PartnerSeg = Segs[segs[i].Partner].storedseg;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
outSegExtras[i].PartnerSeg = DWORD_MAX;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
|
|
36
src/r_defs.h
36
src/r_defs.h
|
@ -418,11 +418,6 @@ struct extsector_t
|
||||||
TArray<lightlist_t> lightlist; // 3D light list
|
TArray<lightlist_t> lightlist; // 3D light list
|
||||||
TArray<sector_t*> attached; // 3D floors attached to this sector
|
TArray<sector_t*> attached; // 3D floors attached to this sector
|
||||||
} XFloor;
|
} XFloor;
|
||||||
|
|
||||||
// Links to other objects that get invalidated when this sector changes
|
|
||||||
TArray<sector_t *> SectorDependencies;
|
|
||||||
TArray<side_t *> SideDependencies;
|
|
||||||
TArray<vertex_t *> VertexDependencies;
|
|
||||||
|
|
||||||
void Serialize(FArchive &arc);
|
void Serialize(FArchive &arc);
|
||||||
};
|
};
|
||||||
|
@ -488,18 +483,14 @@ struct sector_t
|
||||||
|
|
||||||
splane planes[2];
|
splane planes[2];
|
||||||
|
|
||||||
void SetDirty(bool dolines, bool dovertices);
|
|
||||||
|
|
||||||
void SetXOffset(int pos, fixed_t o)
|
void SetXOffset(int pos, fixed_t o)
|
||||||
{
|
{
|
||||||
planes[pos].xform.xoffs = o;
|
planes[pos].xform.xoffs = o;
|
||||||
//SetDirty(false, false);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void AddXOffset(int pos, fixed_t o)
|
void AddXOffset(int pos, fixed_t o)
|
||||||
{
|
{
|
||||||
planes[pos].xform.xoffs += o;
|
planes[pos].xform.xoffs += o;
|
||||||
//SetDirty(false, false);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
fixed_t GetXOffset(int pos) const
|
fixed_t GetXOffset(int pos) const
|
||||||
|
@ -510,13 +501,11 @@ struct sector_t
|
||||||
void SetYOffset(int pos, fixed_t o)
|
void SetYOffset(int pos, fixed_t o)
|
||||||
{
|
{
|
||||||
planes[pos].xform.yoffs = o;
|
planes[pos].xform.yoffs = o;
|
||||||
//SetDirty(false, false);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void AddYOffset(int pos, fixed_t o)
|
void AddYOffset(int pos, fixed_t o)
|
||||||
{
|
{
|
||||||
planes[pos].xform.yoffs += o;
|
planes[pos].xform.yoffs += o;
|
||||||
//SetDirty(false, false);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
fixed_t GetYOffset(int pos, bool addbase = true) const
|
fixed_t GetYOffset(int pos, bool addbase = true) const
|
||||||
|
@ -534,7 +523,6 @@ struct sector_t
|
||||||
void SetXScale(int pos, fixed_t o)
|
void SetXScale(int pos, fixed_t o)
|
||||||
{
|
{
|
||||||
planes[pos].xform.xscale = o;
|
planes[pos].xform.xscale = o;
|
||||||
//SetDirty(false, false);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
fixed_t GetXScale(int pos) const
|
fixed_t GetXScale(int pos) const
|
||||||
|
@ -545,7 +533,6 @@ struct sector_t
|
||||||
void SetYScale(int pos, fixed_t o)
|
void SetYScale(int pos, fixed_t o)
|
||||||
{
|
{
|
||||||
planes[pos].xform.yscale = o;
|
planes[pos].xform.yscale = o;
|
||||||
//SetDirty(false, false);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
fixed_t GetYScale(int pos) const
|
fixed_t GetYScale(int pos) const
|
||||||
|
@ -556,7 +543,6 @@ struct sector_t
|
||||||
void SetAngle(int pos, angle_t o)
|
void SetAngle(int pos, angle_t o)
|
||||||
{
|
{
|
||||||
planes[pos].xform.angle = o;
|
planes[pos].xform.angle = o;
|
||||||
//SetDirty(false, false);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
angle_t GetAngle(int pos, bool addbase = true) const
|
angle_t GetAngle(int pos, bool addbase = true) const
|
||||||
|
@ -575,7 +561,6 @@ struct sector_t
|
||||||
{
|
{
|
||||||
planes[pos].xform.base_yoffs = y;
|
planes[pos].xform.base_yoffs = y;
|
||||||
planes[pos].xform.base_angle = o;
|
planes[pos].xform.base_angle = o;
|
||||||
//SetDirty(false, false);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
int GetFlags(int pos) const
|
int GetFlags(int pos) const
|
||||||
|
@ -597,7 +582,6 @@ struct sector_t
|
||||||
void SetPlaneLight(int pos, int level)
|
void SetPlaneLight(int pos, int level)
|
||||||
{
|
{
|
||||||
planes[pos].Light = level;
|
planes[pos].Light = level;
|
||||||
//dirty = true;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
FTextureID GetTexture(int pos) const
|
FTextureID GetTexture(int pos) const
|
||||||
|
@ -610,7 +594,6 @@ struct sector_t
|
||||||
FTextureID old = planes[pos].Texture;
|
FTextureID old = planes[pos].Texture;
|
||||||
planes[pos].Texture = tex;
|
planes[pos].Texture = tex;
|
||||||
if (floorclip && pos == floor && tex != old) AdjustFloorClip();
|
if (floorclip && pos == floor && tex != old) AdjustFloorClip();
|
||||||
SetDirty(true, false);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
fixed_t GetPlaneTexZ(int pos) const
|
fixed_t GetPlaneTexZ(int pos) const
|
||||||
|
@ -621,13 +604,11 @@ struct sector_t
|
||||||
void SetPlaneTexZ(int pos, fixed_t val)
|
void SetPlaneTexZ(int pos, fixed_t val)
|
||||||
{
|
{
|
||||||
planes[pos].TexZ = val;
|
planes[pos].TexZ = val;
|
||||||
SetDirty(true, true);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void ChangePlaneTexZ(int pos, fixed_t val)
|
void ChangePlaneTexZ(int pos, fixed_t val)
|
||||||
{
|
{
|
||||||
planes[pos].TexZ += val;
|
planes[pos].TexZ += val;
|
||||||
SetDirty(true, true);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
sector_t *GetHeightSec() const
|
sector_t *GetHeightSec() const
|
||||||
|
@ -638,13 +619,11 @@ struct sector_t
|
||||||
void ChangeLightLevel(int newval)
|
void ChangeLightLevel(int newval)
|
||||||
{
|
{
|
||||||
lightlevel = (BYTE)clamp(lightlevel + newval, 0, 255);
|
lightlevel = (BYTE)clamp(lightlevel + newval, 0, 255);
|
||||||
//SetDirty(true, false);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void SetLightLevel(int newval)
|
void SetLightLevel(int newval)
|
||||||
{
|
{
|
||||||
lightlevel = (BYTE)clamp(newval, 0, 255);
|
lightlevel = (BYTE)clamp(newval, 0, 255);
|
||||||
//SetDirty(true, false);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
int GetLightLevel() const
|
int GetLightLevel() const
|
||||||
|
@ -850,7 +829,6 @@ struct side_t
|
||||||
void SetLight(SWORD l)
|
void SetLight(SWORD l)
|
||||||
{
|
{
|
||||||
Light = l;
|
Light = l;
|
||||||
//dirty = true;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
FTextureID GetTexture(int which) const
|
FTextureID GetTexture(int which) const
|
||||||
|
@ -860,20 +838,17 @@ struct side_t
|
||||||
void SetTexture(int which, FTextureID tex)
|
void SetTexture(int which, FTextureID tex)
|
||||||
{
|
{
|
||||||
textures[which].texture = tex;
|
textures[which].texture = tex;
|
||||||
dirty = true;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void SetTextureXOffset(int which, fixed_t offset)
|
void SetTextureXOffset(int which, fixed_t offset)
|
||||||
{
|
{
|
||||||
textures[which].xoffset = offset;
|
textures[which].xoffset = offset;
|
||||||
//dirty = true;
|
|
||||||
}
|
}
|
||||||
void SetTextureXOffset(fixed_t offset)
|
void SetTextureXOffset(fixed_t offset)
|
||||||
{
|
{
|
||||||
textures[top].xoffset =
|
textures[top].xoffset =
|
||||||
textures[mid].xoffset =
|
textures[mid].xoffset =
|
||||||
textures[bottom].xoffset = offset;
|
textures[bottom].xoffset = offset;
|
||||||
//dirty = true;
|
|
||||||
}
|
}
|
||||||
fixed_t GetTextureXOffset(int which) const
|
fixed_t GetTextureXOffset(int which) const
|
||||||
{
|
{
|
||||||
|
@ -882,20 +857,17 @@ struct side_t
|
||||||
void AddTextureXOffset(int which, fixed_t delta)
|
void AddTextureXOffset(int which, fixed_t delta)
|
||||||
{
|
{
|
||||||
textures[which].xoffset += delta;
|
textures[which].xoffset += delta;
|
||||||
//dirty = true;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void SetTextureYOffset(int which, fixed_t offset)
|
void SetTextureYOffset(int which, fixed_t offset)
|
||||||
{
|
{
|
||||||
textures[which].yoffset = offset;
|
textures[which].yoffset = offset;
|
||||||
//dirty = true;
|
|
||||||
}
|
}
|
||||||
void SetTextureYOffset(fixed_t offset)
|
void SetTextureYOffset(fixed_t offset)
|
||||||
{
|
{
|
||||||
textures[top].yoffset =
|
textures[top].yoffset =
|
||||||
textures[mid].yoffset =
|
textures[mid].yoffset =
|
||||||
textures[bottom].yoffset = offset;
|
textures[bottom].yoffset = offset;
|
||||||
//dirty = true;
|
|
||||||
}
|
}
|
||||||
fixed_t GetTextureYOffset(int which) const
|
fixed_t GetTextureYOffset(int which) const
|
||||||
{
|
{
|
||||||
|
@ -904,18 +876,15 @@ struct side_t
|
||||||
void AddTextureYOffset(int which, fixed_t delta)
|
void AddTextureYOffset(int which, fixed_t delta)
|
||||||
{
|
{
|
||||||
textures[which].yoffset += delta;
|
textures[which].yoffset += delta;
|
||||||
//dirty = true;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void SetTextureXScale(int which, fixed_t scale)
|
void SetTextureXScale(int which, fixed_t scale)
|
||||||
{
|
{
|
||||||
textures[which].xscale = scale <= 0? FRACUNIT : scale;
|
textures[which].xscale = scale <= 0? FRACUNIT : scale;
|
||||||
//dirty = true;
|
|
||||||
}
|
}
|
||||||
void SetTextureXScale(fixed_t scale)
|
void SetTextureXScale(fixed_t scale)
|
||||||
{
|
{
|
||||||
textures[top].xscale = textures[mid].xscale = textures[bottom].xscale = scale <= 0? FRACUNIT : scale;
|
textures[top].xscale = textures[mid].xscale = textures[bottom].xscale = scale <= 0? FRACUNIT : scale;
|
||||||
//dirty = true;
|
|
||||||
}
|
}
|
||||||
fixed_t GetTextureXScale(int which) const
|
fixed_t GetTextureXScale(int which) const
|
||||||
{
|
{
|
||||||
|
@ -924,19 +893,16 @@ struct side_t
|
||||||
void MultiplyTextureXScale(int which, fixed_t delta)
|
void MultiplyTextureXScale(int which, fixed_t delta)
|
||||||
{
|
{
|
||||||
textures[which].xscale = FixedMul(textures[which].xscale, delta);
|
textures[which].xscale = FixedMul(textures[which].xscale, delta);
|
||||||
//dirty = true;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
void SetTextureYScale(int which, fixed_t scale)
|
void SetTextureYScale(int which, fixed_t scale)
|
||||||
{
|
{
|
||||||
textures[which].yscale = scale <= 0? FRACUNIT : scale;
|
textures[which].yscale = scale <= 0? FRACUNIT : scale;
|
||||||
//dirty = true;
|
|
||||||
}
|
}
|
||||||
void SetTextureYScale(fixed_t scale)
|
void SetTextureYScale(fixed_t scale)
|
||||||
{
|
{
|
||||||
textures[top].yscale = textures[mid].yscale = textures[bottom].yscale = scale <= 0? FRACUNIT : scale;
|
textures[top].yscale = textures[mid].yscale = textures[bottom].yscale = scale <= 0? FRACUNIT : scale;
|
||||||
//dirty = true;
|
|
||||||
}
|
}
|
||||||
fixed_t GetTextureYScale(int which) const
|
fixed_t GetTextureYScale(int which) const
|
||||||
{
|
{
|
||||||
|
@ -945,7 +911,6 @@ struct side_t
|
||||||
void MultiplyTextureYScale(int which, fixed_t delta)
|
void MultiplyTextureYScale(int which, fixed_t delta)
|
||||||
{
|
{
|
||||||
textures[which].yscale = FixedMul(textures[which].yscale, delta);
|
textures[which].yscale = FixedMul(textures[which].yscale, delta);
|
||||||
//dirty = true;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
DInterpolation *SetInterpolation(int position);
|
DInterpolation *SetInterpolation(int position);
|
||||||
|
@ -956,7 +921,6 @@ struct side_t
|
||||||
|
|
||||||
//For GL
|
//For GL
|
||||||
FLightNode * lighthead[2]; // all blended lights that may affect this wall
|
FLightNode * lighthead[2]; // all blended lights that may affect this wall
|
||||||
bool dirty; // GL info needs to be recalculated
|
|
||||||
|
|
||||||
seg_t **segs; // all segs belonging to this sidedef in ascending order. Used for precise rendering
|
seg_t **segs; // all segs belonging to this sidedef in ascending order. Used for precise rendering
|
||||||
int numsegs;
|
int numsegs;
|
||||||
|
|
|
@ -3,5 +3,5 @@
|
||||||
// This file was automatically generated by the
|
// This file was automatically generated by the
|
||||||
// updaterevision tool. Do not edit by hand.
|
// updaterevision tool. Do not edit by hand.
|
||||||
|
|
||||||
#define ZD_SVN_REVISION_STRING "2615"
|
#define ZD_SVN_REVISION_STRING "2617"
|
||||||
#define ZD_SVN_REVISION_NUMBER 2615
|
#define ZD_SVN_REVISION_NUMBER 2617
|
||||||
|
|
|
@ -41,15 +41,15 @@
|
||||||
|
|
||||||
/** Lots of different version numbers **/
|
/** Lots of different version numbers **/
|
||||||
|
|
||||||
#define DOTVERSIONSTR_NOREV "1.5.1"
|
#define DOTVERSIONSTR_NOREV "1.5.2"
|
||||||
#define ZDVER_STRING "2.5.0"
|
#define ZDVER_STRING "2.5.0"
|
||||||
|
|
||||||
// The version string the user actually sees.
|
// The version string the user actually sees.
|
||||||
#define DOTVERSIONSTR DOTVERSIONSTR_NOREV " (r" SVN_REVISION_STRING ") / ZDoom " ZDVER_STRING " (r" ZD_SVN_REVISION_STRING ")"
|
#define DOTVERSIONSTR DOTVERSIONSTR_NOREV " (r" SVN_REVISION_STRING ") / ZDoom " ZDVER_STRING " (r" ZD_SVN_REVISION_STRING ")"
|
||||||
|
|
||||||
// The version as seen in the Windows resource
|
// The version as seen in the Windows resource
|
||||||
#define RC_FILEVERSION 1,5,1,SVN_REVISION_NUMBER
|
#define RC_FILEVERSION 1,5,2,SVN_REVISION_NUMBER
|
||||||
#define RC_PRODUCTVERSION 1,5,1,0
|
#define RC_PRODUCTVERSION 1,5,2,0
|
||||||
#define RC_FILEVERSION2 DOTVERSIONSTR
|
#define RC_FILEVERSION2 DOTVERSIONSTR
|
||||||
#define RC_PRODUCTVERSION2 "1.5"
|
#define RC_PRODUCTVERSION2 "1.5"
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue