YouTube2Text

14 - Working with DATs - TouchDesigner Tutorial: Beginner Crash Course — Transcript

by The Interactive & Immersive HQ · 4,279 words · 552 segments · language en · Watch on YouTube

Full transcript

  1. 0:01The next thing we're gonna build is gonna use a lot of DATs
  2. 0:03And like we said before
  3. 0:04DATs are the data operators
  4. 0:07so we can create tables text
  5. 0:09This is how you would probably work with
  6. 0:10a lot of web APIs in Python
  7. 0:13Now for this example
  8. 0:14what we're gonna do is make a little slider-controlled preset system
  9. 0:18so that we can drive a text TOP's text
  10. 0:22as well as the kinda text styles of it dynamically
  11. 0:26So with that said
  12. 0:27let's get started here
  13. 0:29I'm gonna delete everything
  14. 0:30and the first thing I'm gonna do is make my text TOP
  15. 0:34So I'll open the Op Create dialog
  16. 0:37type in text
  17. 0:38grab my text TOP
  18. 0:40and then I'm going to want to dynamically drive
  19. 0:43the text that's inside this text TOP
  20. 0:47So the way I can do that is first I'll make a text DAT
  21. 0:52and a text DAT is really
  22. 0:54you can think of it almost like a little WordPad
  23. 0:56or a little Microsoft Word without any of the features in it
  24. 0:59But essentially
  25. 1:00what you can do is activate the viewer
  26. 1:02and you can start typing inside of this text DAT
  27. 1:07and it's basically just gonna save that text in there
  28. 1:09You can manipulate it later with more DATs
  29. 1:11You can reference it for different things
  30. 1:13and that's what we're gonna do here
  31. 1:14We're gonna use a text DAT
  32. 1:15as our kind of text storage for our text TOP
  33. 1:19So like always
  34. 1:20like I said before
  35. 1:22before we start referencing any kind of data between operators
  36. 1:25it's always important to put a null
  37. 1:27So I'm gonna put a null DAT here
  38. 1:32And then I'm gonna go to my text TOP
  39. 1:34I'm gonna delete the text derivative here
  40. 1:39And then there's a parameter called DAT
  41. 1:42and essentially what this does is you can reference a DAT in here
  42. 1:45whether it's a table or a text DAT
  43. 1:47and then you can select text out of it
  44. 1:50to basically render in there instead of having to
  45. 1:52manually type the text inside this parameter
  46. 1:55So in this case
  47. 1:56what I can do
  48. 1:56for this DAT parameter is just drag
  49. 1:58and drop my null right onto that parameter
  50. 2:03and you'll see that we can see Can Start Type
  51. 2:06but it looks clipped on both sides
  52. 2:08So another really useful feature of the text TOP is on the first page
  53. 2:12we have Word Wrap
  54. 2:13which will automatically kind of figure out
  55. 2:15when those breakpoints are
  56. 2:17and wrap the text so that you're not kind of getting text clip
  57. 2:21It's very useful because it's dynamic
  58. 2:23So for instance
  59. 2:24if I go back to my text
  60. 2:25activate the viewer type something else
  61. 2:29and and and
  62. 2:31and I click outside of my text
  63. 2:33you'll see that it tries to word wrap as best it can
  64. 2:36Now what's happening is it's wrapping the words
  65. 2:40you know on the uh
  66. 2:41left and right plane so it's not getting clipped
  67. 2:43but the text is still so large that it
  68. 2:45it kind of overflows on the top and bottom
  69. 2:48So for this
  70. 2:49another really handy feature of the text TOP is
  71. 2:51is under the Font parameters to go to Auto Size Font
  72. 2:56and there's a couple options
  73. 2:57You can say Auto Fit If Too Large
  74. 2:59Auto Fit Always whatever you like
  75. 3:00For this one we'll go with Auto Fit Always
  76. 3:03That way the text will also dynamically resize
  77. 3:05so not only is it getting word wrapped on the left and right edges
  78. 3:08but it's getting resized in case it becomes too big
  79. 3:12Now with Auto Fit Always
  80. 3:13the nice thing is if we only have a little bit of text
  81. 3:15so let me delete most of this
  82. 3:22It'll also scale it upwards to kind of fill that space appropriately
  83. 3:26So those are a couple nice things about the text TOP
  84. 3:28and what we're gonna do is right now
  85. 3:30if we middle-click on our text TOP
  86. 3:32we'll see it's two fifty-six by two fifty-six
  87. 3:35Personally that's a little bit small for me
  88. 3:36so I'm gonna go to the Common page
  89. 3:38and I'm gonna update the resolution to be maybe
  90. 3:40um seven twenty by seven twenty
  91. 3:46And I'm doing that
  92. 3:47because essentially what we're gonna do is we're
  93. 3:48gonna composite this text onto another video
  94. 3:51My video is is seven twenty
  95. 3:54so I want a nice square with my
  96. 3:57text in the middle of that video
  97. 4:01So with that said
  98. 4:02what we can do now is make another text
  99. 4:05'cause let's say we have a few different preset
  100. 4:07texts pieces that we wanna change between
  101. 4:10So I'll copy and paste my text a few times
  102. 4:18And I'll add different text inside of each one
  103. 4:36Now what we're gonna do is we need a
  104. 4:38way to switch between these different text DATs
  105. 4:41and have them go into this null
  106. 4:43which then gets referenced by our text TOP here
  107. 4:47So luckily we have a really useful DAT
  108. 4:49uh we can use called switch DAT
  109. 4:51So I'll open up the Op Create dialog
  110. 4:54Switch and what we'll do is we'll have to
  111. 4:57plug all of these text DATs into the switch
  112. 4:59and then we can use this nice little index to basically switch between them
  113. 5:03Now one useful trick is you know
  114. 5:05normally what you'd have to do is you'd
  115. 5:06you'd go plug them all in one by one
  116. 5:09and you'll notice that this switch DAT
  117. 5:10similar to the composite TOP that we had earlier
  118. 5:13has a multi input
  119. 5:15so you can just keep hooking things up to it one by one
  120. 5:18But there's a nice trick that you can do
  121. 5:19where if you right click
  122. 5:20and drag and select all the operators that you wanna connect
  123. 5:24all you have to do is connect the first one
  124. 5:26and all of them will get automatically connected
  125. 5:30So now that we have them all connected
  126. 5:32we can just look inside of this switch DAT's kind of viewer
  127. 5:36And as I change that index
  128. 5:37so you can see one gives me the second one
  129. 5:40'cause remember everything in TouchDesigner starts at an index of zero
  130. 5:44I can go to two
  131. 5:45which will give me the third input
  132. 5:48and then I can go to three
  133. 5:50which will finally give me that fourth input
  134. 5:53So now if I plug this into my null here
  135. 5:55we'll see that as I change the index
  136. 5:58the text getting rendered in my text DAT is updating
  137. 6:01Now if we go beyond our index number three-You know
  138. 6:05three seven 10
  139. 6:06doesn't really matter
  140. 6:07It doesn't change because there
  141. 6:09there are no more inputs connected to that switch DAT
  142. 6:13So I'm gonna grab all of these
  143. 6:14and just move them over a bit
  144. 6:15because now that we've got our text set up
  145. 6:16we can work on some of the formatting
  146. 6:19So the things we're gonna be changing about this
  147. 6:21text are under the color page parameters
  148. 6:24And what we'll do is we'll switch up the text color
  149. 6:27as well as the alpha
  150. 6:28so that we have a couple of different looks when it's getting composited
  151. 6:32So very similarly to how we set up our
  152. 6:34text DATs here going into a switch DAT
  153. 6:36going into a null
  154. 6:38we're gonna set up a similar system but with tables
  155. 6:41And this can be thought of as like a really simple preset system
  156. 6:44You know it's it's not the most efficient one
  157. 6:46but if you're a beginner
  158. 6:47and you're just trying to save a few different states for
  159. 6:50you know something like a text DAT or maybe movie files
  160. 6:53this is not a bad system to use
  161. 6:55So the way to get started is first we're gonna make a table DAT
  162. 7:00And a table DAT functions similarly to a text DAT except
  163. 7:04you can add more rows and columns
  164. 7:05and each cell is essentially the equivalent of a text DAT
  165. 7:10but inside of a cell
  166. 7:12So let's say we wanted to have we see here font color
  167. 7:15we have RGB channels and an alpha
  168. 7:17So I wanna basically save four values in here
  169. 7:20So first thing I'm gonna do is activate the viewer
  170. 7:22so I can interact with the data inside
  171. 7:25What I can do is either right click on
  172. 7:27the empty space of this table DAT
  173. 7:29or I can go and click on the kind of
  174. 7:32uh row number here
  175. 7:33which is zero
  176. 7:34I can right click on it
  177. 7:36and you'll see I have a bunch of options
  178. 7:37I can hit add below
  179. 7:39which will add a new row
  180. 7:39Now you see I have two rows and one column
  181. 7:42Like I said I need four values
  182. 7:44so I'm just gonna keep adding rows here
  183. 7:46So now that I have four rows
  184. 7:49I also want to add another column
  185. 7:50so that way I can actually keep this clean
  186. 7:52I I wanna have
  187. 7:53You know I don't want just a
  188. 7:54table with random numbers in it that
  189. 7:56you know I'm not gonna be able to identify later
  190. 7:58I wanna have a
  191. 7:59a nice little header column and then having a
  192. 8:02a column with just my values
  193. 8:04So similarly to how we right clicked on the
  194. 8:07row numbers itself to add a row below
  195. 8:09what I can do is go to the columns
  196. 8:11right click on this column zero
  197. 8:13and then hit add after
  198. 8:15which will then add me another column
  199. 8:19So now what I can do is I
  200. 8:20can just click inside of a cell
  201. 8:22and you'll see that I have a cursor blinking here
  202. 8:23and I can start typing
  203. 8:24So I'll say color red
  204. 8:27I'll drop down to the next row and say color green
  205. 8:34Next color blue
  206. 8:35And you can even navigate this table with your keyboard arrows
  207. 8:38so then I can come down here and type opacity
  208. 8:43And then let's say my first preset is actually just gonna be white text
  209. 8:47which is gonna be one one
  210. 8:48one for the RGB and full opacity
  211. 8:53Now what I can do is I'll turn off the viewer just
  212. 8:55so that I can actually control the operator in my network again
  213. 8:59I'll copy and paste it four times for our four presets
  214. 9:03This way each one of our text objects
  215. 9:06here will have a preset of its own
  216. 9:10And then I'll go through and just edit that style a little bit
  217. 9:12So maybe our second preset is going to be red text
  218. 9:17so I'm gonna zero the G and the B
  219. 9:20Maybe I'll leave the opacity full here
  220. 9:23For my third preset
  221. 9:25maybe I'll do something like zero point five for green
  222. 9:33zero point seven for blue
  223. 9:36and we'll keep the opacity full
  224. 9:38And then finally
  225. 9:39for my last one
  226. 9:40what I'll do is maybe something more subtle
  227. 9:41so maybe zero point three on the R
  228. 9:44zero point three on the G
  229. 9:46zero point three on the blue
  230. 9:47so that way it essentially becomes a bit of a dark gray
  231. 9:51And then I'll actually set the opacity also down to zero point three
  232. 9:53so that it kind of fades into the background
  233. 9:57Now with all my values edited
  234. 9:59I can kind of just turn off the viewer active state on these tables
  235. 10:03And then similarly to like we did with our text going into a switch
  236. 10:08we'll do the same thing with our tables
  237. 10:09We'll set up a switch DAT
  238. 10:13I'll right click and drag around all my tables
  239. 10:16connect the first one
  240. 10:18and automatic automatically they all get connected
  241. 10:22So now the same principle that we used with
  242. 10:24the switch DAT applies to tables as well
  243. 10:26which is really helpful because we can see with an index of zero
  244. 10:29we essentially get the contents of the first table
  245. 10:32If I set an index of one
  246. 10:34it switches to the contents of the second table
  247. 10:37Two gives me the third table
  248. 10:39and so on and so forth
  249. 10:43So now we have a really easy way of kind of just managing
  250. 10:46you know switching between all these things
  251. 10:48What I'm gonna do is I wanna kind of
  252. 10:50line up the presets with the text
  253. 10:53So I'm actually gonna make a little controller that'll control these indexes
  254. 10:57these indices
  255. 10:58And what I'm gonna do is use some of the
  256. 10:59things that we used in our comp section
  257. 11:01So the first thing I'll do is
  258. 11:02is just make a little slider
  259. 11:08And then I'm gonna want this slider value
  260. 11:10Well let's like
  261. 11:11let's take a look at the slider value first
  262. 11:12You know let's let's assume we don't know what's going on
  263. 11:14so I'll make a null chop
  264. 11:20And we can see the value of the slider's from zero to one
  265. 11:23but like we saw with our switch
  266. 11:25we actually want it to be from zero to three
  267. 11:29So we know how to rearrange values at this point
  268. 11:30We can insert a nice little math chop here
  269. 11:38And I'll go to the range page
  270. 11:40I know the from range is correct
  271. 11:41because my slider does in fact go from zero to one
  272. 11:45and I want the range to be from zero to three
  273. 11:51Now the only other thing I would wanna do with this
  274. 11:53just for my own sanity
  275. 11:54is what you'll see is that
  276. 11:56my value coming from the slider is actually a float
  277. 12:00So a float is basically just a
  278. 12:02a number with decimals in it
  279. 12:04You know this is different than an integer
  280. 12:05which is just a whole number
  281. 12:07Uh floats you know
  282. 12:08like one point eight four eight
  283. 12:10That's not gonna be useful
  284. 12:11for our switch because the Switch DATS don't actually interpolate
  285. 12:14You can see it just kind of hard cuts
  286. 12:16between the different indices that are plugged in
  287. 12:19So what we can do is
  288. 12:20is maybe we should round our number here
  289. 12:22as well so that it's not sending decimals
  290. 12:24so it's sending a whole number
  291. 12:26an integer
  292. 12:27that will accurately map to each one of these indices
  293. 12:30So also surprise surprise
  294. 12:33our best friend Math CHOP can also round for us
  295. 12:35So we can insert another Math CHOP
  296. 12:37after our Math CHOP that does the scaling
  297. 12:41and then on the first page
  298. 12:43we have a nice little parameter called Integer
  299. 12:46We can click on it
  300. 12:46and you can see we have a f a few different options here
  301. 12:48We can do a ceiling type of rounding
  302. 12:50a floor
  303. 12:51or just a general rounding
  304. 12:52For this case
  305. 12:53a general rounding is fine
  306. 12:56Now you can see as my kind of more gradient float value changes
  307. 13:02coming out of the output
  308. 13:04I actually have a rounded integer
  309. 13:07So now like we did with everything else before we've done
  310. 13:10if we want to control the parameter of this Switch DATS Index
  311. 13:15I just select the Switch DAT so I see its parameters
  312. 13:18I activate the viewer on my CHOP
  313. 13:21drag and drop that channel right onto the value
  314. 13:24and I choose Relative Chop Reference
  315. 13:27Now I'm gonna do the same thing
  316. 13:28for the switch that I have down here
  317. 13:30So first I'll select it
  318. 13:32and then I can just drag
  319. 13:33and drop that value again onto the index and choose my second option
  320. 13:40So now you can see as I'm moving through this slider
  321. 13:43my text is changing
  322. 13:44We haven't hooked up our style yet for the color and opacity
  323. 13:47so that'll we'll see that happen soon
  324. 13:49But we're gonna add one little trick step in between our switch here
  325. 13:53and our text
  326. 13:55Now when we switch kinda rapidly the actual content of the text
  327. 14:01that's'cause there's no real easy way
  328. 14:03for TouchDesigner to kind of blend text together
  329. 14:06The best we can do at this point is just s hard switch them
  330. 14:09But we can blend values really easily
  331. 14:12Now we can't do that in DATS
  332. 14:14because DATS are really focused on string type of data
  333. 14:17Python that kind of stuff
  334. 14:18But what we can do is actually convert this
  335. 14:21data from the DAT family back into channels
  336. 14:26and then we can use some of the techniques
  337. 14:27we used with our CHOP networks where
  338. 14:30you know we were using lag CHOPs
  339. 14:31filter CHOPs
  340. 14:33things that smooth the transition between two values
  341. 14:36So that's actually relatively easy to do in Touch
  342. 14:39So what we're gonna do first
  343. 14:41as always before I
  344. 14:42I make any big jumps
  345. 14:43I'm gonna set a little checkpoint for myself here with a Null DAT
  346. 14:48That way in case I ever need to insert anything between my switch
  347. 14:52and the area which I'm converting the values to CHOPs
  348. 14:55I'll have a nice place I can do
  349. 14:57that without having to change any other code
  350. 15:01So with that said
  351. 15:02now I'm ready to
  352. 15:02to do my little data conversion
  353. 15:04and what I can do is I can go to the CHOPs
  354. 15:07and I can use one called a DAT to CHOP
  355. 15:10And you know
  356. 15:11you're probably starting to see a trend because in
  357. 15:13in the last video we used another kind of conversion CHOP
  358. 15:15but many of the families have specific CHOPs
  359. 15:20or TOPs or operators that take the data from one family
  360. 15:24and convert them to the data type of another family
  361. 15:26So for example
  362. 15:27this DAT to CHOP that we're gonna use takes DAT data
  363. 15:30and converts it to CHOP data
  364. 15:32There's other ones
  365. 15:34For example
  366. 15:34there is a SOP to CHOP
  367. 15:36So you know in the next
  368. 15:37section we're gonna be working with SOPs
  369. 15:39but this would convert the data from a three-D model to
  370. 15:42to just numeric data
  371. 15:44You know there's all kinds of different ones here
  372. 15:46We can do uh
  373. 15:48CHOP to DAT
  374. 15:49so we can actually go in reverse
  375. 15:50if we had some maybe CHOP data that
  376. 15:51we wanted to turn into a table
  377. 15:53we could use this
  378. 15:54There's other ones here like CHOP to TOP
  379. 15:57So maybe if you had a bunch of numbers
  380. 15:59and you wanted to turn them into a
  381. 16:02a texture
  382. 16:02that's similar to what we did in our
  383. 16:04our TOP example when we were doing that cool
  384. 16:06like glitchy effect
  385. 16:08So those are a lot of different things that you can explore later on
  386. 16:11but just they're helpful to know that they exist
  387. 16:14So in this case
  388. 16:14because we have a DAT
  389. 16:15and we wanna convert into some channel data that we can
  390. 16:19then process with things like filters
  391. 16:22what I'm gonna do is make that DAT to CHOP
  392. 16:27In the DAT parameter here
  393. 16:28it wants to know the name of the DAT that I basically wanna convert
  394. 16:32so what I can do is simply drag
  395. 16:34and drop my null here right onto the parameter
  396. 16:38And by now I'm hoping that you're seeing the pattern here
  397. 16:40where a lot of things are drag and drop
  398. 16:44so don't be afraid
  399. 16:45if you don't know what's happening to just try dragging
  400. 16:47and dropping some things around
  401. 16:48and s and see if connections and references and things like that are made
  402. 16:52So in this case
  403. 16:53when we dragged Null 3 onto this DAT parameter
  404. 16:57we can see that little dotted line with an arrow got created
  405. 17:00and like I was saying before
  406. 17:02that's telling us that there's a
  407. 17:03a reference happening
  408. 17:04But unlike previously it's not animated
  409. 17:07and that's because this information isn't changing
  410. 17:09So it's not dynamic
  411. 17:10It referenced that data once
  412. 17:12and it's static now
  413. 17:14Now that we have this table
  414. 17:17you'll see that there's a bunch of parameters
  415. 17:19most of them you probably won't need to use at this point
  416. 17:22and the way we've set up our table corresponds to
  417. 17:27basically exactly how the default settings of the DAT 2 are set up
  418. 17:31So you can see now we have our first channel here
  419. 17:34which is color_red
  420. 17:36It doesn't like spaces
  421. 17:37so it replaces them helpfully for us with underscores
  422. 17:40We can see zero point three
  423. 17:42Color green is zero point three
  424. 17:43Color blue zero point three
  425. 17:45and opacity is zero point three
  426. 17:47Now if we go up to our slider and we change the values
  427. 17:52you can see we have this dynamically changing CHOP value operator now
  428. 17:57And you see color red is zero
  429. 17:59color green is zero point five
  430. 18:00blue is zero point seven
  431. 18:01opacity is one
  432. 18:03So that's great
  433. 18:03So super quick and easy
  434. 18:05We made a way to store a bunch of data
  435. 18:08A way to switch between that data
  436. 18:10and now that we've converted it back into CHOPs because it's all numeric data
  437. 18:14what we can do is use some of those things like filters
  438. 18:17So let's add a filter CHOP here
  439. 18:23And then what I'm gonna do is set the
  440. 18:24filter width to be maybe three seconds
  441. 18:27and what this is gonna do is it's gonna
  442. 18:28interpolate over three seconds between the changing values
  443. 18:32So now if I go from
  444. 18:35you know this slider
  445. 18:36where right now it's got index two to index zero
  446. 18:39you can see we get these nice smooth transitions between those two presets
  447. 18:47So that's awesome
  448. 18:47I mean that's that's basically
  449. 18:50you know in in less than
  450. 18:51a few minutes we rolled our own kind
  451. 18:52of simple preset system that you can use
  452. 18:54with kind of numeric data for parameters
  453. 18:57So the last thing we really have to do here is just as always
  454. 19:00put a null CHOP because we're about to start referencing some data
  455. 19:05I'm going into my text TOP here
  456. 19:08so I can grab the parameters under the color page
  457. 19:11and once I have them visible
  458. 19:13just like always
  459. 19:14I can activate the viewer on my null CHOP
  460. 19:16and start dragging and dropping parameters to reference them
  461. 19:22So I got my red
  462. 19:24reference my green reference my blue
  463. 19:28and then finally reference my alpha/opacity
  464. 19:36So now I'm actually gonna set the little display flag on
  465. 19:38so I can see my text in the background
  466. 19:45And now I can watch it do its kind of little state changes
  467. 19:48text changes color changes
  468. 19:50opacity changes
  469. 19:55And then the final thing we can do here is
  470. 19:56is what I did was I made a movie file in TOP
  471. 19:59so I could have a nice dynamic background
  472. 20:04I used that file plus button to open up my file chooser
  473. 20:08I went into the nature folder
  474. 20:09where we have a few kind of seven twenty P stock nature shots
  475. 20:15Then I made an over TOP just like we
  476. 20:17did in our kind of first examples
  477. 20:20And then I'm gonna put the background as my movie
  478. 20:24put my text into the first input on top of it
  479. 20:28Just like we did before prefit
  480. 20:30I don't want it to be scaled
  481. 20:31so I'm gonna change fill to native resolution
  482. 20:35And actually what I'll do is turn off the display flag on my text
  483. 20:39put a null TOP at the end of this chain
  484. 20:42and actually put the display flag on that on
  485. 20:45So now we can see
  486. 20:49you know as my values are changing and the presets are changing
  487. 20:53we can see them live on that background
  488. 20:57Now you can edit this to make this however you want
  489. 20:59Maybe you don't want to change the text here
  490. 21:00so you know
  491. 21:01we can maybe bypass our Switch DAT
  492. 21:05only have one text
  493. 21:06that way we're just changing styles
  494. 21:11You can change things like the amount of time it takes for that transition
  495. 21:15Right now it's three whole seconds
  496. 21:17which maybe is too long for you
  497. 21:19Maybe you can set it to
  498. 21:20you know zero point five seconds
  499. 21:23so now when I change it
  500. 21:25it'll be much faster
  501. 21:29And the sky's the limit here
  502. 21:30I mean we're just using with a single simple text
  503. 21:32You can have multiple texts
  504. 21:33You can have more advanced compositing
  505. 21:35whatever you like
  506. 21:36And we only did it with some styles
  507. 21:37but you could do it with
  508. 21:38you know all the parameters you wanted
  509. 21:40There's really no limit on how much data you can store in a table
  510. 21:45So with that said
  511. 21:45that should give you a good introduction to DATs
  512. 21:48and what I hope you're starting to see is that
  513. 21:51how using little pieces of functionality from each family
  514. 21:55we're starting to to add the
  515. 21:57the complexity of our networks up
  516. 21:58You know we have a little bit of
  517. 21:59TOPs here that are doing some compositing and
  518. 22:01and rendering of
  519. 22:02of two D objects
  520. 22:04We have you know
  521. 22:05a handful of DATs here holding some data
  522. 22:08then they get converted into CHOPs
  523. 22:10We know how CHOPs
  524. 22:10we can use them to kind of smooth out values
  525. 22:13We have another set of DATs here
  526. 22:15We made a little controller for our
  527. 22:16our presets here using some comps and some CHOPs
  528. 22:20So as we get through more and more
  529. 22:22and as you kind of explore TouchDesigner more and more
  530. 22:25that's really gonna be a big thing
  531. 22:26You're gonna always want to try
  532. 22:28and take your idea
  533. 22:29and think about how the simplest blocks
  534. 22:34that could make that idea would look like
  535. 22:37You know if you think
  536. 22:38Oh I have particles flying around
  537. 22:40and they're doing all kinds of crazy stuff
  538. 22:42you really wanna drill down and say
  539. 22:44Okay well how are the particles doing their thing
  540. 22:46What color are they
  541. 22:47Where did they come from
  542. 22:48What's the emitter
  543. 22:50Is there an attractor
  544. 22:51You always wanna break things down into the smallest possible
  545. 22:54like little idea bricks
  546. 22:56because that'll make it easier for you when you're trying to build these networks
  547. 22:59Because then what you're gonna do is just use
  548. 23:00a lot of the small little tools
  549. 23:02a lot of little operators all chained together doing little things
  550. 23:05and you'll end up with a cool app
  551. 23:08So with that said
  552. 23:09let's move on to our next operator family

About this transcript

This page contains the full transcript of 14 - Working with DATs - TouchDesigner Tutorial: Beginner Crash Course by The Interactive & Immersive HQ, generated from the public captions YouTube serves with the video. The transcript has 4,279 words across 552 segments, with the original timestamps preserved so you can click any line to jump to that moment in the embedded player.

What you can do with it

Use the transcript to take notes, quote the speaker, build a study guide, generate a summary with ChatGPT or Claude via the YouTube Summary tool, or export it as a timed subtitle file with YouTube to SRT. You can also re-open it in the transcriber to translate the transcript into 100+ languages.

Free YouTube transcript tool

YouTube2Text is a free YouTube transcript generator — no signup, no daily limit. Paste any YouTube link and get the full transcript instantly, with timestamps, click-to-jump, translation to 100+ languages, AI prompts for ChatGPT, Claude, and Gemini, and exports to TXT, SRT, VTT, or Markdown.