I built a 3D rocket launch simulator that runs in the browser using GPT-6 Astra, from one long prompt and one follow-up. The first run took about 23 minutes. The result is a single HTML file with staging, smoke, audio, quality settings, and camera controls that let you zoom and rotate around the rocket like a video game. In this tutorial I’ll show you exactly how I built it so you can try it yourself.
Prefer to watch? See the full walkthrough on YouTube. I build the whole thing on screen.
What you’re building
The simulator is a single index.html file built with three.js, the popular JavaScript 3D library. Everything, including the scene, the physics-style animation and the controls, lives in that one file. You open it in a browser, and it runs.
Here’s what my version ended up with:
- A Falcon-style booster lifting off with smoke and engine effects, plus stage separation.
- Restart, pause (space bar) and 2x speed controls.
- Audio, a graphics quality setting from low to high, and an engine illumination toggle.
- A frames-per-second counter, a debug mode and an option to hide the overlay.
- Mouse-wheel zoom and click-and-drag orbit controls, added with a follow-up prompt.
You don’t need to read the code. I couldn’t make much sense of the generated three.js either, and that’s fine for a demo like this.
What you need
- Access to GPT-6 Astra. I used it in the Codex terminal on a ChatGPT Pro plan. Usage limits depend on your plan.
- An empty project folder.
- A modern browser. A local server helps, but you can often open the file directly.
Step 1: Get the prompt
I didn’t write the prompt myself. I used the rocket launch task from BridgeBench, an open benchmark by BridgeMind. Its UI Bench asks models to produce one self-contained HTML file using three.js and no external assets for creative scenes. The rocket launch prompt runs to around 10,000 characters and spells out the scene, lighting, effects and performance targets in detail.
Other UI Bench tasks include fireworks, a snow globe and a koi pond, so there’s plenty to try once you’ve built this one.
Step 2: Run it in GPT-6 Astra
- Open your project folder in Codex (or your preferred Astra environment).
- Paste the full prompt and add a line like “Make a new directory for this project.”
- Set reasoning effort to medium. In my experience it’s a good balance of speed and depth. Switch to high only if the result falls short.
- Let it run. Mine took about 23 minutes and finished with its own checks: it rendered sample frames, tested the controls and reported no console errors.
Keep an eye on your usage while it runs. Astra is OpenAI’s most capable model and uses usage faster than Sol or Luna, so a long build like this is worth checking against your plan’s limits.
If you’d like guided Codex builds like this one, the Codex tutorials in AI Income Lab cover practical projects step by step.
Step 3: Preview and test
Open the generated index.html in your browser. Try every control: restart, pause, speed, audio, quality and debug mode. Make it full screen and watch the FPS counter. Mine ran at a decent frame rate at 1920×1080 on an ordinary Lenovo laptop, but your hardware will make a difference.
What the first build included
Before I added anything, the single prompt had already produced a lot. Astra named the file the Meridian 9 launch, saved as one index.html, and it came with these controls built in:
- Restart and replay so you can run the launch again from the pad.
- Pause with the space bar, and a 2x speed option to get through the climb faster.
- Audio that you can switch on and off.
- A graphics quality setting from high to low, which helps on slower machines.
- An FPS counter that stays visible in full-screen mode.
- Debug mode and an option to hide the overlay, so you’re left with just the rocket.
- An engine illumination toggle. To be honest, it didn’t change much in my run.
You can also watch the stages separate as the booster climbs, with the spent stage falling back to the ground and a trail of smoke below the rocket. In my run that was the part that impressed me most.
A look at the single-file code
Because everything lives in one HTML file, you can open it in any editor and read the Three.js code. I’ll be honest: it looks very complicated, and I can’t follow most of it. That’s really the point of this demo. You don’t need to write or understand the graphics code yourself. You describe what you want, Astra builds it and tests it, and you check the result in the browser.
If you want to learn from it, a good next step is to ask Astra to explain one part of the file at a time, such as how the camera works or how the sky is lit, rather than trying to read 10,000 characters’ worth of output in one go.
Other BridgeBench prompts to try
The rocket launcher is only one of the BridgeBench prompts. The same page also has prompts for a Minecraft-style clone and a Mario Kart-style game. They work the same way: copy the full prompt, paste it into Astra, and test what comes back. Next on my list for the rocket is adding clouds so the scene looks more realistic, because right now it doesn’t look fully 3D.
Step 4: Add zoom and orbit controls
The first version kept the camera too far away to see the rocket in detail. So I asked Astra for camera controls:
Add zoom in/out controls using the mouse wheel, and let me rotate the camera around the rocket by clicking and dragging.
That took about 5 to 10 minutes. Afterwards I could orbit the rocket, zoom right in on the engines and smoke, and pull back to watch the whole launch.
Step 5: Keep improving it
A first pass won’t be perfect. Mine didn’t look fully realistic, so my next prompts would be things like:
- “Add volumetric clouds the rocket passes through.”
- “Make the exhaust plume more realistic and brighter at night.”
- “Add a camera mode that follows the rocket after stage separation.”
Change one thing per prompt and test after each change. That makes it easy to spot which change broke something.
Common mistakes to avoid
- Using max effort by default. It’s slower and uses more of your limit. Start on medium.
- Asking for everything at once in follow-ups. Small, specific changes are easier to check.
- Skipping performance checks. A scene that runs smoothly on a laptop can stutter on a phone.
- Expecting identical results. The same prompt can produce a different scene each time, so your rocket won’t match mine exactly.
Got stuck or want feedback on your build? Share it in the AI Income Lab community.
Want help building this for your own business?
The video shows what’s possible. Inside AI Income Lab, the paid community from AI Automation Station, you get step-by-step courses, reusable templates, and a place to ask questions while you build. The courses walk you through builds like this one step by step. Over 2,900 members are already building with it, from $29 a month, and you can cancel anytime.
FAQ
Do I need to know three.js?
No. Astra writes the code. Knowing a little helps with debugging, but you can build this with prompts alone.
How long does it take?
My first run took about 23 minutes, and the camera controls took another 5 to 10. Your timing will vary.
Can I use a cheaper model?
You can try GPT-6 Sol. It’s much cheaper, though OpenAI positions Astra as its strongest model, so expect differences in quality.
Where does the prompt come from?
It’s the rocket launch task from BridgeBench’s UI Bench, which is published on GitHub.
Conclusion
With a detailed prompt and one follow-up, GPT-6 Astra can produce an interactive 3D rocket launch in a single HTML file. Grab the prompt, run it on medium effort, test every control, and improve it one change at a time. Watch the video above to see the full build.
If you’d rather not figure this out alone, AI Automation Station has a paid community for it: AI Income Lab. It’s where the courses, templates and help that go with these builds live, with 2,900+ members, from $29 a month, cancel anytime.
Leave a Reply