diff options
| author | skal <pascal.massimino@gmail.com> | 2026-03-21 08:52:53 +0100 |
|---|---|---|
| committer | skal <pascal.massimino@gmail.com> | 2026-03-21 08:52:53 +0100 |
| commit | fe008df92f7a68d81c9bedb4328da7001e0775f0 (patch) | |
| tree | 2c0182ef4df3b682ee5aa3ab22dcf3e2af08a4ed /src/effects/shaders.h | |
| parent | a4ff60233fce134e8f779ef001872dfd9a8f9923 (diff) | |
feat(cnn_v3): Phase 4 complete — CNNv3Effect C++ + FiLM uniform upload
- cnn_v3/src/cnn_v3_effect.{h,cc}: full Effect subclass with 5 compute
passes (enc0→enc1→bottleneck→dec1→dec0), shared weights storage buffer,
per-pass uniform buffers, set_film_params() API
- Fixed WGSL/C++ struct alignment: vec3u has align=16, so CnnV3Params4ch
is 64 bytes and CnnV3ParamsEnc1 is 96 bytes (not 48/80)
- Weight offsets computed as explicit formulas (e.g. 20*4*9+4) for clarity
- Registered in CMake, shaders.h/cc, demo_effects.h, test_demo_effects.cc
- 35/35 tests pass
handoff(Gemini): CNN v3 Phase 5 next — parity validation (Python ref vs WGSL)
Diffstat (limited to 'src/effects/shaders.h')
| -rw-r--r-- | src/effects/shaders.h | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/src/effects/shaders.h b/src/effects/shaders.h index cf095fb..4a77597 100644 --- a/src/effects/shaders.h +++ b/src/effects/shaders.h @@ -24,6 +24,13 @@ extern const char* ntsc_yiq_shader_wgsl; extern const char* gbuf_raster_wgsl; extern const char* gbuf_pack_wgsl; +// CNN v3 inference shaders +extern const char* cnn_v3_enc0_wgsl; +extern const char* cnn_v3_enc1_wgsl; +extern const char* cnn_v3_bottleneck_wgsl; +extern const char* cnn_v3_dec1_wgsl; +extern const char* cnn_v3_dec0_wgsl; + // Compute shaders extern const char* gen_noise_compute_wgsl; extern const char* gen_perlin_compute_wgsl; |
