Getting Your Hands Dirty Working in Blender - Getting Started with Blender - Blender For Dummies (2015)

Blender For Dummies (2015)

Part I

Getting Started with Blender

Chapter 3

Getting Your Hands Dirty Working in Blender

In This Chapter

arrow Understanding transform orientations

arrow Making changes to 3D objects

arrow Speeding up the process with hotkeys

Blender is built for speed, and its design heavily emphasizes working as quickly and efficiently as possible for extended periods of time. On more than one occasion, I've found myself working in Blender for 10 to 15 hours straight (or longer). Although, admittedly, part of this ridiculous scheduling has to do with my own minor lunacy, the fact that I'm able to be that productive for that long is a testament to Blender's design. This chapter gets you started in taking full advantage of that power. I cover the meat and potatoes of interacting with three-dimensional (3D) space in Blender, such as moving objects and editing polygons.

If you've worked in other 3D programs, chances are good that a number of Blender concepts may seem particularly alien to you. Although this divide is reduced with each update, to quote Yoda, “You must unlearn what you have learned” in your journey to become a Blender Jedi. If you've never worked in 3D, you may actually have a slight advantage over a trained professional who’s used to a different workflow. Hooray for starting fresh!

Grabbing, Scaling, and Rotating

The three most basic ways of changing an object in a 3D scene are called transformations by mathematicians. Blenderese is much more colorful:

· Change location using translation.

· Change size using scale.

· Change rotation using orientation.

Rather than use the mathematical terms of translation, scale, and orientation, people who speak Blenderese use the terms grab, scale, and rotate, respectively. Other programs might use the term move in place of grab or size in place of scale. Whatever you call them, and whatever program you use, these three operations place any object in 3D space at any arbitrary size and with any arbitrary orientation.

Differentiating Between Coordinate Systems

Before you bound headlong into applying transformations to your objects, you need to understand how coordinate systems work in 3D space. All coordinate systems in Blender are based on a grid consisting of three axes:

· The X-axis typically represents side-to-side movement.

· The Y-axis represents front-to-back movement.

· The Z-axis goes from top to bottom.

This grid system with axes is referred to as the Cartesian grid. The origin, or center, of this grid is at the (0,0,0) coordinate. The difference in the coordinate systems within Blender lies in the way this grid is oriented relative to a selected 3D object. Figure 3-1 shows the Transform Orientation menu in the 3D View header when you left-click it.

image

Figure 3-1: The Transform Orientation menu.

tip If you're coming from another 3D program, you may find the way Blender handles coordinates a bit disorienting. Some programs (such as Cinema 4D and Maya) have the Y-axis representing vertical movement and the Z-axis going from front to back. Currently, you can’t change the coordinate system in Blender to match these programs, so this system is one of those things that migrating users just need to get used to.

As Figure 3-1 shows, you can choose from five orientations: Global, Local, Normal, View, and Gimbal. Working in any of these coordinate systems gives you absolute control of how your object lives in 3D space. Depending on how you’d like to transform your object, one orientation may be more appropriate than the others. Blender also gives you the ability to create custom orientations. That topic is slightly more advanced than I have room to cover in this book, but after you create a custom orientation, it also becomes available on the Transform Orientation menu.

technicalstuff This list describes details of the five possible orientations:

· Global: You see this orientation of Blender’s base grid in the 3D View. In many ways, the Global orientation is the primary orientation to which everything else relates, and it's the base coordinate system described at the beginning of this section. The Z-axis, marked in blue, runs vertically in the space. The Y-axis is marked in green, moving along the front-to-back line, and the X-axis is in red, along the side-to-side line. The origin is located directly at the center of the grid.

· Local: In addition to the Global orientation, each 3D object in Blender has a local coordinate system. The base of this system isn’t the same as the Global coordinate system's base. Instead, this coordinate system is relative to the center point, or origin, of your object. The object origin is represented by the orange dot that’s usually located at the center of your 3D object. By default, when you first add a new object in Blender, its Local coordinate system of the object is aligned to the Global axis, but after you start moving your object around, its Local coordinate system can differ greatly from the Global orientation.

