LongCut logo

AUDIOREACTIVE PSEUDO-DATA-GRAPH DISPLACEMENT - TOUCHDESIGNER TUTORIAL

By PPPANIK

Summary

Topics Covered

  • Quantize Noise for Geometric Lines
  • Embrace Pretty Over Science
  • Feedback Builds Blurry Displacement Maps
  • Blob Track Displacement Movement

Full Transcript

[Music]

w hello hello hello this is your captain Panic speaking and welcome to another touch designer

tutorial um this tutorial will be the last tutorial of 2023 so I want to take this as an a

little opportunity to say thank you for all the support through the year um this

year has been quite a lot and um I wasn't able to continue doing tutorials the way I wanted to

um just because the year was a lot and I've been struggling with depression and

being a neurod Divergent person and yeah even though I wanted to continue doing everything like I did before I

wasn't able to um and only in the past few weeks or

months um I got back on track and I am very happy about that and I'm

very happy to yeah to be back and share my stuff because quite means a lot to me and yeah so thank you for

still supporting me and sending me nice messages and everything and I'm really really happy to

see what you come up with following my tutorials and it's it's quite a pleasure to yeah

to be able to do what I do um so to make it short thanks and let's get actually

started um so um yeah as I mentioned before this is the last tutorial of the year which also means this is the last

tutorial of my Merry crisis serious and the serious meant that I made a tutorial every week in

December um following a reference people sent me and for this

one we are actually creating something of my own reference because I

posted this on my Instagram recently and quite a lot of people asked me to record a tutorial for it and at first I don't

want it to because um I am using some of the techniques I am showing in my last tutorial um but in a new and different

way so I made a little survey on Instagram asking if it's too repetitive to use

some techniques I've shown before in new ways and the majority of people said nope please record it

so um on public demand I am recording this um yeah so actually what we can see here in the background is some

pseudo data graph or line and some plops and some texts which follows this and the whole

line This places um the image or video in the background yeah and everything

is audio reactive um so the line so actually you can't really hear it right now now it might be too

loud but the line Moves In following the audio file um yes so for this tutorial we will cover the um

audio component and we will cover the lines and how you can and make those lines

look different or move more different or make them more messy or or whatever

simple so you can use this in in quite different ways um then we will track text on the lines make those little dots follow the lines as

well and then we will make the displacement and then merge everything into the whole artwork

so yes let's get started and I will see you on my screen all right welcome on my

screen and now let's let's get started so um the first thing we want to

do is is to create our audio setup so first of all we need to bring

in our audio file in and then to be able to actually hear it let's bring in an audio device out

[Music] and now um I will turn this off again because it just distracts me from

from recording but you keep this on and yeah here is the default touch designer sound loaded in if you want to change it just hit this and then change

the sound um yeah all right then I will

create a math and I don't want this to be stereo I want want both of the channels

combined so for this I am going with combine channels and I will do it with

average and after this we will create an

analyze and for this I'm going with maximum I don't want everything analyzed only the

maximum you could also use RMS power I just think that the maximum works works better for me

[Music] and then after this we create a little filter because right now it's a little bit too nervous and too too heavy so we

bring in a filter and we change the filter width to something like 0.2 to

um and yeah that's also something you can play with um later because it's it it kind of influences the video it makes

the movement more smooth or yeah more nervous and then after this we bring in a

speed and we keep everything on default for this and yes that's cool

um also I want to mentioned that I built this little setup based on something I learned from electron

not um so make sure to check his audioactive stuff as well because he goes much more into detail why to do

which operator and I'm just using the ones that I found useful and created this um okay so now let's have a look at

how to use this actually so now we want to make a constant um and as always we're using

this constant to use it as a reference for our resolution we will use later and then also I will make a little

component a channel called speed and I will export this

here and then I will also make one channel for which I will call intersections

oops which will be um the intersections of our line our graph we will use later and then that's head down here so

we only need this constant later and don't have to add back over here okay so now let's make a

noise and this noise will be the base for our line later so the first changes we will have

to make for this noise is turn off monochrome then in the trans PR tab we will use this speed as a translate on

the set axis so just make this speed active and drag it in here chop the reference and then we will connect this to a null which we will make visible in

the background so if you have your sound on you will get that the movement has the

same speed as our sound um okay um now for this

noise we need to set the resolution but instead of using this resolution we use the intersections so make sure you don't confuse this chop the reference here

because this resolution will only be used in our render setup which will be the resolution of our

