Skip to main content
Home
GrN.dk

Main navigation

  • Articles
  • Cases
  • Services
  • Your Digital Project Manager
  • About Greg Nowak
  • Image Gallery
  • Contact
User account menu
  • Log in

Join my community / free newsletter — sign up here

Breadcrumb

  1. Home
  2. Cases

A crystal hall rendered live in the browser — then profiled until it ran everywhere

Client
GrN.dk — demo shelf (demo.grn.dk)
Sector
3D on the web / product presentation
Period
August 2026

demo.grn.dk/kristallsaal ↗

The Kristallsaal entrance view: a dark exhibition hall with cones of light from the ceiling, a mirror-polished floor, and the title card 'Kristallsaal — ein 3D-Erlebnis in geschliffenem Kristall' over the walkway.

At a glance

Kristallsaal is a walk-through jewellery hall that runs entirely in the browser: six vitrines of cut-crystal pieces under museum lighting, a mirror-polished floor, and light that actually splits into colour inside the stones. There is no engine download and no build pipeline — one HTML file, one JavaScript module and Three.js, served as static files. It exists to answer a client question with a demo instead of a slide: what does "3D product presentation on the web" feel like at the high end?

Real dispersion — light splits into colour inside the cut stones (Three.js r185)
GPU-profiled performance tiers: the mirror floor goes first, the crystal goes last
Static deploy: one HTML file + ~90 KB of app JS, no build step, no engine download

The challenge

Real-time crystal is one of the hardest materials the browser can be asked to draw. Faceted refraction, dispersion (the rainbow fire inside a cut stone) and a mirror floor are all expensive effects, and the audience for a piece like this — a jeweller's customers — will open it on whatever device they happen to hold. A demo that is beautiful on a gaming PC and a slideshow on a mid-range phone would prove the opposite of what it is meant to prove.

The solution

A vanilla Three.js (r185) build: physically-based crystal with real dispersion, an HDRI-lit hall, post-processing bloom, and a guided walk between vitrines — around 90 KB of application JavaScript on top of the library, loaded through an import map. No bundler, no framework; the whole piece deploys as static files like the rest of the demo shelf.

Then the unglamorous half: the scene was GPU-profiled and given explicit performance tiers. The renderer measures what the device can sustain and degrades in a chosen order — the mirror floor is the first luxury to go, the crystal itself is the last — so a phone gets a simpler hall rather than a broken one. The tier logic was tuned against measured frame rates, not guesses.

The results

The hall runs from desktop workstations down to modest phones, holding its look where the GPU allows and degrading in the intended order where it does not. It shipped through the same card-driven AI delivery loop as everything else here — wow-factor pass, accessibility pass (44 px touch targets), and a cache-busted version badge for every deploy.

As a sales artefact it does its job in the first five seconds: instead of describing what browser 3D could do for a product, it hands the client a URL.

  • three.js
  • WebGL
  • 3D
  • Custom Development
  • AI agents

Got a project that needs the same kind of hands-on delivery?

Your digital project manager

Review Greg on Google

Greg Nowak Google Reviews

 

Written recommendations from Trafik og Veje, Aarhus Municipality (2011) and AgroTech (2010) — read them on LinkedIn.

Illustrated infographic summarizing: WordPress 7.1 Exposes AI-Ready Actions. Who Gets to Run Them?
WordPress 7.1 Exposes AI-Ready Actions. Who Gets to Run Them?
2026-09-02

WordPress 7.1 helps AI agents discover and invoke site abilities. Here is how to keep exposure, authentication and permission firmly separate.

Illustrated infographic summarizing: From Sales Meeting to CRM: Automate Follow-Up Without Compromising Data Quality
From Sales Meeting to CRM: Automate Follow-Up Without Compromising Data Quality
2026-09-01

How to use AI for meeting notes and follow-up while fixed rules protect CRM data, customer matching and the sales pipeline from errors and premature changes.

Illustrated infographic summarizing: Your AI Gateway Can Name the User. Decide What That Log Is For
Your AI Gateway Can Name the User. Decide What That Log Is For
2026-08-31

Identity-aware AI Gateway logs can sharpen security and cost control, but only when attribution, access, retention, guardrails, and response are clearly defined.

Illustrated infographic summarizing: Zero Data Retention Is a Workflow Audit, Not a Checkbox
Zero Data Retention Is a Workflow Audit, Not a Checkbox
2026-08-30

Zero Data Retention covers the provider, not every copy in your stack. See how to audit endpoints, logs, storage, deletion and project-level controls.

Illustrated infographic summarizing: MCP 2026-07-28 Is an Auth Migration, Not a Version Bump
MCP 2026-07-28 Is an Auth Migration, Not a Version Bump
2026-08-29

MCP’s July 2026 release removes protocol sessions and tightens OAuth. Here’s a practical plan for migrating clients, servers and enterprise access safely.

Illustrated infographic summarizing: Turn a Technician’s Voice Note into a Work Order—Not Raw Audio
Turn a Technician’s Voice Note into a Work Order—Not Raw Audio
2026-08-28

Voice input can reduce the technician’s documentation burden when hours, materials and status are validated before the information is saved in the work order system.

Illustrated infographic summarizing: ChatGPT Disabled Personal Knowledge Sync. What Broke on Your Team?
ChatGPT Disabled Personal Knowledge Sync. What Broke on Your Team?
2026-08-27

ChatGPT retired personal sync connections for Enterprise and Edu. Here is how to find affected workflows, migrate access, and test permissions.

Illustrated infographic summarizing: Cloudflare’s September Bot Defaults Could Quietly Cut AI Visibility
Cloudflare’s September Bot Defaults Could Quietly Cut AI Visibility
2026-08-26

Cloudflare’s September bot defaults give publishers more control, but one training block could also cut search crawling and AI-driven discovery.

Illustrated infographic summarizing: Does Your AI Chatbot Clearly Identify Itself?
Does Your AI Chatbot Clearly Identify Itself?
2026-08-25

The EU’s transparency requirements for AI chatbots now apply. Here is how to make your bot’s identity clear, limit its system access and provide a genuine route to a member of staff.

Illustrated infographic summarizing: Should publishers add Google’s new Preferred Sources button?
Should publishers add Google’s new Preferred Sources button?
2026-08-24

Google’s Preferred Sources button is worth a controlled test for eligible publishers, with careful choices around placement, performance and measurement.

More articles
RSS feed

Footer

  • All articles
  • Contact

GrN.dk — AI automation, web platforms, web optimization, data handling and logistics.

© 2026 GrN.dk · LinkedIn · Contact · AI automation in Danish: nowa.dk

Behind GrN.dk: Individual Entrepreneur Codecrafter · Tax ID 305669096 · Bakhtrioni St. 22, 0194 Tbilisi, Georgia · official business register