lwc:touchdesigner

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
lwc:touchdesigner [2024/08/29 12:17] John Harrisonlwc:touchdesigner [2024/09/04 14:08] (current) John Harrison
Line 23: Line 23:
     * click and drag operator to show in window into ''Window Operator'' parameter     * click and drag operator to show in window into ''Window Operator'' parameter
  
 +=== TOPS ===
 +  * **moviefilein**: use ''Cue Point'' to 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 ''palette'' menu choose ''tools'' -> ''blend modes'' to see all the compositing possible.
 +      * in its parameter menu choose ''pulse'' to 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 ''matte'' to switch between 2 images if you change the ''matte channel'' in the parameters dialog to ''luminance''
 +    * use ''extend left'' and ''extend right'' to 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 ''TOP'' parameter in the parameter window of ''switch''
 +   * 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**: ''preshrink'' reduces 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 ===
 +//CHOPS can be **single sample** or **multi sample**//
   * ''Select'': filter for a specific output. Example: look for DONE channel name coming out of ''timer'' chop.   * ''Select'': filter for a specific output. Example: look for DONE channel name coming out of ''timer'' chop.
 +  * ''Audio Movie'': plays audio of a movie file
 +    * drag ''moviefilein'' TOP onto this CHOP to get the audio of a specific movie
 +    * to actually get a movie with audio then connect ''moviefilein'' TOP to ''moviefileout'' TOP then drag ''Audio Movie'' CHOP onto ''moviefileout'' TOP
 +  * ''LFO'': send sine, cosine, square, pulse, etc.
 +  * ''Trigger'': sort of like a fully adjustable ADSR
 +    * turn ''time slice'' in the parameter window **off** to see the envelope
 +  * ''Count'': increment
 +  * ''Filter'': smooth the data
 +  * ''Lag'': much like filter but has an accell/decel feature
 +  * ''Fan'': split from a single channel to multiple channels
 +  * ''Math'': 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 CHOPS
 +  * ''Switch'': switch between multiple sources
 +  * ''Replace'': replace input 1 with input 2 if input 2 has data
 +  * ''Fan'': take a serious of channels and fan in to 1 channel
 +  * ''Timer'':
 +  * ''Event'': similar to ''trigger'' but can handle multiple triggered values at different times
 +  * ''Trail'': record values over time. Set ''Grow Length'' on 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
  
-== SOPS ===+=== multi sample === 
 +  * ''Pattern'': Sine, Cosine, etc. 
 +    * can accept another input multisample which can be combined with the pattern (see ''Combine Channels'' in the ''Channel'' tab of the parameter window)  
 +    * note the "extend region left" and "extend region right" 
 +  * ''Trim'': cut or extend the multisample 
 +  * ''Audioosc'': you can set the sample rate to match the sample size of a pattern CHOP or similar CHOP 
 +  * ''Constant'': make it multisample in the ''Channel'' tab 
 +  * ''Shuffle'': 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 samples''as the method in the parameter window 
 + 
 +=== SOPS ===
   * ''Copy'': Make a copy of the first input at the each of the vertices of the 2nd input   * ''Copy'': Make a copy of the first input at the each of the vertices of the 2nd input
   * ''Sweep'': sweep the first input along the vertices of the 2nd input like a "paper fan"   * ''Sweep'': sweep the first input along the vertices of the 2nd input like a "paper fan"
Line 32: Line 88:
   * ''Convert'': convert object to polygon   * ''Convert'': convert object to polygon
   * ''Facet'': low poly look (?)   * ''Facet'': low poly look (?)
 +  * ''Limit'': draw a line using data from multi sample CHOP
 +
  
 === DATS === === DATS ===
Line 37: Line 95:
   * ''Merge'': combine multiple DAT tables   * ''Merge'': combine multiple DAT tables
   * ''Sort'': sort table   * ''Sort'': sort table
 +  * ''Chop To'': drag and drop TOP into this DAT to have the data interpreted as a table
  
 ==== Connections ==== ==== Connections ====
Line 55: Line 114:
   - Using LMB Drag Chop (with viewer active) into the parameter in the parameter window   - Using LMB Drag Chop (with viewer active) into the parameter in the parameter window
   - Choose ''CHOP Reference'' in the context menu   - Choose ''CHOP Reference'' in 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 Chop'' except when choosing ''Export Chop'' you also seem to get a bonus export table that gets created (maybe?)
 +
  
 === DAT to DAT or DAT to TOP === === DAT to DAT or DAT to TOP ===
Line 61: Line 124:
   - Using LMB Drag DAT into the DAT parameter in the parameter window. Does not need viewer active.   - 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 ==== ==== Tips and Tricks ====
   * To see output of CHOP (single or multi value) R-click on output of CHOP and choose a ''chopto'' DAT to see as a table   * To see output of CHOP (single or multi value) R-click on output of CHOP and choose a ''chopto'' DAT to see as a table
     * optionally use the ''trail'' CHOP to see the history of values     * optionally use the ''trail'' CHOP to see the history of values
 +  * Collapsing a network: select all ops in the network, R-click and choose "collapse selected"
 +  * ''File''->''Export Movie'' to save a video. Suggestion: turn ''realtime'' off to avoid glitches
 +  * default files are in ''Program Files''->''Derivative''->''TouchDesignerVERSION''->''Samples''->''Map''
 +  * when needing constantly changing values take a look in the ''Channel'' tab of the parameter window at ''Time Slice''
  
 == Chop Execute DAT == == Chop Execute DAT ==
Line 70: Line 139:
   * Alternatively you can type the name of the CHOP operator in the CHOPS parameter in the ''CHOP execute'' DAT parameter window   * Alternatively you can type the name of the CHOP operator in the CHOPS parameter in the ''CHOP execute'' DAT 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   * 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 execute'' reference it with ''op('NAME_OF_OPERATOR').par.NAME_OF_PARAMETER+  * To write to an operator from ''CHOP execute'' reference it with ''op('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 called ''text''     * 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 called ''text''
 +
 +==== 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
 +    * ''NDI'' DAT shows in a table all courses and streams available
 +    * ''NDI out'' TOP sends an NDI stream
 +    * ''NDI in'' TOP 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]
  • lwc/touchdesigner.1724951828.txt.gz
  • Last modified: 2024/08/29 12:17
  • by John Harrison