I participated in another group project for my master’s studies. The Chair for Media Design issued a task to develop software to control their newly acquired stage lights.

Modern stage lights are in most cases digital controllable devices. Using the DMX protocol on a serial bus, many properties of the lights can be controlled. For instance, their brightness, color, focus, or gobo can be adjusted. Additionally, some lights are mounted on an articulated platform. Those so-called Moving Heads can point their light in any given direction. All those properties can be controlled from a connected light mixer or in our case, from computer software.

The software requirements included the following functionalities:

  • simple inputs to control all parameters of all connected lights
  • controls to equalize the colors of different types of MovingHeads
  • computation to set 3D focal points for all lights in unison and individually
  • tools to set up and modify paths to create animations; lights will follow the animated point on a path
  • combination with a motion-tracking input device; detect persons on stage and automatically focus lights on a target

To program this software, we had to use the open-source framework Cinder. It is a free library based upon C++ for creative projects in this field. Although this was pretty new to me, we were able to fulfill all requirements in a group effort.