<feed xmlns='http://www.w3.org/2005/Atom'>
<title>demo.git/common/shaders/math, 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>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>refactor(wgsl): Factorize getScreenCoord helper</title>
<updated>2026-02-21T07:42:13Z</updated>
<author>
<name>skal</name>
<email>pascal.massimino@gmail.com</email>
</author>
<published>2026-02-21T07:42:13Z</published>
<link rel='alternate' type='text/html' href='https://git.taar-o.com/demo.git/commit/?id=25dc87528915fb0fd89181333324b215d77ad014'/>
<id>urn:sha1:25dc87528915fb0fd89181333324b215d77ad014</id>
<content type='text'>
Factorizes the screen coordinate calculation from scene1.wgsl into a reusable getScreenCoord function in common/shaders/math/common_utils.wgsl.

This improves code reuse and simplifies fragment shaders.
</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>refactor(wgsl): consolidate SDF shapes into single common file</title>
<updated>2026-02-14T14:26:55Z</updated>
<author>
<name>skal</name>
<email>pascal.massimino@gmail.com</email>
</author>
<published>2026-02-14T14:26:55Z</published>
<link rel='alternate' type='text/html' href='https://git.taar-o.com/demo.git/commit/?id=0127c747a41f972fd68e3e6e6b472859bfdb80dd'/>
<id>urn:sha1:0127c747a41f972fd68e3e6e6b472859bfdb80dd</id>
<content type='text'>
Merge sdf_primitives.wgsl into math/sdf_shapes.wgsl to eliminate
duplication and establish single source of truth for all SDF functions.

Changes:
- Delete common/shaders/sdf_primitives.wgsl (duplicate of math/sdf_shapes.wgsl)
- Add sdBox2D() and sdEllipse() to math/sdf_shapes.wgsl
- Update ellipse.wgsl (main/test) to use #include "math/sdf_shapes"
- Update scene1.wgsl to use math/sdf_shapes instead of sdf_primitives
- Rename asset SHADER_SDF_PRIMITIVES → SHADER_SDF_SHAPES
- Update shader registration and tests

Impact:
- ~60 lines eliminated from ellipse shaders
- Single source for 3D primitives (sphere, box, torus, plane) and 2D (box, ellipse)
- Consistent include path across codebase

All tests passing (34/34).

handoff(Claude): SDF shapes consolidated to math/sdf_shapes.wgsl

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>