· Normal: The Normal orientation is a set of axes that’s perpendicular to some arbitrary plane. When working with just objects, this description doesn't really apply, so the Normal orientation is exactly the same as the Local orientation. When you begin editing meshes, though, Normal orientation makes more sense because you have normals (imaginary lines that extend perpendicular to the surface of a triangle or plane) to work with. Blender also uses the Normal orientation for the local coordinate system of bones when working with Armatures for animation. A nice way to think about the Normal orientation is the “more local than local” orientation. Chapter 4 covers editing meshes in more detail, and Chapter 11 covers working with Armatures in depth.

· Gimbal: When you rotate an object about its X, Y, and Z axes, the angles about those axes are known as Euler (pronounced like oiler) angles.

technicalstuff Unfortunately, a side effect of using Euler angles is that you have the possibility of running into gimbal lock. You run into this problem when one of your rotation axes matches another one. For example, if you rotate your object 90 degrees about its X-axis, then rotating around its Y-axis is the same as rotating about its Z-axis; mathematically speaking, they're locked together, which can be a problem, especially when animating. This orientation mode in Blender helps you visualize where the axes are, so you can avoid gimbal lock.

· View: The View orientation appears relative to how you're looking at the 3D View. Regardless of how you move around in a scene, you’re always looking down the Z-axis of the View coordinate system. The Y-axis is always vertical, and the X-axis is always horizontal in this orientation.

remember All these coordinate system explanations can be (please forgive the pun) disorienting. An easy way to visualize this concept is to imagine that your body represents the Global coordinate system, and this book is a 3D object oriented in space. If you hold the book out in front of you and straighten your arms, you move the book away from you. It’s moving in the positive Y direction, both globally and locally. Now, if you twist the book to the right a few degrees and do the same thing, it still moves in the positive Y direction globally. However, in its local orientation, the book is moving in both a positive Y direction and a negative X direction. To move it in just the positive local Y direction, you move the book in the direction in which its spine is pointing.

To relate this concept to the View orientation, assume that your eyes are the View axis. If you look straight ahead and move the book up and down, you’re translating it along the View orientation's Y-axis. Gimbal orientation would be if you rotate the book 90 degrees toward you, rotating about its X-axis. Then it's Y and Z axes are locked together. For a clear reference, the 3D manipulator in Figure 3-2 shows the difference between the coordinate systems.

image

Figure 3-2: The Global, Local, View, Gimbal, and Normal coordinate orientations.

remember The last object you select is the active object. If you’re using the Local, Gimbal, or Normal orientations and select multiple objects, the transform operations happen relative to the active object's orientation.

tip You can quickly change the coordinate system you're using by using the Alt+Spacebar hotkey.

Transforming an Object by Using the 3D Manipulator

In Blender's default configuration, the 3D manipulator is activated and viewable at the center of your selected object. You can use the manipulator to transform any object in a 3D scene. When Blender first starts, the manipulator is in Translate (Grab) mode, which you can determine in two ways:

· The manipulator itself looks like a set of colored axes located at the center of the selected object.

· In the 3D View's header, the button with the blue arrow icon on it is depressed to indicate that the manipulator is in Translate mode. By default, the manipulator is oriented to align with the Global axis.

remember In all transform orientations under Blender, red represents the X-axis, green the Y, and blue the Z. If you think about the primary colors for light, a handy way to think of this is XYZ = RGB.

Switching manipulator modes

As you might expect, translation isn’t the only transform operation available to you with the manipulator. If you refer to the 3D View's header to the left of where the Transform Orientation menu is located, the button with the blue arc icon on it activates Rotation manipulator mode, and the button with the icon of a line connecting to the corner of a square activates Scale mode. Press the Rotation mode button to see the change in the look of the 3D manipulator. In this mode, the manipulator is a set of semicircles around the object's center, with the proper color representing each axis. Left-clicking the Scale mode button for the manipulator changes it to look much like it does in Translate mode, except that you see a small cube, rather than an arrow, at the end of each axis.

