PointerLitBusts

Three helmeted busts in a dark room, lit by the cursor carrying the only lamp.

move the cursor to light them

Paste into Claude Code, Cursor or any agent. Pinned to a tag, so it will not change under you.

Options

lamp 26

0 to 120

Brightness of the lamp the cursor carries.

lampColour #ffe9c9

css colour

Colour of the lamp. Warm, so it reads as a lamp rather than as a screen.

reach 3.2

0.5 to 10

How far in front of the busts the lamp sits.

sweep 7

1 to 20

How far the lamp travels across the scene.

rim 0.5

0 to 3

The edge that keeps a form present when the lamp is elsewhere.

rimColour #6f86b8

css colour

Colour of the rim, which is the room rather than the lamp.

room #0a0a0c

css colour

The ground the busts stand in.

parallax 0.35

0 to 2

How far the camera drifts against the cursor. Zero holds it still.

polish 0.42

0 to 1

How polished the shell is. Low is stone, high is lacquer.

What it needs

Category
Pointer, an effect
Dependencies
three@>=0.160.0
Browser
WEBGL2
Frame budget
~2.5 ms · 1 context
Pinned to
v0.13.0
  • The forms are generated rather than loaded. A prompt here hands over source, and a decimated head scan is several megabytes of binary nobody can read, review or tune. A lathe profile and three primitives is a few hundred numbers and every part of it can be changed by somebody who has never opened a 3D tool
  • The light moves in the world, on a plane in front of the busts, rather than in screen space. A light pinned to the cursor in two dimensions lights everything from the same angle wherever it goes, so the shading never changes and the scene reads as a flat image with a bright patch on it
  • There is always a little rim light. On a dark ground an unlit form is not subtle, it is absent, and a reader who moves the cursor somewhere empty concludes the page is broken
  • No shadow maps. A moving light and three solids is the case where real shadows look obvious and cost a second render pass every frame, and at this scale the shading says most of what a shadow would have
  • One render pass, three lathes and a few primitives, no shadow map and no post