Book Image

Multimedia Programming Using Max/MSP and TouchDesigner

By : Patrik Lechner
Book Image

Multimedia Programming Using Max/MSP and TouchDesigner

By: Patrik Lechner

Overview of this book

Max 6 and TouchDesigner are both high-level visual programming languages based on the metaphor of connecting computational objects with patch cords. This guide will teach you how to design and build high-quality audio-visual systems in Max 6 and TouchDesigner, giving you competence in both designing and using these real-time systems. In the first few chapters, you will learn the basics of designing tools to generate audio-visual experiences through easy-to-follow instructions aimed at beginners and intermediate. Then, we combine tools such as Gen, Jitter, and TouchDesigner to work along with Max 6 to create 2D and 3D visualizations, this book provides you with tutorials based on creating generative art synchronized to audio. By the end of the book, you will be able to design and structure highly interactive, real-time systems.
Table of Contents (19 chapters)
Multimedia Programming Using Max/MSP and TouchDesigner
Credits
About the Author
About the Reviewers
www.PacktPub.com
Preface
Index

Initializing a patcher


Initializing means to set up parameters of our patch at startup. There are a couple of ways to initialize values. Look at the following screenshot that depicts the initialization.maxpat patcher:

In the patch, you can see 5 differently initialized versions of the same. The [noise] patch is a white noise generator, and [onepole] is another lowpass filter (from left to right) and can be explained as follows:

  • No or rather default initialization (not recommended)

  • Initialization using initial attributes (through the inspector)

  • The [loadmess] object that fires out its argument when the patch is opened

  • The [loadbang] object that fires a bang when the patch's open end is connected to a messagebox object, which in turn contains our initial value

  • Initialization of the processing part using an argument but no/default initialization of the GUI object

The last one is particularly interesting; it can actually be considered as a bug (a bug we built, not Cycling'74). It has been taken up...