DMX POPs – True Freedom

No more CHOPs! The hype is true. No more working with large data sets in numbers. Now we have an entirely new workflow that keeps it in the fun zone. With the introduction of POPs we can work in 3D space to bring a more syncronized enivronment faster than ever before. Previewing data has never been easier.

Why use POPs?

  • Obviously – unlocking more GPU processing
  • Accessable data!
  • Easier to transform between the virtual and physical worlds

Fixtures

The modern day fixture has a variety of options to work with, so its important to know what each of your fixtures does so you can define what is the most appropriate mode for your task. DMX controlled devices can range from intelligent lighting, atmosphere fx such as fog and pyro, to automation elements like winches, panning fixtures or tracks. All can be easily accessed and maticulously curated to fit your project.

Featured Fixtures – Clay Paky – Valero Wave, Panify 2

It is very easy to always jump into the max channel count, but you may never use most of the channels involved if your working inside Touch Designer. I recommend finding those channels that you really want to control and leave the rest to default. I am normally working with 4-6 different channels per fixture to run patterns and setting the rest to a default static value. You must have the correct default parameters for all channels as to not accidentally send values to wrong channels. The application may only require the basic mode to get the desired outcome, which can in turn save you many channels and depending on how youre outputting, budget for your project.


Point vs Prim

  • Any data applied to a primitive class attribute will affect the macro level of the fixture. This is any standard light such as a par can, basic strobe or moving head.
  • Any data applied to a point class attribute with effect the micro level of the fixture, more often called an instanced fixture. This is common on advanced bar lighting, washes and moving heads.

***You must give a position for each instanced element***


Setting the Stage

To standardize the process, we will use the copy POP to assign the fixture positions.

This is where you implement CAD data to make sure youre as close to the “source of truth” model as possible.

If your fixtures require further transformation, make sure to enable the tempate data on the second input .


Adding and Manipulating Data

The Lookup Attribute POP (Point Operator) in TouchDesigner evaluates specific data values, like a fixtures’ position, and uses them as an index to retrieve and map corresponding values from a second input (such as a lookup curve or texture) onto new or existing attributes.

https://docs.derivative.ca/Lookup_Attribute_POP

The Lookup Channel POP takes an input attribute, like a point index, and uses its value to dynamically sample a specific channel from a CHOP, translating those waveform values into new or existing point attributes

https://docs.derivative.ca/Lookup_Channel_POP

The Lookup Texture POP takes the spatial coordinates of your points, like particles or vertices, and uses them as a map to sample color or data values directly from an image or texture, applying those pixel values as attributes onto your geometric points.

https://docs.derivative.ca/Lookup_Texture_POP

The Math Mix POP is a powerful node that allows you to perform a wide variety of complex, sequential math and blending operations on particle or point attributes in a single, streamlined step instead of using multiple CHOPs and scripts.

https://docs.derivative.ca/Math_Mix_POP


DMX fixture POP

The DMX Fixture POP constructs DMX universes from a POP input. This node goes at the end of the data pipeline after you have added all your attributes onto your attribute classes. Here you can assign attributes to DMX channels and set all necessary parameters.

https://docs.derivative.ca/DMX_Fixture_POP

  • Fixture – Routing Data can be automatically assigned. Touch Designer has greatly improved the setup time, allowing the process to happen internally
  • Profile – The next step is connecting your attributes to channels. I generally set the names to reflect the attributes to avoid confusion. This is where you can set you channels to handle 8 bit or 16 bit data. Whichever you decide, Touch will handle the channel assignment according to you preference.

DMX map DAT

This DAT gives feedback to each fixture type showing all attributes and how the channels align for the current fixture POP referenced. Make sure to use the filtering parameters to narrow down the search field. I always like to exclude the unused channels so i can focus on immediate data.

https://docs.derivative.ca/DMX_Map_DAT

This DAT is very useful in debugging your fixtures when syncing to other hardware.

*** Make sure to not use during the run of show. This is strictly for debugging***


Outputting DMX

The newest workflow gives developers full transparencz and filtering at their finger tips. Each output now needs one node, where zou can quickly assign which fixtures to where. With custom routing tables, you can separate your fixtures as needed to match your hardware setup in no time. What makes it even better, Touch Designer gives feedback if you are overlapping on your fixtures.

DMX out POP

https://derivative.ca/UserGuide/DMX_Out_POP

  • You only need one per output
  • Allows you to enable whichever fixtures you want at the time

Routing Made Easy

Quick routing table updates via script DAT make tabel building much easier


Keeping it Universal

As mentioned before, picking which channels you need to control initially will clean up alot of the chaos in big data sets. You will find that most fixtures have similar channels, whether it be color, dimmer, pan or tilt, focus, zoom, etc. If you continue to work with the baisc parameters, cloning presents an oppportunity to reuse your process on a different path. For each of my 5 main fixtures, I was able to clone my process, granting immunity to the custom parameter values, allowing me to control each fixture type unqiue to the others.

Any sort of data set that needs to be synced across multiple elements, for instance the current color selection, will use a global input, a single source to link with all the rest of the parameters.

Tips on Controlling Attributes

While derivative gave us some tools to to preview POP data with the POP viewer, I prefer to make my own directly on the attributes and see them. Simply assigning the data to the color attribute makes it easier to see what the data is doing spatially. At each moment of adding another layer into the attribute, I preview what it will be before affecting the output. At the end of the pipeline, I re introduce the correct colors being used to match the scene.

Creating Chases with Field POPs

Blending Attributes with the Blend POP

Color Adjustments in Clone Immune Components

Clean UI’s are a must in larger projects

Automating the Setup

  • Fixture creator based off of OBJ files + default parameters