NeoWorld-3: From Pixels to Code-Defined Physical Worlds
Organizations: Shanghai Jiao Tong University · Doxi AI
Abstract
Simulation-ready world reconstruction demands physical interactivity beyond visual realism, which existing black-box 3D generation fails to deliver. We present NeoWorld-3, a coding-agent framework that reconstructs interactive 3D worlds from visual observations via tunable, executable programs. At its core, NeoSDK provides the underlying computational engine for low-level geometries, part composition, differentiable parameter refinement, and physics validation. At the same time, NeoMCP exposes these capabilities as structured, tool-callable APIs for vision-language agents to visually inspect, edit code, and iteratively refine programs. Through a hierarchical coordinator-worker architecture, the framework scales seamlessly from standalone articulated objects to complex compositional scenes. Evaluations across object-level and scene-level reconstruction benchmarks demonstrate that NeoWorld-3 achieves state-of-the-art geometric fidelity and physical readiness. Crucially, manipulation trajectories planned within our reconstructed twins achieve successful zero-shot execution on a physical dual-arm robot, completing the Real-Sim-Real loop.
Figures & tables
| Representation | Geometry | Simulation-Ready | Self-Improvement | |||||
|---|---|---|---|---|---|---|---|---|
| Method | Scene | Tunable | Parts | Watertight | Diff. | Articulation | Physics | RSI |
| Generative image-to-3D ( Pixal3D [ 12 ] ) | ||||||||
| VLM-based ( PhysX-Anything [ 2 ] ) | ||||||||
| Coding-agent-based ( Articraft [ 30 ] ) | ||||||||
| NeoWorld-3 | ||||||||
| Method | Exec (%) | SigLIP-2 | DINOv3 | Framed IoU | CD | Uni3D 3D–3D | Uni3D Image–3D |
|---|---|---|---|---|---|---|---|
| Codex+BlenderMCP [ 1 ] | 97.64 | 0.8571 | 0.6245 | 0.5736 | 0.0747 | 0.5658 | 0.3064 |
| VIGA [ 28 ] | 99.52 | 0.8219 | 0.6351 | 0.6547 | 0.0680 | 0.5803 | 0.3084 |
| Articraft [ 30 ] | 100.00 | 0.8100 | 0.5692 | 0.5692 | 0.0719 | 0.5618 | 0.3087 |
| Ours | 100.00 | 0.8605 | 0.6606 | 0.7550 | 0.0365 | 0.6229 | 0.3202 |
| Method | AS-gIoU | AS-CD | AOR | Type (%) | Axis Error (rad) | Pivot Error (norm.) |
|---|---|---|---|---|---|---|
| Codex+BlenderMCP [ 1 ] | 0.9126 | 0.2557 | 0.0035 | 87.16 | 0.3078 | 0.2846 |
| Articraft [ 30 ] | 0.8904 | 0.2031 | 0.0001 | 87.22 | 0.3522 | 0.1532 |
| Ours | 0.7792 | 0.1297 | 0.0000 | 90.13 | 0.2687 | 0.0962 |
| Method | DINOv3 | Complete | Layout | Function | P-Pen (%) | OCD (cm) |
|---|---|---|---|---|---|---|
| Codex+BlenderMCP [ 1 ] | 0.7661 | 4.3000 | 4.1667 | 4.7000 | 9.21 | 53.0194 |
| VIGA [ 28 ] | 0.7888 | 4.5333 | 4.8000 | 4.6333 | – | 41.6275 |
| Ours | 0.8142 | 4.3667 | 4.9333 | 4.8667 | 0.67 | 25.9445 |
| Configuration | DINOv3 | Complete | Layout | Function | P-Pen (%) | OCD (cm) |
|---|---|---|---|---|---|---|
| Direct GPT | 0.6817 | 3.4583 | 3.5000 | 3.4583 | 45.68 | 107.8875 |
| Codex | 0.7513 | 4.2333 | 4.1333 | 4.2667 | 11.61 | 47.6677 |
| NeoWorld-3 w/ BlenderMCP | 0.7644 | 4.4667 | 4.2333 | 4.6333 | 45.41 | 47.4549 |
| NeoWorld-3 (full) | 0.8142 | 4.3667 | 4.9333 | 4.8667 | 0.67 | 25.9445 |
Appendix figures & tables9 assets
Supplementary material from the paper’s appendix.
Appendix
| Verb | What the call returns |
|---|---|
| Observation and measurement | |
| read_observation | one photograph at full upright resolution with its raw camera and depth |
| measure | text-prompted masks with their metric lift: bounds, centroid, principal normal, floor footprint |
| sample_depth | world points under named pixels, with per-pixel validity |
| scene_planes | measured planes of the capture: normal, offset, extent, support |
| triangulate † | a world point from 2–64 calibrated views of one author-supplied landmark, with residuals |
| Route | Input and Output | Checks and Configuration |
|---|---|---|
| Visual kinematic export | Declared links and joints visual URDF | Joint sweeps and native/URDF playback agreement; visual meshes and kinematic frames. |
| Benchmark physics export | Delivered scene USD with UsdPhysics | Rest contact, collision decomposition, body properties, and native joints. Indexed boundary checks and seam repair are enabled by --watertight (default off). |
| Robot twin | Reconstructed parts configured simulator world | Collision proxies, body properties, and robot-frame alignment, as specified in Section B.1 . |
| SDK solid adaptation | Metric indexed mesh and adaptation plan certified physical carriers | Closure, manifoldness, self-intersection, orientation, and positive volume; an independent SDK interface separate from scene export. |
| Class | Finding | Description |
|---|---|---|
| Refuses the probe | rest_overlap | Overlapping geometry at rest. |
| collision | Collision during the per-joint sweep. | |
| closure_gap | Closure gap at . | |
| combined_collision | Collision between links moved apart by two or more joints. | |
| Needs a decision | cover_without_cavity | A covering link does not open onto a cavity. |
| travel_leaves_parent | A sliding link leaves its parent at full travel. |
| Body | Proposal | Mean IoU | Weakest-view IoU | Outcome |
|---|---|---|---|---|
| Bowl | mm | admitted | ||
| Cube | mm; | admitted | ||
| Microwave | — | — | — | refused (unstable proposal) |
| Joint | Status | Gain (counts/N m) | Friction (N m) | Noise (N m) | |
|---|---|---|---|---|---|
| J1 | borrowed | 223 | 0.29 | 0.31 | – |
| J2 | fitted | 223 | 0.50 | 0.37 | 0.92 |
| J3 | fitted | 238 | 0.50 | 0.32 | 0.80 |
| J4 | fitted | 1505 | 0.06 | 0.05 | 0.92 |
| J5 | fitted | 1530 | 0.05 | 0.05 | 0.91 |
| J6 | borrowed | 1530 | 0.04 | 0.05 | – |