Skip to content

Pathway: Integrator / Porter

Level: Advanced · For: porting/ingesting existing games and using the toolchain.

  1. The adapter seam — the adapter architecture (RootAdapter, AuthoringAdapter, system adapters).

  2. Ingest unmodified games — the render-accessor trap.

  3. Study real ingests — the vendored upstream games: pmndrs/racing-game (vendored from source — the editor’s own source-authoring lane runs on its TSX), simcity, and the multiplayer colyseus/realtime-tanks-demo — each a real third-party game vendored under a pinned upstream commit with every divergence recorded.

  4. Adapt without vendoring — custom adapters: your game keeps its own architecture and ships a small { module } adapter the editor mounts. For a full port to the native format instead, the vgai checkout carries the decision guide docs/BRINGING-AN-EXISTING-GAME.md, whose appendices are the porting cheatsheets: Appendix A (cannon-es/ammo.js → Rapier — required for a native port) and Appendix B (hand-rolled ws/socket.io → Colyseus — vgai’s conventional stack, not an engine requirement).

  5. Tooling & publishing — the CLI/SDK & scaffolding and hot reload, storage & web builds.

  6. Lab — ingest a small Three.js demo of your own (see the “Ingest your own folder” section of the ingest tutorial), edit it, and persist the edits as an overlay.

You can ingest an unmodified Three.js game, edit and persist it via overlays, drive the editor from the CLI/SDK, and produce a web build.