HD demo video available in the latest release.
Marble x Nuke is a native Nuke 17+ integration of the World Labs Marble API. It lets compositors and VFX artists generate AI 3D worlds from text prompts or images, then immediately load the resulting Gaussian Splats as .PLY point clouds into Nuke's 3D viewport via GeoImport — no leaving the compositing app, no plugins to install, no external dependencies.
It bridges generative 3D and the most widely used compositing software on the planet — and it works on Nuke Non-Commercial too.
Building set extensions, previs environments, or 3D backplates from scratch is slow. With Marble x Nuke, a one-line prompt becomes a navigable Gaussian Splat world inside Nuke's viewer in under a minute. The same loop works from a still image, a clean plate, or a set of reference photos — the result is a 3D world you can project, frame, and composite against.
| Node | What it does |
|---|---|
| Marble T2W | Text-to-World — describe a scene, get a 3D world. |
| Marble I2W | Image-to-World — single image, multi-image, or full reconstruction from up to 4 views. |
| Marble List | Browse, manage, and delete your generated worlds. |
| Marble Splats | Download and view Gaussian Splats from any world as PLY. |
- 🌍 One-click world generation from text prompts or images
- ⚡ Automatic Gaussian Splat download in PLY format right after generation
- 🎬 Auto
GeoImportnode creation — select the node, press V, then Tab to enter 3D - 🔧 Built-in SPZ → PLY converter — no external Python packages required
- 🖼️ Multi-image & Reconstruct modes — feed up to 4 views with azimuth control
- 🎚️ Configurable splat resolution — full, 500k, or 100k points
- 🆓 Works with Nuke Non-Commercial
- 🔐 Local API key storage — your key never leaves your machine
Copy the MarbleXnuke/ folder into your .nuke directory:
| OS | Path |
|---|---|
| Windows | C:\Users\<YourName>\.nuke\MarbleXnuke\ |
| macOS | /Users/<YourName>/.nuke/MarbleXnuke/ |
| Linux | /home/<YourName>/.nuke/MarbleXnuke/ |
Open (or create) init.py inside your .nuke directory and add:
import nuke, os
nuke.pluginAddPath(os.path.join(os.path.expanduser("~/.nuke"), "MarbleXnuke"))- Get a key at platform.worldlabs.ai/apiKeys
- In Nuke, create any Marble node from the MarbleXnuke toolbar menu
- Paste your key and click Save API Key
That's it — you're ready to generate.
- Create a Marble T2W node from the MarbleXnuke menu
- Type a prompt describing the world you want (
"a foggy cyberpunk alley at dawn") - Click Generate World
- The Gaussian Splat loads automatically into a
GeoImportnode - Select the
GeoImport, press V to view, then Tab to enter 3D
- Connect an image to the Marble I2W node input
- Optionally add a guidance prompt
- Click Generate World
- View the same way — select
GeoImport, V, Tab
- Set Image Mode to
Multi-ImageorReconstruct - Connect up to 4 images to the node inputs
- Set azimuth angles per view
- Generate and explore
Marble-x-Nuke/
├── MarbleXnuke/
│ ├── init.py # Plugin path registration
│ ├── menu.py # Nuke menu entries
│ └── Python/
│ ├── marble_common.py # API client, SPZ decoder, shared utilities
│ ├── marble_t2w.py # Text-to-World node
│ ├── marble_i2w.py # Image-to-World node
│ ├── marble_list.py # World browser node
│ ├── marble_splat.py # Splat viewer node
│ └── MarbleXnuke/
│ ├── Logo.png # Menu icons (multiple sizes)
│ └── __init__.py
├── docs/ # Banner, logos, demo GIF
├── LICENSE # MIT
└── README.md
- Nuke 17+ — Commercial, Indie, or Non-Commercial
- World Labs API key — get one here
- No external Python packages — falls back to
urllibifrequestsisn't available
| Problem | Solution |
|---|---|
| Buttons don't respond | Delete the node and recreate it from the menu |
| No splat after generation | Click View Splats in 3D to retry the download |
| Write permission error | Change the Output Directory to a writable path |
| API key not working | Verify it at platform.worldlabs.ai |
| Splat too heavy | Switch resolution to 500k or 100k in the node |
- Batch generation from a CSV of prompts
- Direct projection setup on
GeoImport(camera-aligned) - Snapshot-to-USD export
- OCIO color management for image inputs
Have an idea? Open an issue or ping me on LinkedIn.
PRs and issues welcome. If you ship a plate built with Marble x Nuke, I'd love to see it — tag me on LinkedIn.
Released under the MIT License — free to use, modify, and ship in commercial work.
- World Labs — the Marble API that makes this possible
- Foundry — for Nuke, the compositing standard
- Built and maintained by SINAI R&D
SINAI R&D explores the intersection of AI, 3D, and audiovisual production — building tools that bring generative pipelines into the hands of working VFX artists.
If this project saved you time, a ⭐ on the repo and a like on the launch post go a long way.
Marble x Nuke — open source VFX tooling, made with care.



