From TouchDesigner 088 Wiki

Rendering and Compositing

composite HD video at 60fps

  • Realtime GPU-accelerated compositing and rendering with TOPs (Texture Operators)
  • Multi-pass rendering
  • Pixel format support for 8-bit color RGBA channels up to 32-bit floating point channels and HDR shaders
  • User programmable GLSL 3.30 pixel and vertex shaders for custom image operations, materials, and shaders
  • Support for 3D textures and 2D texture arrays and multi-layer textures
  • Support for 10-bit color displays
  • Materials and shaders integrated with TOPs compositing engine
  • Multi-frame image blending, time-based image blending

Groundbreaking Workflow and Scalable Architecture

  • WYSIWID (What You See Is What It's Doing) - Industry-defining interactive authoring environment lets you visualize your data as you work.
  • All nodes (Operators) include interactive viewers displaying the node's effect as data flows through it.
  • Modular networks (Components) make it easy to encapsulate work.
  • Share and reuse components freely between projects, create asset libraries.
  • Scalable architecture makes sure you never out grow TouchDesigner. High-performance engine scales with hardware.
  • Server-Client networks, Replicators, and Clones are just some of the tools available to help scale projects into large systems.
  • Project-proven stability with hundreds of thousands of nodes, thousands of channels, hundreds of movies, heavy 3D geometry data.
  • Performance analysis tools (CPU, GPU, memory) give detailed feedback for optimization and performance tuning.

Video and Audio In/Out

  • Read QuickTime, H.264, .mp4, .wmv, .avi, .mpg, .tif, .jpg, .gif, .psd, .flv, .swf, .rla, and many more File Types
  • Hap and Cineform (Pro Only) codecs decoding for the highest quality video at resolutions up to 4K
  • Video inputs from multiple USB/Firewire cameras, webcams, and HD capture cards (Blackmagic Design, Datapath, NVIDIA)
  • Export to QuickTime movie formats (with audio), realtime encoding using H.264 (Commercial and Pro)
  • Outputs any combination of images to multiple displays
  • Simultaneous playback, mixing, and triggering of multiple audio and video sources
  • MIDI and OSC in and out
  • ASIO audio for low latency performance and support of professional audio devices

Multi-Display Support

  • Use any custom resolution the GPU hardware supports
  • Any combination of outputs to multiple displays using multiple GPUs or across multiple machines
  • Hardware Framelock support for NVIDIA Quadro Sync and AMD S400 cards keeps GPUs in perfect sync
  • GPU Affinity support for optimizing the amount of work done by each GPU

Animation and Control Channels

  • Animation Editor and Animation Component provide flexible keyframing and playback control
  • Time Slicing technology improves realtime motion smoothness
  • Motion clip blending and sequencing system for full character/animation control (Pro)
  • Triggers, constraints, overrides, connect any control channel to any parameter

Custom Control Panels and Application Building

  • Build your own control panels in 2D and 3D
  • Use sliders, buttons, text fields, containers, 3D objects as your panel building blocks
  • Easy to access panel states; momentary, toggle, radio, UV-position, drag-out, rollover, etc
  • Full customization to panel appearance and logic
  • Ready-to-use UI gadgets included in the TUIK library, lets you build control panels using simply drag-n-drop

3D Engine and Tools

  • Import geometry and scenes using FBX file format from Maya, 3DS Max, Houdini and others
  • Node-based procedural modeling (using Academy-award-winning SOPs)
  • Support for polygons, meshes, NURBS, Beziers, subdivision surfaces
  • Integrated particle system with sprite rendering
  • Realtime GPU-based GLSL deformations and bone-weighted deformations for characters
  • Basic 3D modeler

Device and Software Interoperability

  • Support for various communication protocols (TCPIP, UDP, UDT, OSC, MIDI, and more...)
  • Ableton Live Sync component hooks directly to Ableton Live for show control and triggering of sequences
  • C++ CHOP and C++ TOP let you create your own custom operators in TouchDesigner using C++
  • DMX In CHOP and Art-Net support
  • Serial support for communication with Arduino, GPIO, virtual serial ports, and other RS-232 enabled devices
  • Shared Memory access with other applications (like ARToolkit)
  • Import geometry from other 3D package using FBX format
  • Retrieve any HTML or XML via URL and procedurally parse, extract, and filter the data

Scripting and Programming

  • Python 3.3 is the default scripting language
  • Scripts can be triggered by logic states, user interaction, and a multitude of internal and external events
  • Tables as text arrays for managing large amounts of project data
  • Integrated text and scripts in DATs, no external files required
  • Unique procedurally-generated data tables reduce the need for scripting
  • Native support for programs written for CUDA on GPUs, NVIDIA's parallel-computing environment