From a311bd013fe7233b5776271ec395a5018493615b Mon Sep 17 00:00:00 2001 From: maj00r Date: Mon, 19 Oct 2026 19:25:25 +0200 Subject: [PATCH] fix(editor): orthophoto tiles no longer turn white after a while out of sight The tiles are given to the gpu straight from memory; the garbage sweep released them like the ones read from files and they came back as the grey stub until made again. They're kept now, and a new texture name clears the cache of the bound units. --- model/Texture.cpp | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/model/Texture.cpp b/model/Texture.cpp index f5b57ebb..cd1d33e4 100644 --- a/model/Texture.cpp +++ b/model/Texture.cpp @@ -551,6 +551,16 @@ void opengl_texture::update_from_memory(size_t width, size_t height, const uint8 if (glGenerateMipmap) glGenerateMipmap(target); glFlush(); + // the content given straight to the gpu can't be read again: released by the garbage sweep, the texture would come back as + // the grey stub + if (type == "internalsrc:") + { + is_static = true; + is_ready = true; + } + // the name may be a new one, and the unit active took the texture past the unit cache + for (auto &unit : units) + unit = -1; } void