TouchDesigner入门小计 一

其实很久以前就接触过TouchDesigner这个软件,但是当时对这种连线式的编程方式还是比较抗拒,所以只是大概了解了一下就没有继续看了。但是最近有一个项目用到了kinect azure,然后TD对这个东西的支持比较好,所以就用TD做了一次项目。发现和原来用processing写程序的感受还是挺不一样的。最近周围的人越来越多开始用td做项目。所以想开始写一些td的入门教程和防止自己后面会忘记,也给想要学td的人一些帮助。因为td的中文资源还不是很多,我学的时候主要还是只能看官方的wiki,辅助一些YouTube上面英文的视频教程。

我还是用平常的方式来介绍,主要是解释几个概念,我的理解是搞懂了这些概念就可以知道题题是怎么样运行的。

OP

首先这种连线式的编程方式基本都是由一个一个的块链接而来的,在td中这些块被称为op。OP主要有下面这几种
COMP、TOP、CHOP、SOP、MAT、DAT、Custom。



其中TOP是对一个画面进行处理的,比如生成一个纯色的图片,或者一个渐变的图片,或者对几个输入的图片进行选择或者叠加什么的。

CHOP会包含一个或者多个的数据,每个数据又可能有多个sample,可以理解为一个变量,可以存储很多数据每个数据可以是一个数也可以是一个数据包含很多个数,每一个数据被称为channel,数据如果由多个数组成,那么每个数被称为sample。不同的CHOP可以对输入或者自己产生的数据进行变化,比如constan CHOP会生成一个常亮,LFO CHOP会生成一个周期变化的数据等等。

SOP会生成一个三维的模型或者对一个三维的模型进行变化

MAT是材质的OP

DAT有两种,一种是包含数据的,比如一个txt文本,或者一个table的表格。还有一种是作为一个脚本可以运行,因为TD是支持python脚本,所以可以在DAT里面写python的脚本来运行,不同的DAT可以在不同的情况下执行,比如CHOP execute可以在chop里面的数据发声变化时被调用

COMP可以理解为其他种类的OP。这个有点复杂估计要单独说。

每个OP都会有参数可以调节,通常界面的右上角会有,如果没有的话可以按下p这个按键调出。

数据流和引用

因为每一个op都只能实现特定的一些简单功能,所以一个程序通常来说是由很多op连接而成的。所以每一个op会有或者没有一个或者多个输入或者输出,取决于他的功能。OP之间的连接会有两种方式:第一种是由一个op的输出连接到另外一个op的输入;另外一种方式是一个op的参数引用,另外一个op。


比如这个程序里面我先用一个constant CHOP来生成一个Channel的数据交值是0.3。然后用一个math CHOP把这个数据乘以二,让它变成0.6。然后用一个constant top,让他参数中的颜色的r通道引用math生成的这个数据。我们我们就会得到一个r的值为0.6的颜色。可以看到如果是用第一种的数据流方式的话,在touchdesigner里面会用一条实线来表示。线条的颜色是和数据流的种类有关的,比如如果是chop的话,那它就是绿色,和op的颜色是相同的。如果是参数引用的话,会用一条白色的虚线来表示。

python

因为touchdesigner是支持python的,所以几乎所有参数的地方都可以是python的表达式,比如constant top的引用方式。

看到这里,你应该去试着理解和记住一些常见的OP了。可以去看TD中文社区这个网站的初级教程,或者官方的wiki。
https://docs.derivative.ca/TOP
https://docs.derivative.ca/CHOP
https://docs.derivative.ca/SOP
https://docs.derivative.ca/DAT
这些页面里每个都有一个sweet 16 xxxs下面列出了常用的16个这个种类的op

你可能感兴趣的:(TouchDesigner入门小计 一)