diff options
| author | skal <pascal.massimino@gmail.com> | 2026-02-28 09:08:57 +0100 |
|---|---|---|
| committer | skal <pascal.massimino@gmail.com> | 2026-02-28 09:08:57 +0100 |
| commit | 9ee410594a52cbc699b13de2bde4860d70c959a3 (patch) | |
| tree | d56adf5931d488abcf3ac8e24a828d2d5b02e8cc | |
| parent | 6599a428cd69be6c66c5179e1f0fce42f561f935 (diff) | |
refactor: move common/shaders/ to src/shaders/
Relocates shared WGSL shaders under src/ where all source code lives,
eliminating the top-level common/ directory.
- Update asset references in workspaces/main/assets.txt and workspaces/test/assets.txt
- Update docs: PROJECT_CONTEXT.md, ARCHITECTURE.md, WORKSPACE_SYSTEM.md, SHADER_REUSE_INVESTIGATION.md
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
| -rw-r--r-- | PROJECT_CONTEXT.md | 2 | ||||
| -rw-r--r-- | doc/ARCHITECTURE.md | 2 | ||||
| -rw-r--r-- | doc/SHADER_REUSE_INVESTIGATION.md | 4 | ||||
| -rw-r--r-- | doc/WORKSPACE_SYSTEM.md | 4 | ||||
| -rw-r--r-- | src/shaders/camera_common.wgsl (renamed from common/shaders/camera_common.wgsl) | 0 | ||||
| -rw-r--r-- | src/shaders/combined_postprocess.wgsl (renamed from common/shaders/combined_postprocess.wgsl) | 0 | ||||
| -rw-r--r-- | src/shaders/common_uniforms.wgsl (renamed from common/shaders/common_uniforms.wgsl) | 0 | ||||
| -rw-r--r-- | src/shaders/compute/gen_blend.wgsl (renamed from common/shaders/compute/gen_blend.wgsl) | 0 | ||||
| -rw-r--r-- | src/shaders/compute/gen_grid.wgsl (renamed from common/shaders/compute/gen_grid.wgsl) | 0 | ||||
| -rw-r--r-- | src/shaders/compute/gen_mask.wgsl (renamed from common/shaders/compute/gen_mask.wgsl) | 0 | ||||
| -rw-r--r-- | src/shaders/compute/gen_noise.wgsl (renamed from common/shaders/compute/gen_noise.wgsl) | 0 | ||||
| -rw-r--r-- | src/shaders/compute/gen_perlin.wgsl (renamed from common/shaders/compute/gen_perlin.wgsl) | 0 | ||||
| -rw-r--r-- | src/shaders/gaussian_blur.wgsl (renamed from common/shaders/gaussian_blur.wgsl) | 0 | ||||
| -rw-r--r-- | src/shaders/heptagon.wgsl (renamed from common/shaders/heptagon.wgsl) | 0 | ||||
| -rw-r--r-- | src/shaders/lighting.wgsl (renamed from common/shaders/lighting.wgsl) | 0 | ||||
| -rw-r--r-- | src/shaders/math/color.wgsl (renamed from common/shaders/math/color.wgsl) | 0 | ||||
| -rw-r--r-- | src/shaders/math/common_utils.wgsl (renamed from common/shaders/math/common_utils.wgsl) | 0 | ||||
| -rw-r--r-- | src/shaders/math/noise.wgsl (renamed from common/shaders/math/noise.wgsl) | 0 | ||||
| -rw-r--r-- | src/shaders/math/sdf_shapes.wgsl (renamed from common/shaders/math/sdf_shapes.wgsl) | 0 | ||||
| -rw-r--r-- | src/shaders/math/sdf_utils.wgsl (renamed from common/shaders/math/sdf_utils.wgsl) | 0 | ||||
| -rw-r--r-- | src/shaders/math/utils.wgsl (renamed from common/shaders/math/utils.wgsl) | 0 | ||||
| -rw-r--r-- | src/shaders/passthrough.wgsl (renamed from common/shaders/passthrough.wgsl) | 0 | ||||
| -rw-r--r-- | src/shaders/postprocess_inline.wgsl (renamed from common/shaders/postprocess_inline.wgsl) | 0 | ||||
| -rw-r--r-- | src/shaders/ray_box.wgsl (renamed from common/shaders/ray_box.wgsl) | 0 | ||||
| -rw-r--r-- | src/shaders/ray_triangle.wgsl (renamed from common/shaders/ray_triangle.wgsl) | 0 | ||||
| -rw-r--r-- | src/shaders/render/fullscreen_uv_vs.wgsl (renamed from common/shaders/render/fullscreen_uv_vs.wgsl) | 0 | ||||
| -rw-r--r-- | src/shaders/render/fullscreen_vs.wgsl (renamed from common/shaders/render/fullscreen_vs.wgsl) | 0 | ||||
| -rw-r--r-- | src/shaders/render/lighting_utils.wgsl (renamed from common/shaders/render/lighting_utils.wgsl) | 0 | ||||
| -rw-r--r-- | src/shaders/render/raymarching.wgsl (renamed from common/shaders/render/raymarching.wgsl) | 0 | ||||
| -rw-r--r-- | src/shaders/render/raymarching_id.wgsl (renamed from common/shaders/render/raymarching_id.wgsl) | 0 | ||||
| -rw-r--r-- | src/shaders/render/scene_query_bvh.wgsl (renamed from common/shaders/render/scene_query_bvh.wgsl) | 0 | ||||
| -rw-r--r-- | src/shaders/render/scene_query_linear.wgsl (renamed from common/shaders/render/scene_query_linear.wgsl) | 0 | ||||
| -rw-r--r-- | src/shaders/render/shadows.wgsl (renamed from common/shaders/render/shadows.wgsl) | 0 | ||||
| -rw-r--r-- | src/shaders/sequence_uniforms.wgsl (renamed from common/shaders/sequence_uniforms.wgsl) | 0 | ||||
| -rw-r--r-- | src/shaders/skybox.wgsl (renamed from common/shaders/skybox.wgsl) | 0 | ||||
| -rw-r--r-- | workspaces/main/assets.txt | 64 | ||||
| -rw-r--r-- | workspaces/test/assets.txt | 62 |
37 files changed, 69 insertions, 69 deletions
diff --git a/PROJECT_CONTEXT.md b/PROJECT_CONTEXT.md index 8b81c28..bce4d67 100644 --- a/PROJECT_CONTEXT.md +++ b/PROJECT_CONTEXT.md @@ -32,7 +32,7 @@ ## Current Status - **Timing System:** **Beat-based timelines** for musical synchronization. Sequences defined in beats, converted to seconds at runtime. Effects receive both physical time (constant) and beat time (musical). Variable tempo affects audio only. See `doc/BEAT_TIMING.md`. -- **Workspace system:** Multi-workspace support. Easy switching with `-DDEMO_WORKSPACE=<name>`. Organized structure: `music/`, `weights/`, `obj/`, `shaders/`. Shared common shaders in `common/shaders/`. See `doc/WORKSPACE_SYSTEM.md`. +- **Workspace system:** Multi-workspace support. Easy switching with `-DDEMO_WORKSPACE=<name>`. Organized structure: `music/`, `weights/`, `obj/`, `shaders/`. Shared common shaders in `src/shaders/`. See `doc/WORKSPACE_SYSTEM.md`. - **Audio:** Sample-accurate sync. Zero heap allocations per frame. Variable tempo. Comprehensive tests. - **Shaders:** Parameterized effects (UniformHelper, .seq syntax). Beat-synchronized animation support (`beat_time`, `beat_phase`). Modular WGSL composition with ShaderComposer. 24 shared common shaders (math, render, compute). - **3D:** Hybrid SDF/rasterization with BVH. Binary scene loader. Blender pipeline. diff --git a/doc/ARCHITECTURE.md b/doc/ARCHITECTURE.md index ebb2a59..582903b 100644 --- a/doc/ARCHITECTURE.md +++ b/doc/ARCHITECTURE.md @@ -17,7 +17,7 @@ Detailed system architecture for the 64k demo project. - Provides `update_camera()` helper methods (from Camera object or manual values) - Standard binding: 0=CommonUniforms, 1=CameraParams -**WGSL Helpers** (`common/shaders/camera_common.wgsl`): +**WGSL Helpers** (`src/shaders/camera_common.wgsl`): - `getCameraRay(cam, uv)`: Generate ray from screen UV coordinates - `getCameraPosition/Forward/Up/Right()`: Extract camera vectors from inv_view - Integrates with existing `render/raymarching.wgsl` (rayMarch, normal, shadow) diff --git a/doc/SHADER_REUSE_INVESTIGATION.md b/doc/SHADER_REUSE_INVESTIGATION.md index 0eb36f9..e840126 100644 --- a/doc/SHADER_REUSE_INVESTIGATION.md +++ b/doc/SHADER_REUSE_INVESTIGATION.md @@ -7,9 +7,9 @@ **Status:** IMPLEMENTED **Results:** -- Created `common/shaders/` with 20 shared shader files +- Created `src/shaders/` with 20 shared shader files (moved from `common/shaders/` 2026-02-28) - Eliminated 36 duplicate files across workspaces -- Asset references use `../../common/shaders/...` +- Asset references use `../../src/shaders/...` - Enhanced asset_packer with filesystem path normalization - Build passes, all tests pass diff --git a/doc/WORKSPACE_SYSTEM.md b/doc/WORKSPACE_SYSTEM.md index a0077d2..6b4319d 100644 --- a/doc/WORKSPACE_SYSTEM.md +++ b/doc/WORKSPACE_SYSTEM.md @@ -133,7 +133,7 @@ assets = "assets.txt" asset_dirs = ["assets/", "../common/audio/"] # Shader directories (order matters: workspace-specific first) -shader_dirs = ["shaders/", "../common/shaders/"] +shader_dirs = ["shaders/", "../src/shaders/"] [options] # Default resolution @@ -255,7 +255,7 @@ class ShaderComposer { ```wgsl // workspace-specific shader #include "custom_uniforms.wgsl" // From workspaces/main/shaders/ -#include "math/common_utils.wgsl" // From assets/common/shaders/ +#include "math/common_utils.wgsl" // From src/shaders/ ``` ### CLI Tool diff --git a/common/shaders/camera_common.wgsl b/src/shaders/camera_common.wgsl index 846d052..846d052 100644 --- a/common/shaders/camera_common.wgsl +++ b/src/shaders/camera_common.wgsl diff --git a/common/shaders/combined_postprocess.wgsl b/src/shaders/combined_postprocess.wgsl index c0acfe7..c0acfe7 100644 --- a/common/shaders/combined_postprocess.wgsl +++ b/src/shaders/combined_postprocess.wgsl diff --git a/common/shaders/common_uniforms.wgsl b/src/shaders/common_uniforms.wgsl index 5dc0251..5dc0251 100644 --- a/common/shaders/common_uniforms.wgsl +++ b/src/shaders/common_uniforms.wgsl diff --git a/common/shaders/compute/gen_blend.wgsl b/src/shaders/compute/gen_blend.wgsl index c6be7bb..c6be7bb 100644 --- a/common/shaders/compute/gen_blend.wgsl +++ b/src/shaders/compute/gen_blend.wgsl diff --git a/common/shaders/compute/gen_grid.wgsl b/src/shaders/compute/gen_grid.wgsl index 4ce7ea3..4ce7ea3 100644 --- a/common/shaders/compute/gen_grid.wgsl +++ b/src/shaders/compute/gen_grid.wgsl diff --git a/common/shaders/compute/gen_mask.wgsl b/src/shaders/compute/gen_mask.wgsl index 39f5b50..39f5b50 100644 --- a/common/shaders/compute/gen_mask.wgsl +++ b/src/shaders/compute/gen_mask.wgsl diff --git a/common/shaders/compute/gen_noise.wgsl b/src/shaders/compute/gen_noise.wgsl index 7b75f13..7b75f13 100644 --- a/common/shaders/compute/gen_noise.wgsl +++ b/src/shaders/compute/gen_noise.wgsl diff --git a/common/shaders/compute/gen_perlin.wgsl b/src/shaders/compute/gen_perlin.wgsl index 2807f6d..2807f6d 100644 --- a/common/shaders/compute/gen_perlin.wgsl +++ b/src/shaders/compute/gen_perlin.wgsl diff --git a/common/shaders/gaussian_blur.wgsl b/src/shaders/gaussian_blur.wgsl index 7f85719..7f85719 100644 --- a/common/shaders/gaussian_blur.wgsl +++ b/src/shaders/gaussian_blur.wgsl diff --git a/common/shaders/heptagon.wgsl b/src/shaders/heptagon.wgsl index a8a450f..a8a450f 100644 --- a/common/shaders/heptagon.wgsl +++ b/src/shaders/heptagon.wgsl diff --git a/common/shaders/lighting.wgsl b/src/shaders/lighting.wgsl index fd92c1a..fd92c1a 100644 --- a/common/shaders/lighting.wgsl +++ b/src/shaders/lighting.wgsl diff --git a/common/shaders/math/color.wgsl b/src/shaders/math/color.wgsl index 9352053..9352053 100644 --- a/common/shaders/math/color.wgsl +++ b/src/shaders/math/color.wgsl diff --git a/common/shaders/math/common_utils.wgsl b/src/shaders/math/common_utils.wgsl index 6ebc25a..6ebc25a 100644 --- a/common/shaders/math/common_utils.wgsl +++ b/src/shaders/math/common_utils.wgsl diff --git a/common/shaders/math/noise.wgsl b/src/shaders/math/noise.wgsl index dd97e02..dd97e02 100644 --- a/common/shaders/math/noise.wgsl +++ b/src/shaders/math/noise.wgsl diff --git a/common/shaders/math/sdf_shapes.wgsl b/src/shaders/math/sdf_shapes.wgsl index 2dfae3e..2dfae3e 100644 --- a/common/shaders/math/sdf_shapes.wgsl +++ b/src/shaders/math/sdf_shapes.wgsl diff --git a/common/shaders/math/sdf_utils.wgsl b/src/shaders/math/sdf_utils.wgsl index 5a77c7e..5a77c7e 100644 --- a/common/shaders/math/sdf_utils.wgsl +++ b/src/shaders/math/sdf_utils.wgsl diff --git a/common/shaders/math/utils.wgsl b/src/shaders/math/utils.wgsl index c75cb66..c75cb66 100644 --- a/common/shaders/math/utils.wgsl +++ b/src/shaders/math/utils.wgsl diff --git a/common/shaders/passthrough.wgsl b/src/shaders/passthrough.wgsl index bce377c..bce377c 100644 --- a/common/shaders/passthrough.wgsl +++ b/src/shaders/passthrough.wgsl diff --git a/common/shaders/postprocess_inline.wgsl b/src/shaders/postprocess_inline.wgsl index 84ef3d3..84ef3d3 100644 --- a/common/shaders/postprocess_inline.wgsl +++ b/src/shaders/postprocess_inline.wgsl diff --git a/common/shaders/ray_box.wgsl b/src/shaders/ray_box.wgsl index 37b9d6a..37b9d6a 100644 --- a/common/shaders/ray_box.wgsl +++ b/src/shaders/ray_box.wgsl diff --git a/common/shaders/ray_triangle.wgsl b/src/shaders/ray_triangle.wgsl index ece823a..ece823a 100644 --- a/common/shaders/ray_triangle.wgsl +++ b/src/shaders/ray_triangle.wgsl diff --git a/common/shaders/render/fullscreen_uv_vs.wgsl b/src/shaders/render/fullscreen_uv_vs.wgsl index f9ae427..f9ae427 100644 --- a/common/shaders/render/fullscreen_uv_vs.wgsl +++ b/src/shaders/render/fullscreen_uv_vs.wgsl diff --git a/common/shaders/render/fullscreen_vs.wgsl b/src/shaders/render/fullscreen_vs.wgsl index 507b892..507b892 100644 --- a/common/shaders/render/fullscreen_vs.wgsl +++ b/src/shaders/render/fullscreen_vs.wgsl diff --git a/common/shaders/render/lighting_utils.wgsl b/src/shaders/render/lighting_utils.wgsl index f805860..f805860 100644 --- a/common/shaders/render/lighting_utils.wgsl +++ b/src/shaders/render/lighting_utils.wgsl diff --git a/common/shaders/render/raymarching.wgsl b/src/shaders/render/raymarching.wgsl index 2d6616d..2d6616d 100644 --- a/common/shaders/render/raymarching.wgsl +++ b/src/shaders/render/raymarching.wgsl diff --git a/common/shaders/render/raymarching_id.wgsl b/src/shaders/render/raymarching_id.wgsl index d9f32b2..d9f32b2 100644 --- a/common/shaders/render/raymarching_id.wgsl +++ b/src/shaders/render/raymarching_id.wgsl diff --git a/common/shaders/render/scene_query_bvh.wgsl b/src/shaders/render/scene_query_bvh.wgsl index cf2136b..cf2136b 100644 --- a/common/shaders/render/scene_query_bvh.wgsl +++ b/src/shaders/render/scene_query_bvh.wgsl diff --git a/common/shaders/render/scene_query_linear.wgsl b/src/shaders/render/scene_query_linear.wgsl index 5864b6f..5864b6f 100644 --- a/common/shaders/render/scene_query_linear.wgsl +++ b/src/shaders/render/scene_query_linear.wgsl diff --git a/common/shaders/render/shadows.wgsl b/src/shaders/render/shadows.wgsl index b71e073..b71e073 100644 --- a/common/shaders/render/shadows.wgsl +++ b/src/shaders/render/shadows.wgsl diff --git a/common/shaders/sequence_uniforms.wgsl b/src/shaders/sequence_uniforms.wgsl index 1aef34e..1aef34e 100644 --- a/common/shaders/sequence_uniforms.wgsl +++ b/src/shaders/sequence_uniforms.wgsl diff --git a/common/shaders/skybox.wgsl b/src/shaders/skybox.wgsl index 075eeb6..075eeb6 100644 --- a/common/shaders/skybox.wgsl +++ b/src/shaders/skybox.wgsl diff --git a/workspaces/main/assets.txt b/workspaces/main/assets.txt index 4115397..85ae1fc 100644 --- a/workspaces/main/assets.txt +++ b/workspaces/main/assets.txt @@ -24,19 +24,19 @@ NOISE_TEX, PROC(gen_noise, 1234, 16), _, "Procedural noise texture for bump mapp # --- WGSL Shaders & Snippets --- SHADER_RENDERER_3D, NONE, shaders/renderer_3d.wgsl, "Hybrid 3D Renderer Shader" -SHADER_COMMON_UNIFORMS, NONE, ../../common/shaders/common_uniforms.wgsl, "Common Uniforms Snippet" -SHADER_CAMERA_COMMON, NONE, ../../common/shaders/camera_common.wgsl, "Camera parameters and raymarching helpers" -SHADER_SDF_SHAPES, NONE, ../../common/shaders/math/sdf_shapes.wgsl, "SDF Shapes (2D/3D primitives)" -SHADER_LIGHTING, NONE, ../../common/shaders/lighting.wgsl, "Lighting Snippet" -SHADER_RAY_BOX, NONE, ../../common/shaders/ray_box.wgsl, "Ray-Box Intersection Snippet" -SHADER_RAY_TRIANGLE, NONE, ../../common/shaders/ray_triangle.wgsl, "Ray-Triangle Intersection Snippet (Möller-Trumbore)" +SHADER_COMMON_UNIFORMS, NONE, ../../src/shaders/common_uniforms.wgsl, "Common Uniforms Snippet" +SHADER_CAMERA_COMMON, NONE, ../../src/shaders/camera_common.wgsl, "Camera parameters and raymarching helpers" +SHADER_SDF_SHAPES, NONE, ../../src/shaders/math/sdf_shapes.wgsl, "SDF Shapes (2D/3D primitives)" +SHADER_LIGHTING, NONE, ../../src/shaders/lighting.wgsl, "Lighting Snippet" +SHADER_RAY_BOX, NONE, ../../src/shaders/ray_box.wgsl, "Ray-Box Intersection Snippet" +SHADER_RAY_TRIANGLE, NONE, ../../src/shaders/ray_triangle.wgsl, "Ray-Triangle Intersection Snippet (Möller-Trumbore)" SHADER_MAIN, NONE, shaders/main_shader.wgsl, "Main Heptagon Shader" SHADER_PARTICLE_COMPUTE, NONE, shaders/particle_compute.wgsl, "Particle Compute Shader" SHADER_PARTICLE_RENDER, NONE, shaders/particle_render.wgsl, "Particle Render Shader" SHADER_PARTICLE_COMPUTE_V2, NONE, shaders/particle_compute.wgsl, "Particle Compute Shader" SHADER_PARTICLE_RENDER_V2, NONE, shaders/particle_render.wgsl, "Particle Render Shader" SHADER_ROTATING_CUBE_V2, NONE, shaders/rotating_cube.wgsl, "Rotating Cube Shader" -SHADER_PASSTHROUGH, NONE, ../../common/shaders/passthrough.wgsl, "Passthrough Shader" +SHADER_PASSTHROUGH, NONE, ../../src/shaders/passthrough.wgsl, "Passthrough Shader" SHADER_ELLIPSE, NONE, shaders/ellipse.wgsl, "Ellipse Shader" SHADER_PARTICLE_SPRAY_COMPUTE, NONE, shaders/particle_spray_compute.wgsl, "Particle Spray Compute" SHADER_GAUSSIAN_BLUR, NONE, shaders/gaussian_blur.wgsl, "Gaussian Blur Shader" @@ -54,39 +54,39 @@ SHADER_SOLARIZE, NONE, shaders/solarize.wgsl, "Solarize Shader" SHADER_DISTORT, NONE, shaders/distort.wgsl, "Distort Shader" SHADER_CHROMA_ABERRATION, NONE, shaders/chroma_aberration.wgsl, "Chroma Aberration Shader" SHADER_VISUAL_DEBUG, NONE, shaders/visual_debug.wgsl, "Visual Debug Shader" -SHADER_SKYBOX, NONE, ../../common/shaders/skybox.wgsl, "Skybox background shader" -SHADER_MATH_SDF_SHAPES, NONE, ../../common/shaders/math/sdf_shapes.wgsl, "SDF Shapes Snippet" -SHADER_MATH_SDF_UTILS, NONE, ../../common/shaders/math/sdf_utils.wgsl, "SDF Utils Snippet" -SHADER_MATH_COMMON_UTILS, NONE, ../../common/shaders/math/common_utils.wgsl, "Common Math Utils" -SHADER_MATH_NOISE, NONE, ../../common/shaders/math/noise.wgsl, "RNG and Noise Functions" -SHADER_RENDER_SHADOWS, NONE, ../../common/shaders/render/shadows.wgsl, "Shadows Snippet" -SHADER_RENDER_SCENE_QUERY_BVH, NONE, ../../common/shaders/render/scene_query_bvh.wgsl, "Scene Query Snippet (BVH)" -SHADER_RENDER_SCENE_QUERY_LINEAR, NONE, ../../common/shaders/render/scene_query_linear.wgsl, "Scene Query Snippet (Linear)" -SHADER_RENDER_LIGHTING_UTILS, NONE, ../../common/shaders/render/lighting_utils.wgsl, "Lighting Utils Snippet" +SHADER_SKYBOX, NONE, ../../src/shaders/skybox.wgsl, "Skybox background shader" +SHADER_MATH_SDF_SHAPES, NONE, ../../src/shaders/math/sdf_shapes.wgsl, "SDF Shapes Snippet" +SHADER_MATH_SDF_UTILS, NONE, ../../src/shaders/math/sdf_utils.wgsl, "SDF Utils Snippet" +SHADER_MATH_COMMON_UTILS, NONE, ../../src/shaders/math/common_utils.wgsl, "Common Math Utils" +SHADER_MATH_NOISE, NONE, ../../src/shaders/math/noise.wgsl, "RNG and Noise Functions" +SHADER_RENDER_SHADOWS, NONE, ../../src/shaders/render/shadows.wgsl, "Shadows Snippet" +SHADER_RENDER_SCENE_QUERY_BVH, NONE, ../../src/shaders/render/scene_query_bvh.wgsl, "Scene Query Snippet (BVH)" +SHADER_RENDER_SCENE_QUERY_LINEAR, NONE, ../../src/shaders/render/scene_query_linear.wgsl, "Scene Query Snippet (Linear)" +SHADER_RENDER_LIGHTING_UTILS, NONE, ../../src/shaders/render/lighting_utils.wgsl, "Lighting Utils Snippet" SHADER_MESH, NONE, shaders/mesh_render.wgsl, "Mesh Rasterization Shader" MESH_CUBE, NONE, obj/test_mesh.obj, "A simple cube mesh" DODECAHEDRON, NONE, obj/dodecahedron.obj, "A dodecahedron mesh" -SHADER_RENDER_FULLSCREEN_VS, NONE, ../../common/shaders/render/fullscreen_vs.wgsl, "Fullscreen Vertex Shader" -SHADER_RENDER_FULLSCREEN_UV_VS, NONE, ../../common/shaders/render/fullscreen_uv_vs.wgsl, "Fullscreen Vertex Shader + UV" -SHADER_MATH_COLOR, NONE, ../../common/shaders/math/color.wgsl, "Color Functions" -SHADER_MATH_UTILS, NONE, ../../common/shaders/math/utils.wgsl, "Math Utilities" -SHADER_RENDER_RAYMARCHING, NONE, ../../common/shaders/render/raymarching.wgsl, "Raymarching Functions" -SHADER_RENDER_RAYMARCHING_ID, NONE, ../../common/shaders/render/raymarching_id.wgsl, "Raymarching-ID Functions" +SHADER_RENDER_FULLSCREEN_VS, NONE, ../../src/shaders/render/fullscreen_vs.wgsl, "Fullscreen Vertex Shader" +SHADER_RENDER_FULLSCREEN_UV_VS, NONE, ../../src/shaders/render/fullscreen_uv_vs.wgsl, "Fullscreen Vertex Shader + UV" +SHADER_MATH_COLOR, NONE, ../../src/shaders/math/color.wgsl, "Color Functions" +SHADER_MATH_UTILS, NONE, ../../src/shaders/math/utils.wgsl, "Math Utilities" +SHADER_RENDER_RAYMARCHING, NONE, ../../src/shaders/render/raymarching.wgsl, "Raymarching Functions" +SHADER_RENDER_RAYMARCHING_ID, NONE, ../../src/shaders/render/raymarching_id.wgsl, "Raymarching-ID Functions" SHADER_VIGNETTE, NONE, shaders/vignette.wgsl, "Vignette Shader" -SHADER_COMPUTE_GEN_NOISE, NONE, ../../common/shaders/compute/gen_noise.wgsl, "GPU Noise Compute Shader" -SHADER_COMPUTE_GEN_PERLIN, NONE, ../../common/shaders/compute/gen_perlin.wgsl, "GPU Perlin Noise Compute Shader" -SHADER_COMPUTE_GEN_GRID, NONE, ../../common/shaders/compute/gen_grid.wgsl, "GPU Grid Compute Shader" -SHADER_COMPUTE_GEN_BLEND, NONE, ../../common/shaders/compute/gen_blend.wgsl, "GPU Blend Composite Shader" -SHADER_COMPUTE_GEN_MASK, NONE, ../../common/shaders/compute/gen_mask.wgsl, "GPU Mask Composite Shader" +SHADER_COMPUTE_GEN_NOISE, NONE, ../../src/shaders/compute/gen_noise.wgsl, "GPU Noise Compute Shader" +SHADER_COMPUTE_GEN_PERLIN, NONE, ../../src/shaders/compute/gen_perlin.wgsl, "GPU Perlin Noise Compute Shader" +SHADER_COMPUTE_GEN_GRID, NONE, ../../src/shaders/compute/gen_grid.wgsl, "GPU Grid Compute Shader" +SHADER_COMPUTE_GEN_BLEND, NONE, ../../src/shaders/compute/gen_blend.wgsl, "GPU Blend Composite Shader" +SHADER_COMPUTE_GEN_MASK, NONE, ../../src/shaders/compute/gen_mask.wgsl, "GPU Mask Composite Shader" CIRCLE_MASK_COMPUTE_SHADER, NONE, shaders/circle_mask_compute.wgsl, "Circle mask compute shader" CIRCLE_MASK_RENDER_SHADER, NONE, shaders/circle_mask_render.wgsl, "Circle mask render shader" MASKED_CUBE_SHADER, NONE, shaders/masked_cube.wgsl, "Masked cube shader" SHADER_SCENE1, NONE, shaders/scene1.wgsl, "Scene1 effect shader" # --- Sequence Shaders --- -SHADER_SEQUENCE_V2_UNIFORMS, NONE, ../../common/shaders/sequence_uniforms.wgsl, "Sequence Uniforms Snippet" -SHADER_POSTPROCESS_INLINE, NONE, ../../common/shaders/postprocess_inline.wgsl, "Inline Post-Process Functions" -SHADER_PASSTHROUGH_V2, NONE, ../../common/shaders/passthrough.wgsl, "Passthrough Shader" -SHADER_GAUSSIAN_BLUR_V2, NONE, ../../common/shaders/gaussian_blur.wgsl, "Gaussian Blur Shader" -SHADER_HEPTAGON_V2, NONE, ../../common/shaders/heptagon.wgsl, "Heptagon Shader" +SHADER_SEQUENCE_V2_UNIFORMS, NONE, ../../src/shaders/sequence_uniforms.wgsl, "Sequence Uniforms Snippet" +SHADER_POSTPROCESS_INLINE, NONE, ../../src/shaders/postprocess_inline.wgsl, "Inline Post-Process Functions" +SHADER_PASSTHROUGH_V2, NONE, ../../src/shaders/passthrough.wgsl, "Passthrough Shader" +SHADER_GAUSSIAN_BLUR_V2, NONE, ../../src/shaders/gaussian_blur.wgsl, "Gaussian Blur Shader" +SHADER_HEPTAGON_V2, NONE, ../../src/shaders/heptagon.wgsl, "Heptagon Shader" SHADER_FLASH, NONE, shaders/flash.wgsl, "Flash Shader" diff --git a/workspaces/test/assets.txt b/workspaces/test/assets.txt index 7835cf8..6184d8b 100644 --- a/workspaces/test/assets.txt +++ b/workspaces/test/assets.txt @@ -24,17 +24,17 @@ NOISE_TEX, PROC(gen_noise, 1234, 16), _, "Procedural noise texture for bump mapp # --- WGSL Shaders & Snippets --- SHADER_RENDERER_3D, NONE, shaders/renderer_3d.wgsl, "Hybrid 3D Renderer Shader" -SHADER_COMMON_UNIFORMS, NONE, ../../common/shaders/common_uniforms.wgsl, "Common Uniforms Snippet" -SHADER_SDF_SHAPES, NONE, ../../common/shaders/math/sdf_shapes.wgsl, "SDF Shapes (2D/3D primitives)" -SHADER_LIGHTING, NONE, ../../common/shaders/lighting.wgsl, "Lighting Snippet" -SHADER_RAY_BOX, NONE, ../../common/shaders/ray_box.wgsl, "Ray-Box Intersection Snippet" -SHADER_RAY_TRIANGLE, NONE, ../../common/shaders/ray_triangle.wgsl, "Ray-Triangle Intersection Snippet (Möller-Trumbore)" +SHADER_COMMON_UNIFORMS, NONE, ../../src/shaders/common_uniforms.wgsl, "Common Uniforms Snippet" +SHADER_SDF_SHAPES, NONE, ../../src/shaders/math/sdf_shapes.wgsl, "SDF Shapes (2D/3D primitives)" +SHADER_LIGHTING, NONE, ../../src/shaders/lighting.wgsl, "Lighting Snippet" +SHADER_RAY_BOX, NONE, ../../src/shaders/ray_box.wgsl, "Ray-Box Intersection Snippet" +SHADER_RAY_TRIANGLE, NONE, ../../src/shaders/ray_triangle.wgsl, "Ray-Triangle Intersection Snippet (Möller-Trumbore)" SHADER_SNIPPET_A, NONE, shaders/test_snippet_a.wgsl, "Test Snippet A" SHADER_SNIPPET_B, NONE, shaders/test_snippet_b.wgsl, "Test Snippet B" SHADER_MAIN, NONE, shaders/main_shader.wgsl, "Main Heptagon Shader" SHADER_PARTICLE_COMPUTE, NONE, shaders/particle_compute.wgsl, "Particle Compute Shader" SHADER_PARTICLE_RENDER, NONE, shaders/particle_render.wgsl, "Particle Render Shader" -SHADER_PASSTHROUGH, NONE, ../../common/shaders/passthrough.wgsl, "Passthrough Shader" +SHADER_PASSTHROUGH, NONE, ../../src/shaders/passthrough.wgsl, "Passthrough Shader" SHADER_ELLIPSE, NONE, shaders/ellipse.wgsl, "Ellipse Shader" SHADER_PARTICLE_SPRAY_COMPUTE, NONE, shaders/particle_spray_compute.wgsl, "Particle Spray Compute" SHADER_GAUSSIAN_BLUR, NONE, shaders/gaussian_blur.wgsl, "Gaussian Blur Shader" @@ -42,40 +42,40 @@ SHADER_SOLARIZE, NONE, shaders/solarize.wgsl, "Solarize Shader" SHADER_DISTORT, NONE, shaders/distort.wgsl, "Distort Shader" SHADER_CHROMA_ABERRATION, NONE, shaders/chroma_aberration.wgsl, "Chroma Aberration Shader" SHADER_VISUAL_DEBUG, NONE, shaders/visual_debug.wgsl, "Visual Debug Shader" -SHADER_SKYBOX, NONE, ../../common/shaders/skybox.wgsl, "Skybox background shader" -SHADER_MATH_SDF_SHAPES, NONE, ../../common/shaders/math/sdf_shapes.wgsl, "SDF Shapes Snippet" -SHADER_MATH_SDF_UTILS, NONE, ../../common/shaders/math/sdf_utils.wgsl, "SDF Utils Snippet" -SHADER_MATH_COMMON_UTILS, NONE, ../../common/shaders/math/common_utils.wgsl, "Common Math Utils" -SHADER_MATH_NOISE, NONE, ../../common/shaders/math/noise.wgsl, "RNG and Noise Functions" -SHADER_RENDER_SHADOWS, NONE, ../../common/shaders/render/shadows.wgsl, "Shadows Snippet" -SHADER_RENDER_SCENE_QUERY_BVH, NONE, ../../common/shaders/render/scene_query_bvh.wgsl, "Scene Query Snippet (BVH)" -SHADER_RENDER_SCENE_QUERY_LINEAR, NONE, ../../common/shaders/render/scene_query_linear.wgsl, "Scene Query Snippet (Linear)" -SHADER_RENDER_LIGHTING_UTILS, NONE, ../../common/shaders/render/lighting_utils.wgsl, "Lighting Utils Snippet" +SHADER_SKYBOX, NONE, ../../src/shaders/skybox.wgsl, "Skybox background shader" +SHADER_MATH_SDF_SHAPES, NONE, ../../src/shaders/math/sdf_shapes.wgsl, "SDF Shapes Snippet" +SHADER_MATH_SDF_UTILS, NONE, ../../src/shaders/math/sdf_utils.wgsl, "SDF Utils Snippet" +SHADER_MATH_COMMON_UTILS, NONE, ../../src/shaders/math/common_utils.wgsl, "Common Math Utils" +SHADER_MATH_NOISE, NONE, ../../src/shaders/math/noise.wgsl, "RNG and Noise Functions" +SHADER_RENDER_SHADOWS, NONE, ../../src/shaders/render/shadows.wgsl, "Shadows Snippet" +SHADER_RENDER_SCENE_QUERY_BVH, NONE, ../../src/shaders/render/scene_query_bvh.wgsl, "Scene Query Snippet (BVH)" +SHADER_RENDER_SCENE_QUERY_LINEAR, NONE, ../../src/shaders/render/scene_query_linear.wgsl, "Scene Query Snippet (Linear)" +SHADER_RENDER_LIGHTING_UTILS, NONE, ../../src/shaders/render/lighting_utils.wgsl, "Lighting Utils Snippet" SHADER_MESH, NONE, shaders/mesh_render.wgsl, "Mesh Rasterization Shader" MESH_CUBE, NONE, obj/test_mesh.obj, "A simple cube mesh" DODECAHEDRON, NONE, obj/dodecahedron.obj, "A dodecahedron mesh" -SHADER_RENDER_FULLSCREEN_VS, NONE, ../../common/shaders/render/fullscreen_vs.wgsl, "Fullscreen Vertex Shader" -SHADER_RENDER_FULLSCREEN_UV_VS, NONE, ../../common/shaders/render/fullscreen_uv_vs.wgsl, "Fullscreen Vertex Shader + UV" -SHADER_MATH_COLOR, NONE, ../../common/shaders/math/color.wgsl, "Color Functions" -SHADER_MATH_UTILS, NONE, ../../common/shaders/math/utils.wgsl, "Math Utilities" -SHADER_RENDER_RAYMARCHING, NONE, ../../common/shaders/render/raymarching.wgsl, "Raymarching Functions" -SHADER_RENDER_RAYMARCHING_ID, NONE, ../../common/shaders/render/raymarching_id.wgsl, "Raymarching-ID Functions" +SHADER_RENDER_FULLSCREEN_VS, NONE, ../../src/shaders/render/fullscreen_vs.wgsl, "Fullscreen Vertex Shader" +SHADER_RENDER_FULLSCREEN_UV_VS, NONE, ../../src/shaders/render/fullscreen_uv_vs.wgsl, "Fullscreen Vertex Shader + UV" +SHADER_MATH_COLOR, NONE, ../../src/shaders/math/color.wgsl, "Color Functions" +SHADER_MATH_UTILS, NONE, ../../src/shaders/math/utils.wgsl, "Math Utilities" +SHADER_RENDER_RAYMARCHING, NONE, ../../src/shaders/render/raymarching.wgsl, "Raymarching Functions" +SHADER_RENDER_RAYMARCHING_ID, NONE, ../../src/shaders/render/raymarching_id.wgsl, "Raymarching-ID Functions" SHADER_VIGNETTE, NONE, shaders/vignette.wgsl, "Vignette Shader" -SHADER_COMPUTE_GEN_NOISE, NONE, ../../common/shaders/compute/gen_noise.wgsl, "GPU Noise Compute Shader" -SHADER_COMPUTE_GEN_PERLIN, NONE, ../../common/shaders/compute/gen_perlin.wgsl, "GPU Perlin Noise Compute Shader" -SHADER_COMPUTE_GEN_GRID, NONE, ../../common/shaders/compute/gen_grid.wgsl, "GPU Grid Compute Shader" -SHADER_COMPUTE_GEN_BLEND, NONE, ../../common/shaders/compute/gen_blend.wgsl, "GPU Blend Composite Shader" -SHADER_COMPUTE_GEN_MASK, NONE, ../../common/shaders/compute/gen_mask.wgsl, "GPU Mask Composite Shader" +SHADER_COMPUTE_GEN_NOISE, NONE, ../../src/shaders/compute/gen_noise.wgsl, "GPU Noise Compute Shader" +SHADER_COMPUTE_GEN_PERLIN, NONE, ../../src/shaders/compute/gen_perlin.wgsl, "GPU Perlin Noise Compute Shader" +SHADER_COMPUTE_GEN_GRID, NONE, ../../src/shaders/compute/gen_grid.wgsl, "GPU Grid Compute Shader" +SHADER_COMPUTE_GEN_BLEND, NONE, ../../src/shaders/compute/gen_blend.wgsl, "GPU Blend Composite Shader" +SHADER_COMPUTE_GEN_MASK, NONE, ../../src/shaders/compute/gen_mask.wgsl, "GPU Mask Composite Shader" CIRCLE_MASK_COMPUTE_SHADER, NONE, shaders/circle_mask_compute.wgsl, "Circle mask compute shader" CIRCLE_MASK_RENDER_SHADER, NONE, shaders/circle_mask_render.wgsl, "Circle mask render shader" MASKED_CUBE_SHADER, NONE, shaders/masked_cube.wgsl, "Masked cube shader" # --- Sequence Shaders --- -SHADER_SEQUENCE_V2_UNIFORMS, NONE, ../../common/shaders/sequence_uniforms.wgsl, "Sequence Uniforms Snippet" -SHADER_POSTPROCESS_INLINE, NONE, ../../common/shaders/postprocess_inline.wgsl, "Inline Post-Process Functions" -SHADER_PASSTHROUGH_V2, NONE, ../../common/shaders/passthrough.wgsl, "Passthrough Shader" -SHADER_GAUSSIAN_BLUR_V2, NONE, ../../common/shaders/gaussian_blur.wgsl, "Gaussian Blur Shader" -SHADER_HEPTAGON_V2, NONE, ../../common/shaders/heptagon.wgsl, "Heptagon Shader" +SHADER_SEQUENCE_V2_UNIFORMS, NONE, ../../src/shaders/sequence_uniforms.wgsl, "Sequence Uniforms Snippet" +SHADER_POSTPROCESS_INLINE, NONE, ../../src/shaders/postprocess_inline.wgsl, "Inline Post-Process Functions" +SHADER_PASSTHROUGH_V2, NONE, ../../src/shaders/passthrough.wgsl, "Passthrough Shader" +SHADER_GAUSSIAN_BLUR_V2, NONE, ../../src/shaders/gaussian_blur.wgsl, "Gaussian Blur Shader" +SHADER_HEPTAGON_V2, NONE, ../../src/shaders/heptagon.wgsl, "Heptagon Shader" SHADER_ROTATING_CUBE_V2, NONE, ../main/shaders/rotating_cube.wgsl, "Rotating Cube Shader" SHADER_FLASH, NONE, shaders/flash.wgsl, "Flash Shader" |
