[MUSIC] We've seen how we can make shapes out of vertices and polygons. These polygon meshes are the objects that populate our virtual worlds and that we can see in virtual reality. But simply having an object is not enough to create a scene. We want to create worlds which have many objects. But importantly these objects need to be positioned nicely, it's no good having all the furniture in a big pile. When actually what we want is a nice laid out room with the sofas in the right places, the coffee tables in the right place, and the lighting in the right place. So we need to be able to position our objects where we want them in our environment. And as we will see later, we would like to be able to move them around. As we've seen, the positions in our environment are represented by an x, a y, and a z. And these will be fundamental to how we move things around. The most basic thing we'd want to do to an object is move it. Left or right. Up or down, Or in and out. Those are the three directions that we've learned about already, x and y and z. That is what we called translation. It's what we think about first when we think about positioning or moving an object. Moving it left or right, in or out, or up and down or in or out. But it's no good having your TV in the right place in your room if it's facing the wall. As well as having your objects in the right place, they need to be facing in the right direction. So we need to be able to turn objects, what we call rotating objects. And here again, x and y and z are quite useful. So we can rotate an object about x. Think about a big line or a pole going through the middle of an object in the x direction. And if you twist that pole, imagine what happens to the whole object. That's what I mean by rotating about x. We can also do the same about y. And also about z. So we can break down the rotations into a rotation about x, a rotation about y and a rotation about z. Actually, behind the scenes, it's represented in a slightly more complicated way called. I won't go into the details, it's quite mathematical, but there are several reasons why it's a good representation. Almost all of the time, it's good enough to think about an x rotation, a y rotation, and a z rotation. And the interfaces of most 3D engines will allow you to change rotations with x, y, and z. Rotation and translation are called transforms because they allow us to transform, ie change the position of an object. So when I want to talk about them together, I will talk about transformations. And most 3D engines will include transformations attached to each object, which includes a translation or a rotation. So the basic ways you can position an object is translation, moving it around, and rotation, turning it. And that's exactly what you would do if you were putting furniture in your living room. But actually, because 3D graphics isn't the real world, we're not limited to doing what we can do in the real world. And there is another very important transformation called scaling. What that means is making objects bigger or smaller. Now, that is very useful because after creating an object we move it into the space and we realize it's a little bit too big or it's a little bit too small. In the real world if it's a sofa and its too big for your living room, that's a big problem. In 3D graphics, no problem at all. You just shrink it down or you could make it a little bit bigger. Again, we can scale along the x axis, the y axis, and also the z axis. We can scale along each of these separately so we can change its shape by making it taller, wider, deeper, thinner. That can be quite useful in a lot of situations, but a lot of the time we want to keep objects the same shape. So we just scale them the same amount along x y and z. So we have three transformations, translation, which is moving, rotation, which is turning, and scaling, which is making it bigger or smaller. These are all attached to our objects and you can use them to move and position those objects, to get them where you want inside your virtual worlds. And also we'll see later, you can use them to animate those objects so that you can have them move dynamically in your world. [MUSIC]