oneshotlm
Compare all models on this prompt →

Rotating icosahedron · minimax-m3

Using the pre-provided three.min.js (global THREE), render a full-screen scene with a rotating icosahedron lit by two colored point lights, orbit-style auto-rotation, and a subtle starfield background.

⛨ sandboxed Open in new tab ↗
transcript · 8 messages
user

Using the pre-provided three.min.js (global THREE), render a full-screen scene with a rotating icosahedron lit by two colored point lights, orbit-style auto-rotation, and a subtle starfield background.

assistant
thinking
The user wants a self-contained index.html file that:
1. Uses the pre-provided three.min.js (loaded via `<script src="three.min.js"></script>`)
2. Renders a full-screen scene
3. Features a rotating icosahedron
4. Lit by two colored point lights
5. Orbit-style auto-rotation
6. Subtle starfield background
7. No external resources, no CDNs, no network requests

Let me build this. I need to:
- Create a full-screen WebGL canvas
- Set up a scene with a perspective camera
- Add a starfield (using THREE.Points with many small stars)
- Add an icosahedron with a material that responds to lights (MeshStandardMaterial or MeshPhongMaterial)
- Add two colored point lights
- Auto-rotate the camera (orbit-style) around the icosahedron
- Also rotate the icosahedron itself
- Use Three.js from the local file

Let me check the working directory first, then build the file.
bash {"command":"ls -la /workspace"}
toolResult

total 644 drwxrwxrwx 3 node node 96 Jul 22 16:54 . drwxr-xr-x 1 root root 4096 Jul 22 16:54 .. -rw-r--r-- 1 node node 603445 Jul 22 16:54 three.min.js

assistant
thinking
Good, three.min.js is present. Let me build a polished single-file demo:

- Full-screen canvas with resize handling
- Subtle starfield (THREE.Points with a small canvas-generated circular texture so we get round points, ~2000 stars distributed in a large sphere)
- Icosahedron with MeshStandardMaterial (so it responds nicely to point lights), with a slight roughness/metalness for nice highlights
- Two colored point lights: one warm (e.g., orange/red) and one cool (e.g., cyan/blue), positioned on opposite sides
- Orbit-style auto-rotation: rotate the camera around the y-axis (and slightly up/down via sin) while always looking at the icosahedron. Also spin the icosahedron itself on its own axis.
- A subtle ambient light so the shadowed side isn't pitch black
- Tone mapping (ACESFilmic) for a nicer look
- A vignette via CSS for atmosphere

Let me write the file.

I'll build a self-contained Three.js scene with a rotating icosahedron, two colored point lights, a starfield, and orbit-style auto-camera.

write /workspace/index.html (9404 bytes)
toolResult

Successfully wrote 9404 bytes to /workspace/index.html

assistant
thinking
Let me verify the file is present and quickly sanity-check the content (no external URLs, no separate .css/.js files, three.min.js referenced as a local file).
bash {"command":"ls -la /workspace && echo \"---\" && rg -n \"https?://|cdn\\.|//unpkg|//cdnjs|googleapis\" /workspace/index.html || echo \"no ex
toolResult

total 656 drwxrwxrwx 4 node node 128 Jul 22 16:55 . drwxr-xr-x 1 root root 4096 Jul 22 16:54 .. -rw-r--r-- 1 node node 9407 Jul 22 16:55 index.html -rw-r--r-- 1 node node 603445 Jul 22 16:54 three.min.js --- no external network references found

assistant

Done. `index.html` is in place alongside the pre-provided `three.min.js`, fully self-contained (no CDNs, no separate CSS/JS files). **What you'll see:** - **Full-screen canvas** that resizes with the window and respects devicePixelRatio (capped at 2). - **Icosahedron** (`THREE.IcosahedronGeometry`) with a `MeshStandardMaterial` (metalness 0.55, roughness 0.28, flat shading) so the colored lights produce crisp facet highlights. A faint wireframe shell wraps it for a techy outline. - **Two colored point lights** — warm "ember" (`#ff6a3d`) and cool "glacier" (`#4dd0ff`) — that orbit the icosahedron along a gentle Lissajous, with their intensity softly breathing. Each has a tiny visible "bulb" mesh so you can see where the light is coming from. - **Orbit-style auto-rotation**: the camera continuously circles the icosahedron on a radius of 5.2 with a slow vertical bob, always looking at the origin. The icosahedron also spins on its own x/y axes, and the starfield counter-rotates for parallax. - **Subtle starfield**: 2,200 `THREE.Points` distributed on a large sphere shell, drawn with a canvas-generated radial-gradient sprite, additive blending, and slight per-star color variation (mostly white, some bluish, some warm) at low intensity for that "subtle" feel. - **Atmosphere**: a dark navy background, exponential fog, ACES filmic tone mapping, and a CSS vignette overlay. The HUD legend in the corner names the two light colors. Open `index.html` directly in a browser (or serve the folder) and the scene runs entirely offline against the local `three.min.js`.

TAKE IT TO CODE

A single self-contained HTML file — copy it and open in any browser, or reuse the prompt with your own pi-agent run.

RUN

modelminimax-m3
vendorMiniMax
harnesspi-agent
generated2026-07-22

EVALUATION

4/5 working

Rotating icosahedron with orange/blue point lights orbiting and faint starfield background; animates continuously, minimal reaction to inputs.

Vision grade · anthropic/claude-sonnet-5

MEASUREMENTS

Raw readings from the capture, not a verdict — the grade above is the only judgement. Percentages are how much of the screen changed; the measure under-reports sparse motion on a dark background.

idle motion11.8%
on click10.2%
on drag11.7%
on wheel10.7%
on enter + space9.7%
on arrow keys11.8%
on w/a/s/d10.1%
frame spread75.7 / 255
console errors0
js errors none

METRICS

runtime44.9s
tokens in1.9k
tokens out4.0k
cached13k
cost / run$0.0061