diff options
| author | skal <pascal.massimino@gmail.com> | 2026-02-28 09:48:08 +0100 |
|---|---|---|
| committer | skal <pascal.massimino@gmail.com> | 2026-02-28 09:48:08 +0100 |
| commit | f9ac4caf2f36c283c2d90bcb985e3298c417d564 (patch) | |
| tree | 70960c6115442c6f342ee5c0e50726e9c8f9f226 /tools | |
| parent | bc1beb58ba259263eb98d43d2aa742307764591c (diff) | |
fix(tools/shadertoy): fix Next Steps instructions and update EFFECT_WORKFLOW.md
- Fix assets.txt path: shaders/xxx.wgsl (not ../../src/shaders/)
- Fix shader output path to workspaces/main/shaders/
- Step 5: reference cmake/DemoSourceLists.cmake COMMON_GPU_EFFECTS (not CMakeLists.txt GPU_SOURCES)
- Add step for test_demo_effects.cc
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Diffstat (limited to 'tools')
| -rwxr-xr-x | tools/shadertoy/convert_shadertoy.py | 16 |
1 files changed, 10 insertions, 6 deletions
diff --git a/tools/shadertoy/convert_shadertoy.py b/tools/shadertoy/convert_shadertoy.py index 22b3276..9df42bb 100755 --- a/tools/shadertoy/convert_shadertoy.py +++ b/tools/shadertoy/convert_shadertoy.py @@ -12,7 +12,7 @@ # Generates: # - src/effects/<effect>_effect.h # - src/effects/<effect>_effect.cc -# - src/shaders/<effect>.wgsl +# - workspaces/main/shaders/<effect>.wgsl # # The script performs basic ShaderToy→WGSL conversion: # - Converts types (float→f32, vec2→vec2f, etc.) @@ -333,7 +333,7 @@ def main(): print("This will generate:") print(" src/effects/<effect>_effect.h") print(" src/effects/<effect>_effect.cc") - print(" src/shaders/<effect>.wgsl") + print(" workspaces/main/shaders/<effect>.wgsl") sys.exit(1) shader_file = sys.argv[1] @@ -361,7 +361,7 @@ def main(): repo_root = Path(__file__).parent.parent.parent header_path = repo_root / "src" / "effects" / f"{snake_name}_effect.h" impl_path = repo_root / "src" / "effects" / f"{snake_name}_effect.cc" - shader_path = repo_root / "src" / "shaders" / f"{snake_name}.wgsl" + shader_path = repo_root / "workspaces" / "main" / "shaders" / f"{snake_name}.wgsl" # Generate files if shader_only: @@ -389,7 +389,7 @@ def main(): print("Next steps (see doc/EFFECT_WORKFLOW.md for details):") print() print("1. Add shader to workspaces/main/assets.txt:") - print(f" SHADER_{upper_name}, NONE, ../../src/shaders/{snake_name}.wgsl, \"{effect_name} effect\"") + print(f" SHADER_{upper_name}, NONE, shaders/{snake_name}.wgsl, \"{effect_name} effect\"") print() print("2. Add shader declaration to src/effects/shaders.h:") print(f" extern const char* {snake_name}_shader_wgsl;") @@ -400,7 +400,7 @@ def main(): print("4. Include header in src/gpu/demo_effects.h:") print(f' #include "effects/{snake_name}_effect.h"') print() - print("5. Add to CMakeLists.txt GPU_SOURCES (both headless and normal mode sections):") + print("5. Add to cmake/DemoSourceLists.cmake COMMON_GPU_EFFECTS list:") print(f" src/effects/{snake_name}_effect.cc") print() print("6. Add to timeline in workspaces/main/timeline.seq:") @@ -410,7 +410,11 @@ def main(): print(" python3 tools/seq_compiler.py workspaces/main/timeline.seq \\") print(" --output src/generated/timeline.cc") print() - print("8. Build and test:") + print("8. Add to src/tests/gpu/test_demo_effects.cc:") + print(f' {{"{effect_name}", std::make_shared<{effect_name}Effect>(') + print(f' fixture.ctx(), inputs, outputs, 0.0f, 1000.0f)}}') + print() + print("9. Build and test:") print(" cmake --build build -j4") print(" ./build/demo64k") print() |
