Become a sponsor to lampmaker
Hi, I'm Matthijs Keuper, an engineer and an artist in the Netherlands.
For about thirty years I've worked with light: LED systems, nonimaging optics, photobiological safety, and hardware
taken to production at Philips, Lumileds and my own companies, with 25+ patents. In my studio,
code+wood, I combine software, AI, lasers and robotics with old techniques. I make
laser-engraved wood filled with hand-mixed oil paint, relief prints pulled on a 60-year-old proof press, generative
series, and a robot that's learning to paint.
The two meet in my tools. My erosion landscapes needed a path tracer. Luminaire design needed one that tells the truth
in lux and candela. Nothing affordable did both, so I'm building ShadyTracer.
ShadyTracer: physically based light in the browser
A scene builder and path tracer on WebGPU. Nothing to install, and it runs on your own graphics card.
- Model with signed distance fields: primitives, blends, sweeps, extrusions, imported STEP and STL parts
- Render physically: dispersion, thin-film coatings, depth of field, haze, keyframe animation
- Measure in lumen, lux, candela and CCT: lenses, reflectors, light guides, ray-file import, far-field and
illuminance charts, and STL export to print what you designed
It's for designers who want a picture they can trust and engineers who want the numbers behind it, and it's the
same scene for both. Try it →
What your sponsorship does
I make art and software part-time, which keeps both free of anyone's roadmap but my own. Your sponsorship keeps
ShadyTracer free for students, makers, artists and hobbyists. It pays for new features, speed, documentation,
examples and bug fixes, and for the hours that go into them.
Featured work
-
lampmaker/CODEANDWOOD-TOOLKIT
The code+wood toolkit: small JavaScript utilities for arrays, colour, SVG and paths, each with an HTML example.
JavaScript -
lampmaker/ShadyTracer
Physically based light in the browser: a WebGPU path tracer in real units (cd/m², lux), with a scene builder, a measuring tool and an optics bench for LED and luminaire design. Nothing to install.
JavaScript 30 -
lampmaker/tinywebgpu
A tiny WebGPU framework where one JS object is the single source of truth for uniforms and resources — WGSL structs, binding indices and buffer offsets are generated. Fullscreen WGSL shaders, compu…
JavaScript 1 -
lampmaker/GUISTUFF
Tweakpane add-ons as plain ES modules with no build step: a property table, a tree view and a split-pane container. ShadyTracer's properties and scene tree are built on them.
JavaScript