From 5ceb0256792053ee80841f2b5ac0dfae1fd4c6f8 Mon Sep 17 00:00:00 2001 From: skal Date: Wed, 11 Feb 2026 11:58:24 +0100 Subject: fix: Complete auxiliary texture initialization fix Root cause: After swapping init/resize order, effects with Renderer3D crashed because resize() called before init() tried to use uninitialized GPU resources. Changes: - Add guards in FlashCubeEffect::resize() and Hybrid3DEffect::resize() to check ctx_.device before calling renderer_.resize() - Remove lazy initialization remnants from CircleMaskEffect and CNNEffect - Register auxiliary textures directly in init() (width_/height_ already set) - Remove ensure_texture() methods and texture_initialized_ flags All 36 tests passing. Demo runs without crashes. Co-Authored-By: Claude Sonnet 4.5 --- tmp/layer_0.png | Bin 0 -> 239570 bytes tmp/layer_1.png | Bin 0 -> 71523 bytes 2 files changed, 0 insertions(+), 0 deletions(-) create mode 100644 tmp/layer_0.png create mode 100644 tmp/layer_1.png (limited to 'tmp') diff --git a/tmp/layer_0.png b/tmp/layer_0.png new file mode 100644 index 0000000..9e2e35c Binary files /dev/null and b/tmp/layer_0.png differ diff --git a/tmp/layer_1.png b/tmp/layer_1.png new file mode 100644 index 0000000..16b1a28 Binary files /dev/null and b/tmp/layer_1.png differ -- cgit v1.2.3