Studio Lighting Design Tool

3D lighting plot
click = select · drag element = move · right-drag/Shift = height · scroll = zoom
Ready
TOP
SIDE

Studio Lighting Design Tool — User Manual

A guide to designing a TV studio lighting rig. Everything runs locally in your browser; nothing is uploaded. Coordinates use the lighting convention Z‑up: X = length, Y = width, Z = height.

1. Set up the room

The Studio size panel sits near the bottom of the sidebar, just above Export / import. Enter the room Length, Width and Height in metres and click Update room. The floor grid shows 1 m squares; use the Floor grid → Brightness slider in the same panel to make the grid lines lighter or darker for visibility. You normally set the room size once at the start.

Sidebar order: Project · Add element · Layers · Elements in scene · Rigging points · Load summary · Studio size · Export / import. The Layers, Rigging points, Load summary and Studio size sections collapse to a single line — click the heading (▸) to open or close them, giving the element list more room.

2. Navigate the views

2b. Layers

Layers group your elements and follow the type list: Rigging, Set, Video, Markings, plus Images, 3D models, and one layer per custom type you define. A layer only appears in the panel once at least one element uses it, so the list stays tidy. You can also make your own named layers: click + New layer in the Layers panel, give it a name, then select elements (multi‑select tool) and use Move to layer in the selection panel to put them there — they leave their type layer and live in yours instead. Your own layers always show, even when empty, and a 🗑 button removes one (its elements return to their type layers). Show/hide any layer with the eye in the sidebar or the compact layer list pinned to the right edge of plan view (a vertical list that grows downward). A hidden layer disappears from the views and can't be clicked, but still counts in the weight/load totals. Layers are saved with the project.

2c. Zero point (origin)

By default 0,0 is the room corner. To use your own zero point, click Set origin and click a spot in plan view, or type Origin X / Y (measured from the room corner) under Studio size. The origin shifts the edge ruler, the 1 m floor grid (grid lines pass through 0,0), and every element's X/Y in the editor and exports; height (Z) is unaffected. Reset origin to room corner restores the default. The origin is saved with the project.

2d. Views — top, side elevations & saved 3D cameras

The toolbar has a row of view buttons. Top is the classic top‑down plan (look straight down); click it again to return to 3D. Front, Back, Left and Right are side elevations — orthographic views from each of the four sides, showing length or depth against height. Use them when you build something vertical (a tower, a leg, a stacked wall) that you can't judge from the top: in a side view you see the real heights and can line things up. All five ortho views pan (drag empty space) and zoom (wheel), and you can drag elements in them — in an elevation a drag moves the element in the plane you see (e.g. Front moves it in length + height, Left moves it in depth + height), so it's the easy way to set heights by eye. Snap applies as usual. The 3D button returns to the orbit view at any time. (Measuring and Set origin always use the Top view, since they work in floor coordinates.)

Saved 3D views: line up any angle you like in the 3D/orbit view, then click ★ Save view and give it a name — it's stored with the project. Pick it again any time from the Saved 3D views… dropdown to jump the camera straight back to that exact angle (position, zoom and target). deletes the one selected in the dropdown. Handy for keeping a few working angles (e.g. "House left", "Downstage", "Over the drummer") and flipping between them.

3. Add elements

Choose a type under Add element, set a length/height where relevant, and click Add to scene. The new element follows the cursor — click once to drop it. Beside the button, the DMX: Auto / Manual toggle controls addressing for new fixtures: in Auto each fixture gets the next free address in universe 1; in Manual you set the Universe and Start address, the first fixture takes that address, and each following fixture stacks onto the next free slot after it (the Start field advances automatically). The Snap dropdown (top‑left) is off by default for free placement; set it to 0.1 / 0.5 / 1 m to round positions while dragging. Shortcut: hold A and left‑click on the canvas to instantly add the type currently selected in the dropdown at the click point — no need to press the button each time. Available types:

4. Select, move and edit

5. Attach to trusses & hang underneath

