From a1110d7f594177976f9bd7cda73d11bc2e942a4a Mon Sep 17 00:00:00 2001 From: Dan Goodliffe Date: Mon, 25 Jan 2021 01:05:45 +0000 Subject: Move texture cache to Texture class --- game/physical.cpp | 3 +-- game/physical.h | 1 - gfx/models/texture.cpp | 3 +++ gfx/models/texture.h | 4 ++++ 4 files changed, 8 insertions(+), 3 deletions(-) diff --git a/game/physical.cpp b/game/physical.cpp index 17d85dd..ec3221f 100644 --- a/game/physical.cpp +++ b/game/physical.cpp @@ -6,10 +6,9 @@ #include Cache Physical::cachedMesh; -Cache Physical::cachedTexture; Physical::Physical(glm::vec3 where, const std::string & m, const std::string & t) : - location {where}, mesh {cachedMesh.get(m)}, texture {cachedTexture.get(t)} + location {where}, mesh {cachedMesh.get(m)}, texture {Texture::cachedTexture.get(t)} { } diff --git a/game/physical.h b/game/physical.h index 44af5e6..4ad8a49 100644 --- a/game/physical.h +++ b/game/physical.h @@ -32,7 +32,6 @@ protected: private: static Cache cachedMesh; - static Cache cachedTexture; }; #endif diff --git a/gfx/models/texture.cpp b/gfx/models/texture.cpp index a388b32..90ec016 100644 --- a/gfx/models/texture.cpp +++ b/gfx/models/texture.cpp @@ -1,7 +1,10 @@ #include "texture.h" #include "stb_image.h" +#include #include +Cache Texture::cachedTexture; + Texture::Texture(const std::string & fileName) : m_texture {} { int width, height, numComponents; diff --git a/gfx/models/texture.h b/gfx/models/texture.h index 6ebf88d..30ba953 100644 --- a/gfx/models/texture.h +++ b/gfx/models/texture.h @@ -5,6 +5,8 @@ #include #include +template class Cache; + class Texture { public: explicit Texture(const std::string & fileName); @@ -14,6 +16,8 @@ public: NO_COPY(Texture); NO_MOVE(Texture); + static Cache cachedTexture; + void Bind() const; private: -- cgit v1.2.3