summaryrefslogtreecommitdiff
path: root/CMakeLists.txt
diff options
context:
space:
mode:
authorskal <pascal.massimino@gmail.com>2026-02-09 14:28:46 +0100
committerskal <pascal.massimino@gmail.com>2026-02-09 14:28:46 +0100
commit9bb5fd64776ac8a7e4b012ac2de340ddfa09a2c9 (patch)
tree79b99e6196ca70df8ddf3b9b0809ea5770ee0280 /CMakeLists.txt
parent8d6f14793a1edc34644297e2b24248c00bbff3be (diff)
feat: GPU procedural Phase 4 - texture composition
Multi-input composite shaders with sampler support. - Dynamic bind group layouts (N input textures + 1 sampler) - dispatch_composite() for multi-input compute dispatch - create_gpu_composite_texture() API - gen_blend.wgsl and gen_mask.wgsl shaders Guarded with #if !defined(STRIP_GPU_COMPOSITE) for easy removal. Tests: - Blend two noise textures - Mask noise with grid - Multi-stage composite (composite of composites) Size: ~830 bytes (2 shaders + dispatch logic) handoff(Claude): GPU procedural Phase 4 complete
Diffstat (limited to 'CMakeLists.txt')
-rw-r--r--CMakeLists.txt8
1 files changed, 8 insertions, 0 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 26818c3..fb6beef 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -601,6 +601,14 @@ if(DEMO_BUILD_TESTS)
target_link_libraries(test_gpu_procedural PRIVATE 3d gpu audio procedural util ${DEMO_LIBS})
add_dependencies(test_gpu_procedural generate_demo_assets)
+ # GPU Composite Texture Test (Phase 4)
+ add_demo_test(test_gpu_composite GpuCompositeTest
+ src/tests/test_gpu_composite.cc
+ ${PLATFORM_SOURCES}
+ ${GEN_DEMO_CC})
+ target_link_libraries(test_gpu_composite PRIVATE 3d gpu audio procedural util ${DEMO_LIBS})
+ add_dependencies(test_gpu_composite generate_demo_assets)
+
# Gantt chart output test (bash script)
add_test(
NAME GanttOutputTest