Release a fixture near a truss/pipe and it snaps to the underside. Other hangable items (set pieces, models, images) also snap to the underside when dropped close to a rig. In a fixture's editor, Hangs on chooses the truss (Auto = nearest / None / a specific one). Moving or trimming a truss carries its mounted fixtures with it. On a circle truss a fixture is automatically turned to point in toward the centre (radially) when it snaps on, so every fixture on the ring aims at the middle.

Drop arm (Avenger C820): add it from the element dropdown to hang a fixture below a truss rather than right on it. It's a thin vertical arm whose clamp grips the truss (or a pipe) at the top and whose stirrup holds a fixture at the bottom — handy when a fixture needs to sit lower than the rig. Snap its top to a truss or a pipe like any hangable item; then drop a fixture near its bottom (within ~0.6 m) and the fixture hangs there and binds to the arm (its softboxes follow). The arm's length is editable — a Drop length (m) field in its editor (0.8–4 m, default 1.2 m, matching the C820's ~1.2–2.0 m range); changing it rebuilds the arm and moves any fixture on the bottom up or down with it. Arm length and the fixture it carries are saved with the project. In the PDF's LX measurement strip a drop arm also shows, in grey, the fixture hanging on it (↳ name), next to its DMX/hot info.

6. Rigging points & load

All rigging points sit on their own fixed Rigging points layer, so you can show/hide them all at once from the Layers panel (or the plan‑view layer buttons) just like Lamps, Rigging, Set, etc.; hiding the layer only affects the view — the points still count in the load calculation. The Rigging points section is collapsed by default — click its heading to open it. Pick a marking (H = ceiling, P = wall), set the WLL, click Place point, then click a ceiling or wall. You can click a point in the 3D view to select it (it enlarges and its editor opens). Edit a point to rename it, set X/Y/Z and WLL, and tick which trusses it carries. Each truss's load is distributed to the points carrying it by moment balance (the see-saw principle), not split equally: a heavy fixture hanging near one point loads that point far more than the far one. With two points the calculation is exact; with three or more (statically indeterminate) each load is shared between the two nearest points around it, which is the standard rigging approximation and errs on the safe side. A load hanging outside the points (cantilevered) is carried fully by the nearest one. The Load summary (also collapsible) shows total hanging load, load per point, load per truss, and warns when a WLL is exceeded.

Chain blocks & hoists: add a Chain block (manual), Electric hoist (motor) or Electric hoist (upside‑down) from the Rigging group. A hoist connects a ceiling point (its top) to a truss (its bottom): drop it near a point and it snaps its hook to the point, then finds the truss under it and lifts it. Set the capacity (from a list or a custom value) and the chain length (24 m default — used for the self‑weight, which is motor body + chain based on real CM Lodestar data and still fully overridable). The Chain drop is the reach in 3D: change it and the truss is raised or lowered to match. When several motors hold one truss, extending just one makes the truss tilt (that end drops) — and any fixtures, pipes and other elements mounted on the truss tilt with it, staying fixed in place as if clamped on (they follow both the height change and the tilt angle). To move the whole truss up or down without tilting, use the Move whole truss field (drives all its motors together, live) or the Level truss button in the motor's editor, or select several motors and set Motor chain drop in the selection panel. The hoist's full weight (motor + chain) is counted on the ceiling point it hangs from — never on the truss it lifts.

7. Truss measurements

In a truss's editor, tick Show measurements to list each mounted fixture's distance from the left end and draw a dimension chain between the fixtures in plan view. These also appear in the PDF. The Truss meas: on/off button (top‑left) hides or shows the measurement chains on the top views (plan view and the PDF top plot); the measurement list/table in the PDF is always included.

DMX: every fixture (built‑in and custom) gets a DMX footprint — a sensible default channel count is pre‑set per type and a free start address is auto‑assigned, increasing by each fixture's channel count. In a fixture's editor set the universe, start and channels (set channels to 0 to disable DMX for that fixture). In the selection panel the DMX (by fixture number) row has three buttons that all work on the selected fixtures in fixture‑number order (they read the number at the end of each fixture's name and go ascending, so any numbers you set with Rename / number are respected; fixtures with no number go last). Auto‑number re‑addresses them stacked from address 1 of the universe in the U box (change U and the addressing follows into that universe). Set from here does the same but starts from the exact U @ address you type. Set universe U · keep address only moves the selected fixtures to the universe in the U box without touching their start addresses — use this when you just want to bump fixtures to another universe and keep their patch. The label and PDF show the address as #universe-address (e.g. #1-123). When a fixture carries several DMX modes — for example after importing a .gdtf file, which reads every mode and its channel count — a DMX mode dropdown appears in the editor; pick a mode and the channel count follows automatically (choose Custom to type your own count). The channel count is the mode's real DMX footprint read from the file — 16/24‑bit channels that span two or three addresses are counted correctly, not just the number of channel objects. Switching mode updates the DMX channels field below, and in Auto addressing it reflows all addresses so the new footprint is respected and nothing overlaps (in Manual addressing your numbers are left untouched). The selected mode and its channel count show on the fixture‑label export (its own MODE field / DMX mode CSV column). Each fixture also has a free‑text Cable/PU out field next to its DMX address — type a cable or processor‑output reference (e.g. A1) — and it can be set when adding a fixture (toolbar), per fixture in its editor, or on many at once via Set on selected in the selection panel. It shows on the fixture's label, in the plan‑view overlay, and in the PDF report and fixture‑label export (its own Cable/PU field / CSV column) alongside the DMX address.

Power (Hot): each fixture also has a free‑text Power (Hot) field — type a power/circuit reference such as Hot 1.1. It appears in the label, the plan‑view overlay and the PDF report alongside the name and DMX address. Auto‑hot: to fill these in automatically, give each fixture type a Watts value (in its custom‑type editor) — or set Watts on an individual fixture in its own editor to override the type default for that one fixture — then use the Auto‑hot… button (sidebar) which opens a menu where you pick the scope — All fixtures, just the Selected ones, or a single LX — set the amps/output, volt, start hot, max fixtures/output and phase mapping (two quick presets — Pairs · 112233 and Rotating · 123123 — fill the phase field, or type your own six numbers), and run it (the same auto‑hot is also available inside a truss's editor as Auto‑hot this LX). The menu also has an Auto‑hot video section: choose All screens or a single one (One screen, picked from a list — the same way you can auto‑hot a single LX), set the hot number they start from (After fixtures continues straight after the fixture hots), and run it — so screens and fixtures share one continuous hot series. It assigns hots the same way as the video power: each hot carries up to 6 outputs, each output up to the chosen amps per output, and a hot is used on one truss (LX) at a time — a new truss starts a fresh hot, leaving any spare outputs on the previous hot empty rather than running a cable to another LX. Set A/output, Volt and the Start hot number in the truss editor. You can also set Max fixtures/output (0 = no limit): a fresh output is started when either the amp limit or that fixture count is reached — handy for low‑wattage fixtures where amps alone would put too many on one output. Phase per output lets you define how the 6 outputs of a hot map to the three phases: type six numbers (1/2/3), e.g. 1,1,2,2,3,3 (pairs) or 1,2,3,1,2,3 (alternating) — the PDF phase summary and each fixture's info use this mapping. Fixtures get tags like H1.1, H1.2, assigned left‑to‑right as seen by someone standing in the centre of the studio facing each truss — turn 90° to the next truss and it reads left‑to‑right the same way (on a circle truss you instead stand in the centre of the ring and the order runs left‑to‑right as seen from inside), and you can still edit any fixture's Hot field by hand afterwards to move it to another hot. Typing a Hot address by hand locks that fixture — auto‑hot will skip it (leaving your address untouched) while still counting it in the loads, phase summary and PDF. The fixture editor shows "manual (locked)" and an Unlock button to hand it back to auto‑hot. A selected fixture's editor also shows its own watts/amps and the total load on its output (with its phase) and its whole hot. A fixture hanging on a drop arm is counted on the same LX as the truss the drop arm hangs from. A fixture on a pipe is counted on the truss the pipe hangs from — or, if the pipe hangs free, the pipe itself is treated as its own LX. Hot labels: the Hot labels item in the Export & PDF menu opens an editor with one label per hot — both fixture hots and video‑screen hots, numbered in one continuous series (each label notes its source). Fixture outputs show the fixture type and number (first – last when an output feeds several); video outputs show the screen and a short R/C code (R + row number for horizontal distribution, C + column number for vertical) describing which part of the screen the output feeds. Every field is editable (orange border = edited), empty outputs stay blank for hand notes, and edits are saved with the project. You don't have to start from the model: a Data source row lets you Import CSV… (columns Hot, Note, Out1–Out6; a two‑line output cell is kept) or start a Blank sheet of a chosen number of empty labels, and either can be edited in the same cards — Use model data switches back to the auto‑filled hots. Export CSV writes the current labels out (a handy template to edit in a spreadsheet and re‑import), and import/blank work even before you've run auto‑hot. Set the label size in cm and the text sizes (number / type), and click Export labels PDF for a separate document with the labels tiled on A4 pages ready to print and cut — each field shows the fixture number large across the top, a faint "Fixture" mark, and the type set vertically below.

Fixture labels: the Fixture labels item in the Export & PDF menu makes a small label per fixture with its number, type, LX, DMX, DMX mode (mode name and channel count, e.g. Extended · 36ch), Cable/PU out, hot address, XYZ position and distance from the LX end — to stick on the fixture itself. Choose the Data source: From model (all fixtures or just the selected ones), Import CSV… (same columns as the exported CSV — Number, Type, LX, DMX, DMX mode, Cable/PU out, Hot, X, Y, Z, DistFromLXEnd — with column order, extra columns and comma/semicolon all tolerated), or a Blank sheet of a chosen number of empty labels. Whichever source you pick, an editable table shows one row per label with every field, so you can correct or fill in values before printing — + Add label and the × per row change the count, and edits apply to the printout only (the model is unchanged). A blank sheet keeps the field headers (LX, DMX, HOT …) so you can hand‑write on the print, or type the values in the table. Then export three ways: an A4 sheet in a standard Avery format (pick the size to match the print‑your‑own labels you buy), a roll PDF with one label per page at a chosen tape size for a label printer (Brother, DYMO, etc.), or a CSV for the printer's own software.

8. Free measuring tool

Click Measure (top‑left; it switches to plan view automatically). Click a start point then an end point to draw a double‑arrow dimension line showing the distance — the arrows point outward to the two points. Keep clicking for more. Delete a line by clicking on it, use Clear meas. to remove all, or press Esc to cancel the current line / remove the last. Measurements are free (no snap), shown in plan view, and saved with the project.

9. Images & 3D models

Import with Image or 3D model (.obj). In the editor: Place on (Floor / Ceiling / Wall N‑S‑E‑W) orients and positions in one click; Mirror flips along an axis; the three rotation fields tilt freely. Models are auto‑scaled to fit and given an editable weight. Images become a flat panel sized to their aspect ratio. A 3D model also has a Horizontal cut: two sliders (top and bottom, as a percentage of the model's height) show only the slice between them — handy for revealing just the floor level or a single deck of a venue model. Reset cut restores the full model. Imported 3D models come in at 10 % opacity by default, so they sit as a faint reference you can rig over; raise it with the Transparency slider in the editor if you want the model more solid. You can also recolour a model: the editor's Color picker tints the whole model to any colour you choose. Calibrate size: if an imported model comes in at the wrong scale, click Calibrate size, then click two points on the model that span a dimension you know the real length of (e.g. a door, a truss, a stage edge), type that real length in metres, and the whole model is scaled uniformly to match.

10. Save, open & export

11. Keyboard & mouse shortcuts

A quick reference to every shortcut. The hold‑key shortcuts (A, R, M, Z) only work while the key is held — release it to go back to normal. Shortcuts are ignored while you're typing in a text field.

Reopen this manual any time with the ? button in the top‑right. All load figures are indicative estimates and do not replace proper structural documentation.

Credits

Created by Kim Paulli · kim@paulli.net