diff options
| author | skal <pascal.massimino@gmail.com> | 2026-02-14 15:13:09 +0100 |
|---|---|---|
| committer | skal <pascal.massimino@gmail.com> | 2026-02-14 15:13:09 +0100 |
| commit | e38be0dbf5816338ff97e2ee2f9adfff2902dc2b (patch) | |
| tree | 42e380626c6f9d0e0137336c8c2dfb68df327dae /workspaces/test/shaders/chroma_aberration.wgsl | |
| parent | d6cc50eb49275bbc0de21d4c65a5172d5d65f790 (diff) | |
refactor(wgsl): modularize common shader functions
Extracted common WGSL functions into separate files in `common/shaders/` to improve reusability and maintainability.
- Created `common/shaders/render/fullscreen_vs.wgsl` for a reusable fullscreen vertex shader.
- Created `common/shaders/math/color.wgsl` for color conversion and tone mapping functions.
- Created `common/shaders/math/utils.wgsl` for general math utilities.
- Created `common/shaders/render/raymarching.wgsl` for SDF raymarching logic.
- Updated multiple shaders to use these new common snippets via `#include`.
- Fixed the shader asset validation test to correctly handle shaders that include the common vertex shader.
This refactoring makes the shader code more modular and easier to manage.
Diffstat (limited to 'workspaces/test/shaders/chroma_aberration.wgsl')
| -rw-r--r-- | workspaces/test/shaders/chroma_aberration.wgsl | 9 |
1 files changed, 1 insertions, 8 deletions
diff --git a/workspaces/test/shaders/chroma_aberration.wgsl b/workspaces/test/shaders/chroma_aberration.wgsl index 6c942b7..ee730b1 100644 --- a/workspaces/test/shaders/chroma_aberration.wgsl +++ b/workspaces/test/shaders/chroma_aberration.wgsl @@ -10,14 +10,7 @@ struct ChromaAberrationParams { @group(0) @binding(2) var<uniform> uniforms: CommonUniforms; @group(0) @binding(3) var<uniform> params: ChromaAberrationParams; -@vertex fn vs_main(@builtin(vertex_index) i: u32) -> @builtin(position) vec4<f32> { - var pos = array<vec2<f32>, 3>( - vec2<f32>(-1, -1), - vec2<f32>(3, -1), - vec2<f32>(-1, 3) - ); - return vec4<f32>(pos[i], 0.0, 1.0); -} +#include "render/fullscreen_vs" @fragment fn fs_main(@builtin(position) p: vec4<f32>) -> @location(0) vec4<f32> { let uv = p.xy / uniforms.resolution; |
