Photonica / docs

Get it running,
then take it apart.

Everything here is the actual manual — install, the controls, every built-in demo, and how an AI assistant drives the bench over MCP.

01 / Install

Unzip and run.

Windows 10 or 11, 64-bit, and a GPU with DirectX Raytracing 1.1 — an RTX-class NVIDIA card, AMD RX 6000-series or newer, or Intel Arc. No installer, no account. Unzip the download and run Photonica.exe. Start from the Demos menu.

Video export uses ffmpeg if it's on your PATH (winget install Gyan.FFmpeg); without it, renders come out as image frames instead of an mp4.

Download for Windows · 1.4 MB ↓

02 / Controls

The bench responds
to your hands.

LMB dragmove the selected part
Shift + dragmove along the beam
Gizmo arrows / ringsmove or rotate — G / W toggle them, L switches global / local
Q / Eyaw · R / T pitch · V / B roll (hold Shift for 0.1°/1 mm steps)
Ctrl + click a beaminspect that ray, surface by surface
RMB dragorbit the view · MMB drag pans · wheel zooms
Fautofocus the measured screen
Zframe the whole bench
Ptoggle photoreal rendering
Ctrl + Z / Ctrl + Yundo / redo
Ctrl + Ssave the bench
Delremove the selected part

03 / Demos

Seventeen benches, already built.

Every demo is a real, working bench — dispersion, diffraction, polarisation, lens design, a Zemax import, a full achromat design walk-through. Open one from the Demos menu and start dragging parts.

Chromatic focusPrismPrism and lensDark Side of the MoonDiamond fireRainbow in a dropNewton's prismsBall-lens causticBeam splitter kitAchromat (.zmx import)Asphere (.zmx import)Double slitThree polarisersGrating spectrometerLight in flightOptimise a singletDesign an achromat

04 / Assistant control (MCP)

Let an AI
hold the tweezers.

Photonica ships photonica-mcp.exe, an MCP server that drives the open app — the same interface the validation suite used to run all 33 checks. It builds benches, reads measurements, traces rays, optimises and tolerances lenses, takes screenshots, and renders video.

# Claude Code
claude mcp add photonica -- "<folder>\photonica-mcp.exe"
// Claude Desktop — claude_desktop_config.json
"mcpServers": {
  "photonica": { "command": "<folder>\\photonica-mcp.exe" }
}

It works on the bench that's already open — starting Photonica if it isn't running — and it's local to your machine. Switch it off any time under View → Allow assistant control.

get_state / measurethe whole bench, or just the numbers: focus, spots, chromatic shift, detector power
add_part / update_part / remove_partlenses, prisms, mirrors, polarisers, gratings — position, curvature, glass, tilt
add_screen / update_screen / update_sourcescreens and the light source: type, spectrum, polarisation, beam shape
inspect_raytrace one beam line surface by surface — angles, Fresnel R/T, arrival time, the Stokes vector
autofocus / optimize / tolerancemove a screen or lens to best focus, run the damped least-squares optimiser, run Monte-Carlo tolerancing
light_in_flightfreeze or play the travelling pulse, and choose what the screens show
set_camera / screenshot / render_videoframe the viewport, grab a still, or render the timeline to mp4
save_project / open_project / undo / redothe usual — plus an assistant can undo its own edits

05 / Community

Share a bench,
open one back.

A .photonica file is a plain JSON project — parts, glasses, camera, timeline, all of it. Community → Share this bench uploads yours; Community → Browse opens what other people have shared, straight into the app.

Get Photonica

Choose your path.

Windows · 1.4 MB ↓Validation report ↗GitHub ↗