Case study 023D in the browserCroatiaLive
Kroz
Interactive 3D for selling apartments before they are built.
Buyers walk through a flat that is still being built. Kroz rebuilds the property from the architect's plans, renders photoreal 360° rooms and runs as real-time 3D in any browser, phones included. It is our own product.
- 20 to 3.5 MBtypical apartment model
- Any browserno plugins, phones included
The brief
A flat buyers can walk through before it exists.
Developers sell apartments before they are built. Kroz turns the architect's plans into a photoreal flat that buyers explore on their own phone or laptop. We built the whole chain: a Blender pipeline scripted in Python, Cycles panoramas, an asset diet, and a three.js viewer developers can embed in their own website.
System map
How it fits together
- 1From plans to a modelBlender, scripted in Python and run headless, rebuilds the property to measured dimensions
- 2Render, then shrinkCycles panoramas per room, meshopt and WebP, every panorama cut to 6K, 4K and 1K
- 3A viewer that runs anywherethree.js on Cloudflare Pages: orbit, lift the roof, walk room to room
- 4Three hard partsMaking photoreal fit in a phone
Three hard parts
Making photoreal fit in a phone
Small enough for a phone
It has to work on a phone. Meshopt mesh compression and WebP textures take a typical apartment model from 20 MB to 3.5 MB before it reaches the browser.
Panoramas on demand
Nobody should wait for rooms they never visit. Each room comes as 6K for desktops, 4K for phones and 1K as a preview, loaded only when needed.
A low-power path
Not every buyer has a fast laptop. Touch-first devices and machines with four cores or fewer skip post-processing, and phones get about half the foliage.
On screen
What a developer gets: rooms like these



Stack
- Python
- Blender
- Cycles
- meshopt
- WebP
- three.js
- Cloudflare Pages
Our role: our own product, built from scratch.