The 3D manipulator should be familiar to you if you’ve used other programs, where the corresponding tool might be called a widget or a gizmo. However, the Blender manipulator also does something else: It lets you activate multiple modes at the same time as a combo manipulator. Hold down Shift while pressing the appropriate button to activate a manipulator. You can then make any combination of transform modes active simultaneously. Many Blender users find this capability particularly helpful for animation, where some situations require quick access to translation and rotation but not necessarily to adjust the object's scale. Figure 3-3 shows the three separate modes of the manipulator, as well as the combo manipulator.

image

Figure 3-3: The Translate, Rotate, Scale, and Combo manipulator modes.

Using the manipulator

To translate a selected object with the manipulator, follow these steps:

1. Make sure that Translate mode is active by left-clicking the Translate manipulator mode button in the 3D View's header.

2. Left-click the manipulator arrow that points in the direction you want to move the object and drag to the location where you want to place your object.

For example, to move an object along the X-axis, left-click the red arrow on the manipulator. To cancel the operation, right-click or press Esc.

tip Notice also the white circle around the origin of the Translate manipulator in Figure 3-3. To translate a selected object in the X- and Y-axis of the View orientation, left-click and drag this circle. This convenient shortcut prevents you from having to continually switch orientation modes for the manipulator.

You can use the Ctrl and Shift while transforming to have more control. Move in fixed increments with default settings by holding down Ctrl. Hold down Shift while transforming an object to make adjustments on a finer scale. Hold down the Ctrl+Shift key combo while transforming to make adjustments in smaller fixed increments. Interestingly, these same modifier keys work when using any of Blender's value input fields.

This fixed-increment control is similar to (though not exactly the same as) the basic snapping to the grid, or increment snapping, found in other 2D and 3D applications. Blender also offers the ability to snap your selected object to other objects (or parts of them), called snap targets, in your scene. Choices for snap targets are Increment, Vertex, Edge, Face, and Volume. Unfortunately, grid snapping is not currently implemented in Blender, so that may be somewhat disorienting if you're migrating from another application. You choose which snap target you want to use by left-clicking the Snap Element menu in the 3D View's header, as shown in Figure 3-4.

image

Figure 3-4: The Snap Target Mode button.

Holding Ctrl while transforming is actually a way to temporarily enable snapping behavior based on a chosen snap target. However, you may prefer snapping to be the default behavior (so you don't have to hold down Ctrl). You can enable snapping by left-clicking the magnet icon next to the Snap Element menu in the 3D View's header or by using the Shift+Tab hotkey. This option tells Blender to snap as default and that holding down Ctrl then temporarily disables snapping.

Here are the different available types of snap targets in Blender:

· Increment: In Blender's default behavior, your selection is snapped to fixed increments of Blender's base unit.

· Vertex: The vertex is the fundamental element of a mesh object in Blender. Using this target, the center of your selection snaps to vertices or points (for curves and armatures) in other objects.

· Edge: The line connecting vertices is referred to as an edge. Select this target to snap your selection to edges in objects of your scene.

· Face: Edges connect to one another to create polygons, referred to as faces. Choose this option to snap to them with your selection.

· Volume: When faces connect to create a surface, that closed surface is referred to as a volume. You can choose this option to snap your selection to an object's volume. This option is particularly useful when creating a rig for animating characters, as described in Chapter 11.

Snapping targets work in both Object mode as well as Edit mode. For more information on Edit mode, vertices, edges, and faces, see Chapter 4.

tip You can quickly change snap modes by using the Shift+Ctrl+Tab hotkey combination. If you use this hotkey with pie menus enabled, you also have the option of enabling and disabling snapping directly from the menu.

tip You can observe the changes made to your object in real time by looking in the 3D View's header (remember, it's at the bottom of the 3D View by default) as you transform it. Figure 3-5 shows how the header explicitly indicates how much you’re changing the object in each axis.

