Move levelmeshhelper completely out of the Common folder
Connect the level updates to the level mesh
This commit is contained in:
parent
e80615e167
commit
e0cba77646
7 changed files with 78 additions and 23 deletions
|
|
@ -381,6 +381,41 @@ void DoomLevelMesh::FreeFlat(FLevelLocals& doomMap, unsigned int sectorIndex)
|
|||
// To do: call FreeGeometry and FreeUniforms
|
||||
}
|
||||
|
||||
void DoomLevelMesh::FloorHeightChanged(struct sector_t* sector)
|
||||
{
|
||||
// UpdateFlat(level, sector->Index());
|
||||
}
|
||||
|
||||
void DoomLevelMesh::CeilingHeightChanged(struct sector_t* sector)
|
||||
{
|
||||
// UpdateFlat(level, sector->Index());
|
||||
}
|
||||
|
||||
void DoomLevelMesh::MidTex3DHeightChanged(struct sector_t* sector)
|
||||
{
|
||||
// UpdateFlat(level, sector->Index());
|
||||
}
|
||||
|
||||
void DoomLevelMesh::FloorTextureChanged(struct sector_t* sector)
|
||||
{
|
||||
// UpdateFlat(level, sector->Index());
|
||||
}
|
||||
|
||||
void DoomLevelMesh::CeilingTextureChanged(struct sector_t* sector)
|
||||
{
|
||||
// UpdateFlat(level, sector->Index());
|
||||
}
|
||||
|
||||
void DoomLevelMesh::SectorChangedOther(struct sector_t* sector)
|
||||
{
|
||||
// UpdateFlat(level, sector->Index());
|
||||
}
|
||||
|
||||
void DoomLevelMesh::SideTextureChanged(struct side_t* side, int section)
|
||||
{
|
||||
// UpdateSide(level, side->Index());
|
||||
}
|
||||
|
||||
void DoomLevelMesh::UpdateSide(FLevelLocals& doomMap, unsigned int sideIndex)
|
||||
{
|
||||
FreeSide(doomMap, sideIndex);
|
||||
|
|
@ -428,7 +463,7 @@ void DoomLevelMesh::UpdateSide(FLevelLocals& doomMap, unsigned int sideIndex)
|
|||
|
||||
void DoomLevelMesh::UpdateFlat(FLevelLocals& doomMap, unsigned int sectorIndex)
|
||||
{
|
||||
FreeSide(doomMap, sectorIndex);
|
||||
FreeFlat(doomMap, sectorIndex);
|
||||
|
||||
sector_t* sector = &doomMap.sectors[sectorIndex];
|
||||
for (FSection& section : doomMap.sections.SectionsForSector(sectorIndex))
|
||||
|
|
|
|||
|
|
@ -2,6 +2,7 @@
|
|||
#pragma once
|
||||
|
||||
#include "hw_levelmesh.h"
|
||||
#include "levelmeshhelper.h"
|
||||
#include "scene/hw_drawstructs.h"
|
||||
#include "common/rendering/hwrenderer/data/hw_meshbuilder.h"
|
||||
#include "tarray.h"
|
||||
|
|
@ -41,7 +42,7 @@ struct FlatSurfaceBlock
|
|||
int FirstSurface = -1;
|
||||
};
|
||||
|
||||
class DoomLevelMesh : public LevelMesh
|
||||
class DoomLevelMesh : public LevelMesh, public UpdateLevelMesh
|
||||
{
|
||||
public:
|
||||
DoomLevelMesh(FLevelLocals &doomMap);
|
||||
|
|
@ -66,6 +67,14 @@ public:
|
|||
|
||||
void CreateLights(FLevelLocals& doomMap);
|
||||
|
||||
void FloorHeightChanged(struct sector_t* sector) override;
|
||||
void CeilingHeightChanged(struct sector_t* sector) override;
|
||||
void MidTex3DHeightChanged(struct sector_t* sector) override;
|
||||
void FloorTextureChanged(struct sector_t* sector) override;
|
||||
void CeilingTextureChanged(struct sector_t* sector) override;
|
||||
void SectorChangedOther(struct sector_t* sector) override;
|
||||
void SideTextureChanged(struct side_t* side, int section) override;
|
||||
|
||||
private:
|
||||
void CreateSurfaces(FLevelLocals& doomMap);
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue