Files
snow_trail/.pi/agent/skills/wgsl/SKILL.md
2026-03-28 11:15:41 +01:00

22 lines
766 B
Markdown

# WGSL Shader Development
Reference for WGSL shader development, buffer alignment, uniform struct layout, and shader asset management. Load this skill when working on shader code, graphics pipelines, or buffer alignment issues.
## WGSL Uniform Buffer Alignment
When creating uniform buffers for WGSL shaders, struct fields must be aligned:
| Type | Alignment |
|------|-----------|
| `f32` | 4 bytes |
| `vec2<f32>` | 8 bytes |
| `vec3<f32>` | 16 bytes (treated as vec4) |
| `vec4<f32>` | 16 bytes |
| `mat4x4<f32>` | 16 bytes (64 bytes total) |
Use padding fields to match WGSL struct layout exactly. Prefer `vec4` over individual floats to avoid alignment issues.
## Shader Organization
Shaders live in `src/shaders/` and are embedded via `include_str!()`.