Google Antigravity  ·  Live Deck
← Essay Talks 01 / 12

Building 3D Worlds with Voice & Agents.

How we co-authored a live 3D sandbox game in plain spoken English.

+  Gemini 3.5 Flash
02 / System Architecture
← Essay 02 / 12
Client-Side Runtime

Voice to Scene in Real Time.

  • Live Scene Evaluation: Gemini returns Three.js code blocks that run directly against the active WebGL scene while the game keeps running.
  • Frame-Loop Hooks: A global window.customTicks array lets generated code animate meshes and check distances every frame.
  • Go Proxy: A lightweight Go router handles API calls, cleans payloads, and enforces rate limits.
  • Fixed JSON Schema: Every response conforms to { say, js } so spoken feedback and 3D updates land together.
BROWSER · THREE.JS WebGL Render Canvas Scene graph & camera loop Physics & State Gravity, speed & collisions window.customTicks [] Per-frame hooks & triggers Scene Evaluator Applies generated Three.js Web Speech API Live voice transcript GO PROXY Static Asset Server Rate-Limited API Gateway GEMINI Structured JSON Output Three.js Code Synthesis
03 / Meet the Developer
← Essay 03 / 12
Lead Developer Gemma
Click to Reveal
Lead Developer
04 / The Developer
← Essay 04 / 12
Voice-Based Building

Meet Gemma.

My daughter Gemma is five. She built the entire 3D game by talking to Antigravity.

  • Zero syntax: She didn't write a single line of JavaScript, HTML, or CSS.
  • Spoken specs: Talked directly to the agent to shape worlds, speed boosts, space flight, and rules.
  • Physics opinions: Insisted the car go higher in space and feel lighter on the Moon.
+  Gemini 3.5 Flash
05 / Gameplay
← Essay 05 / 12
Smoosh Patrol gameplay
Live 3D gameplay built by voice.
06 / Iteration
← Essay 06 / 12
The Pace of a Five-Year-Old

"I want it to do whatever I want."

Gemma's session was a nonstop stream of ideas: new physics, new colors, and animal shapes on the fly.

  • Rapid loops: From a police car to space flight, Moon gravity, and balloons that pop on impact.
  • The laptop problem: Antigravity ran in the IDE on my laptop, so every new idea locked me out of my own computer.
01
Cop car "spawn a cop car"
02
Space flight "make me fly to space"
03
Tiger mode "turn the car into a tiger"
04
Balloons "add colorful balloons"
07 / The Pivot
← Essay 07 / 12
Getting My Laptop Back

"Why don't we put Gemini directly inside the game?"

Move the loop out of my IDE and into the running game through an on-screen voice HUD. She got her own tool. I got my laptop back.

Dad's Laptop IDE → In-Game Voice HUD
08 / How It Works
← Essay 08 / 12
Three Steps in the Browser

Click each step to trace a spoken command into the running Three.js scene.

01 / Listen

Capture intent

Web Speech API turns what she says into live subtitle text.

"Make the cop car a tiger"
→
02 / Generate

Write the code

Gemini returns a fixed JSON schema: a spoken reply and Three.js code.

{ say: "Roar!", js: "..." }
→
03 / Inject

Run it live

The game evaluates the code against the live scene while she keeps playing.

eval(compiled_js)
09 / Under the Hood
← Essay 09 / 12
Generated Three.js

"Turn the car into a tiger."

The actual code Gemini wrote and injected into the running game when Gemma asked for tiger mode.

// 1. Clear original cop car meshes
while (window.carGroup.children.length > 0) {
  window.carGroup.remove(window.carGroup.children[0]);
}

// 2. Build tiger body
const body = new THREE.Mesh(
  new THREE.BoxGeometry(1.6, 1.0, 3.2),
  new THREE.MeshStandardMaterial({ color: 0xffaa00 })
);
window.carGroup.add(body);

// 3. Add stripes along the back
for (let i = -1; i <= 1; i++) {
  const stripe = new THREE.Mesh(...);
  window.carGroup.add(stripe);
}
10 / Living Scene
← Essay 10 / 12
Frame-Loop Hooks

Making Things Happen.

Changing shapes wasn't enough. Gemma wanted behaviors, so we let Gemini push functions into the render loop.

  • window.customTicks: Runs generated logic on every frame.
  • Proximity checks: Triggers events when the player drives near an object.
  • Canvas textures: Draws 2D signs like "CAR WASH" onto 3D billboards on the fly.
Render Loop customTicks[]
distance < 10m WASH
11 / Live Demo
← Essay 11 / 12
Try It in the Browser

Let's Play.

Talk to the game and watch Gemini rewrite the 3D scene while you drive.

Play Smoosh Patrol →
Live Smoosh Patrol demo
12 / What Changed
← Essay 12 / 12
Anyone With a Voice

From Writing Code to Directing Intent.

A five-year-old programmed a 3D game by talking. For those of us who build software for a living, the work shifts to reviewing what agents wrote and setting the boundaries.

01
Lower floor
Anyone with a voice can build software.
02
Higher ceiling
The systems we can build get much bigger.
03
Co-creation
Working together means directing agents together.