101
- RH dialog called the parameters dialog
Operators
- TOPS: Texture operators — images and pixel data
- CHOPS: channel operator: manipulate channels or sequences of numbers
- SOPS: Surface operators — polygons, spheres, etc. (models?)
- MATS: Material operators — shaders that you might apply to SOPS or other surfaces
- DATS: Data operators — hold strings, XML, Tables, etc.
- COMPS: components — have networks inside of them. Also UI components
Specific Operators
Output
choptoDATtrailchopinfoDAT shows the names of the parameters
COMPS
- Container has panel. Add UI elements and connect with top/bottom connectors
- drag onto
PanelCHOP to see info about all the UI elements - after connecting UI elements under
Childrentab choose how to align
- Text outputs text
- Window shows output of an operator in a separate window. This would be how to show the final product?
- click and drag operator to show in window into
Window Operatorparameter
TOPS
- moviefilein: use
Cue Pointto scrub thru a video- R-click to save image
- hsvadj is hue and saturation
- over: put input 1 over input 2
- composite: basic compositing (difference, screen, pinlight, subtract, etc.) with unlimited inputs. Has preview grid
- in the
palettemenu choosetools→blend modesto see all the compositing possible.- in its parameter menu choose
pulseto get a browser help page on this component (why pulse?)
fixed layer: where we get the resolution and aspect ratio
- matte: composites 1 input over another then create a matte effect using the 3rd input as the matte
- you can use
matteto switch between 2 images if you change thematte channelin the parameters dialog toluminance - use
extend leftandextend rightto choose how the image pattern repeats in the matte channel
- tile: kaleidoscope effect
- transform: rotate, scale, repeat, etc.
- layout: layout multiple inputs into rows, columns, or grids
- switch: switch (or blend) between inputs
- select: reference a TOP from any other location:
- drag the TOP you wish to reference into the
TOPparameter in the parameter window ofswitch - it's sort of like a “send” and “receive” for Pd and that's all it does?
* threshold: highlight areas (white vs alpha) that are beyond a certain brightness
- Blur:
preshrinkreduces the resolution before the blur is applied - LumaLevel: increase brightness of bright areas in image
- Feedback: set the target TOP by dragging the target top onto the feedback operator to create the reference
- moviefileout: create a movie, optionally with audio (using Movie Audio CHOP perhaps) and save the movie to a file
CHOPS
CHOPS can be single sample or multi sample
Select: filter for a specific output. Example: look for DONE channel name coming out oftimerchop.Audio Movie: plays audio of a movie file- drag
moviefileinTOP onto this CHOP to get the audio of a specific movie - to actually get a movie with audio then connect
moviefileinTOP tomoviefileoutTOP then dragAudio MovieCHOP ontomoviefileoutTOP
LFO: send sine, cosine, square, pulse, etc.Trigger: sort of like a fully adjustable ADSR- turn
time slicein the parameter window off to see the envelope
Count: incrementFilter: smooth the dataLag: much like filter but has an accell/decel featureFan: split from a single channel to multiple channelsMath: can combine CHOPS or combine channels. Also tweak the range of output values/Merge: merge multiple CHOPS into 1 CHOP with different channels. Use for example when doing the same math operation on multiple CHOPSSwitch: switch between multiple sourcesReplace: replace input 1 with input 2 if input 2 has dataFan: take a serious of channels and fan in to 1 channelTimer:Event: similar totriggerbut can handle multiple triggered values at different timesTrail: record values over time. SetGrow Lengthon to increase time window indefinitely.- can change it to capture only when input data is cooked
Analyze: Average, Sum, RMS, Peaks, etc.Logic: turn on or off depending on the values coming in. For example, turn on when input > 9
multi sample
Pattern: Sine, Cosine, etc.- can accept another input multisample which can be combined with the pattern (see
Combine Channelsin theChanneltab of the parameter window) - note the “extend region left” and “extend region right”
Trim: cut or extend the multisampleAudioosc: you can set the sample rate to match the sample size of a pattern CHOP or similar CHOPConstant: make it multisample in theChanneltabShuffle: sequence or split multisample or single sample CHOPS together- example: split a multisample CHOP with 10 points into a single sample CHOP with 10 channels by choosing
split all samplesas the method in the parameter window
SOPS
Copy: Make a copy of the first input at the each of the vertices of the 2nd inputSweep: sweep the first input along the vertices of the 2nd input like a “paper fan”- has
skinandtwistfeature
Convert: convert object to polygonFacet: low poly look (?)Limit: draw a line using data from multi sample CHOP
DATS
Text: type in “hello world” for exampleMerge: combine multiple DAT tablesSort: sort tableChop To: drag and drop TOP into this DAT to have the data interpreted as a table
Connections
- Wires: connections between the same family
- Links: references between operators of different or the same families
- Top and Bottom Connectors: for components to show hierarchy
Keyboard Shortcuts
- A: Toggle operator viewer active
- I: Zoom into component
- CTRL L-CLICK: Add multiple operators at the same time
Creating References
Chop to TOP
- Make Chop viewer active
- Click on TOP to get parameter window
- Get parameter you wish to change to show in parameter window
- Using LMB Drag Chop (with viewer active) into the parameter in the parameter window
- Choose
CHOP Referencein the context menu - alternatively, with the CHOP viewer window active, drag the CHOP op directly onto the TOP op and choose the parameter to map to in the pop menu.
- With this alternative method the reference is not Python code and therefore may not be as adaptable in some situations?
- This appears to be the same as following the original method but choosing
Export Chopexcept when choosingExport Chopyou also seem to get a bonus export table that gets created (maybe?)
DAT to DAT or DAT to TOP
- Click on DAT or TOP you wish to connect to to get parameter window
- Get DAT parameter to show in parameter window
- Using LMB Drag DAT into the DAT parameter in the parameter window. Does not need viewer active.
TOP to TOP
- click and drag one top onto another. Active window not necessary
Tips and Tricks
- To see output of CHOP (single or multi value) R-click on output of CHOP and choose a
choptoDAT to see as a table- optionally use the
trailCHOP to see the history of values
- Collapsing a network: select all ops in the network, R-click and choose “collapse selected”
File→Export Movieto save a video. Suggestion: turnrealtimeoff to avoid glitches- default files are in
Program Files→Derivative→TouchDesignerVERSION→Samples→Map - when needing constantly changing values take a look in the
Channeltab of the parameter window atTime Slice
Chop Execute DAT
- it works best to R click on CHOP output and choose
CHOP execute - Alternatively you can type the name of the CHOP operator in the CHOPS parameter in the
CHOP executeDAT parameter window - If you drag the CHOP with viewer active into the the CHOPS parameter in the DAT parameter window it will choose not just the CHOP operator but also the channel and you may not want the channel
- To write to an operator from
CHOP executereference it withop('NAME_OF_OPERATOR').par.NAME_OF_PARAMETER- get the name of the parameter by clicking on the
+to the left of the parameter in the parameter window. Example: Text parameter in text component is calledtext
Composting Operations
- Screen: add two images together without producing values above white
Sending and Receiving Video
- NDI: video over IP. Can be used for local video sharing
NDIDAT shows in a table all courses and streams availableNDI outTOP sends an NDI streamNDI inTOP receives NDI stream. Fill in the source name parameter
- Syphon (MacOS)/Spout (Windows): in and out TOPS share textures and images via shared memory on the same machine
- Video Stream Out: stream content over local network or internet. Send to YouTube or Twitch for example. Might be an easy way to send to VLC as well?
Built-in Variables
me.time.frame: frame # sent by timeline at a given moment
Units
i: index or sample
Pattern Matching
- match 2 and 3: [2-3]