From be5b63ea000daca9458d7b92138ae36fabb9dd96 Mon Sep 17 00:00:00 2001 From: skal Date: Sun, 22 Mar 2026 19:31:50 +0100 Subject: feat(cnn_v3): Phase 4 — type-aware SDF in shadow pass MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit dfWithID() in gbuf_shadow.wgsl now branches on obj.params.x (ObjectType) instead of using sdBox for everything: 0=CUBE → sdBox(lp, vec3(1)) 1=SPHERE → sdSphere(lp, 1.0) 2=PLANE → sdPlane(lp, vec3(0,1,0), obj.params.y) 3=TORUS → sdTorus(lp, vec2(0.8, 0.2)) 36/36 tests pass. --- cnn_v3/docs/HOWTO.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'cnn_v3/docs/HOWTO.md') diff --git a/cnn_v3/docs/HOWTO.md b/cnn_v3/docs/HOWTO.md index 765d80b..5c5cc2a 100644 --- a/cnn_v3/docs/HOWTO.md +++ b/cnn_v3/docs/HOWTO.md @@ -106,7 +106,7 @@ outputs[1] → feat_tex1 (rgba32uint: mat_id, prev.rgb, mip1.rgb, mip2.rgb, s | Internal scene + animation | ✅ Done | cubes + spheres + 2 lights | | Pass 2: SDF shadow | ✅ Done | `gbuf_shadow.wgsl`, proxy-box SDF per object | | Pass 3: Transparency | ❌ TODO | low priority, opaque scenes only | -| Phase 4: type-aware SDF | ❌ TODO | optional refinement | +| Phase 4: type-aware SDF | ✅ Done | switch on `obj.params.x` in `dfWithID` | ### Pass 2: SDF shadow raymarching -- cgit v1.2.3