A modernized local rebuild of Polygon Shredder: a WebGL / Three.js particle sculpture that turns dense fields of box fragments into a flowing, confetti-like form.
This version keeps the original piece as the reference point, but updates the runtime to a modern Vite + ES modules setup and adds a more usable control surface for local experimentation, previews, and exports.
- Live demo: proto.lucidity.design/sites/polygon-shredder
- Modern Vite-based setup with current
threemodules - Original-inspired default motion shape and palette
- Projected hard-light texture path restored without showing a visible spotlight object
- Expanded controls for motion, camera, lighting, density, and color presets
- Randomizers for motion, lighting, colors, and full-scene variation
- URL state sharing
- Built-in
savePngandsaveGifexports - Production build that works from a subdirectory rather than assuming domain root
- Move the mouse to steer the field when
followMouseis enabled - Drag to orbit the camera
- Scroll to zoom
- Press
Spaceto pause or resume - Open the controls panel to adjust motion, density, lighting, colors, demo mode, and export actions
npm installnpm run devnpm run buildnpm run previewsrc/main.js: app bootstrap, controls, presets, exports, and rendering loopsrc/Simulation.js: particle simulation render targets and reseeding logicsrc/shaders.js: simulation, particle, and shadow shadersvite.config.js: Vite config, relative base, and chunking
- Inspired by The Polygon Shredder by Jaume Sanchez / spite
- Curl noise GLSL reference: cabbibo/glsl-curl-noise

