TouchDesigner TOP & Chop Reader Nodes

LightAct allows you to grab textures (TOP) and data (CHOP) from TouchDesigner using shared memory. On TD’s side, this is done with Shared Mem Out TOPs & CHOPs and on LightAct side it’s done using TouchDesigner TOP & CHOP Reader nodes.

TouchDesigner TOP Reader node

The most efficient way of sharing textures between TouchDesigner and LightAct is using Spout or, if you are on multiple servers, NDI. However in certain cases using Spout is not possible. One such case is when you are using a multi-GPU system and TD is running on a different GPU than LightAct. In this case using shared memory texture transfer is the only option.

In order to set this up, all you need to do on LightAct side is to insert a TouchDesigner TOP Reader node in Devices window. Please note the Handle name you type in as it will have to match what you type in on TD’s side.

On TD’s side you should insert a SharedMemOut TOP. In the Shared Mem Name type in the same name as what you typed in on LightAct’s side.

Pixel formats

Texture transfer has been tested with 8, 16 and 32-bit RGBA texture formats. Please note you might get unexpected results if you use other pixel formats.

If the setup is correct, you’ll see the texture in the node’s properties once you check Listening checkbox.

In order to get the texture to your layouts, just use TD TOP Listener node and select your TOP Reader node as its parent.

TouchDesigner CHOP Reader node

With TouchDesigner CHOP Reader nodes you can get channel data from TouchDesigner.

In order to set this up, all you need to do on LightAct side is to insert a TouchDesigner CHOP Reader node. Please note the Handle name you type in as it will have to match what you type in on TD’s side.

On TD’s side you should insert a SharedMemOut CHOP. In the Shared Mem Name type in the same name as what you typed in on LightAct’s side.

Please note, channel names are not read on LightAct’s side.

If the channels were read correctly, you’ll see them on the right side once you’ve selected the Listening checkbox.

To get the channel data into your layouts, just insert a TD CHOP Listener node and select your CHOP Reader node as its parent.

OptiTrack, BlackTrax and PosiStageNet

This article below goes through the process of setting up reading of OptiTrack data. The process with BlackTrax and PosiStageNet is the same.

LightAct can read OptiTrack rigid body information and use it to update location and rotation of any object in the Visualizer.

The process to setup OptiTrack integration starts with inserting OptiTrack Reader node in the Devices window.

Once the node is inserted it automatically starts looking for any Motive servers on the network. If it finds any, they will be listed below the manual settings.

You can either select one of the found servers or type in the IP address of the server manually and select with connection type it is using (Multicast or Unicast). If you choose Multicast, you need to type in its Multicast Address as well.

Once you’ve made your choice, don’t forget to select Listening checkbox. If the node is receiving any data, it will show in the Data section.

Setup in Layer Layouts

To use the data from the reader node, you can use OptiTrack Rigid Body Listener node in the Layouts. Please note, you can create several OptiTrack Rigid Body Listener nodes and connect them to the same OptiTrack Reader node.

OptiTrack Rigid Body Listener node has 2 inputs: with Body index input you select which rigid body you are interested in, and Pos scale input determines multiplication factor which will be used for all the incoming locations.

The OptiTrack Rigid Body Listener node can be connected to Set Object Location & Rotation nodes in order to move and rotate an object in the Visualizer.


Lightact works with StereoView. StereoView outputs a depth map. To import it you should first open the Devices window by pressing F7 or going to Window and then clicking on Devices. Once there, right-click, hover above StereoView and then click on Add reader. Select the node and click on Scan button. If Lightact finds a StereoView device (either […]

Continue reading


Lightact works with Intel RealSense depth cameras. You can use their depth feed for various purposes, interactive installations being probably the most common application. [vc_message]Please note, Lightact has been tested only with D435 RealSense camera. There have been some reports that it doesn’t work with D435i.[/vc_message] To import their feeds (depth or RGB) you should […]

Continue reading


Lightact can read incoming MIDI signals. If you connect a MIDI USB device (such as KORG nanoKontrol2, for example) and want to read its MIDI signals, the starting point is to open Devices window. When it opens, right-click somewhere in the empty area, hover above MIDI and click on Add reader. A Midi reader node will appear. […]

Continue reading

LightNet and LightSync

Lightact supports multi-server syncing and playback. It does that with LightNet and LightSync functionality introduced in v3.0.5. LightNet allows different Lightact instances on the same network to communicate with each other whereas LightSync is Lightact’s proprietary timecode protocol, which allows one Lightact instance to act as a master to which all other instances (the slaves) […]

Continue reading


Newtek’s NDI is a network texture streaming protocol. It allows you to stream textures between several devices on the network. Lightact allows you to receive a texture from several NDI sources and transmit several textures with NDI. Sending NDI In order to send a texture using NDI, we open the Devices window by pressing F7 […]

Continue reading

Video capture (Generic, AJA, Blackmagic & Deltacast)

LightAct can capture video input through its Video capture Reader nodes. You can use Generic reader, which works with USB cameras and Datapath products or one of specialized Readers which work with video capture cards of respective manufacturers. At the moment, LightAct supports AJA, Blackmagic and Deltacast video capture cards. Let’s go through all of […]

Continue reading


Art-Net is one of the most popular protocols for transmitting DMX data over the network. Lightact can both send and receive this type of data. Lightact can also receive Art-Net timecode. In this chapter, we’ll walk through setting up an Art-Net node to send DMX data to. We’ll also set up an Art-Net listener node […]

Continue reading


Spout is a framework allowing you to share texture between different Windows applications. You can read more about it here. Lightact allows you to both send and receive textures with spout. Sending spout To send a texture from Lightact using spout you should first open the Devices window by pressing F7. Once there, right-click in […]

Continue reading