3D & shaders

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

Tools
  • 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
Challenges

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.

Is it for you

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
Approach

A scene that never gets in the way

  1. 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.
  2. The scene guides the page

    Motion, color and shape change with each section and hint at where to look next.
  3. Always a fallback

    If WebGL is unavailable or the device is weak, the page stays complete and good-looking.
  4. 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.
Process

How we work

  1. 01

    References and storyboard

    2–3 days

    We collect references and describe how the scene responds to scroll, cursor and touch.

    You get A scene storyboard and a list of interactions
  2. 02

    Shader prototype

    1–2 weeks

    We 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
  3. 03

    Models and scene

    1–2 weeks

    We 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
  4. 04

    Integration

    3–4 days

    We 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
  5. 05

    Performance

    2–3 days

    We 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
Getting started

What we need for the scene

What we need from you
  • 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
Before we start

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.

3D & shaders

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.

I'm interested in...
Project Budget

By clicking “Send Request”, you agree
to the Privacy Policy and Terms of Service

FAQ

Questions & answers

Contact us

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.

We are a world-class team of industry-leading professionals, who constantly push new technology