You are previewing Beginning Blender: Open Source 3D Modeling, Animation, and Game Design.
O'Reilly logo
Beginning Blender: Open Source 3D Modeling, Animation, and Game Design

Book Description

A new world of creative possibilities is opened by Blender, the most popular and powerful open source 3D and animation tool. Blender is not just free software; it is also an important professional tool used in animated shorts, television commercials and shows, as well as in production for films like Spiderman 2. Lance Flavell's Beginning Blender will give you the skills to start shaping new new worlds and virtual characters, and perhaps lead you down a new professional path.

Beginning Blender covers the latest Blender 2.5 release in depth. The book starts with with the creation of simple figures using basic modeling and sculpting. It then teaches how to bridge from modeling to animation, and from scene setup to texture creation and rendering, lighting, rigging and ultimately, full animation. You will create and mix your own movie scenes, and you will even learn the basics of games logic and how to deal with games physics.

Whether you are new to modeling, animation, and game design, or whether you are simply new to Blender, this book will show you everything you need to know to get your 3D projects underway.

Table of Contents

  1. Copyright
  2. About the Author
  3. About the Technical Reviewer
  4. Acknowlegements
  5. Introduction
    1. How This Book Is Organized
    2. A Note on Blender Versions
    3. Extras for This Book
  6. 1. History and Installation
    1. 1.1. Sample Blender Artwork
    2. 1.2. Blender History Timeline
    3. 1.3. About Open Source
      1. 1.3.1. Do I Owe Royalties If I Use Blender for Commercial Work or Otherwise?
      2. 1.3.2. Does the GPL Apply to All the Work I Do with Blender?
      3. 1.3.3. If I Download Blender for Free, Can I Give It Away? Can I Sell It?
      4. 1.3.4. What About Making Changes to Blender Source Code? Can I Market My Own Custom Version?
      5. 1.3.5. Technical Caveats
    4. 1.4. Installing Blender
      1. 1.4.1. Hardware
      2. 1.4.2. Operating Systems
        1. 1.4.2.1. Installation Example: Linux
        2. 1.4.2.2. Using the GUI
        3. 1.4.2.3. Using the Command Line
        4. 1.4.2.4. Installation Example: Windows
    5. 1.5. Summary
  7. 2. The Interface
    1. 2.1. The Blender Interface
      1. 2.1.1. Changing the View
        1. 2.1.1.1. The View Menu
        2. 2.1.1.2. Splitting the Screen
        3. 2.1.1.3. Custom Window Splitting
        4. 2.1.1.4. Maximizing Windows
      2. 2.1.2. Blender Window Conventions
      3. 2.1.3. Multiple-View Setup
      4. 2.1.4. Built-In Screen Layouts
    2. 2.2. Adding New Objects
      1. 2.2.1. The Cursor
      2. 2.2.2. Choosing a New Object
    3. 2.3. Moving Things Around
      1. 2.3.1. Moving Objects
      2. 2.3.2. Rotating Objects
        1. 2.3.2.1. Changing the Manipulator Arrows
        2. 2.3.2.2. The Difference Between Global and Local
      3. 2.3.3. Scaling Objects
      4. 2.3.4. Using Numbers
      5. 2.3.5. Layers
      6. 2.3.6. Undoing Things
      7. 2.3.7. Saving Your Work
    4. 2.4. Exercises
      1. 2.4.1. Exercise 1: Making a Robot
      2. 2.4.2. Exercise 2: The Ten-Cube Challenge
    5. 2.5. Useful Keyboard Shortcuts
    6. 2.6. Summary
  8. 3. Modeling
    1. 3.1. What Is a Mesh?
      1. 3.1.1. Origin Point
      2. 3.1.2. Vertices
      3. 3.1.3. Edges
      4. 3.1.4. Faces
    2. 3.2. Edit Mode
      1. 3.2.1. Some Mesh-Editing Tools
        1. 3.2.1.1. Extrude
        2. 3.2.1.2. Fill
        3. 3.2.1.3. Add Edgeloop
        4. 3.2.1.4. The Edges Menu
        5. 3.2.1.5. Edgeloop Deletion
        6. 3.2.1.6. Merging Vertices
        7. 3.2.1.7. Joining and Separating Mesh Objects
      2. 3.2.2. Background Images
      3. 3.2.3. Topology
    3. 3.3. Example Modeling Through Mesh Editing
      1. 3.3.1. The Mirror Modifier: Making a Mirror Cube
      2. 3.3.2. A Note on Modifiers
      3. 3.3.3. Smoothing a Mesh
        1. 3.3.3.1. The Subsurface Modifier
        2. 3.3.3.2. The Multiresolution Modifier
      4. 3.3.4. Box-Modeling a Man
    4. 3.4. Sculpt Mode
      1. 3.4.1. Getting into Position
      2. 3.4.2. Adding a Multiresolution Modifier
      3. 3.4.3. Starting to Sculpt
        1. 3.4.3.1. Types of Brushes
        2. 3.4.3.2. Changing Brush Size and Strength
      4. 3.4.4. Exercise 1: Monkey Sculpt
    5. 3.5. Using Sculpt and Mesh Modeling Together: Retopology
    6. 3.6. Summary
  9. 4. Lighting and Procedural Textures
    1. 4.1. Setting Up a Basic Scene
      1. 4.1.1. Adding a Model
      2. 4.1.2. Adding a Ground Plane
    2. 4.2. The Scene Camera
      1. 4.2.1. Aiming the Camera
        1. 4.2.1.1. Tracking to an Object
        2. 4.2.1.2. Tracking to an Empty Target
        3. 4.2.1.3. Fixing Up the Camera View
      2. 4.2.2. Lighting Techniques
        1. 4.2.2.1. Lamp Types
        2. 4.2.2.2. Lamp Settings
      3. 4.2.3. Using the Lights Together
        1. 4.2.3.1. Adding the Key Light
        2. 4.2.3.2. Tracking Lights to Objects for Easy Positioning
        3. 4.2.3.3. GLSL Mode
        4. 4.2.3.4. Adding Fill Lights
      4. 4.2.4. Changing the World
    3. 4.3. Procedural Materials and Textures
      1. 4.3.1. Using Procedural Textures
      2. 4.3.2. Using Multiple Materials in One Mesh
      3. 4.3.3. Exercise: Applying Textures
    4. 4.4. Summary
  10. 5. UV Mapping
    1. 5.1. Creating a UV Map
    2. 5.2. Texture Painting
      1. 5.2.1. Brushes
      2. 5.2.2. Saving the Texture
    3. 5.3. Exercise 1: Cube Painting
    4. 5.4. Projection Painting
      1. 5.4.1. Step 1: Unwrapping the Base Mesh
      2. 5.4.2. Step 2: Loading in a Reference Image
      3. 5.4.3. Step 3: Painting the Textures
      4. 5.4.4. Step 4: Save, Save, Save (Can I Say It Enough?)
    5. 5.5. Exercise 2: Painting a Boxlike Model
    6. 5.6. Normal Maps and Bump Maps
      1. 5.6.1. Making a Normal Map
        1. 5.6.1.1. Step 1: Preparing and Unwrapping Your Low-Poly Model
        2. 5.6.1.2. Step 2: Selecting Both Models
        3. 5.6.1.3. Step 3: Baking the Normal Map
        4. 5.6.1.4. Step 4: Applying the Normal Map to the Low-Poly Mesh
    7. 5.7. Summary
  11. 6. Curves and NURBS
    1. 6.1. Metaballs
      1. 6.1.1. How Meta Objects Work
      2. 6.1.2. Exercise 1: Mud Monster
      3. 6.1.3. Meta Object Properties
        1. 6.1.3.1. Standard Options
        2. 6.1.3.2. Edit Mode Options
    2. 6.2. Curves
      1. 6.2.1. Bezier (Curve and Circle)
      2. 6.2.2. NURBS (Curve and Circle)
      3. 6.2.3. Path
      4. 6.2.4. Modifying a Curve
      5. 6.2.5. Path Editing
        1. 6.2.5.1. Adding Points
        2. 6.2.5.2. Deleting Points
        3. 6.2.5.3. Controller Handle Types
        4. 6.2.5.4. Making a Circle
      6. 6.2.6. 2D and 3D Curves
        1. 6.2.6.1. Modeling with a 2D Curve
        2. 6.2.6.2. Modification and Bevel Parameters
        3. 6.2.6.3. Width
        4. 6.2.6.4. Extrude
        5. 6.2.6.5. Depth
        6. 6.2.6.6. Resolution
        7. 6.2.6.7. Modeling with a 3D Curve
        8. 6.2.6.8. Using Other Objects to Define a Custom Curve
      7. 6.2.7. Hooks
      8. 6.2.8. Exercise 2: Curve Bugs
    3. 6.3. Spin
      1. 6.3.1. Spin Properties
      2. 6.3.2. Calculating the Spin Angle
      3. 6.3.3. Using Spin
    4. 6.4. NURBS
      1. 6.4.1. Controlling the Points
      2. 6.4.2. NURBS Modeling Example: A Simple Shark
    5. 6.5. Summary
  12. 7. Basic Rigging and Animation
    1. 7.1. Keyframing with the Timeline
      1. 7.1.1. Automatic Keyframing
      2. 7.1.2. Exercise 1: Flying Monkey
    2. 7.2. The Dopesheet
    3. 7.3. Parenting
    4. 7.4. Graph Editor
    5. 7.5. Pivot Point: The Center of Rotation
      1. 7.5.1. Restricting the Movement
        1. 7.5.1.1. Transform Locks
        2. 7.5.1.2. Constraints
      2. 7.5.2. Exercise 2: Making a Robot
    6. 7.6. Basic Tracking: Eyes That Follow
    7. 7.7. Rigging with Bones
      1. 7.7.1. Types of Bones
      2. 7.7.2. Making Bones Work with a Mesh
      3. 7.7.3. Using Bone Envelopes
      4. 7.7.4. Weight Painting
      5. 7.7.5. Dividing the Two Techniques
    8. 7.8. Rigging a Simple Character
      1. 7.8.1. Applying the Bone Envelopes
      2. 7.8.2. Adding Weight Painting
      3. 7.8.3. B-Bone Body
      4. 7.8.4. Animating the Figure
    9. 7.9. Summary
  13. 8. Advanced Rigging
    1. 8.1. Forward Kinematics vs. Inverse Kinetics
      1. 8.1.1. Making an IK Arm
      2. 8.1.2. Setting a Custom Bone Shape
      3. 8.1.3. Exercise: Creating an IK Leg
      4. 8.1.4. Reverse Foot Rig
      5. 8.1.5. Single-Bone Finger Control
    2. 8.2. Blender 2.5 Rigs
      1. 8.2.1. Unofficial Mancandy 2.5
      2. 8.2.2. Ludwig
      3. 8.2.3. KM
    3. 8.3. Walk Cycles
      1. 8.3.1. Pass 1: Contact Positions
      2. 8.3.2. Pass 2: Passing Poses
      3. 8.3.3. Pass 3: Peeling the Feet
      4. 8.3.4. Pass 4: Adding Some Finesse
    4. 8.4. Shape Keys
      1. 8.4.1. Symmetrical Facial Expressions
        1. 8.4.1.1. Creating Symmetrical Models
        2. 8.4.1.2. Creating Asymmetrical Shape Keys
    5. 8.5. Lip Syncing
      1. 8.5.1. The Basis Shape Key
      2. 8.5.2. Smile and Frown
      3. 8.5.3. Wide and Pucker
      4. 8.5.4. Puff and Suck
      5. 8.5.5. Sneer_L and Sneer_R
      6. 8.5.6. Grimace_L and Grimace_R
      7. 8.5.7. Toplip_out and Toplip_in
      8. 8.5.8. Bottomlip_out and Bottomlip_in
      9. 8.5.9. Preparing the Sound for Lip Syncing
      10. 8.5.10. Moving the Lips
        1. 8.5.10.1. Phase 1: The Jaw Movement
        2. 8.5.10.2. Phase 2: Refining Mouth Shapes with Shape Keys
        3. 8.5.10.3. Phase 3: Enhancing with Expression
    6. 8.6. Summary
  14. 9. Making Movies
    1. 9.1. Before We Begin
      1. 9.1.1. Disabling Color Management
      2. 9.1.2. Rendering Formats
      3. 9.1.3. What Is Alpha?
    2. 9.2. The Compositing Node Editor
      1. 9.2.1. Setting Up for Instant Feedback
        1. 9.2.1.1. Method 1: The F11 Key
        2. 9.2.1.2. Method 2: Separate Render Window
        3. 9.2.1.3. Method 3: Background Images
      2. 9.2.2. Managing Node Clutter
      3. 9.2.3. Give It a Go
    3. 9.3. Lighting Adjustments
      1. 9.3.1. How Color-Mixing Nodes Work
      2. 9.3.2. Mixing Images Together
      3. 9.3.3. Depth of Field
        1. 9.3.3.1. Creating the Scene
      4. 9.3.4. Greenscreen Filtering
    4. 9.4. A Practical Example of Compositing
      1. 9.4.1. Before You Begin
      2. 9.4.2. Setting Up Your Windows
      3. 9.4.3. Setting Up the Background Movie Footage
      4. 9.4.4. Positioning the Objects in the Scene
      5. 9.4.5. Materials and Lighting
      6. 9.4.6. Greenscreening the Hand
    5. 9.5. The Video Sequence Editor
      1. 9.5.1.
        1. 9.5.1.1. A Few Things Worth Remembering
    6. 9.6. Crash Management and Rendering Speed
    7. 9.7. Summary
  15. 10. Particles and Physics
    1. 10.1. Making Particles
      1. 10.1.1. Particle Appearance
      2. 10.1.2. Particle Behavior
        1. 10.1.2.1. Emission Area
        2. 10.1.2.2. Velocity Area
      3. 10.1.3. External Forces
      4. 10.1.4. Exploding Rocket
    2. 10.2. Making Hair
      1. 10.2.1. Separating the Wig
      2. 10.2.2. Creating a New Material Ready for the Hair
      3. 10.2.3. Making the Hair Strands
      4. 10.2.4. Hiding the Wig, and Strand Render
      5. 10.2.5. Hair Texture: Creating Fine Ends
        1. 10.2.5.1. Strand Thickness Variation
        2. 10.2.5.2. Alpha Material Blend
        3. 10.2.5.3. Maximizing Control Through a Ramp
        4. 10.2.5.4. Shaping the Hair
        5. 10.2.5.5. Base Settings
        6. 10.2.5.6. Children
        7. 10.2.5.7. Freehand Editing
    3. 10.3. Fluid Dynamics
      1. 10.3.1. Exercise: Tsunami Simulation
        1. 10.3.1.1. Pouring Liquid from a Cup
    4. 10.4. Smoke
      1. 10.4.1. Rendering the Smoke
      2. 10.4.2. Improving the Smoke
    5. 10.5. Soft Body Physics
    6. 10.6. Cloth Dynamics
    7. 10.7. Summary
  16. 11. The Game Engine
    1. 11.1. Game Engine Physics
      1. 11.1.1. Exercise: Marble Slide
    2. 11.2. Creating Your Own Droid
      1. 11.2.1. Step 1: Making the Droid
      2. 11.2.2. Step 2: Setting Up the Logic Bricks
      3. 11.2.3. Step 3: Dealing with the Falls
        1. 11.2.3.1. Method 1: Creating a Logic Brick Safety Net
        2. 11.2.3.2. Method 2: Using Python
      4. 11.2.4. Step 4: Debugging the Movement
      5. 11.2.5. Step 5: Setting Up a Chase Cam
    3. 11.3. Silly Soccer Game
      1. 11.3.1. Step 1: Making the Playing Field
      2. 11.3.2. Step 2: Making the Ball
      3. 11.3.3. Step 3: Making the Players
      4. 11.3.4. Step 4: Making the Goals
      5. 11.3.5. Step 5: Setting Up the Score
      6. 11.3.6. Step 6: Setting Up the Camera
    4. 11.4. A Change of Scene
    5. 11.5. Shooting Things
      1. 11.5.1. Step 1: Creating the Bullet
      2. 11.5.2. Step 2: Setting Up a Bullet Emitter Object
      3. 11.5.3. Exercise: Shooting Spaceship
    6. 11.6. Summary
  17. 12. Going Further
    1. 12.1. Common Problems
      1. 12.1.1. Interface-Related Problems
        1. 12.1.1.1. I'm trying to select items, but they won't select, and this funny circle keeps snapping to my mouse clicks.
        2. 12.1.1.2. Can I select multiple items?
        3. 12.1.1.3. Can I edit multiple selected items?
        4. 12.1.1.4. What is the orange dot in the middle of my object?
        5. 12.1.1.5. For some reason, I can move my objects but not rotate or scale them. I haven't put on rotation constraints or anything like that.
        6. 12.1.1.6. Where did my window header go?
        7. 12.1.1.7. The button or menu I'm looking for is missing.
      2. 12.1.2. Viewport-Related Problems
        1. 12.1.2.1. My objects disappeared.
        2. 12.1.2.2. My model has gone all see-through.
        3. 12.1.2.3. How do I easily move the view around to look at what I want?
        4. 12.1.2.4. How do I line the camera up to where I want it?
      3. 12.1.3. File Management Problems
        1. 12.1.3.1. Where did my saved render actually go?
        2. 12.1.3.2. Blender never told me my work wasn't saved when I closed it! How can I get it back?
        3. 12.1.3.3. I've noticed there are .blend1 files in my project folders. What are they and can I delete them?
        4. 12.1.3.4. How else can I recover work after a crash?
        5. 12.1.3.5. Can I combine Blender files into one?
      4. 12.1.4. Surface Texture Problems
        1. 12.1.4.1. I have black lines/faces on my mesh.
        2. 12.1.4.2. My UV textures aren't showing in 3D view.
        3. 12.1.4.3. How do I get alpha (transparency) to work?
      5. 12.1.5. Physics-Related Problems
        1. 12.1.5.1. Why do my particles stop at frame 250?
        2. 12.1.5.2. Can I Make a Self-Running Application with Blender?
      6. 12.1.6. Migration Problems
        1. 12.1.6.1. What happened to the old spacebar menu?
        2. 12.1.6.2. How do I merge/split windows in the newer Blender versions?
        3. 12.1.6.3. Can I open an old file without it spoiling my window layout?
    2. 12.2. Resources
      1. 12.2.1. Render Farms
        1. 12.2.1.1. The BURP Project
        2. 12.2.1.2. Loki Render
      2. 12.2.2. Sound Editing
      3. 12.2.3. Paint Programs
        1. 12.2.3.1. GIMP
        2. 12.2.3.2. MyPaint
        3. 12.2.3.3. Alchemy
        4. 12.2.3.4. Vector Drawing
      4. 12.2.4. Camera Tracking
      5. 12.2.5. BlenderArt Magazine
      6. 12.2.6. Getting Blender
        1. 12.2.6.1. Cutting-Edge Releases
      7. 12.2.7. Community
        1. 12.2.7.1. BlenderNation
        2. 12.2.7.2. The BlenderArtists Forums
        3. 12.2.7.3. Noob to Pro
        4. 12.2.7.4. BlenderNewbies
        5. 12.2.7.5. Blender Guru
        6. 12.2.7.6. Blender Cookie
      8. 12.2.8. Free Blender File Resources
    3. 12.3. Summary
  18. A. Companies That Use Blender
  19. B. Blender and GPL Terms of Use
    1. B.1. In a few sentences, what is the GPL?
      1. B.1.1.
        1. B.1.1.1. In a few sentences, what is the GPL?
        2. B.1.1.2. Can I sell my Blender creations?
        3. B.1.1.3. So I can make games without having to worry about the GPL, right?
        4. B.1.1.4. So I own the copyright to all output?
        5. B.1.1.5. What about the splash screen and icons?
        6. B.1.1.6. What if I take screenshots of the Blender interface?
        7. B.1.1.7. How does the GPL and Blender benefit me?
        8. B.1.1.8. Can I distribute the official Blender.org releases under my own branding and name?
        9. B.1.1.9. Can I license .blend files myself?
        10. B.1.1.10. What about my Python scripts?
        11. B.1.1.11. Can I give Blender to my coworkers or employees?
        12. B.1.1.12. Can I change Blender and give it to my coworkers or employees?
        13. B.1.1.13. Can my organization use Blender internally without giving up our valuable changes to our competitors?
        14. B.1.1.14. Can I sell my own version of Blender?
        15. B.1.1.15. Can I sell plug-ins for Blender?
  20. C. GNU Public License
    1. C.1. GNU General Public License
      1. C.1.1. Preamble
      2. C.1.2. GNU General Public License
        1. C.1.2.1. Terms and Conditions for Copying, Distribution and Modification
        2. C.1.2.2. No Warranty
    2. C.2. How to Apply These Terms to Your New Programs
  21. D. OpenContent License
    1. D.1. OpenContent License (OPL)
      1. D.1.1. LICENSE
        1. D.1.1.1. Terms and Conditions for Copying, Distributing, and Modifying
      2. D.1.2. NO WARRANTY