Commit graph

4 commits

Author SHA1 Message Date
fc752cfa0c README: precise lineage — Whitted with stochastic sampling, not path tracing
'Path tracing' in graphics literature means Monte Carlo solution of the
rendering equation, with random hemisphere sampling at every diffuse
surface and indirect light transport. card.cc has none of that — the
floor branch in S() returns immediately with a flat ambient term and
casts no new rays. What it actually does is Whitted-style recursive
specular reflection (mirrors only), with distribution-style stochastic
sampling layered on top for soft shadows, depth of field, and AA.

Group the stochastic features (soft shadows, DOF, AA) under that
qualifier; keep mirror reflections, checker floor, and sky gradient
as separate non-stochastic features.
2026-05-28 14:06:55 +02:00
2af36e2ac0 README: soften 'Kensler designed for 1337' claim to an observation
The previous wording asserted design intent ('Kensler golfed [...] until
it hit the magic number', 'every typedef exists to land on 1337') without
a primary source. CLAUDE.md requires factual claims in committed artifacts
to be checked. The byte count is verified; intent is not. Rephrased to
note the observation ('suspiciously round', 'rarely lands by accident')
without claiming insight into the design process, and the obfuscation
breakdown is kept since the techniques are visible in the code itself.
2026-05-28 14:01:33 +02:00
a18f68badb README: lead with the 1337-byte 'leet' fact
The exact byte count is the whole punchline — surface it explicitly with
a verifiable wc -c invocation rather than hiding it as '~1337 characters'
in a subordinate clause.
2026-05-28 13:52:13 +02:00
f8b7ff475c Initial commit: business card raytracer with explanation
Preserves Andrew Kensler's original card.cc verbatim and adds:
- CMakeLists.txt building both the original and a de-obfuscated
  variant (card_explained.cc) that produces a visually identical render
- A heavily annotated rewrite explaining the vector ops, ray-sphere
  intersection, soft shadows, depth of field, and reflection recursion
- Rendered sample output (docs/aek.png) embedded in the README
- CLAUDE.md establishing the "never modify card.cc" rule for future work
2026-05-28 13:47:50 +02:00