Blender Geometry Nodes Animation in Blender 3.1 [Audio Visualizer]

Video Statistics and Information

Video
Captions Word Cloud
Reddit Comments
Captions
over a year ago i created an audio visualizer using geometry note now with the new system we can recreate a similar effect with more control and without any separate modifiers let's get started and let's get into it all right so i've opened up a new blend file here and we have just the default theme i'm just going to go into camera view with numpad 0 and let's select our default cube and hit new to create our new geometry node system we are going to start off by deleting the default cube so select the node and just delete it and we are going to add in a grid the grid will be the base mesh basically which will drive our entire effect so this is the default grid and if i go into wireframe mode you can see we have faces in here as well and we want to scale this guy up to be about five by five meters so it's uh big enough to fill our scene and for the vertices we can increase this number to anything that we want for example this is 10 by 10 and i want a number here that adds to the effect but feel free to change it to whatever you want so i'm going to go for 60 which worked fine for me but the higher you go the more points you get so the more dense it becomes now what we want to do is we want to displace this grid to basically have this wave modifier effect if i draw here what we want is we want to create concentric rings these are very much not concentric but hey you get what i mean why are we still here [Music] just to suffer and to do that we need to first of all change the um displacement so we want for example this to be upwards is to be downwards and this to be downwards as well this to be upwards as well sort of generating a wave type effect all right so how can we do this well very simply put as always when we want to create displacement we are going to use a set position node now what this will allow us to do is change the geometry that we have and displace it in a certain direction if i just change these values it will displace the entire mesh but if i add in a more random value such as a noise texture or a wave texture which we'll use in this case it will displace only certain vertices so let's go ahead and add in a wave texture like that down here and take our factor here and plug it into the offset now this does something it's just not very good looking yet um and that's first of all because we are taking a float value which is a gray output like this one and we are plugging it into a vector value which is the purple one if i disconnect it like so you will see these are three different types of vectors and this is just one float value and it will just input it to all three of these we can change this however by using a combined xyz node what this does is we can take our float value plug it into only one vector axis in this case the z1 and then take this into the offset and it will just now change the z front view this is how it looks and this is basically sort of the same premise that we used for the waveform audio visualizer i made a while back so it worked and just going in the z direction which is what we want obviously it's just not very good looking yet first of all that's because we are using bands and we want to use rings so if we change this to rings still not looking very good that's because of the direction the rings are facing in we want to have them face the same axis that we are using in the combine xyz let's change it to the z layer here this works it's just uh very very noisy however it is displacing only upwards if i now take the skill and change it to something like a 0.5 this is actually how it looks and if we change the face offset we can animate our waves before we do anything else let's automate this animation i don't want to do it with the manual keyframe style so instead what we are going to do is we are going to take a handy note which comes with blender 3.1 and up it's called the scene time node take the second and plug it into the face offset now hit space play the animation and everything should be working i want to change the fps here so it's set to 24 by default and i'm just going to change this to 30. i advise you to do the same so this is working but it is quite low easy way to fix this math node plug it in between set it to multiply and multiply it by a value and i think i used seven for my final version so yeah seven works fine for me all right so now what we have is we have a sort of driver if you will with the scene time node multiplied by a value of seven driving the face offset so actually creating a complete animation here but there's no audio input just yet so nothing is responding to our song we don't even have a song as of now first of all what i want to do is i want to add in these points so instead of using the grid i want to use points and to do that we are going to convert our mesh which is basically uh made up of points into instances if we plug in an instance on points node we now get nothing because we have no instance but we can basically take anything in here and make sure it appears there so i'm going to use an ico sphere and set it as the instance okay so everything is working again but the icon squares are way too big so i'm going to go for 0.04 in this case there they are all right so next up we want to actually control this thing with our song here first of all i'm going to add in music so we can actually hear if it's reacting accordingly if it's hitting all the timings that we want i'm going to take the plus icon up here and go into the video editing workspace now let's make sure we are on frame one very important always and let's hop on over to this add button here and add in a sound i'm gonna add in the song that i had for this video so there it is and it will be way longer than our actual animation so if i stretch this out you will see here is where it ends so what i'm going to do is i'm going to align the play head with the end of our track here which seems to be about at 3 305 and i'm going to extend the animation so over here in the frame range to match that so 3305 and now our animation and our song should match nicely let's hop on over back to drum 3 notes and what we want to do next is we want to control the wave texture so first thing i want to control is the distortion by default is zero so there's no distortion and we are going to control this value but before we do let's change the detail to six and let's change the detail scale to fifth and nothing is happening and that's because we aren't adding in any distortion but if you do add distortion you will see it becomes pretty dramatic fairly quick that's what we want however instead of baking our sound directly into the distortion i want some control over the effect and in this case what i need to do is add in a value node and plug that into the distortion and now we can select our value over here but before we do let's make sure we add in a timeline window so there it is timeline select our value make sure we're on frame one again and hit i while hovering over our value here a very handy shortcut for you to know is that when you are hovering inside of your timeline window you can hit ctrl tab and switch between the timeline and the graph editor which is a very convenient shortcut for animating so in the graph editor window let's go to the key menu and hit big sound to f curve select your song and hit big sound to f curves this will automatically add in your track baked to the same f curve stuff that you will also hear so it will respond to the audio that you are hearing nicely uh one thing to note though is make sure you are on frame one when doing this or else it won't be synchronized to your music so now everything is working uh you can hear the audio you can also see something happening um it's just not very strong and you can see that even in the well basically the highest parts of it the value doesn't go up higher than 0.782 or so so what i want to do is i want to have some added control over that i'm going to do this with a mapped range node which will allow me to map this value to a new value so in this case i'm going to go and take the from max which is the amount it will maximum distort it so i'm going to take this to 2 which is not too much and i'm going to take the 2 max to 5. so what you will see is now it's especially when it's in the higher regions is really strong and on all the other sections it's fairly soft so really adding to the effect in my opinion okay so that's one of the sound effects that i wanted to add in but second of all i want to actually control the overall height of this thing because i think it's now not doing anything besides the distortion so what i want to do is i want to take another math note and i'm going to set this one to multiply as well and what i want to do is i want to multiply the effect so you can see if i drag this slider up and down now there's not so much going on and now there's a lot going on and instead of two and five i think i'm gonna go slightly less so five and two actually see how that looks yeah that's better okay so this works um however i want this to be dynamic as well so responding to our music again so control tab in here to switch back to our timeline back to the first keyframe hit i while hovering over our multiply value control and tab to switch back to our graph editor e menu breaks down to f curves select your song and let's go so now we have two effects first of all we have the distortion going on and second of all we have this multiply value basically telling blender how dramatic the effect should be depending on the sound so this is what you get right now and i think that's looking very very good already but it's a tad strong so i'm going to control the effect overall by adding in another map range so by plugging in another map range we have control over the overall output of our wave texture so i'm going to change this to be about three on the front max sort of drastically eliminating limit limit limit limit english do you speak it limiting the effect but i'm gonna also make it stronger with the two max which i'm gonna set to 1.5 or so there you go and this is how it looks right now and i do feel the distortion can be a bit more dramatic so i'm gonna go from max to max and set both of these to five and now we get a nice amount of distortion all right so this is basically the entire setup um and it's now sort of looking similar to what we had in the previous video um i think we can go a bit further though and especially seeing the flexibility that we have right now in geometry notes we can definitely make this look a little bit better and the first thing i want to do is that if i go into top view you will see that this is a complete square now our wave structure is more of a circle shape and that's what i want to do with the overall effect as well so i want this to be more of a circular shape so instead of messing with the grid i am going to use a technique in which i'm going to scale down some of these points so if i set this to zero the skill on the instance of points you'll see nothing's visible and basically what will tell blender okay everything in a circular shape outside of a limited distance should be scaled down to zero so basically meaning it's invisible and how can we do this it's actually very simple with the geometry proximity node so we have the geometry proximity node and if i take the distance value which i'm going to use and plug it into the scale everything disappears that's because we don't have a target all right so as a target let's give it something to work with and in this case i'm going to give it a uv sphere because it's a nice spherical shape obviously and plug that into the target you see something's going on okay so the skill is going up on the outside and it's going in on the inside and that's not something that we want you want it inverted so what we're going to do is again we are going to take a map range node and instead of saying okay 0 to 1 and zero to one we wanna switch this so from zero to one two one to zero so let's switch the two min to one and e two max to zero and now that's working things going on here um it's a bit small though and we can actually change this by creating uh a bigger falloff with the from max which i'm going to set to 1.5 or so so now it's a bit better we've got the effect going on over there and maybe i'm gonna take this down a little bit to this to five or so yeah okay that's perfect that's the map range for the multiply value two from max 5 the final thing that i want is i want the skill of these to differ on the height where they are so what i want is i want them to be zero or close to zero when they are in the crevices of our wave go down here we just mark that so over here i want them to be pretty close to zero maybe 0.1 and over here on the high parts i want them to be one ish so we can actually take our height map which we created which is basically our wave texture and use that as a multiplication for the skill so let's take our math note again plug that in here let's get this guy in the bottom over here set it to multiply and then take our factor from our wave texture and plug that into the multiply here and now you'll see they are big up top and small down below all right so that's working perfectly fine and i'm very happy with how this is looking basically wrapped up the entire effect right now i'm going to summarize it real quick we started off by creating a grid which has these vertices which we can use to increase the amount of points that we get in here then we created a set position node which is basically the displacement of our entire thing here we plugged in a wave texture and told blender to only affect the z axis with the combined xyz we then added in our scene time to animate the entire thing looping inward added some distortion so we created a animated value node using our sound here and control that with a map range to change the distortion of our wave texture we then multiply the entire thing again to make it a bit stronger and also get the height to respond to our sound then we added in some icospheres on each of the points by adding in an instance on points node and then the icospheres and finally we made sure that the scale of our argospheres changes depending on both the height so the output of our wave texture and also the closeness towards our uv sphere here next though we want to make it look good and we also want to make sure our camera is working properly as well what i'm going to do is i'm going to select the camera here hit gz to zoom it in on our location here so there you go make it a little bit closer make sure there's no nothing outside of our camera bounce here and we should be good to go let's hop on over to shading and let's start working on our scene here now i wanted the background to be black because i don't want any light from our scene bleeding in and let's select our geometry node object here um and work on this material let's change the emission to be white nothing's happening why is that well that's one thing people forget a lot of the times still nothing's visible and that's because we have not applied our material to our geometry nodes system and we can do this by adding in a set material node plugging it in between the instance of points and group output in this case and selecting our material here now if you hop on back over to shading everything is working fine i'm going to set the emission strength to be about seven or so now let's go to the render properties here and enable bloom final step for the material is actually we want to change the color of some of these hydrospheres randomly basically what we can do to do that is add in an object info node and if you plug in this random value into our emission color you will see we now get a random black and white value for each of these ico spheres i'm gonna plug in a color ramp and basically what we can tell blender right now okay so how much black do we want how much white do we want um but we can also do this with colors so what i'm going to do is i'm going to change this to a constant gradient and if i now drag in this white value we'll see more and more and more start appearing i'm going to go about halfway on the white here and instead of black which basically means no emission so they are invisible i'm going to change the black color to be a nice orange color so first of all let's go to white and then stick this into a bright orange like so and i'm going to add in another stop like another color stop here and i'm going to change this guy to be blue like this and with the random input so if i use it like this you will see just white that doesn't work but if we use the random input blender basically we'll say okay so this gray value needs to be blue and this gray value needs to be orange basically generating a random effect per particle per atmosphere if you will obviously you can change this to any color that you want you can also just disable this make the entire thing blue if you want to that's all up to you get creative and make something that you like out of it all right so the final step is to render this thing out and we can simply do this by going over to the output properties making sure everything is set up correctly so i have full hd in this case 30 fps and the end of our frame range is basically the end of our song which makes sense of course and i want to render this out as an ffmpeg video go into the encoding tab and make sure we have mp4 selected sd container for the output quality i want to use precipitate lossless and very important to note if you want audio to be exported within blender make sure to change your audio codec to aac which is a good codec which is compatible with both iphone android and lots of other devices so if you want to make sure it works on everybody's device make sure to use aac as the audio codec so that wraps up the video i hope you enjoyed it the project file for this video is available on my patreon so please consider becoming a patron it really helps the channel out a lot thank you for watching and see you in the next one also a big shout out and thanks to the following people for supporting the channel [Music]
Info
Channel: Kaizen Tutorials
Views: 58,809
Rating: undefined out of 5
Keywords: blender geometry nodes animation, blender geometry nodes animation 3.0, blender audio reactive, blender audio visualizer, blender geometry nodes audio, geometry nodes blender animation, geometry nodes motion graphics, geometry nodes blender motion graphics, geometry nodes audio, blender music video, blender music visualizer, blender music video effects, geometry nodes music, blender geometry nodes music
Id: 8jq9iqjSpuE
Channel Id: undefined
Length: 18min 7sec (1087 seconds)
Published: Sat Apr 09 2022
Related Videos
Note
Please note that this website is currently a work in progress! Lots of interesting data and statistics to come.