artwork in the end and this intersections will be the resolution

for our setup which we then render so

make sure to not confuse this okay so um now it is a little bit hard to imagine

what this will look as a line so the first thing we will do is make our line so we can actually see what's happen happening and to do that

we will use this null and convert it to a chop so drag this null into a top

two chop and now you can see our different values for r g and B and for our setup

we only use r& G so you could also use pixel form it RG here um yeah let's actually do

this or nope let's not do this let's just do it like this it it really doesn't matter and it gives us more ways to manipulate this image to have all of

the channels so make sure to use 32-bit float for this

noise okay and then we need to make this chop into a soap and we will

use the R and G as some coordinates for the X and the Y AIS so in the soop use the chop

to and then drag the chop into it and now we need to change it from TX Ty y TZ to R and G and since we only have two

channels we don't need three attributes so we can delete the last one and now you can actually see our line so this line is based on this noise so

maybe drag it over here so can see it a little bit bit better and now um let's have a look what the things

do so if we set up the period our line gets much more round and smooth

and if we turn up the harmonics it will intersect a little bit more crazy I think so if you turn this

down you have less movement in the intersections if you turn it up you have more movement in every intersection

um also if you turn down the amplitude gets more smooth if you turn it up nothing really happens yeah I think the amplitude

doesn't really matter so let's keep it on 0.5 because it just moves our whole thing on the set axis and moves it far away or closer so the

amplitude and the offset aren't really that important for this so it's more interesting to play with the period and the harmonics for this also the exponent

is quite interesting because it gives it a lot more of a different look so if you want

to play around with the exponent feel free to do so um okay um now let's have a look at another

thing which is quite interesting to manipulate this line which is a limit so let's bring in a

limit after this um this noise and let's have a look at what this does so in the first um parameter tab we don't want to change anything so head

over into the quantise and when we quantise the values of our

color um we get this really interesting geometric look onto our line so the smaller our steps are

um the smaller our geometric intersections get and the bigger we get the bigger the step is and that's

because um we are doing some sort of pixelation on here so the steps from each value are getting bigger so just

like a I don't know a staircase and first you have really little stairs and here the stairs are getting bigger so if

we make this you can you can see what's happening um and that's what's also happening here so the bigger this value

step gets the bigger our steps get which is the same thing I just said um yeah so quite

interesting um um and let's turn it off again and let's have a look at the quanti position which is also quite interesting because by doing

that um we are getting this kind of look um which also plays with the

intersections of our um of our line so the higher our position step gets the less intersections we get and this is a

quite quite good way to get less intersections we could also of course turn down the intersections here but

this um would cause our set up to be less controllable so in case we

want this to be kind of slow we could do it like this but but then if you want to to make any changes to this it also makes the

changes to to the speed um so I decided to go to leave the intersections quite high and then use

this position step to make this um nicer to to manipulate so I think that's easier but

do whatever you like um okay so let's turn this off again for now and let's bring in some some harmonics to make the line more

interesting make this an eveneven number because I am I really hate uneven numbers

um and yeah let's actually render this so connect this chop 2 to an

know and then connect it into a geometry make a camera and then to have this camera

really centered and so it's in the end we can track our numbers easily we need to change this camera from a perspective

camera to a autographic camera then change the auto width to one and change this to bottom left because when we leave it on Center it

just centers on our coordinate system and as you can see our um our graph is only in the

positive values therefore we don't need the negative coordinate system and therefore we need our Center

Point to be the bottom left and not the center so change this bottom left and

then we are sent centered um okay so now let's make a render and for this render we need to

change our resolution to our resolution we have here so this is our render resolution so use

this and then connect this to a null and now let's make this n visible in the background and turn off our noise here so now you can already see we have our

line visible in the background and since it's quite hard to see we need to make a material and I am

using a line material and now let's drag this on here par material and

now we have our line as our material and now um I want to make some changes to the

material so so now I'm changing the width now near and far because we have a TOD line we don't need near and

far and also I want this line to be plain and white so change both of those while use and

yes looks good and now um I want this to be a little bit more more

edgy so let's turn down the intersections to to 50 or maybe even to something like 25 yeah that's

cool and now um because if we go down with the intersections we can see a little bit better where where

the intersections are because I want tiny little dots on every intersection and to do that we will just

copy this whole thing so the go the line and the render so copy this and then let's leave this online and let's call this points so we

