Welcome to¶
A powerful node-based toolkit for projection mapping, multi-projector calibration, and
immersive spatial installations
--
built for Max/MSP.
Get Started Node Reference GitHub
What is SPARCK?¶
Create, calibrate and run advanced spatial augmented reality and projection-mapping setups – directly inside Max.
Whether you're lighting up a single wall, mapping projections onto complex surfaces, calibrating multi-projector setups or building a multi-projector interactive immersive space, SPARCK brings together real-time 3D rendering, projection mapping, tracking, scripting and multi-display output into one cohesive workflow and provides an intuitive workflow with real-time 3D preview.
-
Multi-Projector Calibration
Calibrate multiple projectors using OpenCV-based algorithms. Define calibration vertices on 3D models and achieve pixel-perfect alignment with realtime calculated soft-edge blending.
-
Spatial Mapping
Project onto any surface with Canvas nodes. Support for OBJ, Collada, and 30+ 3D formats with real-time texture baking and shader effects.
-
Node-Based Workflow
Build complex projection systems visually by connecting specialized nodes. Each node handles a specific task — from input to transformation to output.
-
Real-Time 3D Preview
Visualize your entire projection setup in the built-in 3DViewer. See projector frustums, calibration accuracy, and content placement before going live.
-
Live Input Integration
Receive real-time content via Spout and Syphon from engines like TouchDesigner, Unity, Unreal, or Notch. Full support for HAP video and point-clouds via rgb-d videos.
-
QueScript Automation
Automate shows with SPARCK's built-in scripting language. Trigger cues, animate parameters, and orchestrate complex sequences with precision timing.
Core Capabilities¶
- Corner Pin Mapping
- Mesh Warping
- Soft-Edge Blending
- Camera Calibration
- Texture Projection
- Motion Tracking
- OSC Control
- 3D Transformations
Getting Started¶
Prerequisites
Make sure you have Max installed and the SPARCK package properly set up before continuing.
Install Max + SPARCK
Download Max from Cycling '74 and install the SPARCK package from the Package Manager.
Create a Patcher
Open Max, create a new patcher, and add the SPARCK CORE from the context menu (right-click → SPARCK → CORE).
Save & Reopen
Save the patcher into a new, empty folder. Close and reopen it — SPARCK will create the project folder structure.
Add Nodes & Calibrate
Build your projection system by adding nodes for input, processing, calibration, and output. Use the Beamer node to calibrate projectors.
Project Organization¶
When you save a SPARCK patcher, it automatically creates a portable project structure:
your-project/
├── your_sparck_patcher.maxpat
├── _assets/
│ ├── _textures/ # Images, cubemaps, volumes
│ ├── _videos/ # Video files (HAP recommended)
│ ├── _models/ # 3D models for projection surfaces
│ ├── _shaders/ # Custom GLSL shaders
│ ├── _projectors/ # Projector calibration data
│ ├── _scripts/_ques/ # QueScript automation files
│ └── ...
└── _export/ # Output files
Everything stays self-contained, making projects easy to move between machines.
Node Categories¶
SPARCK organizes its nodes into logical categories:
| Category | Purpose | Key Nodes |
|---|---|---|
| Input | Bring content into SPARCK | Texture, Video, SpoutReceiver, SyphonReceiver |
| Canvas & Space | Define projection surfaces | Canvas, Model, Grid, SkyBox |
| Mapping | Map content to outputs | CornerPin, MeshWarp, ViewPort |
| Calibration | Configure projectors | Beamer, CalibrationCross |
| Effects | Process and blend | SpatialShadery, BlendSoftedge, ShaderPointCloud |
| Transform | Position elements in 3D | TfmNode, TfmLookAt, TfmMirror |
| Output | Send to displays | Window, SpoutSender, SyphonSender |
| Utility | Scripting and control | QueScript, Hook |
Use Cases¶
-
Projection Mapping
Map visuals onto buildings, stages, sculptures, and architectural elements with precise calibration.
-
Floor Projections
Create interactive floor installations with multiple overhead projectors and soft-edge blending.
-
Immersive Rooms
Build 360° immersive environments with synchronized multi-wall projection.
-
Live Performances
Integrate with live visual engines for real-time show control and cue-based automation.
Ready to Create?¶
Jump into the documentation and start building your first spatial projection.
-
Tutorials
Step-by-step video guides for common setups
-
Community
Ask questions and share projects
-
Report Issues
Found a bug? Let us know
-
Contribute
Help improve SPARCK
Developed by Immersive Arts Space
SPARCK is developed and maintained by the Immersive Arts Space at Zurich University of the Arts (ZHdK). It's designed for artists, designers, and technicians working with spatial media.