<feed xmlns='http://www.w3.org/2005/Atom'>
<title>demo.git/common/shaders/render, branch main</title>
<subtitle>Vide-coded 64k demo system</subtitle>
<id>https://git.taar-o.com/demo.git/atom?h=main</id>
<link rel='self' href='https://git.taar-o.com/demo.git/atom?h=main'/>
<link rel='alternate' type='text/html' href='https://git.taar-o.com/demo.git/'/>
<updated>2026-02-28T08:08:57Z</updated>
<entry>
<title>refactor: move common/shaders/ to src/shaders/</title>
<updated>2026-02-28T08:08:57Z</updated>
<author>
<name>skal</name>
<email>pascal.massimino@gmail.com</email>
</author>
<published>2026-02-28T08:08:57Z</published>
<link rel='alternate' type='text/html' href='https://git.taar-o.com/demo.git/commit/?id=9ee410594a52cbc699b13de2bde4860d70c959a3'/>
<id>urn:sha1:9ee410594a52cbc699b13de2bde4860d70c959a3</id>
<content type='text'>
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 &lt;noreply@anthropic.com&gt;
</content>
</entry>
<entry>
<title>replace wgsl type: vec4&lt;f32&gt; -&gt; vec4f ..</title>
<updated>2026-02-28T01:39:04Z</updated>
<author>
<name>skal</name>
<email>pascal.massimino@gmail.com</email>
</author>
<published>2026-02-28T01:39:04Z</published>
<link rel='alternate' type='text/html' href='https://git.taar-o.com/demo.git/commit/?id=472c2258dbeca000a454ea1781f09df63477563e'/>
<id>urn:sha1:472c2258dbeca000a454ea1781f09df63477563e</id>
<content type='text'>
</content>
</entry>
<entry>
<title>fix(shaders): deduplicate VertexOutput/vs_main via render/fullscreen_uv_vs snippet</title>
<updated>2026-02-27T23:51:27Z</updated>
<author>
<name>skal</name>
<email>pascal.massimino@gmail.com</email>
</author>
<published>2026-02-27T23:39:32Z</published>
<link rel='alternate' type='text/html' href='https://git.taar-o.com/demo.git/commit/?id=75e561bd092895a031ae4475f7d1fdc35b1b1832'/>
<id>urn:sha1:75e561bd092895a031ae4475f7d1fdc35b1b1832</id>
<content type='text'>
- Fix vs_main return type (VertexOutput, not vec4&lt;f32&gt;)
- Fix #include paths in passthrough, gaussian_blur, heptagon, combined_postprocess
- ShaderComposer: assert + suggest correct path on missing #include (non-STRIP_ALL)
- VerifyIncludes: upgrade WARNING to ERROR + assert, add "did you mean?" hint

Co-Authored-By: Claude Sonnet 4.6 &lt;noreply@anthropic.com&gt;
</content>
</entry>
<entry>
<title>refactor(wgsl): Use vec*f alias for vector types</title>
<updated>2026-02-21T08:50:09Z</updated>
<author>
<name>skal</name>
<email>pascal.massimino@gmail.com</email>
</author>
<published>2026-02-21T08:44:17Z</published>
<link rel='alternate' type='text/html' href='https://git.taar-o.com/demo.git/commit/?id=de9bc553ed0e8bda42057ac441936c20a8185f60'/>
<id>urn:sha1:de9bc553ed0e8bda42057ac441936c20a8185f60</id>
<content type='text'>
Replaces all instances of `vec&lt;f32&gt;` with the more concise `vec*f` alias (e.g., `vec3f`) across all `.wgsl` shaders. This improves readability and aligns with common graphics programming conventions.

Also adds a new coding style rule to `doc/CODING_STYLE.md` to enforce this standard going forward.

