Logo Reveal - Character Animation Using MoGraph: Adding Procedural Ground Indents

Share this video
  • Duration: 09:24
  • Views: 731
  • Made with Release: 19
  • Works with Release: 19 and greater

In this Video we will use a combination of XPRESSO and a Displace Deformer, alongside the Proximal Shader to create procedural indents in the ground, that align to our Carrot positions. To control the overall shape of the holes, we will use a filter shader to remap the Proximal's output to the desired shape.



In this video, we will use a combination of Xpresso, a displace deformer, alongside the proximal shader and a filter shader to create procedural indents in the ground that align to our carrot positions. So what do we need to do is the following. First of all, I'm going to drag the plane down here and name it "Ground." The next thing is to increase the resolution of the ground plane to 500 by 500 segments because we are going to use a displace deformer and we need the extra geometry. Now the next thing I need to do is reference the positions of the carrots on the floor, and the best way to do that is the following. I'm going to drag and make a copy of the cloner by pressing the CMD or the CTRL key on the PC and I'm going to delete the children. Then I'm going to select this and go to the MoGraph menu and select the Swap Cloner/Matrix command. And this will turn our cloner into a matrix object. I'm going to name this "Matrix Floor." Now when I play the animation, you wil see that the matrices move in the same way the carrots do, but I just want them to stay put on the floor. And the way to do that is go to the Effectors, list and delete everything except for the random effectors. Because the random effectors control where the placement is exactly. And now if I scrub again, you will see that they stay on the floor. And that's all nice and dandy but let's try the following thing. What if I want to change some of the parameters on my cloner? If I go to the Object tab and say, for example, five clones in the z-axis, the matrix doesn't adjust. And I have to go here and change this to five. I need it to connect the count and the size to the cloners' count and size, and I'm going to do this using an Xpresso tag. And let's do that. I'm going to drag the matrix over here and drag the cloner over here. Now the easiest way to add the inputs and output ports is go to the actual object and drag them from the Attribute Manager. So the count and the size. And if I CMD or CTRL double-click, it will resize to fit everything. Then go to the matrix and do the same thing. Count to the input and size to the input, and then again CMD or CTRL double-click. And now I'm going to associate the counts and the size. And you can see immediately now the matrix adjusts to the changes we have made. Fantastic. Let me undo and now I can set my cloner to 15 again. Excellent. Let me hide this now for a second and let me close this because I've created the association. Let me hide the matrix, as well, because we don't need to see it anymore. Now what I need to do is find a way to affect the ground using the positions of the matrix. And in order to do that, I'm going to use a displacer deformer, make it a child of the ground, and in the shading, I'm going to add a proximal shader from the Effects. And the proximal finds the positions of any object in this list or particles or matrices. So if I drag the matrix in here, you will see that suddenly the whole thing raises up. And if I go to one of my side views and change the display to wireframe, you will see that it has risen up from the ground plane half upwards and half downwards. Let's go back to the 3D view and see what's going on here. What I need to do is make sure that these distances down here are small enough. So I'm going to change this to seven. And now you will see that for each position in the matrix, I get some sort of elevation. Let me turn this off again and let's go to the side view. And now what you see here is a representation of what's going on. For each and every one position in our matrix, from the Matrix Floor object, we get half going upwards and half going downwards. And this represents this little gradient circle we see here. Now I need to change this, and the best way to change it is in the displacer, I'm going to go here and add a filter shader. So now my proximal shader gets piped through a filter shader, and I'm going to change the way this undulation happens so that it complies to the shape I want it to have. I'm going to go to the gradation curves and I'm going to enable them, and currently nothing really happens. Let me just scroll downwards. Now this represents the ramp from black to white, and currently black is in the minus maximum position and white is in the plus maximum position. This is defined in the displacer's object tab, where it says height, 10 centimeters. And the type, intensity centered. What intensity centered means is that I'm going to have 10 centimeters going upwards and 10 centimeters going downwards from a 50% grey color. I want to change this, so I'm going to go to my Filter and I'm going to go to my Gradation Curves and set the first node to be in the middle. So I'm going to raise it to go towards 0.5. And you'll see that this is the value that changes. Double-click and type 0.5. And now you will see that black is where our zero y is, and by changing the way this curve goes, I can change the shape of my holes. So now you can see it goes up and then all the way up here, as you can see it goes up all the way up here. These little points over here represent this little dot. If I take this and put it down, you can see I'm creating some sort of hole. So here's the profile and here is that profile a bit condensed. So I can control how high or low this bump is going to go. At the same time, I can go to the displacer object and change its value to something, like, five to make it a bit easier. Go to shading, go back here, and adjust my curves so I get the shape I want. Excellent. Another thing I can do is add another point by pressing CMD or CTRL and click, and raise that up so I can create a more smooth transition from the ground plane all the way to the bump. And I can control the bump from this over here and the depth of the hole from this over here. So if you want to make this larger, you need to go to displacer, filter, the proximal shader, and change the value of the end distance. In this case, these are centimeters although they say percent. So make it bigger and there you go, you can make it as big or as small as you want it to. So now all these holes, which are procedurally created, will change depending on what values we have on our cloner. So I'm going to activate it and you can see that it adjusts immediately. Press 5 and you will see...if for any reason it doesn't adjust immediately, just press A on your keyboard and it will force a refresh of your viewboard. Fantastic, so 15, tab, tab, 15. And here we have our carrot holes in the ground and, of course, I can rewind and you can see they all adjust to their correct positions. So now you know how to use Xpresso and a proximal shader with a filter and various other parameters to create procedural holes that will reflect the position of each carrot.
Resume Auto-Scroll?