Skip to content

Real-Time 3D & WebGL

3D in the browser, built to perform.

3D that renders live in the browser, fast enough for a phone.

Real-time 3D renders scenes live in the browser, so people can move through, rotate and interact with them on the devices they already have.

We use it where interaction helps people understand or remember. We aim for every effect to run well on an ordinary phone, test on real ones, and build fallbacks where an effect can’t.

What real-time 3D is

Pre-rendered 3D is like film, every frame calculated in advance. Real-time 3D is calculated as you watch, dozens of times a second, so you can orbit a product, fly across a landscape, change the lighting or ripple a surface with your cursor.

In the browser, it runs on WebGL, which every modern browser supports, and increasingly on the more powerful WebGPU. Libraries such as Three.js handle much of the complexity, and custom shaders (small programs on the graphics processor) control every pixel.

Why it’s practical now

3D on the web used to mean long loads, plugins and crashes on phones. Capable phone graphics, fast browser standards and much better model and texture compression changed that. A well-built scene now loads quickly and runs smoothly on an ordinary device.

Real-time 3D is still easy to build badly. Whether it delights or frustrates comes down mostly to the engineering discipline behind it.

Where we use it

  • Hero experiences: a memorable, responsive front door for a site.
  • Product and object viewers, where rotating something beats looking at photos.
  • Maps and terrain, where seeing a place from above, or flying through it, helps people plan.
  • Data in space, when three dimensions make information easier to grasp.
  • Games and playful moments, on a website or a venue’s big screen.
  • AR and camera effects, reusing the same models in social platforms and mobile browsers.

If a flat page would answer the question faster, we’ll build the flat page.

Every effect earns its weight

Performance is what makes real-time 3D worth doing:

  • Budget from the start. Model and texture sizes, object counts and a target frame rate on a target device, agreed before building.
  • Optimize the assets. Models simplified where detail won’t be noticed, modern texture compression, geometry reused wherever possible.
  • Write efficient shaders. Shaders can make beautiful effects cheaply, or expensive ones for no visible gain. We profile them and cut what doesn’t pay its way.
  • Adapt to the device. Less capable hardware gets less detail, resolution or effects: a smooth version, never a broken one.
  • Pause when unseen. Rendering stops when the scene is off-screen or the tab is hidden, saving battery.
  • Test on real devices. Actual mid-range phones throughout the build, because emulators don’t tell the full story.

Accessibility and fallbacks

A 3D scene can’t be the only way to get important information:

  • Key content is available as real text and standard controls, for screen readers, keyboards and search engines.
  • Reduced-motion settings are honoured where motion could cause discomfort.
  • Devices that can’t run the scene get a well-designed static or simplified version instead of an error.

From Blender to browser

Our pipeline usually starts in Blender, where we model, light and prepare scenes. Assets are exported in web formats, compressed and loaded into the browser, where lighting, materials and interaction are finished in code. Custom shaders often do the most distinctive work: a model you can draw on, surfaces that respond to sound or data, stylized looks impossible to pre-render.

Early on, we work through rough grey-box prototypes with the client. Interaction and shader tests built with AI-assisted code are cheap to change, so we learn whether an idea feels right before detailed modelling and polish.

Keeping it maintainable

Content baked into a 3D scene is hard to update. Labels, locations, products and copy that are likely to change stay outside the 3D assets in a CMS, so your team can update them without a developer.

Where we’ve done it

Related

Where this fits

Real-time 3D and WebGL is the engineering counterpart to 3D and spatial design, and powers much of our immersive web and generative work.