diff options
author | Dan Goodliffe <dan@randomdan.homeip.net> | 2024-01-25 23:49:27 +0000 |
---|---|---|
committer | Dan Goodliffe <dan@randomdan.homeip.net> | 2024-01-25 23:49:27 +0000 |
commit | 7b462801d500b43bd7ebebe69c2e8a9d5e3f1261 (patch) | |
tree | 3c0c941cd7a98defb8d8e138f0c0ddb5d5903c68 /gfx | |
parent | Add traits helpers for glTexParameter functions (diff) | |
download | ilt-7b462801d500b43bd7ebebe69c2e8a9d5e3f1261.tar.bz2 ilt-7b462801d500b43bd7ebebe69c2e8a9d5e3f1261.tar.xz ilt-7b462801d500b43bd7ebebe69c2e8a9d5e3f1261.zip |
Remove the static texture cache
Static variables persist too long, destruction is unmanaged and occurs after the gl
context is gone.
Diffstat (limited to 'gfx')
-rw-r--r-- | gfx/gl/shadowMapper.h | 4 | ||||
-rw-r--r-- | gfx/models/texture.cpp | 3 | ||||
-rw-r--r-- | gfx/models/texture.h | 4 |
3 files changed, 2 insertions, 9 deletions
diff --git a/gfx/gl/shadowMapper.h b/gfx/gl/shadowMapper.h index bf571f8..d1e4e10 100644 --- a/gfx/gl/shadowMapper.h +++ b/gfx/gl/shadowMapper.h @@ -3,13 +3,13 @@ #include "config/types.h" #include "lib/glArrays.h" #include "program.h" +#include <gfx/models/texture.h> #include <glm/vec2.hpp> +#include <vector> class SceneProvider; class Camera; -#include <gfx/models/texture.h> - class ShadowMapper { public: explicit ShadowMapper(const TextureAbsCoord & size); diff --git a/gfx/models/texture.cpp b/gfx/models/texture.cpp index 0ebba08..51223aa 100644 --- a/gfx/models/texture.cpp +++ b/gfx/models/texture.cpp @@ -2,7 +2,6 @@ #include "config/types.h" #include "glArrays.h" #include "tga.h" -#include <cache.h> #include <fcntl.h> #include <filesystem.h> #include <gfx/image.h> @@ -13,8 +12,6 @@ #include <stb/stb_image.h> #include <sys/mman.h> -Cache<Texture, std::filesystem::path> Texture::cachedTexture; - GLint TextureOptions::glMapMode(TextureOptions::MapMode mm) { diff --git a/gfx/models/texture.h b/gfx/models/texture.h index 5d40b39..689d378 100644 --- a/gfx/models/texture.h +++ b/gfx/models/texture.h @@ -1,12 +1,10 @@ #pragma once #include "config/types.h" -#include <cache.h> #include <filesystem> #include <glArrays.h> #include <glm/fwd.hpp> -// IWYU pragma: no_forward_declare Cache class Image; struct TextureOptions { @@ -32,8 +30,6 @@ public: explicit Texture(GLsizei width, GLsizei height, TextureOptions = {}); explicit Texture(GLsizei width, GLsizei height, const void * data, TextureOptions = {}); - static Cache<Texture, std::filesystem::path> cachedTexture; - virtual void bind(GLenum unit = GL_TEXTURE0) const; void save(const char * path) const; |