can um see the difference a little bit better and then in this point setup turn down the draw lines and head into the

points and draw points and like this we get our points wherever our intersections are and now

we also need to change the geometries in the render so this will be our line render so here drag in the

geometry one and in our second second one we call this points oops OB um don't delete this just keep it

call it points okay and then in the render drag in the

do2 and then we also need to change the pixel format of both renders so take them both change the pixel format 32-bit float

and then in our points because right now our points are quite small you can barely see them let's bring this up to this multiplier up to five to make them bigger and

then comp them together with operation mode over and now you can see we get

tiny little dots on every intersection cool and amazing um so

now we want some more data because we are drawn to science we need numbers to be scientists

um so let's make some text follow our little dots and

lines and to do that we need our top two again so make a little select connect this to our select then

let's head over here and now we need to um select our R our

G and then everyone to to get our our text also out of this graph so let's copy this select three times or two

times so we have it three times and in the first one we only take the r in the

second one we only take the G and in the third one we take everyone [Music]

and then we make um a math after this

R and for this multiply because right now we are still going with the resolution of those 25 intersections and

we need this to be the same resolution as our render setup because our text is based on our render resolution so to do

that we will have to multiply it by our resolution so here head over here again and then make this active and Export our resolution on our

multiply and for our G we need to do the same so just copy this and then drag it in

here and then for this one we will make a new math

and basically this is this is just some pseudo stuff I'm doing because I just want something to generate some numbers

which are based on our stuff so I just decided to um add this RG and B together

so it's like a I don't know a number that represents the addition of all our

channels which is basically some overdramatic um data

BS but I don't really care I just want this to look cool so I'm sorry if you want this to be a little bit more

scientific then I'm I'm not the right person for you um I am a visual artist I just like stuff to look pretty and

there's nothing wrong about things just looking pretty for the sake of prettiness

because personally pretty things give me a lot of joy and joy is a great

thing uh okay um enough philosophy let's continue and now we need to merge all of those together so make a merge and now

make sure that you connect them in the right order so RG and then R1 um because it makes us makes this

whole thing easier to rename so after this make a rename and then you don't have to select every channel and rename it one by one

so you can just type in x y and text because the r will be our x coordinates the G will be our Y

coordinates and this is just our text fantasy um okay so now we need to make

this channel into a DAT so in the DAT select the chop two and then drag it in

include the names and then after this you can make text

and for this text make sure to use the right resolution which is our render resolution so chop the reference

here and then for our specification that we use this so drag it in and now you can

see our value mapped on our dots so right now the the font is a little bit too big so change def font size to 12 or

something like this then let's make a select again and drag it oops over here drag it in and

now you can see that our text is on our dots um

personally I don't like this and I want this to be have a little bit of offset so so I'm bringing in the transform

after our text select and just moving it over a tiny bit so it's

not too much on the pond so yep looks cool and yeah now we have our

line and now we will create our displacement based on that line but for a displacement we don't want the numbers to be in so

I'm just copying this comp and in one comp I will delete the text which I will connect to the background then but I will still keep

this because we will use this as a select later to Overlay it again um but yeah let's create our little

feedback so after this the first thing I want to do because right now the line is very sharp and I want our displacement to be a little bit softer so I'm bringing in a

blur after this and I will keep it on the default settings for

now and then after this I make a comp then I make a feedback which I will connect to a

blur and give us some more space then I will make a level and then let's connect this again change the operation mode to

over and then use this as the target layer so what all of those operators do is when we turn this off

again you can see that our lines stay quite sharp and I want them to

turn blurry from time to time so what this blur does is that it adds a blur with a filter size of seven

every step and yes so on the second on the first step

it has a filter size of seven and then on the second step it adds seven on the already applied seven again so it gets

gets blurry more blurry with every step and the same thing is what the level does so

if we take an opacity of 0.99 the opacity gets less with every

step um and therefore we dis make our line disappear here from step to step um I hope that makes sense and also I want

to be able to reset my feedback quickly so I could just hit pulse here every time but this is a little bit annoying because then I have to head back into the feedback every time so let's make a

keyboard in and connect this here so every time I hit one on the keyboard it just resets

our feedback cool and yeah basically this is the map we will use for our

displacement but in my taste our line is a little bit too fast and I want it to be a little bit smoother and less

nervous so we will slow down our line and to do that we added this math because in our sound setup in the

beginning so let's head back here and when we turn down the multiplier here to something like 0.5