image

Figure 3-5: You can view changes in the 3D View's header.

tip Suppose that you don't want to move the object in the direction of just one axis. Instead, you prefer the freedom to move the object in the plane created by two axes, such as the XY, XZ, or YZ planes. Just Shift+left-click on the axis that’s perpendicular to the plane in which you want to move. This axis is the one that’s normal to the plane. For example, assuming that you want to scale the object in the XY plane, Shift+left-click the Z-axis cube of the Scale manipulator.

I use this technique a lot when modeling furniture and buildings. I can quickly scale a cube with the proper depth along a single plane to create a tabletop or a wall.

remember Transform operations are consistent across all manipulator modes in Blender, so you can apply any of these methods of interacting with the Translate manipulator in the Rotate and Scale manipulator modes. The only exception is that Shift+left-clicking an axis on the Rotate manipulator operates just like simply left-clicking the axis: It doesn't make sense to try to simultaneously rotate around two axes with any form of control. And don’t forget that you aren't limited to working in just the Global coordinate system. You can choose any of the other four orientations from the Transform Orientation menu and the 3D manipulator adjusts to fit that orientation.

Saving Time by Using Hotkeys

Many Blender users find that the manipulator obstructs their view too much when working, so they disable it outright. To disable the manipulator, go to the 3D View's header near the manipulator mode buttons and click the button with the color axis icon. Alternatively, you can press Ctrl+Spacebar.

tip If you have the Pie Menus add-on enabled, the Ctrl+Spacebar hotkey lets you choose which manipulator you see, in addition to the option of disabling them altogether.

But wait, with the manipulator gone, how do I transform my objects? I'm glad you asked. Enter one of the most powerful features of Blender: hotkeys.

Part of the beauty of Blender's hotkeys are that they take a lot of pressure off of your mouse hand and shorten the distance of mouse-based operations. The accumulation of these little time-saving actions is what makes using hotkeys so powerful.

newversion The default hotkey configuration in Blender is currently in a bit of a state of flux. Blender's user interface team is in the process of rolling out a new set of hotkey defaults. However, since there's a large number of Blender users that are very used to the current hotkeys, the new set is being rolled out slowly. As of this writing, the defaults are the same as they've ever been, though they're likely to change in the months and years to come. Nevertheless, even when Blender gets a new set of default hotkeys, the ones described in this book will still work as a user-configurable option.

Transforming with hotkeys

You can access nearly every piece of major functionality in Blender with hotkeys. Transforms are no exception. Translating in Blenderese is called grabbing. That naming has specific significance as it pertains to hotkeys. To see what I mean, use the following steps to Grab/Translate your object:

1. Select the object you want to move by right-clicking it.

2. Press G.

Congratulations! You're translating your object.

3. Confirm the translation by left-clicking or pressing Enter.

Cancel by right-clicking or pressing Esc.

remember To rotate your object, press R. Scale it by pressing S. See a pattern here? The majority of Blender's default hotkeys are easy to remember. Most of them just use the first letter from the operation in question. And just like when using the manipulator, the familiar Ctrl, Shift, and Ctrl+Shift keypresses for snapping and fine adjustments still apply.

tip Also, because Blender tries to maintain consistency throughout its interface, you can use these hotkeys in more than just the 3D View. For example, the same grab and scale operations work when you edit keyframes and motion curves in the Graph Editor. How’s that for convenient?

remember In addition to emphasizing efficiency, Blender is designed to allow you to work for as long as possible while incurring the least amount of repetitive stress. For this reason, relatively few operations in Blender require you to hold down a key. Typically, you press and release a key to begin the operation; you confirm its completion by left-clicking with your mouse or pressing Enter. To cancel the operation instead of confirming, right-click or press Esc. In fact, this keyboard combination even works on some operations that require you to hold down a button. For example, if you try to split an area (left-click and drag a corner widget) and then decide you don't actually want to split it, you can right-click while adjusting the boundary between areas; the operation stops.

Hotkeys and coordinate systems

