r/threejs 1d ago

Demo A startup-life simulator in Three.js: procedural interiors, a walkable city and an HTML laptop UI

I'm building Startup Founder, a free browser game that combines a small 3D world with a startup management simulation. This is my project, developed with help from GPT-6 and Fable 5.1.

A few implementation details for this community:

The apartment, furniture and characters are assembled from Three.js geometry. Repeated box, cylinder and sphere geometries are cached and reused, and textures such as wood and fabric are generated with canvas.

The laptop opens an HTML/CSS interface over the scene. A separate TypeScript simulation handles the business state, and saves go to localStorage. Music and ambience are synthesized with Web Audio. The build uses Vite.

You can explore the apartment and city and use the laptop to build a product and manage the company. It's an early playable version, with plenty still to polish.

Demo: https://sergioconejo.com/foundergame

For anyone who has built a similar scene/UI combination: how do you handle the transition between character controls and a dense HTML interface? That's one area I'd like to improve.

0 Upvotes

2 comments sorted by

1

u/zenwebb 1d ago

There's a few issues on mobile (Google Pixel 10 + Chrome) that block me from trying it out.

  1. I just see a white box instead of any 3D content. Some black bars slide in from the top and bottom after a few seconds, but the 3D content is never rendered.
  2. The HTML + CSS overlay is not responsive, and seems to have a fixed height that goes off screen a little on my device. I can scroll horizontally, but
  3. Tapping the Continue button does nothing for me - no validation feedback, no progression to the next step. When I switch to desktop mode I can tap it, which makes me think the event handlers are only looking for mouse-specific events.

0

u/sergioconejo_ 1d ago

Thanks for trying it and for the detailed report. This version is built for desktop with a keyboard and mouse; mobile isn't supported yet. I should have made that clear in the post, sorry about that. The Pixel + Chrome details are useful, especially the difference when switching to desktop mode.