Case Study
Echoes of Resistance: The Chicano Movement
An educational data visualization that moves through the Chicano Movement of the late ’60s and early ’70s, its figures, its protests, and what it left behind.

Project Overview
Length: 2 minutes 52 seconds, looped
Role: Solo Build
Creative Vision:
This project is a data visualization built from archival images of the Chicano Movement, which emerged in the late 1960s through the early 1970s. Designed as an educational piece, it moves the viewer through the stages of the movement, key figures, protests, and what it left behind for Chicano communities across the US. The images form the United Farm Workers eagle which then transforms into a motion-captured figure, with the intent of the message being that our cultural and familial history lives within us.
Build Information
Software:
-
TouchDesigner 2023.12230
-
Python (control extension)
-
Unreal Engine 5 (Previz)
-
Axis Studio
Hardware:
-
Alienware m15 R4
-
Perception Neuron 3 Motion Capture Suit
Overall Architecture Format

The Python extension is the core of the build. It holds state, consolidates logic that would otherwise be scattered across the network, and drives the timers that sequence the scenes. Keeping it in one place meant scene changes stayed easy to track. No chasing references across the network every time something needed to shift.

-
COMM: input data and overall system communication
-
PERCEPTION_NEURON: Perception Neuron 3 mocap data
-
AUDIO: All imported audio assets
-
CONTROLS: Contains OSC + Timer controls for vfx
-
STATE_MACHINE: inner python extension managing scene sequencing
-
-
GEN: generated visual data
-
POINTS: samples the OBJ and maps the archival images onto it
-
TEXT: information content to be displayed at runtime
-
-
TRANS: transitions between idle and visual scenes
-
DISPLAY: output routing
-
PREVIZ: UE5 previz environment
-
WINDOW: physical screen
-
Decisions and Problems
1. The API
The original plan was to pull from an API of Chicano Movement archival imagery. Nothing I could get access to existed in a usable form, so I sourced and selected 23 images by hand. That capped the scale, but it meant every image was chosen deliberately rather than scraped. Given the subject matter, that was the right tradeoff.
A Replicator handles the import, so adding or swapping images doesn’t mean rebuilding anything.
2. Sequencing
Scene sequencing was the hardest part of the build. Every scene carries its own text, fade duration, and hold time, and my first approach was a separate timer for each of the 26 segments, which turned into a mess of overlap, misfires, and conflicts.
I moved all of it into a Table DAT that the extension reads at runtime. That took the whole sequence down to two timers: one for fades, one for scenes. Retiming the piece means editing a table, not rebuilding operators.


3. Motion Capture
Importing Perception Neuron 3 data took some work. Noitom doesn’t offer a TouchDesigner plugin, and the only thing I found was a GitHub repo that hadn’t been touched in seven years. Getting it working with the current suit meant updating the skeleton structure so the data would retarget properly, and ensuring a smooth transfer over UDP.

Performance and Constraints
Point Count - 60,005, sampled from imported OBJ
Framerate - 60fps, sustained
Sequence Length - 02:52, built to loop continuously without interruption
GPU - NVIDIA RTX 3070
Output Resolution: 1920 x 1080
Handoff and Reproductivity
The whole piece runs off a custom parameter page. Anyone can operate and edit without opening the network.
​
-
Start / Stop / Resume / Reset - playback control
-
Camera Preset - moves the camera to a set position
-
Title / Subtitle - text displayed at start
-
Fade Time - duration of scene transitions
-
Geometry - formation of the point clouds
-
Mocap Mode - live suit data or pre-recorded loop; runs unattended with no performer

Axis Studio
Reproducing the mocap pipeline requires an Axis Studio license. Running the piece from pre-recorded capture does not.
Outcome
Presented at The Interactive & Immersive HQ Pro Accelerator Session in February 2026. Also shown in October 2026 at the Chicago TouchDesigner Meetup, an event I organize. Currently being submitted to exhibitions and showcases.


