Three-Live: door AI geschreven 3D voor web en mobiel
Three-Live stelt ontwikkelaars in staat door AI geschreven Three.js-code om te zetten in draagbare 3D-content, met ondersteuning voor zowel web- als native mobiele applicaties door compilatie naar indelingen zoals GLB of USDZ.

Hoogtepunten en huidige bewijzen
Three-Live helpt ontwikkelaars om door AI geschreven Three.js-scènecode om te zetten in 3D-inhoud die op het web en in native mobiele applicaties kan worden weergegeven. Het centrale idee is om een ondersteunde subset van Three.js te gebruiken als draagbare scènebeschrijving en de resulterende scène vervolgens te compileren naar GLB of USDZ. Het levert een compiler, renderers en integraties; een extern model kan de code schrijven.
Afbeeldingsbron voor de Studio-, architectuur- en XR-afbeeldingen: Google Open Source Blog.
De repository valt onder de organisatie van Google, maar vermeldt expliciet dat het geen officieel ondersteund Google-product is. De huidige README labelt het project als Beta. Officiële voorbeelden demonstreren procedurele geometrie, PBR-materialen, animatie en ruimtelijke interactie via WebGL2/WebXR, Android Filament en Jetpack XR, en Apple RealityKit. Deze voorbeelden demonstreren beoogde workflows en vormen geen garantie voor prestaties op elk apparaat.
Het lanceringsartikel vermeldt gebruikelijke compilatietijden van 2–5 milliseconden, zonder een volledig protocol voor hardware- en scènebenchmarks. Dit cijfer mag niet worden geïnterpreteerd als de totale afbeeldings-naar-3D-latentie. De repository bevat ook een evaluatiesuite met 100 prompts en een smoke suite met 10 scripts voor compilatie, diagnostiek van niet-ondersteunde functies, rendering, simulatie en reparatie in één beurt; hun aanwezigheid op zichzelf bewijst niet dat elk gegenereerd script werkt.

Van code naar een native scène
Een auteur of codeermodel construeert meshes, materialen, transformaties en groepen via de ondersteunde API. De host voert het script uit in een beperkte omgeving. Op native platforms integreert ThreeEngine de Boa JavaScript-engine in Rust, reset het de scène en de globale status, voert het script uit en extraheert het een getypeerde SceneGraph uit ruwe buffers. Het GLB-entrypoint geeft die graph door aan write_glb; afzonderlijke paden produceren USDZ. De tussenliggende representatie is een expliciete scènegraaf, geen aangeleerde 3D-latente representatie.
Uitvoeringslimieten zijn belangrijk omdat gegenereerde code oneindige lussen of overmatige geometrie kan bevatten. In de beoordeelde bron is de uitvoering van productiescripts beperkt tot 500 milliseconden, waarbij de klok elke 10.000 VM-opcodes wordt gecontroleerd. Scènelimieten omvatten 100.000 vertices en 1.000 meshes. Voor transcoding geldt een afzonderlijke deadline voor het verpakken. Dit zijn beschermende limieten die door de implementatie zijn gedefinieerd, geen metingen van rendersnelheid of een claim van perfecte isolatie. Het webpad gebruikt een worker, met een optionele iframe met een opaque origin; netwerk- en opslagtoegang zijn beperkt.
Na compilatie laden platformadapters het asset in de doelrenderer. Android gebruikt Filament en XR-integraties; Apple-platforms gebruiken RealityKit; de browser heeft een eigen WebGL2-renderer en WebXR-ondersteuning. Declaratieve userData.xr-eigenschappen beschrijven ondersteunde gedragingen zoals vastpakken of ruimtelijke verankering. Live runtimegedrag vereist de overeenkomstige runtime-integratie: een statische modelpreview van het besturingssysteem behoudt geen willekeurige JavaScript-interactie.
De agentworkflow voegt een verificatielus toe. De CLI kan een script valideren, een contactvel met vier weergaven renderen en assets converteren; de MCP-interface stelt deze bewerkingen beschikbaar aan codeeragents. De evaluatieharnas kan compilatiediagnostiek en visuele kritiek voor één reparatiebeurt retourneren. Dit koppelt codegeneratie aan waarneembare geometrie en kadrering, terwijl niet-ondersteunde of gedegradeerde API-functies iets blijven dat moet worden geïnspecteerd in plaats van verondersteld te worden opgelost.
Toepassingen en ontwikkelingsstatus
Three-Live is relevant voor procedurele productviewers, bewerkbare educatieve scènes, AR-prototypes en AI-ondersteunde 3D-authoring binnen applicaties. Het kan platformgebonden werk voor het maken van scènes verminderen, maar belooft geen volledige compatibiliteit met willekeurige Three.js-applicaties. Pakket- en binaire opties omvatten npm, Rust-tooling, Android-bibliotheken en Apple Swift Package Manager; de repository gebruikt Apache-2.0.
De officiële Unreleased changelog vormt de basis voor de ontwikkelingsrichtingen hier. Deze vermeldt runtimegeneratie van beeld naar scène met ruimtelijke kwaliteitscontroles en reparatie in één beurt, plus optionele WebGPU-scène- en Gaussian-splat-versnelling. Dit zijn geïmplementeerde vermeldingen in de development-branch, geen beloften dat elke verpakte release deze bevat. Het afbeeldingspad controleert het minimumaantal meshes, eindige grenzen, camerabereik en kritieke overlappingen; deze controles bewijzen geen getrouwe reconstructie van de invoerafbeelding.
Voor deze review zijn het compiler-entrypoint, de uitvoeringslimieten, de scènerepresentatie, de evaluatiedocumentatie en de changelog geïnspecteerd. De SDK is niet geïnstalleerd en de prestaties op apparaten zijn niet gemeten.
Veelgestelde vragen
Is Three-Live zelf het AI-model dat 3D genereert?
Nee. Het voert scènecode uit, valideert, compileert en geeft deze weer. Een afzonderlijk coderings- of multimodaal model levert AI-gegenereerde scripts via de gekozen integratie.
Zal elke Three.js-toepassing ongewijzigd werken op mobiele apparaten?
Nee. Portabiliteit is van toepassing op ondersteunde scene-API's en runtimegedrag. Browserafhankelijkheden, niet-ondersteunde functies en willekeurige interactielogica vereisen controle of aanpassing.
Behoudt het exporteren naar GLB of USDZ een complete interactieve app?
Nee. Die bestanden bevatten gegevens van ondersteunde assets; live interactie hangt ook af van runtimebindingen en platformondersteuning. Statische OS-voorbeelden kunnen de volledige Three-Live-runtime niet vervangen.




