Projection Mapping with MeshWarpServer

This project is about creating a video projection installation using free and/or open source software. The final outcome will be a “video” projected onto a 3D object.

Apart from being super cool it is…

Projection Mapping uses everyday video projectors, but instead of projecting on a flat screen (e.g. to display a PowerPoint, video and more), light is mapped onto any surface, turning common objects of any 3D shape into interactive displays. More formally, projection mapping is “the display of an image on a non-flat or non-white surface”

The Vivid Sydney Festival is a month long event with amazing installations workshops, talks and more.

Kit List

A Computer (Mac or Windows)
A projector
VGA Cable
VGA to HDMI connector
HDMI cable, if the projector and computer support HDMI

Task 1 Download the Software


Very Important:
For Windows you need the latest Java-Version (choose the ‘Windows Offline’ link. It has to be a 32bit Version) and Quicktime installed.
If running Windows 8 install version 7.7.6 (not the latest version 7.7.7. at the time of writing)
For OSX 10.7+ you need the latest Java-Version

Task 2 File Structure

Once you have installed all the software you need to set up the correct file structure.
In your documents, the example below has a project already created. The folders that you have to create yourself are “moovies” and “meshes”. They must be spelt the same as the software is expecting these folder names. Yes, it is a bit weird and funny.

File Structure

File Structure

geoball.json is the name of the project file used in meshwarpserver.  You can name it anything you like when you create your own first project. The other files are the meshes created in blender and the movie that we are using to display.




Now that we have finished the boring stuff, lets do something a bit more exciting.

Task 3  Play with Demo

Click here to download demo project.
Mini Tutorial for MeshWarperServer

Task 4  Meshes

In order to project the video onto a 3D object or inside a particular shapes.  We will be using a “cube” shaped mesh. This is available in the demo project folder.  If you would like to create your own basic mesh see our mini Blender tutorial

Task 5  Videos

What are you going to project ?
In meshwarpserver you can play up to 4 separate input channels. These can 4 videos or a mix of video, live camera and streaming video using :hap, syphon or spout.

Main menu adding videos

Main menu adding videos

The tabs along the top represent the type of input that you are using:

moovies = videos,
Hap, Spout and Syphon = streaming incoming footage
Capture = Camera connected to your computer.




cube mesh

Cube mesh

Adding the videos to your project.  After you have created the video footage you want you need to save them into the moovies folder. There are 4 available channels to use.  For the “cube” project we are using  a maximum of 3.  Why? because with one projector you can only see 3 faces.

You can display one video wrapped around the cube or 3 separate videos on each visible face.

You will need to used extended view in your display settings so the it is just the output window that is showing. Using the mesh editor window you can move and reposition your projection to match your 3D object or the area where you want to project.