
3D & shaders
- Price
- from $5,000
- Timeline
- 3–6 weeks
- Experience
- 100+ projects · 10+ years · 9+ countries
Three.js WebGL scenes and custom shaders: particles, distortion, living backgrounds
- Three.js
- WebGL
- Nuxt
Our usual stack. We bring in other tools when the task or the project calls for it.
3D and shaders make a website unlike any other: a living background, particles that react to the cursor, objects that change as you scroll.
We write Three.js scenes and custom shaders, tune quality tiers to device performance and make sure the effect never gets in the way of speed or reading.
What we do
- Three.js scenes with camera, lighting and post-processing
- Custom shaders: particles, noise, distortion, transitions
- Scenes that respond to the cursor, scroll and page sections
- Quality tiers and frame-rate control
- 3D model integration and optimization
Jobs for 3D and shaders
Our product's 3D model weighs hundreds of megabytes and won't load
Retopology, baked textures, Draco and KTX2 compression. The model ships as glTF and loads in stages: a light version first, details after.
Our shader background looks like everyone else's: noise and a gradient
We write the shader around the brand idea: the shape of the mark, the palette, the texture of a material. Parameters go into a panel so the look can be dialed in right in the browser.
Particles and post-processing turn the scene into a slideshow
We move particle math to the GPU, trim post-processing passes and measure frame time at every quality tier. On weak devices the effect simplifies instead of stuttering.
On a Retina laptop the scene looks blurry or lags
We cap the pixel ratio and scale render resolution dynamically by frame time. The image stays sharp where it shows and doesn't eat the GPU.
The scene has to live in Nuxt or Next, but the demo is plain Three.js
We wrap the scene in a component with a proper lifecycle: init on mount, memory released on leave, no leaks between page transitions.
When a custom scene is worth it
A good fit if
- You need a living background or object no off-the-shelf effect library has
- You have a 3D model of the product and want it in the browser, no plugins
- Your site runs on Vue, Nuxt, React or Next and the scene must live inside it
- The effect should feel like your brand, not a recognizable marketplace template
Not a fit if
- Smooth reveals and transitions would do — see Animation & transitions
- You need a product configurator with hundreds of variants — that's a separate web app, scoped on its own
A scene that never gets in the way
Smoothness over polygons
We fit the scene's complexity to a steady frame rate, not the other way round: a stuttering effect is worse than none.The scene guides the page
Motion, color and shape change with each section and hint at where to look next.Always a fallback
If WebGL is unavailable or the device is weak, the page stays complete and good-looking.Tuned together with you
We expose the scene's parameters in a panel and dial in color, speed and density with you on the live page.
How we work
- 01
References and storyboard
2–3 daysWe collect references and describe how the scene responds to scroll, cursor and touch.
You get A scene storyboard and a list of interactions - 02
Shader prototype
1–2 weeksWe write the shaders and assemble a rough Three.js scene so you can judge the effect live.
You get An effect prototype you can open in the browser - 03
Models and scene
1–2 weeksWe create or clean up models, set the lighting and compress geometry and textures so the scene loads fast.
You get The final scene with glTF models and compressed textures - 04
Integration
3–4 daysWe embed the scene in the site and wire it to scroll and interface elements.
You get The scene running on a staging version of the site - 05
Performance
2–3 daysWe profile on low-end phones, tune quality tiers and add a static fallback for devices without WebGL.
You get Quality tiers, a static fallback and a 3-month bug warranty after launch
What we need for the scene
- References: sites, videos, art — with a note on what exactly you like
- 3D models in FBX, OBJ or glTF, if the scene is built around the product
- Your palette and the materials the scene should convey
- Repository access, if we're adding the scene to a live site
- Devices where the scene absolutely has to run smoothly
Ideas and references review
On a 30-minute call we go through the references and decide what's a shader and what's a model. Then a prototype plan, a timeline and an estimate.
Want a scene
that reacts
to the visitor?
We’ll write a Three.js scene and custom shaders that respond to cursor and scroll, with quality tiers so the page stays fast.
Yes, at a lighter quality tier: fewer particles and effects, the same character.
From $5,000. The cost depends on how many scene states and section transitions there are, whether you need 3D models or abstract shaders are enough, and how interactive it gets: cursor, scroll, sound. We quote after going through your references.
Yes: we define scene states for different blocks, and it flows between them as you scroll.
For complex models, yes; abstract scenes and shaders we create ourselves.
The scene loads after the main content and doesn’t block the first screen.