Skip to content

Export CHOP vs CHOP Reference

Updated: 2026-05*

1. What This Page Covers

In TouchDesigner, different operator families can’t be wired together directly. To pass numerical values between families, you use parameter linking.

This page covers the two main parameter-linking methods (Export CHOP / CHOP Reference) and when to use which.

A note on design philosophy: Blender’s Geometry Nodes let one node accept multiple parameter types, but the resulting nodes become more capable and the relationships more complex. TouchDesigner is also used for live performance, so I think the design intentionally keeps nodes simple — to support intuitive thinking and reduce live-operation mistakes. Complex logic goes to Python.


2. Three Parameter-Linking Methods

Method Character
Export CHOP Drag-and-drop simple. Beginner-friendly
CHOP Reference Path-based + arithmetic supported. More general
Current CHOP Value Snapshot of the value at link time

Parameter-linking procedures

Method Description
① Drop on parameter window Open the destination parameter window, activate the source CHOP, drop on the destination
② Drop on operator Activate the source, drop on the destination operator itself (Export CHOP only)

3. Export CHOP

3.1 Strengths

  • Same-project only parameter linking
  • Drag-and-drop friendly:

Drop onto a parameter name (also works for CHOP Reference):

Drop onto the operator itself (Export CHOP only, not CHOP Reference):

3.2 Export Enable button

The Export Enable button (green dot) toggles the parameter on/off:

3.3 Removing the link

From the destination, right-click the number box / parameter → Remove Export:

By design, removal takes an explicit action — to prevent accidental disconnection.


4. CHOP Reference

4.1 Path specification (more flexible)

Reference values by relative or absolute path:

Path type Example
Same Container op('OperatorName')['ChannelName']
Relative path op('Container/.../OperatorName')['ChannelName'] (no leading slash)
Absolute path op('/Container/.../OperatorName')['ChannelName'] (with leading slash)

To pass values between separate .toe files, op() references don’t apply — use a networked transport such as OSC / NDI / Touch In and Touch Out CHOPs.

4.2 Arithmetic supported

CHOP Reference can include arithmetic inline:

op('lfo1')['chan1'] * 10 + 5

This is the biggest difference vs Export CHOP.

4.3 Removing the link

Open the parameter box and Delete, or right-click → Delete Expression.


5. Four Parameter-Box Types

Click + to expand a parameter — you can switch between 4 types:

Type Color Content
Constant Gray Literal value
Expression Light blue CHOP Reference
Export Green Export CHOP
Bind Purple Bidirectional link. A Bind Master and its Bind References always stay in sync (commonly used with a Container’s Custom Parameters)


6. When to Use Which

Personal take:

Scenario Recommended
Simple project Export CHOP (better ergonomics, beginner-friendly)
Project spanning multiple Containers CHOP Reference (path flexibility)
Need arithmetic CHOP Reference (required)
Live performance with fast toggling Export CHOP (green-dot toggle is intuitive)

For anyone comfortable with code-based programming, CHOP Reference as the default is the more versatile choice — since inline arithmetic shows up constantly.


7. Practical Tips

7.1 Type the path directly

CHOP Reference can be typed. Once you know the paths, typing is often faster than drag-and-drop.

7.2 In-Container references

Inside a single Container, paths shorten — easier to copy/paste:

op('lfo1')['chan1']

7.3 Debugging

Errors in a CHOP Reference turn the parameter red. Check the path for typos or mismatched operator names.