This video is titled 3D point matrix lesson. Some of you may have already guessed what was next. If we're working with a 2D point matrix, we must be able to work with a 3D point matrix. That's what we're going to do. There's only a few changes that we have to make in the code. But it certainly starts to make a more complex three-dimensional volumetric structure. That structure in relation to the code needs a little bit of explanation. In this diagram, I'm showing a code our i, j loop. I've drawn the module in oblique fashion because I'm going to add to that our three-dimensions. Now, up until this point in this line right here, our z value has always been zero. The way to create three-dimensionality in the system is to add another loop that's going to reflect change in the z dimension. We're not going to look at the top diagram quite yet. It's a little overwhelming. It can be a little bit confusing because there's a lot of different variables in it and we're going to break that down a little bit. But I want you to look at the code. Here I've just added a third loop called a k loop. Now z is a product of that k. I could always use my multipliers in here if I wanted to change the scale of the grid, if I wanted to or vary it in terms of randomization. The other thing I've done here is add a k to my dictionary. Now, the keys in my dictionary are defined by those three iteration variables i, j, and k. Still set equal to my point variable x, y, z. Looking at the diagram, actually, and what we're going to do is just break it down. It's not actually that different than this first diagram. If you look at these values of i, j, and i minus 1, j minus 1, and i minus 1, j and i, j minus 1, those relationships all stay the same. All I'm really doing is adding a k to that. If the k is on the lower level, it's a minus 1, and if it's on the upper level, it's just k. Let's look at it in this diagram. To help legibility in this, we can just look at one level at a time. My upper right, I have my i, j, k, which the first time this is going to work within the loop. We know that as a 1, 1,1 set of keys. Then this one, the one diagonal from it is all negative except for the k. Anything on this level is going to be a positive k. Nothing changes in the loop down there. Then on the lower level, everything stays the same. All my i, j values, you'll see will stay the same. But k just gets a minus 1. Now, even running through this, it can be a bit complex to recognize it, to see it in this type of diagram. What's going to be really important and what I'm going to go over in the software demo is actually constructing that module three-dimensionally. Just like we did with the 2D matrix module, we're going to construct a 3D matrix module. We're going to change the labels on the points to reflect this i, j, k structure. Everyone should do that for themselves, create their own model that has that labeling system in it. Going through that process is really going to help you understand this structure and understanding this triple loop nested structure and how it produces that module. Once we do that and understand it, then we can start to construct geometry from that module. We'll be covering that next.