Finally, this commit fixes a build error in `test_effect_base.cc` by replacing a call to the non-existent `wgpuDeviceTick` with `wgpuDevicePoll`, which resolves the test failure.
</content>
</entry>
<entry>
<title>split raymarching.wgsl in two: with id, or without id.</title>
<updated>2026-02-21T08:33:40Z</updated>
<author>
<name>skal</name>
<email>pascal.massimino@gmail.com</email>
</author>
<published>2026-02-21T08:33:40Z</published>
<link rel='alternate' type='text/html' href='https://git.taar-o.com/demo.git/commit/?id=1dad17db104f671aa0e913143a95826078892ed5'/>
<id>urn:sha1:1dad17db104f671aa0e913143a95826078892ed5</id>
<content type='text'>
</content>
</entry>
<entry>
<title>misc updates</title>
<updated>2026-02-15T10:40:15Z</updated>
<author>
<name>skal</name>
<email>pascal.massimino@gmail.com</email>
</author>
<published>2026-02-15T10:40:15Z</published>
<link rel='alternate' type='text/html' href='https://git.taar-o.com/demo.git/commit/?id=aa58489ffb597fc981fd779e9ce8b54f32e48197'/>
<id>urn:sha1:aa58489ffb597fc981fd779e9ce8b54f32e48197</id>
<content type='text'>
</content>
</entry>
<entry>
<title>feat(gpu): add two-pass raymarching infrastructure</title>
<updated>2026-02-14T18:21:05Z</updated>
<author>
<name>skal</name>
<email>pascal.massimino@gmail.com</email>
</author>
<published>2026-02-14T18:21:05Z</published>
<link rel='alternate' type='text/html' href='https://git.taar-o.com/demo.git/commit/?id=c98286860885d1f025cd8cf9da699f174118ccba'/>
<id>urn:sha1:c98286860885d1f025cd8cf9da699f174118ccba</id>
<content type='text'>
Add RayMarchResult struct and functions for deferred SDF rendering:
- rayMarchWithID() tracks object ID and distance_max
- reconstructPosition(), normalWithID(), shadowWithStoredDistance()
- Pass 1: store geometry data, Pass 2: reuse for shading

Add WGSL style rule: prefer return values over pointers for small structs (≤16 bytes).

Co-Authored-By: Claude Sonnet 4.5 &lt;noreply@anthropic.com&gt;
</content>
</entry>
<entry>
<title>refactor(wgsl): modularize common shader functions</title>
<updated>2026-02-14T14:13:09Z</updated>
<author>
<name>skal</name>
<email>pascal.massimino@gmail.com</email>
</author>
<published>2026-02-14T14:13:09Z</published>
<link rel='alternate' type='text/html' href='https://git.taar-o.com/demo.git/commit/?id=e38be0dbf5816338ff97e2ee2f9adfff2902dc2b'/>
<id>urn:sha1:e38be0dbf5816338ff97e2ee2f9adfff2902dc2b</id>
<content type='text'>
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.
</content>
</entry>
<entry>
<title>Remediation: Implement shared common/shaders/ directory</title>
<updated>2026-02-13T07:34:24Z</updated>
<author>
<name>skal</name>
<email>pascal.massimino@gmail.com</email>
</author>
<published>2026-02-13T07:34:24Z</published>
<link rel='alternate' type='text/html' href='https://git.taar-o.com/demo.git/commit/?id=a109983c194c45ad85f0e481232bc605c7cfd85b'/>
<id>urn:sha1:a109983c194c45ad85f0e481232bc605c7cfd85b</id>
<content type='text'>
Eliminates 36 duplicate shader files across workspaces.

Structure:
- common/shaders/{math,render,compute}/ - Shared utilities (20 files)
- workspaces/*/shaders/ - Workspace-specific only

Changes:
- Created common/shaders/ with math, render, compute subdirectories
- Moved 20 common shaders from workspaces to common/
- Removed duplicates from test workspace
- Updated assets.txt: ../../common/shaders/ references
- Enhanced asset_packer.cc: filesystem path normalization for ../ resolution

Implementation: Option 1 from SHADER_REUSE_INVESTIGATION.md
- Single source of truth for common code
- Workspace references via relative paths
- Path normalization in asset packer

handoff(Claude): Common shader directory implemented
</content>
</entry>
</feed>