By default, your transformations all happen in the View coordinate system when you use hotkeys. So no matter how you're viewing the scene, you're working in the XY-plane of the 3D View.

Suppose, however, that you want to grab your object and move it in the global Z-axis. You use a sequence of keypresses to do this action. Use the following steps to grab an object and move it to the global Z-axis:

1. With your object selected, press G.

You’re now in Grab/Translate mode.

2. Without canceling this operation, press Z.

A blue line should appear that indicates the global Z-axis. Your object is locked to move only along that line. If you press Y, your object moves only along the global Y-axis and pressing X locks it to the global X-axis.

Pretty neat, huh? This method of using a sequence of hotkeys works with rotating and scaling as well (for example, R⇒Z rotates around the global Z-axis and S⇒X scales along the global X-axis).

What about the Local orientation? That's just one more keypress in the sequence. Follow these steps to grab an object and move it along its local Y-axis:

1. Act like you are going to translate the object in the global Y-axis by pressing G⇒Y.

2. Press Y a second time.

You’re translating in the local Y-axis. Pressing Y a third time brings you back into moving in the default View coordinate system.

If you want to use the Normal or Gimbal orientations, you can use the same preceding sequence. You just have to make sure that your Transform Orientation is set to either Normal or Gimbal. Even though the 3D manipulator is disabled, Blender still pays attention to your choice here when you press the axis letter for the second time.

tip Again, this method of using a sequence of keypresses works with scaling and rotation as well. Keying the sequence R⇒X⇒X rotates around the local X-axis and S⇒Z⇒Z scales along the local Z-axis.

One of the more powerful features of the 3D manipulator is the ability to work in a plane rather than just one axis. You can work in a plane with hotkeys as well by using the same logic used in the manipulator. Use Shift plus the letter of the axis that's perpendicular to the plane you want to move in. For example, to scale your object in the global XY-plane, press S⇒Shift+Z. For the local XY plane, press S⇒Shift+Z⇒Shift+Z. This same methodology also works for the Grab operation (though, like with the manipulator, not for the Rotate operation).

Table 3-1 shows most of the useful hotkey sequences for transforming your objects.

Table 3-1 Useful Hotkey Sequences for Transformations

Grab

Scale

Rotate

Orientation

G

S

R

View

G⇒Z

S⇒Z

R⇒Z

Global Z-axis

G⇒Y

S⇒Y

R⇒Y

Global Y-axis

G⇒X

S⇒X

R⇒X

Global X-axis

G⇒Z⇒Z

S⇒Z⇒Z

R⇒Z⇒Z

Local Z-axis

G⇒Y⇒Y

S⇒Y⇒Y

R⇒Y⇒Y

Local Y-axis

G⇒X⇒X

S⇒X⇒X

R⇒X⇒X

Local X-axis

G⇒Shift+Z

S⇒Shift+Z

N/A

Global XY-plane

G⇒Shift+Y

S⇒Shift+Y

N/A

Global XZ-plane

G⇒Shift+X

S⇒Shift+X

N/A

Global YZ-plane

G⇒Shift+Z⇒Shift+Z

S⇒Shift+Z⇒Shift+Z

N/A

Local XY-plane

G⇒Shift+Y⇒Shift+Y

S⇒Shift+Y⇒Shift+Y

N/A

Local XZ-plane

tip An even faster way to constrain to axes involves using the middle mouse button. As an example, select an object and grab (G) it. Now move your mouse in roughly the direction of the X-axis and then middle-click. A red line should appear through your object's origin, and the object should be locked to moving along that line, constraining you to that axis. The same thing works in both the Y- and Z-axes. For an even more interactive way of constraining axes, hold down your middle mouse button while you’re grabbing. All three axes appear, and your object locks to one of them as you bring your mouse closer to them. I absolutely love this feature.

