summaryrefslogtreecommitdiffstats
path: root/src/menu.cpp
diff options
context:
space:
mode:
authorsalmonik <salmonik@tuta.io>2026-11-04 00:29:24 +0100
committersalmonik <salmonik@tuta.io>2026-11-04 00:29:24 +0100
commit4632788c4bef265e58630473eed5559bf125a726 (patch)
tree9264d8f59c8914e118adfafc4592ee77377eaf9e /src/menu.cpp
parentSkybox image: fix HDR sky binding; clip checkbox/arrow drawing (diff)
downloadhl2h-4632788c4bef265e58630473eed5559bf125a726.tar.gz
hl2h-4632788c4bef265e58630473eed5559bf125a726.zip
Skybox image: power-of-two resize; upload at FRAME_RENDER_START
- The material system rejects textures whose dimensions are not multiples of 4 ("Image dimensions must be multiple of 4!"), so scale the decoded image to the next power of two (bilinear). 798x798 -> 1024x1024. The invalid VTF also crashed the renderer after the apply. - Move skybox_update() out of the VGUI paint hook into the FRAME_RENDER_START FrameStageNotify stage. ITexture::Download only regenerates bits when the material system considers the frame render-safe; during paint it returned early, the regenerator never ran (no pixels), and a later upload of the empty VTF crashed. - Log the regenerator entry so the log shows whether the upload path ran.
Diffstat (limited to 'src/menu.cpp')
-rw-r--r--src/menu.cpp1
1 files changed, 0 insertions, 1 deletions
diff --git a/src/menu.cpp b/src/menu.cpp
index 92131d4..7ffc84a 100644
--- a/src/menu.cpp
+++ b/src/menu.cpp
@@ -816,7 +816,6 @@ void outer_draw() {
816 fullbright_update(); 816 fullbright_update();
817 world_tint_update(); 817 world_tint_update();
818 fog_update(); 818 fog_update();
819 skybox_update();
820 gui_handle_input(); 819 gui_handle_input();
821 // HL2H_DRAW_TEST=1 draws a probe rect without needing the GUI open 820 // HL2H_DRAW_TEST=1 draws a probe rect without needing the GUI open
822 static bool draw_test = getenv("HL2H_DRAW_TEST") != nullptr; 821 static bool draw_test = getenv("HL2H_DRAW_TEST") != nullptr;