which is half the speed it gets slower and therefore it follows our sound a little bit slower and the effect is less

visible but still visible I think um so I yeah I turned this down but you can just keep it as fast as you like um but

yeah I slowed it down and yeah okay so now we need to bring in

our image we want to displace and therefore I am just using my

flower so these are just some flowers I rendered in Cinema 4D which I'm now

using to manipulate into my artworks um so yeah I'm using this and now for making it visible a little a little

bit better I will connect this to the background now and now I will make some changes to it so for example this is a

different resolution than this one we're using so let's make a after this and we are going to use our render

resolution here again and then I will change this to fit outside and also I want the same pixel

format as our render so change this to 32-bit float okay um so now I want to add a little

bit of movement to this image so I'm adding a displace after this and then I want to displace

this with the same noise which generates our line so let's copy this noise and paste it over

here and now let's also change the resolution to our render resolution here so change this and now let's connect it to the displays

and turn down the displays weight to I don't know something like 0.01 maybe I think this is quite

nice maybe can be a little bit heavier maybe like this and yes looks cool um now I'm

adding some time displacement to make this flower even more distorted before we displace it again with our line so in

my case I went with a texture 3D which I left on default and then I added a time

machine and then I used this one as the second input and I want the offsets to be in frames so I can control it a little bit

better and I decided to have a offset of 2 seconds which in my case is 120 frames because I'm going with 60 frames per

second and then you can already see a little bit of the displacement but I wanted to be even more

visible so in between here I added another noise and made this both of the

inputs and then in the output I changed it to noise and now you can see what it does um it just

adds a little bit of this kind of liquid displacement so you can play

around with the parameters a little bit here um but in my case I will just leave it on default for now maybe turn up the

harmonics a little bit um and maybe maybe do it like this but it really doesn't matter it

just is up to you how you want it to look like um okay now let's give us some

more space here and now let's displace this with um this so make a select I I'm using a lot of selects because it

usually keeps my uh my networks a little bit more organized so I I usually have different

sections for everything I do because I can think better like this so I'm I'm using a lot of select um yeah and now let's add a

displacement after this and use this one as the second input and then turn this down again to yeah maybe

0.07 looks good to me um and also I want to have a little bit of offset weight because I don't want

this lines to be here we could set it to mirror but I also don't want it to be mirrored so you can just I don't know

find the right number but I found out that it usually works quite well if you have the display weight doubled at as

your offset weight so if you just copy this parameter here paste it here and then multiply it with two it usually

works quite good I think um so I'm going with this um but you can also just yeah play

around okay um so now if we want this to be less displac actually cuz I think it's a little bit too heavy now let's make it

0.05 um yeah now we have our displacement going on and now I [Music]

am doing some post stuff to make this look cooler and more abstract so let's bring in some colors and the background and everything and of course um if you are

using an image that already has a background this doesn't really matter to you I am using a PNG without anything in the

background so obviously I will add a background and in my case I am just using a noise

um which I will then make this one the first input and change the output to noise because I just want to use this one as a reference for the resolution

and then I would turn down the harmonics to maybe one or the period to 12 um which gives me this quite big

um ramp or gradient which is a little bit organic through its natural I don't know thing and then

I want to displace this noise with the same thing here so let's add a

displays and let's bring this one in here and now let's turn down or maybe let's delete this again and just copy this displace because we

already made some settings here and let's just connect this F first so this one gets displaced

and now I will just connect this to another noise Make both inputs change the output to noise and then in here I'm

also going quite high with the period and bring in some color and now I will just make a comp

here make it to over and now I have my background like I have my colorful noise in the background and then I am

just messing around with this until I find a color that I like then I want it to be a little bit brighter so I changed the offset to something bigger

make it less saturated turn down the amplitude and yeah basically I won't go too deep into detail about this because I

just want to have some some color in the background but this is so specific for my setup here so if we turn this up

basically we get more Distortion in our background which looks kind of cool but I won't go too deep into detail about

this because it's so specific for my own image and everything but I just wanted to show how

I do it and that's also the same for my for my flower here so usually I am just

adding a noise wow the voice crack um I noise here I don't know change it to something

colorful and then use an insight as a mask

here and then play around here until I find a color that I really like um and then yeah mess around with it

until I think the colors look nice so that's um yeah that's my color setup um I don't really know what's happening to my PC

and why my frame rate sucks like this um maybe it's because I'm recording on my laptop um so

sorry about that um okay um but let's continue um finding a tracking on our lines on this again um