tip While you're working with hotkeys to transform your objects in Blender, it's worth noting that Blender has a tweak mode that allows for making very fast grab adjustments with your mouse. To activate tweak mode, select (right-click) the object or subobject (vertex, control point, and so on) you want to move and (while still holding down the mouse button) drag your mouse cursor in any direction. This shortcut takes you right into grabbing as if you'd selected the object and then pressed G, only faster! Many beginning users find themselves accidentally popping into tweak mode by moving their mouse while selecting. Now that you know how tweak mode works, you won't be caught by surprise, and you can take full advantage of this time-saving feature.

Numerical input

Not only can you use hotkeys to activate the various transform modes, but you can also use the keyboard to explicitly input exactly how much you would like your object to be transformed. Simply type the number of units you want to change after you activate the transform mode.

As an example, suppose that you want to rotate your object 32 degrees around the global X-axis. To do so, press R⇒X⇒32 and confirm by pressing Enter. Translate your object -26.4 units along its local Y-axis by pressing G⇒Y⇒Y⇒-26.4⇒Enter. These steps can be a very quick and effective means of flipping or mirroring an object because mirroring is just scaling by -1 along a particular axis. For example, to flip an object along the global Z-axis, press S⇒Z⇒-1⇒Enter. For consistency, these numerical input operations are also available when using the 3D manipulator.

newversion A recent addition to Blender is the ability to use simple mathematical equations as part of the numerical input system. To take advantage of this feature, press the Equals (=) key before entering your numerical input. As an example, say you have a model of a car that's 13 Blender units long; you want to move it along the Y-axis by 6 car lengths. Sure, you could do the math in your head (or with a calculator, if necessary), but it's even easier to let Blender handle the math for you by pressing G⇒Y⇒=13*6⇒Enter. This equation mode of numerical input even allows for simple math functions and constants, such as sine, cosine, and pi (π). So, if you find that you need to rotate an object about its X-axis by the cosine of 2π (that's 1°, by the way), you could use the following key sequence: R⇒X⇒=cos(2*pi)⇒Enter. If you're coming from an industrial design or architecture background, this is an immensely useful feature.

The Properties region

One other way to explicitly translate, scale, and rotate your object is through the Properties/Information region (see Chapter 2) of the 3D View. To reveal this region, go to View⇒Properties in the 3D View's header or press N while your mouse cursor is in the 3D View. The Properties region sits along the right side of the 3D View and includes a Transform panel that allows you to explicitly enter numerical values (and simple math expressions) for Location, Scale, and Rotation. Close the Properties region the same way that you open it.

remember When in Object mode, the values in the Properties region don’t change depending on which coordinate system you've selected. Location and Rotation are always in the Global orientation, whereas Scale is always in Local.

Blender's layer system

If, as a first-time Blender user, you rush to try to move your object around by attempting to use M as a hotkey, you may be surprised when Blender presents you with a funky pop-up panel of 20 unlabeled buttons. Interestingly, the M hotkey does activate a move function, but not like you'd expect. It allows you to move your object to one or more layers. Each button in the pop-up panel represents a single Blender layer. Left-click a button, and your selected object moves to that layer.

Blender's layer system is pretty unique among computer graphics software; the layers aren't layers in the traditional sense, where they're arranged in a stack and objects can live in only one layer at a time. Instead, Blender has exactly 20 layers and objects can simultaneously live on multiple layers. As a result, Blender layers tend to be treated as a quick way of grouping objects.

You can control which layers are visible by using the block of layer buttons in the 3D View's header. You can tell if a layer has objects in it at a glance by checking to see if the layer button has an orange circle within it. Shift+left-click a layer button to toggle its visibility. Left-clicking Shift+any layer button makes that layer visible and all others hidden. Pressing the Tilde (~) key makes all layers visible.

A neat feature allows you to arbitrarily enable or disable multiple layers at once, both in the 3D View's header and when moving an object between layers. If you Shift+left-click a layer button to enable or disable it, keep your mouse button pressed; you can drag your mouse cursor around the layer buttons, enabling whichever layers your cursor floats over. This also works in other parts of Blender's interface. Although this feature is most useful in layers, you can use it for check boxes, toggles, and radio buttons, too.