Light Study
A field for attention.
The premise
Light can be an interface.
Light Study began with a simple question: what if the atmosphere around a brand could carry as much intention as the mark itself?
The result is a calm, responsive surface built from a single source line. It borrows from light rays, bioluminescent water and quiet organic forms, then turns those references into a system for attention.
A living surface
Organic without becoming ornamental.
The field is deliberately restrained. Its endpoints shimmer like distant organisms, while the rays keep a clear relationship to the source. Motion gives the surface life; hierarchy gives it purpose.
The structure
From source to atmosphere.
The colour system
Four moods, one material.
Each state has a light and dark expression, but the underlying material stays coherent. Morrow opens the field, Ember warms it, Signal sharpens it, and Nocturne lets the atmosphere become complete.
The interaction
The pointer is a collaborator.
Pointer movement does not drag the image around. It gives nearby endpoints a reason to move, with depth-aware repulsion and a spring that returns the field to its exact resting structure.
The implementation
Built with restraint.
const candidates = fibonacciSphere(810).map((direction, index) => ({
direction,
length: seededRange(index, 2.75, 3.75),
}));
const visible = candidates.filter((ray) => cameraContains(project(ray)));const influence = squaredFalloff(distance, radius);
const direction = normalize(screenDirection * 0.85 + radial * 0.15);
velocity += direction * influence * depthStrength;
velocity += displacement * nonlinearReturn(displacement.length);if (visible && finePointer && webglAvailable) {
createScene();
} else {
retainCssAtmosphere();
}Three.js is used as a narrow instrument: local, capability-gated, visibility-bound and disposable. The essential experience remains HTML, CSS and a field that still reads when the canvas is absent.
A point of view