Mapping Complexity

This chapter describes a method for drawing directly on a QLab surface displayed on a projector,  in order to map features in the area the projector beam is covering. The QLab surface can already have keystoning and warping applied, using the QLab surface settings.

For the basics of masking in QLab read the chapter  Masks for Sail

Before we draw on a QLab surface we will examine a technique for mapping the vertices and curves of an irregularly shaped projection surface directly in Adobe Photoshop. (Other image editors can be used)

For our example, we will assume we are doing a beach rave and have found an old caravan to project on. We want to make a mask so we are just projecting onto the side of the caravan. And we don’t want to project on the window areas as the DJs will be working in these.


Set up your projector by connecting it to a video output from your computer and focus it so that its beam covers the area you want to map.

Open Photoshop on the main monitor of your computer

Create a new document, with a white background, with dimensions identical to your projector output e.g.1280×720


Drag the tab for the new window out of the main Photoshop window and  onto your projector

Photoshopdragged copy

Set zoom to 100%

Select the pen tool

Enter Full-Screen mode (no menu bar)


Your projector should now just be outputting white over your area to be mapped, in our case the caravan.

Using the pen tool,  click on all the vertices of the structure you are mapping, or if it is complex, with curves, trace a bezier outline. Once you have the basic outline you can map any features, doors windows etc.  In our case, we just want to map the windows as we want to exclude these from the projection area.

Open the paths window

Double click on work path. This will create a path called path 1 with all your mapped line

Set the foreground color to black

Stroke work path using the pencil tool

You should now have an outline drawing of your projection surface.

caravan sideYou can repeat this as necessary, adding features as required.

Once you have all the detail mapped it’s probably easier to exit full screen and drag the document window back to the main Photoshop window and re-dock it by dragging the title bar where you dragged it from when you put it on the projector.

It’s best to keep this drawing as a reference on the background layer and trace it on new layers to produce the masks you need. You could also save the background as a template to use as a guide for producing artwork.  In our example, we will create a mask for an area which blanks the window panes and the area around the side of the caravan we are using for projection.

Create a new Layer (Layer 1).

Using selection tools,  select the areas you want to mask out (or draw a path around these areas and convert to a selection). In our case, the areas are the area outside the caravan side and the  2 window panes. We can easily select them using the magic wand tool.

Select the background layer click in the area around the side with the magic wand, hold down shift and click the 2 windows

Switch to your new layer (Layer 1).
Fill this selection black (Edit Menu/ Fill……/ Black)

You may have put additional detail on the background layer e.g door outline etc.  so switch it off.


QLab masks to be used on surfaces are greyscale masks. They do not contain transparent areas.

We, therefore, need to put a solid white fill layer behind our mask.


If you want to soften the edges of your mask apply a gaussian blur to the whole image, or just those areas you would like to be softer.


Save as .jpeg with a meaningful name. I always include the pixel dimensions in the name so I know what size surface it is meant to fit something like


If you want multiple masks for different surfaces then switch off that layer and repeat with a new layer for each surface. When you save additional surfaces ensure the white fill layer is the background

Finally, save the Photoshop document as a .psd so you have the original tracing and all the masks layers you have made in 1 place so you can return and easily modify the masks or make new ones.

To use the mask drag the .jpg file into the well of a QLab surface editor and check it is working by switching the grid on



Projecting on a Warped and Keystoned surface.

For the purposes of our example, lets assume that having set up our projector, the original caravan burns down and the safety officer says that the projector can only go on top of the food concession to the extreme right of the replacement caravan.


This is the view from the projector position.


In order to retain the proportions of the original images we are going to need an extreme perspective warp to be applied to the projector surface. We also need to keep the horizontals, horizontal and the verticals vertical. So we would do our initial adjustment on the surface editor to cover the projection surface and maintain as much of the geometry of the original images as possible



We now need to trace the shape of the caravan side and the windows to make our mask, but because of the warp on the QLab surface we no longer have a 1 to 1 relationship between any Photoshop document and the projector.

What we need to do is get our Photoshop document on the projector, with the surface warp applied, and be able to see the pen tool cursor on the projector so we can draw around the areas of interest on the caravan.

To do this we are going to use a free app called  Cam Twist which you can download here

Alternatively, you can use which can be dowloaded here

This technique uses 3 programs, Photoshop, CamTwist or Syphoner, and QLab. Obviously, there are a huge number of combinations of different version numbers that can be utilized, and it is not possible to test all of them. Some users have had difficulty getting CamTwist to work correctly for this technique, but have found that Syphoner works well.

Cam Twist and Syphoner allow you to use areas of your screen as a camera feed to other applications.

This example uses CamTwist. Using Syphoner is a  similar process.

We open a Photoshop document at the projector resolution, set the scale to 100 percent, but this time leave it docked in the main Photoshop workspace.


We then open Cam Twist and set it up like this:


Desktop+  as video source selects a window which doesn’t have to be visible or fully on the screen.

In settings, Desktop+ is confined to  1 application window which is our Photoshop document.

Do not scale is selected so that the image stays full size when we go full screen.

Finally, because the mouse pointer (cursor) is not part of that Photoshop window and therefore would be invisible on the feed from CamTwist we select the simulated mouse pointer which overlays a cursor on the video output.

Alternatively, you can use which can be downloaded here

In QLab we create a camera cue with these settings

QlabCamCamera source is Cam Twist (or Syphoner)

Video surface is the surface with the perspective warp applied.

Geometry is custom with no translation and a scale of 1.

Trigger the camera cue so the camera is live.

In Photoshop select the pen tool, view image at 100 percent and go full screen as before.

The projector should now just be displaying a white image.


The Photoshop document will be visible on your main monitor full screen


Check the relationship between the Photoshop document and your projected image by moving the cursor to each corner of the Photoshop document. Check that the cursor is also at the corners of your projected image.

Follow the procedure we did in the previous exercise to map and mask the unwanted areas.

Your mask should look like this on the projector


And like this in Photoshop


Save the mask as a jpg with a meaningful name e.g  CaravanPreWarp mask 720p.jpg.

Put it into the mask well of the warped surface and check it by switching on the grid on the warped surface.


Finally, send an image to the warped projector surface.


The same method should work for Surfaces with multiple blended projectors and surfaces with splits and bezier warps etc.

Chapter Author: Mic Pool

Photo used in example workspace: Public Domain from Max Pixel