using noise with multiples/instancing
Notes from Ned Rush's 80's retro visuals video - https://youtu.be/LiUCD-8vgFY
What' we're making - spheres instanced onto a noisy point base AND making a weird grid thing that connects all the points up
Going to break down several parts of this video separately so it's easier to search for on this blog.
Firstly introducing noise to the points that we're instancing onto.
firstly we make a gridshape to define the shape - here we're using a torus and we make sure we are outputting the matrix. Lets setup the shapes we're instancing next. We're using spheres.
We're going to use a jit.noise with 3 planes (3 axes) of type float32 (values 0-1) and size of 2 2 2 (fairly low frequency noise, think of 3d textures). I remap the noise using jit.map to a range of -4 to 4.
Now... we can actually plug the result of the noise or map straight into the jit.* to multiply the torus matrix, and that will work, but the noise will need to be banged. I'm using a s and r to send and receive the jit.world's bang into the noise. This is quite fast, as it is linked to the screen refresh rate. Ned uses a "speedlim" node to quantise this. The argument of "1n" means 1 bar. Here's a list of other time values you can use in Max/MSP.
Experiment and figure out which works for your project.. This produces a staggered kinda noise (attach a jit.pwindow to the noise to see some values switching every bar). IF you want to smooth these values out, you can use the jit.slide node. (You should bang the jit.slide node with the r worldbang - we are using the matrix because we're passing that to the jit.gl.mesh in a bit)
Additionally I'm using jit.mo.sin and jit.mo.join to create a wobbly sinusoidal matrix to multiply our noise by...Nothing new on this bit. It's optional.
Jit.gl.mesh accepts a matrix for vertex positions. I'm passing in the resultant deformed matrix - this creates a broken looking grid that interconnects all the points. Very abstract/glitchy looking but kinda cool. I'll look for less broken looking applications for this at some point. Try plugging in different matrix outputs into this node. It's quite cool.
Comments
Post a Comment