Mall of Dreams — 5-story Meridian Galleria with food court, fashion, tech, art, and rooftop arcade
A 3D PORTAL demo: Meridian Galleria, a 5-story mall — F1 FOOD COURT (amber) · F2 FASHION (magenta AVALUNE/KITSUNE STREET/METRO LANE) · F3 TECH (cyan) · F4 ART (gallery white AURELIO MODERN/CHROMATIC/INK-AND-WATER) · F5 ROOFTOP ARCADE (sunset). Camera rides the glass elevator between floors every 60-75s with a NEXLOGIC cameo (Mr. Whitford coffees on F1).
What this is
A 3D recreation of Meridian Galleria, a five-story mall stacked vertically with each floor themed differently plus a five-story atrium hub. Floor 1 is the food court with warm-amber lighting and six fictional kiosks: pizza, sushi, ice-cream, coffee, smoothie, and pretzel, around a seating area with condiment-bar and return-trays. Floor 2 is fashion with runway-magenta lighting and three named boutiques: AVALUNE, KITSUNE STREET, METRO LANE, plus dressing rooms, shoe try-on bench, and a window display. Floor 3 is tech with cool-cyan lighting and a gaming store, electronics, wireless-carrier, repair kiosk, and a vintage-computer museum. Floor 4 is art with gallery-white lighting and three named galleries: AURELIO MODERN, CHROMATIC, INK-AND-WATER, plus a sculpture nook, bench, and gift shop. Floor 5 is the rooftop arcade with sunset-orange-purple lighting featuring mini-golf, batting cages, a retro arcade, a neon-signed rooftop bar, and a sunset deck. Twelve named shoppers visit multiple floors: Lou Park with kids Cassie and Reggie, teen pair Marisol and Tee, couple Cris and Dre, influencer Ren, solo gamer Vidal, mom Esi with toddler Ade, senior Mr. Whitford (a fun NEXLOGIC cameo from megacorp-30yr), and janitor Olaf. Twenty-one director cameras cycle: atrium fountain wide, glass elevator POV up and down, escalator side, food court wide, pizza counter close, fashion runway, dressing room reveal, tech gaming-store, vintage-computer close, art gallery wall, sculpture, rooftop mini-golf, batting cage, neon-bar, sunset deck, Olaf mop-cam, and drone-over-mall.
The mall remembers. localStorage saves which floors each shopper visited, bags purchased, dollars spent, and a day counter between reseeds. After ten minutes the next mall day begins; returning shoppers arrive with new shopping lists.
You don't play it. You watch it. And it remembers.
Why this is mind-blowing
The chyron is the secret weapon: "Cycle 5 — Lou Park buys 3 t-shirts at AVALUNE on Floor 2. Across the mall, Vidal beats his high score at Floor 5 arcade. Mr. Whitford coffees at Floor 1 before heading to NEXLOGIC." That single line stitches three floors in one beat — Lou on the fashion-runway camera at AVALUNE with three new shopping bags, Vidal on the rooftop-arcade camera celebrating his high score, and Mr. Whitford on the food-court coffee-counter close-up sipping before he leaves for NEXLOGIC, the same character from megacorp-30yr making a cross-demo cameo. Multiply that by 12 named shoppers, 100 instanced shoppers, 5 floors with their own palette and themed font, a glass-elevator-POV transition that actually feels like riding the elevator, and a localStorage memory that persists each shopper's bag count and dollar-spent across reseeds, and you've got a nostalgic-cozy stream that genuinely earns the comparison to a 1980s mall on a Saturday afternoon.
Prompt
Build a single-file HTML page that recreates "a 5-story mall where each floor is a different theme" as a continuous 3D autoplay world with PORTAL multiverse mechanics.
CONCEPT: MERIDIAN GALLERIA has 5 floors stacked vertically each themed differently: (1) FOOD COURT, (2) FASHION (3 boutiques: AVALUNE, KITSUNE STREET, METRO LANE), (3) TECH (gaming, electronics, wireless, repair, vintage-computer museum), (4) ART (3 galleries: AURELIO MODERN, CHROMATIC, INK-AND-WATER), (5) ROOFTOP ARCADE. Plus 5-story atrium with fountain + escalators + glass elevator. 12 named shoppers visit multiple floors.
Hard constraints:
- One HTML file, < 200KB.
- three.js r0.160.0 from unpkg, IIFE strict, full disposable cleanup, reseed every ~10 min.
- First body line: <!-- ROUND17_PORTAL v1 -->
- localStorage memory under key `meridian_mall_memory_v1` — saves which floors each shopper visited + bags-purchased + dollars-spent.
Round 17 PORTAL spec:
- 5 floors + 1 atrium hub = 6 worlds, each with own palette
- Portal travel via glass elevator + escalators. Camera rides between floors every 60-75s.
- 12 named shoppers cross floors with shopping bags accumulating
- 100+ named: 13 featured + 100 instanced + 94-name pool + 25 mall employees
- 21 director cameras
- Per-floor HUD: "FLOOR 3 OF 5: TECH · 47 SHOPPERS HERE · OPEN 'TIL 9:30PM"
- Cross-system chyron with NEXLOGIC cameo
Tone: nostalgic, cozy, friendly. No real brand names — all stores fictional. Cameo of Mr. Whitford from megacorp-30yr is OK.
Paste this into Claude, Cursor, or Copilot. Change one thing that matters to you.
What I learned shipping it
- How to portal a camera between 6 mall floors with a glass-elevator-POV transition that genuinely feels like riding the elevator
- How to give 12 named shoppers cross-floor continuity by tracking their bags + dollars-spent in localStorage
- How to do a fun crossover cameo (Mr. Whitford from NEXLOGIC megacorp coffees on F1) without breaking either demo's tone