diff --git a/src/common/rendering/hwrenderer/data/hw_meshbuilder.cpp b/src/common/rendering/hwrenderer/data/hw_meshbuilder.cpp index 6df23029e..cfad561b1 100644 --- a/src/common/rendering/hwrenderer/data/hw_meshbuilder.cpp +++ b/src/common/rendering/hwrenderer/data/hw_meshbuilder.cpp @@ -1,8 +1,22 @@ +#include "levelmeshhelper.h" #include "hw_meshbuilder.h" #include "hw_mesh.h" #include "v_video.h" + +struct NullLevelMeshUpdater : UpdateLevelMesh +{ + virtual void SectorChanged(void *sector) {}; + + virtual void SideChanged(void *side) {}; +}; + +static NullLevelMeshUpdater nullUpdater; + +UpdateLevelMesh* LevelMeshUpdater = &nullUpdater; + + MeshBuilder::MeshBuilder() { Reset(); diff --git a/src/levelmeshhelper.h b/src/levelmeshhelper.h index 616c4eac0..6fd72bbcf 100644 --- a/src/levelmeshhelper.h +++ b/src/levelmeshhelper.h @@ -1,15 +1,12 @@ +#pragma once // level mesh helper // this is a minimal include to keep the other source files a little bit leaner struct UpdateLevelMesh { - void SectorChanged(void *sector) - { - } + virtual void SectorChanged(void *sector) = 0; - void SideChanged(void *side) - { - } + virtual void SideChanged(void *side) = 0; }; -UpdateLevelMesh* LevelMeshUpdater; +extern UpdateLevelMesh* LevelMeshUpdater;