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 --- training/output/ground_truth.png | Bin 0 -> 8547 bytes training/output/patch_final.png | Bin 0 -> 105 bytes training/output/patch_gt.png | Bin 0 -> 138 bytes training/output/patch_tool.png | Bin 0 -> 105 bytes training/output/patch_tool_fixed.png | Bin 0 -> 105 bytes training/output/test_debug.png | Bin 0 -> 105 bytes training/output/test_sync.png | Bin 0 -> 105 bytes training/output/tool_output.png | Bin 0 -> 8030 bytes training/pass1_3x5x3.pth | Bin 0 -> 20287 bytes training/patch_32x32.png | Bin 0 -> 5259 bytes training/target_1/img_000.png | Bin 0 -> 16088 bytes training/target_1/img_001.png | Bin 0 -> 7727 bytes training/target_1/img_002.png | Bin 0 -> 7366 bytes training/target_1/img_003.png | Bin 0 -> 7395 bytes training/target_1/img_004.png | Bin 0 -> 13073 bytes training/target_1/img_005.png | Bin 0 -> 5119 bytes training/target_1/img_006.png | Bin 0 -> 28013 bytes training/target_1/img_007.png | Bin 0 -> 21369 bytes training/target_2/img_000.png | Bin 0 -> 88375 bytes training/target_2/img_001.png | Bin 0 -> 67507 bytes training/target_2/img_002.png | Bin 0 -> 103073 bytes training/target_2/img_003.png | Bin 0 -> 101735 bytes training/target_2/img_004.png | Bin 0 -> 92212 bytes training/target_2/img_005.png | Bin 0 -> 89291 bytes training/target_2/img_006.png | Bin 0 -> 78047 bytes training/target_2/img_007.png | Bin 0 -> 54303 bytes 26 files changed, 0 insertions(+), 0 deletions(-) create mode 100644 training/output/ground_truth.png create mode 100644 training/output/patch_final.png create mode 100644 training/output/patch_gt.png create mode 100644 training/output/patch_tool.png create mode 100644 training/output/patch_tool_fixed.png create mode 100644 training/output/test_debug.png create mode 100644 training/output/test_sync.png create mode 100644 training/output/tool_output.png create mode 100644 training/pass1_3x5x3.pth create mode 100644 training/patch_32x32.png create mode 100644 training/target_1/img_000.png create mode 100644 training/target_1/img_001.png create mode 100644 training/target_1/img_002.png create mode 100644 training/target_1/img_003.png create mode 100644 training/target_1/img_004.png create mode 100644 training/target_1/img_005.png create mode 100644 training/target_1/img_006.png create mode 100644 training/target_1/img_007.png create mode 100644 training/target_2/img_000.png create mode 100644 training/target_2/img_001.png create mode 100644 training/target_2/img_002.png create mode 100644 training/target_2/img_003.png create mode 100644 training/target_2/img_004.png create mode 100644 training/target_2/img_005.png create mode 100644 training/target_2/img_006.png create mode 100644 training/target_2/img_007.png (limited to 'training') diff --git a/training/output/ground_truth.png b/training/output/ground_truth.png new file mode 100644 index 0000000..afa06f6 Binary files /dev/null and b/training/output/ground_truth.png differ diff --git a/training/output/patch_final.png b/training/output/patch_final.png new file mode 100644 index 0000000..e38512b Binary files /dev/null and b/training/output/patch_final.png differ diff --git a/training/output/patch_gt.png b/training/output/patch_gt.png new file mode 100644 index 0000000..277175c Binary files /dev/null and b/training/output/patch_gt.png differ diff --git a/training/output/patch_tool.png b/training/output/patch_tool.png new file mode 100644 index 0000000..e38512b Binary files /dev/null and b/training/output/patch_tool.png differ diff --git a/training/output/patch_tool_fixed.png b/training/output/patch_tool_fixed.png new file mode 100644 index 0000000..e38512b Binary files /dev/null and b/training/output/patch_tool_fixed.png differ diff --git a/training/output/test_debug.png b/training/output/test_debug.png new file mode 100644 index 0000000..e38512b Binary files /dev/null and b/training/output/test_debug.png differ diff --git a/training/output/test_sync.png b/training/output/test_sync.png new file mode 100644 index 0000000..e38512b Binary files /dev/null and b/training/output/test_sync.png differ diff --git a/training/output/tool_output.png b/training/output/tool_output.png new file mode 100644 index 0000000..3fcec54 Binary files /dev/null and b/training/output/tool_output.png differ diff --git a/training/pass1_3x5x3.pth b/training/pass1_3x5x3.pth new file mode 100644 index 0000000..a7fa8e3 Binary files /dev/null and b/training/pass1_3x5x3.pth differ diff --git a/training/patch_32x32.png b/training/patch_32x32.png new file mode 100644 index 0000000..a665065 Binary files /dev/null and b/training/patch_32x32.png differ diff --git a/training/target_1/img_000.png b/training/target_1/img_000.png new file mode 100644 index 0000000..5a8ae80 Binary files /dev/null and b/training/target_1/img_000.png differ diff --git a/training/target_1/img_001.png b/training/target_1/img_001.png new file mode 100644 index 0000000..c4ac5d0 Binary files /dev/null and b/training/target_1/img_001.png differ diff --git a/training/target_1/img_002.png b/training/target_1/img_002.png new file mode 100644 index 0000000..e4bab4a Binary files /dev/null and b/training/target_1/img_002.png differ diff --git a/training/target_1/img_003.png b/training/target_1/img_003.png new file mode 100644 index 0000000..a98004a Binary files /dev/null and b/training/target_1/img_003.png differ diff --git a/training/target_1/img_004.png b/training/target_1/img_004.png new file mode 100644 index 0000000..c186d13 Binary files /dev/null and b/training/target_1/img_004.png differ diff --git a/training/target_1/img_005.png b/training/target_1/img_005.png new file mode 100644 index 0000000..95cfdd9 Binary files /dev/null and b/training/target_1/img_005.png differ diff --git a/training/target_1/img_006.png b/training/target_1/img_006.png new file mode 100644 index 0000000..d6bd187 Binary files /dev/null and b/training/target_1/img_006.png differ diff --git a/training/target_1/img_007.png b/training/target_1/img_007.png new file mode 100644 index 0000000..f4e3a9a Binary files /dev/null and b/training/target_1/img_007.png differ diff --git a/training/target_2/img_000.png b/training/target_2/img_000.png new file mode 100644 index 0000000..1d5aab9 Binary files /dev/null and b/training/target_2/img_000.png differ diff --git a/training/target_2/img_001.png b/training/target_2/img_001.png new file mode 100644 index 0000000..0eebab8 Binary files /dev/null and b/training/target_2/img_001.png differ diff --git a/training/target_2/img_002.png b/training/target_2/img_002.png new file mode 100644 index 0000000..827460c Binary files /dev/null and b/training/target_2/img_002.png differ diff --git a/training/target_2/img_003.png b/training/target_2/img_003.png new file mode 100644 index 0000000..988873c Binary files /dev/null and b/training/target_2/img_003.png differ diff --git a/training/target_2/img_004.png b/training/target_2/img_004.png new file mode 100644 index 0000000..5c3294f Binary files /dev/null and b/training/target_2/img_004.png differ diff --git a/training/target_2/img_005.png b/training/target_2/img_005.png new file mode 100644 index 0000000..b919c76 Binary files /dev/null and b/training/target_2/img_005.png differ diff --git a/training/target_2/img_006.png b/training/target_2/img_006.png new file mode 100644 index 0000000..8a43c33 Binary files /dev/null and b/training/target_2/img_006.png differ diff --git a/training/target_2/img_007.png b/training/target_2/img_007.png new file mode 100644 index 0000000..5cd33da Binary files /dev/null and b/training/target_2/img_007.png differ -- cgit v1.2.3