LIGHT. MATH. YOUR NEXT BUILD.
Terrain
A receding wire grid rolls gently toward the horizon. Pointer movement lifts the surface; clicks travel across it as light waves.
Category: Grid / perspective field.
Open Terrain in the live editor to customize its palette, motion, and supported camera controls. Use Take the code to download the configured kit after signing in. Complete membership access is free during the current launch offer.
Presets
- Horizon:
#0b1020,#334674,#a9c7f3 - Desert:
#171117,#76565d,#edc1a5 - Teal field:
#071719,#2b676a,#a6e8de
Shader and camera controls
- Speed (
speed): 0 to 2. Default:0.3. - Spacing (
gridSpacing): 16 to 100. Default:46. - Line width (
lineWidth): 0.3 to 3. Default:0.3. - Reach (
gridRadius): 40 to 320. Default:175. - Zoom (
scale): 0.3 to 3. Default:1. - Cursor strength (
interaction): 0 to 2. Default:0.9. - Click pulse (
pulseStrength): 0 to 2. Default:1. - Grain (
noise): 0 to 0.3. Default:0.003. - Fade in · ms (
fadeIn): 0 to 10000. Default:0. - Fade delay · ms (
fadeDelay): 0 to 5000. Default:0. - Image opacity (
overlayOpacity): 0 to 1. Default:0.5. - Glow (
glow): 0 to 1.5. Default:0.15. - Glow radius (
glowRadius): 2 to 40. Default:12. - Camera rotation (
cameraRotation): -180 to 180. Default:0. - Camera zoom (
cameraZoom): 0.3 to 4. Default:1. - Horizontal focus (
cameraX): -2 to 2. Default:0. - Vertical focus (
cameraY): -2 to 2. Default:0.
These ranges describe the published catalog version c95289cdaea2230a65b802c2a20a8e959bc7f32114546534d14a23440d831f21. The website editor can curate or lock particular controls. The live editor and the current MCP settings schema are authoritative for available actions. Existing saved configurations remain supported.
Integration example
Download this shader's kit before running the example. The runtime is a local file from that kit, not a public CDN or npm package.
import { createBackground } from './shader-background.js';
const background = createBackground(
document.querySelector('#background'),
{
"effect": "terrain",
"colors": [
"#0b1020",
"#334674",
"#a9c7f3"
],
"speed": 0.3,
"gridSpacing": 46,
"lineWidth": 0.3,
"maxPixels": 700000,
"maxFPS": 30
}
);
// On view teardown:
// background.destroy();
Give the host an explicit size, preserve applicable stage CSS from the exported example, and keep content above the decorative canvas. JavaScript, React, and Next.js guides explain integration.
Motion, assets, and licensing
Test the finished page on your target devices, respect reduced motion, and use a pause control for persistent animation. Keep the license and notices included in your kit. Uploaded imagery needs its own usage rights. See performance and licensing.
