Although polygon-based meshes tend to be the bread and butter of modelers in Blender, they aren't the only types of objects that are available to you for creating things in 3D space. Blender also has curves, surfaces, metaball objects, and text objects. These objects tend to have somewhat more specialized purposes than meshes, but when you need what they provide, they're extremely useful.
Curves and surfaces are nearly as general purpose as meshes; they're particularly handy for anything that needs to have a smooth, non-faceted look. They're also important for models that require mathematical precision and accuracy in their appearance. Metaball objects are great at creating organic shapes that merge into one another, such as simple fluids. You can also use them to make a roughly sculpted model from basic elements that you can detail further in Sculpt mode. Text objects are exactly what they sound like: You use them to add text to a scene and manipulate that text in all three dimensions. This chapter tells you more about working with all these types of objects.
So, what's the biggest difference between curves and surfaces when compared to meshes? Math! Okay, I'm sorry. That was mean of me; I know that math can be a four-letter word for many artists, but don't worry; you won't have to do any math here. What I mean to say is that you can describe curves and surfaces to the computer as a mathematical function. You describe meshes, on the other hand, using the positions of all the individual vertices that they're composed of. In terms of the computer, curves and surfaces have two advantages:
Of course, these advantages come with some caveats, too. For one, curves and surfaces can sometimes be more difficult to control. Because curves and surfaces don't really have vertices for you to directly manipulate, you have to use control points. Depending on the type of curve, control points can sit directly on the shape or float somewhere off of the surface as part of a control cage.
Even though curves and surfaces are perfect mathematical descriptions of a shape, the computer is actually an imperfect way of displaying those perfect shapes. All 3D geometry is eventually tessellated when the computer processes it (see Chapter 5). So even though curves and surfaces can take less memory on a computer, displaying them smoothly may actually take more time for the computer to process. To speed up things, you can tell the computer to use a rougher tessellation with fewer triangles. As a result, what you see in Blender is an approximation of that perfect curve or surface shape. Do you find yourself thinking, “But hey, I thought curves were supposed to be perfect mathematical descriptions of a shape. What gives with these facets?” Well, the curve is perfect. It's just hard for the computer to show it to you directly.
But despite these minor disadvantages, using curves and surfaces is a really smart move in quite a few cases. For example, most designers like to use curves for company logos because curves can scale in print to any size without looking jagged or aliased around its edges. As a 3D artist, you can easily import the curves of a logo design and give the logo some depth, dimension, and perhaps even some animation.
And speaking of animation, curves have quite a few handy uses there as well. For example, you can use a curve to define a path for an object to move along. You can also use curves in Blender's Graph Editor to display and control the changes to an object's properties over time. For modeling purposes, curves are great for pipes, wires, and ornate organic shapes. Figure 6-1 shows a park bench. Only curves were used to model its sides.
A set of curves used to define a shape in three dimensions is a surface. In some ways, curve surfaces are very similar to meshes that have the Subdivision Surface modifier applied because they both have a control cage defining the final shape that's created. The difference is that the curve surface has space and precision benefits that meshes don't have. Also, surfaces are a little bit easier to add textures to because you don't have to go through the additional step of unwrapping, or flattening the surface, so you can apply a two-dimensional texture to it. When you use a surface, you get that unwrapping for free because it's already done for you.
For these reasons — especially the precision — architects, industrial designers, and engineers prefer to work with surfaces. Someone designed just about everything in your house, including your water faucet, your coffee maker, your television, your car, and even the house itself. If an item was manufactured within the last 20 years, chances are good that it was designed on a computer and visualized with surfaces. Also, before the advent of subdivision surfaces, early characters for computer animations were modeled using curve surfaces because they were better at achieving organic shapes. Of course, if you're seen using curves to build a character these days, you may be viewed as a bit of masochist . . . especially if you try to do it in Blender.
In Blender, you can add curves by using Shift+ACurve and choosing the type of curve you'd like to use from the menu that appears. As shown in Figure 6-2, you can use two main kinds of curves: Bézier curves and NURBS curves. (The Path curve is a specific type of NURBS curve.)
You generally use Bézier curves more for text and logos. Bézier curves work in three dimensions by default, but you can get them to lock to a single 2D plane if you need to. You can tell that you're using a Bézier curve because if you tab into Edit mode to look at it, each control point has a pair of handles that you can use to give additional control over the curve's shape.
NURBS stands for Non-Uniform Relational B-Spline. The control points in NURBS curves don't have handles like Bézier curves do. By default, NURBS control points don't normally even touch the curve shape itself. Instead, the control points are weighted to influence the shape of the curve. Control points with higher weights attract the curve closer to them. Figure 6-3 shows the same curve shape made with Bézier curves and with NURBS curves.
Although curves can work in three dimensions and can even create three-dimensional shapes like the park bench in Figure 6-1, you can't arbitrarily join them to create a surface. If you want to create a surface, you need to actually navigate to the Surfaces menu (Shift+ASurface), as shown in Figure 6-4. Notice that NURBS Curve and NURBS Circle are also options on this menu. Be aware, however, that Blender treats these types of NURBS differently than the NURBS curves available in the Curve menu. In fact, Blender doesn't even allow you to perform a Join (Ctrl+J) between NURBS curves and NURBS surface curves. This limitation is a bit inconvenient, I know, but the situations where you'd actually want to do something like that are rare enough that you don't need to worry about it that much.
Surprisingly few specialized controls are specific to curves. Grab (G), rotate (R), and scale (S) work as expected, and, like with meshes, you can extrude a selected control point in Edit mode by either pressing E or Ctrl+left-clicking where you would like to extrude to. You can join separate curves in Edit mode by selecting the end control points on each curve and pressing F, like making a face with meshes.
When working with curves, the extrude operation (E) only works on the end points (the first and last control points of the curve). If you try to extrude a control point that isn't an end point, Blender just does the grab operation.
If the two control points you select are at the start and end of the same curve, pressing F closes the curve, or, in Blenderese, you're making the curve cyclic. You can also make a curve cyclic with any control point selected (not just the start or end) by pressing Alt+C while in Edit mode or going to CurveToggle Cyclic in the 3D View's header. Figure 6-5 shows a cyclic (closed) and non-cyclic (open) Bézier curve.
If you make a 2D curve cyclic, it creates a flat plane in the shape of your curve. And putting one cyclic curve within the borders of another curve actually creates a hole in that plane. However, this trick doesn't work with 3D curves because they aren't planar. In those situations, you want to use a surface.
Curves are initially set to work in three dimensions by default. Working in three dimensions gives you the ability to move curve control points freely in the X-, Y-, or Z-axes. You can optionally lock curve objects to work in any arbitrary two-dimensional plane you want. In this case, the control points on the 2D curve are constrained to its local XY plane.
To lock the curve to working only in two dimensions, go to Curve Properties (see Figure 6-6) and left-click the 2D button.
When you tab to Edit mode on a 3D curve, you may notice that the curve has little arrows spaced along it. These arrows are curve normals and indicate the direction of the curve. To adjust the size of these curve normals, change the Normal Size value in the Properties region of the 3D View (N) in the Curve Display panel. You can hide curve normals altogether by deactivating the Normals check box that is also in the Curve Display panel. In 2D curves, curve normals aren't displayed.
That said, all curves have direction, even cyclic ones. The direction of a curve isn't normally all that important unless you're using the curve as a path. In that situation, the direction of the curve is the direction that the animated object is traveling along the curve. You can switch the direction of the curve by choosing CurveSegmentsSwitch Direction from the 3D View's header, clicking the CurveSwitch Direction button in the Tools tab of the Tool Shelf, or pressing WSwitch Direction.
Figure 6-6 shows Curve Properties when a curve is selected.
The controls in Curve Properties are relevant to all curves, regardless of type. Some of the most important ones are in the Shape panel. You've already seen what the 2D and 3D buttons do. Below them are the Preview U and Render U values. These values define the resolution of the curve. Remember that Blender shows you only an approximation of the real curve. Increasing the resolution here makes the curve look more like the curve defined by the math, at the cost of more processor time. That's why you see two resolution values:
The controls in the Geometry panel pertain primarily to extruding and beveling your curve objects. The Offset value is the exception to this rule. It's pretty interesting because it allows you to offset the curve from the control points. The effect of the Offset value is most apparent (and helpful) on cyclic curves. Values less than 1 are inset from the control points, whereas values greater than 1 are outset.
The ability to inset or outset your curve with the Offset value is a quick way to put an outline on a logo or text because Blender doesn't have a stroke function for curves like what's available in Inkscape or Adobe Illustrator.
The Extrude value is probably the quickest way to give some depth to a curve, especially a 2D curve. However, you don't want to confuse the curve Extrude value with the extrude capability you get by pressing E. The Extrude value affects the entire curve in Object mode, rather than just the selected control points in Edit mode. On a cyclic 2D curve, the flat planar shape that gets created extends out in both directions of the local Z direction of the curve object, with the caps drawn on it. And you can even control whether Blender draws the front or back cap by using the Fill drop-down menu in the Shape panel. If you extrude a non-cyclic curve, you end up with something that looks more like a ribbon going along the shape of the curve. The ribbon look is also what happens when you increase the extrude value on a 3D curve. Figure 6-7 shows some of the different effects that you can get with an extruded curve.
Of course, one drawback to extruding a curve is that you get a really sharp edge at the corners of the extrusion. Depending on what you're creating, harsh edges tend to look “too perfect” and unnatural. Fortunately, Bevel can take care of that for you. To give an extruded curve more natural corners, simply increase the Depth value under the Bevel label. When you do, the bevel is really kind of simple: just a cut across the corner. You can make the bevel smoother by increasing the Resolution value. Like the Preview U and Render U values, this value increases the resolution of part of the curve. In this case, it's the resolution of the bevel. Increasing the Resolution value makes a smoother, more curved bevel. Beveling works on both cyclic and non-cyclic curves.
But say that you want something more ornate, kind of like the moulding or trim you'd find around the doorway on a house. In that case, you want to use a bevel object. Using a bevel object on your curve basically means that you're going to use the shape of one curve to define the bevel on another.
To get a better idea of how you can use bevel objects, use the following steps:
In Curve Properties, make sure that the circle is a 2D shape. Scale (S) up the circle nice and large so that you can see what's going on.
The circle doesn't have to be excessively thick, just thick enough to give it some form of depth.
Keep the curve non-cyclic for now.
If you didn't rename it (although you should have!), it's probably called something like Curve
or Curve.001
. After you select your bevel object, the corners of your Bézier circle are beveled with the shape defined by your Bézier curve. Now for fun, follow the next step.
Doing so actually removes the front and back planes from the extrusion. You're left with a curve shape that follows the main Bézier circle's path.
Slick, huh?
When you use a bevel object, you're essentially handing control of the curve's shape over to the bevel object. That being the case, after you use it, changing the values for Extrude, Bevel Depth, and Bevel Resolution has no effect on the curve for as long as you have the bevel object there.
Figure 6-8 shows the results of these steps.
If you're using a curve to model anything roughly cylindrical in shape such as a pipe or a tube, you actually don't need to use a bevel object curve at all. It's a bit of a hidden function, but you can get the same effect by just beveling the curve. I know that sounds odd (how do you bevel something that doesn't have any corners?), but trust me, it works. Use the following steps:
I usually get good results with a value around 3 or 4. Hooray! One less bevel object to hide!
You can also adjust this value from the Properties region of the 3D View (N). It's the Mean Radius value in the Transform panel.
In the preceding examples, I show that you can use Alt+S on individual control points to shrink or fatten the thickness of the extrusion (or bevel). However, perhaps you'd like to have more control along the length of the curve. This situation is where you'd use the Taper Object field. Like bevel objects, the taper objects use one curve to define the shape of another. In this case, you're controlling the thickness along the length of the curve, and it works in very much the same way: Create a separate curve that dictates the taper shape and then type the name of that curve in the Taper Object field of the curve you'd like to control. Figure 6-9 shows how a taper object can give you complete control of a curve's shape along its length.
I prefer to create my bevel object and taper object curves in the top view (Numpad 7) along the X-axis. This way, I have a good frame of reference for the curve's center line. That's important because bevel objects use the center line to define the front and back of a curve's extrusion. You can think of taper objects as a kind of profile that revolves around its local X-axis. Bringing your control points to the center line makes the tapered curve come to a point, whereas moving them away from the center line increases the thickness.
The datablock drop-down menus for Taper Object and Bevel Object can get really crowded in a complex scene. Scrolling through all of the curve objects can be tedious; even if you did a good job of using sensible naming, it can be annoying or time-consuming to type in that name or search for it. Fortunately, Blender offers two shortcuts that makes filling these fields (and any other fields like them) very convenient:
One other thing that you can control on curves is the tilt of the control points. In other programs, the tilt may be called the twist property. To get a good idea of what you can do with tilt, try the following steps:
You may also want to select (right-click) the handles and rotate (R) them so there's a cleaner arc.
Move your mouse cursor around the selection in a clockwise fashion and watch how the Tilt value in the 3D View's header changes.
If you increase the Extrude and Bevel Depth values, you should now have something that looks a bit like Figure 6-10.
The most defining aspect of Bézier curves are the handles on their control points. You can switch between the different types of handles by pressing V in the 3D View or choosing CurveControl PointsSet Handle Type. Handles on Bézier curves are always tangential to the curve and come in one of four varieties in Blender:
Figure 6-11 shows four curves with the same exact control points, but each with different types of handles. And, yes, you can mix handle types in a single curve. It's actually quite handy when you need a figure to be smooth in some parts and pointy in others.
NURBS are a different kind of beast in terms of controls. They also have control points, but NURBS curves are conspicuously without handles.
Blender treats a NURBS curve differently than a NURBS surface curve. With that caution in mind, though, whether you're dealing with a curve or a surface curve, the following things generally apply to all NURBS:
Figure 6-12 shows the influences that curve weights, knot types, and order can have on a NURBS curve.
If you're using a NURBS surface, you might notice in the Active Spline panel that you can independently set the knot, order, and resolution controls for a U or a V value. If you're dealing with just a curve, the U direction is all you need to worry about and, therefore, all that Blender shows you. However, a NURBS surface works in two directions: U and V. If you add a NURBS Surface (Shift+ASurfaceNURBS Surface), you can visually tell the difference between the U segments, which are reddish, and the V segments, which are yellow.
One really cool thing you can do easily with NURBS surfaces that's difficult to do with other types of surfaces is a process called lofting. (Other programs may call it skinning, but because that term actually means something else for rigging, I use lofting here.) Basically, lofting is the process of using a series of NURBS surface curves with the same number of control points as a series of profiles to define a shape. The cool thing about lofting in Blender is that after you have the profiles in place, the process is as simple as selecting all control points (A) and pressing (F). The classic use for lofting is modeling the hull of a boat, as you see in the following steps and in Figure 6-13:
The bottom of your boat forms.
You can add more control points using extrude (E or Ctrl+left-click) and move them around with grab (G). When modeling your cross-section, it would be a good idea to press Alt+C and make the curve cyclic.
Try to keep the cross-section as planar as possible. I like to work from an orthographic (Numpad 5) front view (Numpad 1).
Lofting requires that each cross-section has the exact same number of control points. If you add or remove control points from a cross-section, it doesn't work.
You've made a canoe!
A quick note on paths
You might be begrudging the fact that I glazed over adding a Path curve (Shift+ACurvePath). The reason is that you can turn just any curve into a path. By default, when you add a path, it's really a shortcut for adding a straight NURBS curve with one check box enabled in Curve Properties: Path Animation. By enabling this check box, Blender understands that this curve is a path that you can use to control the movement of an animated object. To make any NURBS or Bézier curve into a path, all you have to do is left-click this check box. I get more into the use of paths as animation controls in Chapter 10.
When compared to other tools that work with NURBS surfaces, Blender admittedly falls short in some functions. You can extrude surface endpoints, do lofting, and even spin surface curves (sometimes called lathing in other programs) to create bowl or cup shapes. However, that's about it. Blender currently doesn't have the functionality to do a ton of other cool things with NURBS surfaces, such as using one curve to trim the length of another or project the shape of one curve onto the surface of another.
However, there's hope. It's been slow coming, but Blender gets a little progress on the integration of better NURBS tools from time to time. However, that progress ultimately is excruciatingly slow. If you want to work exclusively with NURBS, your only real choices are to wait or use a different program.
Metaball objects are cool little 3D surfaces that have been part of computer graphics for a long time. Sometimes metaball objects are referred to as blobbies. The principle behind metaball objects is pretty simple: Imagine that you have two droplets of water, and you begin moving these two droplets closer and closer to each other. Eventually, the two droplets are going to merge and become a single, larger droplet. That process is basically how metaball objects work, except you have complete control over when the droplets merge, how much they merge, and you can re-separate them again if you'd like.
You can also do something that's more difficult in the real world: You can subtract one droplet from the other, rather than add them together into a merged object. They're a ton of fun to play with, and there are some pretty neat applications for them. Figure 6-14 shows two metaballs being merged.
Metaball objects are a bit like curves and NURBS in that their entire existence is defined by math. However, unlike NURBS or even meshes, you can't control the surface of a metaball object directly with control points or vertices. Instead, the shape of their surface is defined by a combination of the object's underlying structure (a point, a line, a plane, a sphere, or a cube) and its proximity to other metaball objects.
There are five metaball object primitives:
A cool thing about metaball objects is that while you're in Edit mode, you can change from one primitive to another on the fly. To do so, use the Active Element panel in Metaball Properties. Figure 6-15 shows each of the primitives along with the default settings for them in the Active Element panel.
The Active Element panel always displays the Stiffness value for the selected metaball object. This value controls the influence that the selected metaball object has on other metaball objects. The Stiffness value is indicated visually in the 3D View with a green ring around the metaball object's origin. You can adjust the Stiffness value here in the panel, or if you select the green ring (right-click), you can Scale (S) to adjust the Stiffness visually. By right-clicking the reddish, pinkish ring outside of that green ring, you can select the actual individual metaball object.
And depending on the type of metaball object primitive you're using, other values of X, Y, and Z may appear in the Active Element panel while you're in Edit mode. You can adjust these values here or in 3D View by using the SX, SY, and SZ hotkey sequences. At the bottom of the panel are buttons to either hide the selected metaball object or give it a negative influence, subtracting it from the positive, and therefore visible, metaball objects.
When you tab back out to Object mode, you can move your combined metaball object (a meta-metaball object?) as a single unit. Note, however, that even though you've grouped these metaball objects into a single Blender object, they don't live in a vacuum. If you have two complex Blender objects made up of metaballs, bringing the two of them together actually causes them to merge. Just keep that as something you may want to bear in mind and take advantage of in the future.
As a single Blender object, though, you can control a few more things using the Metaball panel, as shown in Figure 6-16. This panel is always available to metaball objects, whether in Object mode or Edit mode, and it sits at the top of Metaball Properties.
The first two values in the Metaball panel are resolution values:
Working at a larger View size in the 3D View helps keep your computer responsive while you work, whereas a finer Render value keeps things pretty on output.
The Threshold value is an overall control for how much influence the metaballs in a single Blender object have over each other. This value has a range from 0 to 5, but in order for a metaball object to be visible, its individual Stiffness value must be greater than the Threshold value.
At the bottom of the Metaball panel are four buttons that control how the metaball objects get updated and displayed in the 3D View:
So what in the world can you actually use metaball objects to make? I actually have two answers to this question: all sorts of things, and not much. The reason for this seemingly paradoxical answer is that you can use metaball objects to do quick, rough prototype models, and you can also use them with a particle system to generate simple fluid simulations. However, with the advent of advanced modeling tools like sculpting and subdivision surfaces, metaball objects don't get used as often for prototyping. And with more advanced fluid simulation and rendering technology, metaball objects are also used less for those applications as well. They have a tendency to use a lot of computer-processing power and don't often give good topology by themselves.
That said, even though metaball objects are used less for these purposes, that doesn't mean that they're never used. In fact, not too long ago, I used a set of metaballs with a glowing halo material to animate the life force being forcefully pulled out of a guy in a scene for a local filmmaker. I could probably have used a particle system or fluid simulator to do this effect, but using metaballs was actually faster to set up, and I had more direct control over where everything was placed on the screen. So don't count metaball objects out just yet. These little suckers still have some life left. Besides, they're still fun to play with!
Over the years, working with text in Blender has come a long, long way. The way you work with text in Blender has quite a few differences from what you might expect of word-processing software like LibreOffice or Microsoft Word. What you may not expect is that Blender's text objects share a few features in common with desktop publishing programs like Adobe InDesign or QuarkXPress.
Blender's text objects are really a specialized type of curve object. Nearly all the options I describe for curves also apply to text. (See the section “Using Curves and Surfaces,” earlier in this chapter.) For example, you can quickly bring text objects into the third dimension using the Extrude, Bevel, and even the Bevel Object and Taper Object fields. Figure 6-17 shows an example of the interesting things you can do with a single text object in Blender.
You add a text object in Blender the same way you add any other object. Press Shift+AText, and a text object appears at the location of your 3D cursor with the word “Text” as its default content.
To edit the text, you tab into Edit mode. After you're in Edit mode, the controls begin to feel a bit more like a word processor, although not exactly. For example, you can't use your mouse cursor to highlight text, but if you press Shift+ and Shift+, depending on where the text cursor is located, you can highlight text this way.
Shift+Ctrl+/ highlights whole words at a time. Backspace deletes text and pressing Enter gives you a new line.
In addition to the curve-like controls, formatting controls also are available in Text Properties, as shown in Figure 6-18.
In the Paragraph panel is a block of alignment buttons to help you align your text relative to the origin of the text object. You have the following options:
Both the Flush and the Justify options require the use of something called text boxes. The Left, Center, and Right align options all work relative to the location of the text object's origin. However, if you want to align your text on both the left and the right side, you need more than one reference point. Text boxes are a way of providing those reference points, but with a couple of additional benefits as well. Basically, text boxes are a rectangular shape that defines where the text in your text object lives. Text boxes are similar to the frames you might use in desktop publishing programs. They're also one of those things that you normally don't see in 3D software.
To work with text boxes, you use the block of values in the panel labeled Text Boxes. The X and Y fields under the Offset label determine where the top-left corner of the text box is located, whereas the Width and Height fields define its size. As you adjust these values while in Edit mode, you should see a dashed rectangle in the 3D View.
Now, the cool thing about text boxes is that you can actually define more than one and place them arbitrarily in your scene. Add a text box by left-clicking the Add Textbox button in the Text Boxes panel. If you have more than one text box defined, the text can overflow from one box into another. Using multiple text boxes is an excellent way to get very fine control over the placement of your text. You can even do newspaper-style multi-column text this way, as shown in Figure 6-19.
A particularly cool feature for text objects is Paste File (from Edit mode, TextPaste File). If you already have a bunch of text created and don't feel like retyping it in Blender, choose Paste File and use the File Browser to find the text file you want to load. After you do, the content of whatever is in that text file is added from the location of the text cursor. This is also a bit of a cheat you can use to get special characters (like π) in a text object; many of them are difficult to type on a standard US-layout keyboard.
If you're working with a lot of text, you may find that Blender doesn't perform as speedily as you'd like while editing. If you left-click the Fast Editing check box in the Shape panel, Blender uses just the outline to the text in the 3D View while in Edit mode. This adjustment gives Blender a bit of a performance boost so that you're not waiting for characters to show up seconds after you finish typing them.
The block of buttons in the Font panel control how the text appears in the selected text object:
You can adjust the appearance of your text using still more controls in the Paragraph panel:
If you're familiar with typography, you may notice two things right off the bat. First, the terms used here are not the standard typography terminology, and second, the values are not in your typical percentage, point, pica, or pixel sizes. These differences exist for two primary reasons. First, Blender is a 3D program intended for 3D artists, many of whom may not be familiar with typography terms and sizes. The second reason dovetails with the first one, but it's a bit more on the practical side. Blender text objects are 3D objects that can be just about any size in virtual 3D space. Sizes like points, pixels, and picas don't really mean anything in 3D because there's not a frame of reference, like the physical size of a printed piece of paper.
Another thing that's different about Blender's text objects is the way they handle fonts. If you're used to other programs, you may expect to see a dropdown menu that lists all the fonts installed on your computer with a nice preview of each. Unfortunately, Blender doesn't currently have that ability. Instead, what you need to do is left-click the Load button to the right of the Regular Font datablock in the Font panel of Text Properties. Blender then shows you a File Browser where you can track down the actual font file for the typeface that you want to use.
Here are the standard places you can find fonts on Windows, Mac, and Linux machines:
After you load a font, it's available for you to use in that specific .blend
file whenever you want it from the font drop-down list. You always have Blender's built-in font available as well.
Now you would think that after you have a font loaded, you should be good to go, right? Well, not quite. See, Blender's method of handling bold and italic in text is also kind of unique. You actually load a separate font file for each one (hence the four separate Font datablocks: Regular, Bold, Italic, and Bold & Italic). Typically, you use these datablocks to load the bold and italic versions of the font file you choose in the Regular datablock. However, that's not a hard-and-fast requirement. You can actually use an entirely different font altogether. While the ability to choose different fonts in the Bold and Italic datablocks is perhaps a mild abuse of the terms, that ability does provide a pretty handy workaround. Technically speaking, Blender doesn't allow you to arbitrarily change fonts in the middle of a text object. However, using the different font datablocks, you can get around that problem by making your Bold or Italic font the other fonts you want to use. To choose a font file for any style of font is pretty straightforward:
By default, the built-in font, Bfont, is chosen for all four datablocks.
As an example, say that you chose a new font for the Bold datablock. You can assign that font to characters in your text object with the following steps:
Figure 6-20 shows the results of using multiple fonts in a single text object
You may find that while you're typing, you need certain special characters like the copyright symbol or the upside-down question mark for sentences written in Spanish. For these situations, you have three options:
Another unique feature that Blender's text objects have is the ability to use any other Blender object as a font character. So if you want to use Suzanne the monkey every time the uppercase S character is used, you can actually do that. If you want to model letters with metaball objects and spell something with them, like in Figure 6-21, you can do that, using the Object Font field in the Font panel. Just use the following steps:
You can choose any name you like. I like to end my name with a dot (.) so I can differentiate my characters later. For example, you may use MetaLetter
. (ending in the period) in this case.
In this example, I'm using metaball objects, so I use Shift+AMetaballBall as my starting point and work from there.
In this case, if you modeled an uppercase W, you'd call it MetaLetter.W
. A lowercase W would be MetaLetter.w
.
Now you see why I use the dot (.) at the end of the family name in Step 1. It helps keep things organized.
And poof You've got metaletters!
One detail to note here is that your metaletters don't merge into each other like you might expect them to. This is a shortcoming within Blender. To my knowledge, a good workaround currently doesn't exist.
Another really powerful thing you can do with Blender's text objects is have the text flow along the length of a curve. This way, you can get text that arcs over a doorway or wraps around a bowl or just looks all kinds of funky. The key to this feature is the Text on Curve field in the Font panel. To see how this feature works, use the steps in the following example:
Feel free to populate it with whatever content you would like.
This curve is your control. You're using a Bézier curve here, but a NURBS curve works fine as well. Also, I like to make my curve with the same origin location as my text object. Granted, that's just my preference, but it works nicely for keeping everything easily manageable.
Blam! The text should now follow the arc of the curve. If you select (right-click) the curve and tab into Edit mode, any change you make to it updates your text object live.
Figure 6-22 shows 3D text along a curve.
You should keep your curve as a 2D curve. Because the text is technically a special type of 2D curve, trying to get it to deform along a 3D curve won't work. For text to follow a 3D curve, you're going to need to convert the text into a mesh. You can do that conversion explicitly, as described in the next section, or you can do it implicitly by giving the text object a Curve deform modifier. Modifiers work on curve objects, but internally those curves are converted to meshes. In simple cases, this may work just fine. More often than not, you'll want the control of explicitly doing the conversion yourself.
Of course, while Blender's text objects are pretty powerful, curves and meshes just do some things better. Fortunately, you don't have to model your text by using meshes and curves unless you really, really want to. Instead, you can convert your text object into a curve or a mesh by pressing Alt+C in Object mode and choosing Curve from Mesh/Text or Mesh from Curve/Meta/Surf/Mesh. If you're curious as to some specific cases why you'd want to do make this conversion, here are a few:
Using Alt+C also works on curve objects, surfaces, and metaball objects to convert them to meshes. Just be aware that most of these conversions are permanent. You can't go back on them without using the undo operator.