so um we have our displacement going on and now we want to bring in our data we created here so let's make another

select make this one the target for the select bring it over here and then make a

comp and comp this over our thing and now you can see we have

our displacement following our graph and now we want to be able to customize the color of this um this

lines because right now they are plain and white and and for example you want those lines to be blue and for this sake I'm just using a

constant keep everything on default except for the color so if we change the color to green or blue it just multiplies a color

onto our white and therefore you can yeah change the color whenever you like and very

quickly um which is cool and now in our setup we've seen before we also have some blob tracking

going on on our image and in this case I want to track the movement of the displacement within our plop

tracking and to do that um we give us some space here again because we need the blobs before our lines come in here

so let's make a blob track

just throw it in here and now we need to find the top which

is not displaced by our line already so let's head over here which is right before this displays which is our time

machine here and make a select and take this one and then we use this select there

the second input for our plop track and then let's use this one as the first so let's connect this to our comp

here and now you can see that whenever we display something the tracks the plops are

somewhere in that area um because here we don't have the displacement here we have the displacement and the plops find the difference in between this image and

this image which is in this case the this placement um yeah so you can play around

with um I don't know the threshold here um and find something you like also change

the plop color to a color you like I will make this blue yeah this is cool and then I want the blobs to be a little bit smaller as well so I change the

minimum blop size to 0.01 which gives us more blobs in this case and also detects smaller changes I

will also make the max plop size a little bit bit bigger and I will go with a threshold by maybe 0.5 and now and that's something I have

shown in my last tutorial as well we want to bring in the text on our blobs and we will do that just like we did it before with our

lines but in this case we have to use the coordinates from our blobs and to know what the coordinates are we need to have a look

at this um data from our blob tracks to make this visible hit this arrow in the blob track

so you get this St and to know our coordinates we need the U and the V and to have the ID of The Blob which is the number of The

Blob this will be our text just like this is our text here so make a select that here drag it

in um because we don't need every aspect of this this St we only need ID u and v um so you can head in

here and select all rows so this keeps on default and for the columns because we only need columns

we select by name and our first column is the ID and our last is the V so do it like this and at this

point shout out to the person who commented on my last tutorial telling me this because I I messed around with it

so now I know start and end ID u and v and yes now give us some space here again make another

section um now we need some channels out of this St so make a DE to

channel track this in P that and now it it gives us a channel per row we need to change this to channel per

column and the first row is the name here zero row zero is the name and the First Column is also a channel so we

need to change this from First Column is names to values and by doing that we have ID u and v

cool um now we need three selects again so make three of them because we

need to separate the ad the U and the V or actually we only need two because the

U and the V can be combined in one um since we use a square resolution so in case you're using a 16 to9 resolution you need to separately select them but

to do that have a look at my last tutorial um yes um okay I will also link this in

the description so first of all drag this in here and on here and for this we change it to u and v to use on u and v

and for this we change it to ID and then after this just like we did before we make a math and

multiply this one with our resolution just like we did before and then

after this we make a merge bring this and this together make a rename after

it and rename it to x y and text cool and now just like before we

need to convert this to a de again so make a chop to De drag this in include this

names make a text top after this bring the specification de

in change the font size to 12 just as before and then change the resolution to our render resolution

again chop reference and then we have our numbers on our blobs so now make a select top again drag it

in drag this over here to keep our Network organized and now let's make another comp in the

end change this one to over bring this on top and now we have numbers on our blobs um now we have a different color

here and that's because our blobs are blue and change the color just like before make a constant after this and

change the color to blue or whatever you like and now we finished

our setup um I hope your frame rate doesn't suck like mine does

um and now feel free to play around with this so you could for example change the harmonics here to

make the line more diffused and crazy um or change the exponent to make it like this

standard I don't know coordinate system and for this you could also go up with the amplitude because it's scales this up again um I think this is a quite cool

look actually I really enjoy this um or yeah play around with this limit to give yeah you have some more

geometric displacement uh yeah just everything mess around with everything I think this is the best way to survive inside of

touch designer um yeah that's the end of this

tutorial that's the end of this year so therefore I uh I hope everyone had a

year that was okay and I hope everyone is doing okay and

yeah thank you for this year and I am already looking forward to continue next year and for now

Happy New Year I am very proud you're still here and creating stuff with me uh

thank you and you're cool stay creative stay kind see you next year goodbye

Loading...

Loading video analysis...