SOFTIMAGE®|XSI™ Version 1.0 Modeling & Deformations a Modeling & Deformations was written by Grahame Fuller, edited by Edna Kruger and John Woolfrey, and formatted by Luc Langevin. © 1999–2000 Avid Technology, Inc. All rights reserved. SOFTIMAGE and Avid are registered trademarks and XSI is a trademark of Avid Technology, Inc. All other trademarks contained herein are the property of their respective owners. The SOFTIMAGE|XSI application uses JScript and Visual Basic Scripting Edition from Microsoft Corporation. Activision is a registered trademark of Activision, Inc. © 1997-1999 Activision, Inc. Battlezone is a trademark of Atari Interactive, Inc., a Hasbro company. All rights reserved. Licensed by Activision. This document is protected under copyright law. The contents of this document may not be copied or duplicated in any form, in whole or in part, without the express written permission of Avid Technology, Inc. This document is supplied as a guide for the Softimage product. Reasonable care has been taken in preparing the information it contains. However, this document may contain omissions, technical inaccuracies, or typographical errors. Avid Technology, Inc. does not accept responsibility of any kind for customers’ losses due to the use of this document. Product specifications are subject to change without notice. Printed in Canada. Document No. 0130-04615-01 0400 Contents Contents Roadmap . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .9 About This Guide . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .11 Where to Find Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .12 Document Conventions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .14 Section I • Modeling Chapter 1 Basic Modeling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .19 Types of Geometry . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .21 Building Blocks of Modeling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .23 Points . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .23 Centers. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .23 Geometry. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .24 Objects. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .24 Components . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .26 Clusters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .26 Normals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .26 Useful Tools for Modeling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .27 Transformations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .27 Geometric Approximation Parameters . . . . . . . . . . . . . . . . . . . . . . .27 Visibility, Display, and Selectability . . . . . . . . . . . . . . . . . . . . . . . . . .27 Hierarchies. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .28 Layers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .28 Duplicating and Instancing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .28 Grid Display and Snapping . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .28 Info Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .29 Symmetry. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .29 Operator Stack . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .30 Viewing and Modifying Operators . . . . . . . . . . . . . . . . . . . . . . . . . .30 Deleting Operators . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .30 Freezing the Operator Stack . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .30 Modeling Relations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .31 Breaking the Modeling Relation . . . . . . . . . . . . . . . . . . . . . . . . . . . .33 Working with Components . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .34 Clusters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .34 Transforming Components and Clusters . . . . . . . . . . . . . . . . . . . . . .34 Deforming Components . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .36 Modeling & Deformations • 3 Contents Chapter 2 Polygons & Polygon Meshes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37 Creating Polygon Meshes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40 Getting Primitive Polygon Meshes . . . . . . . . . . . . . . . . . . . . . . . . . . 40 Importing Polygon Meshes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40 Working with Polygon-Mesh Components . . . . . . . . . . . . . . . . . . . . . 41 Working with Points . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42 Working with Edges . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44 Working with Polygons . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45 Geometric Approximation on Polygon Meshes . . . . . . . . . . . . . . . . . . 48 Faceted and Smooth Polygons . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49 Displacement Mapping . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50 Chapter 3 Curves . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51 Types of Curves . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53 Curve Components and Attributes . . . . . . . . . . . . . . . . . . . . . . . . . . 54 Parameterization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56 Multiknots. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56 Creating Curves . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57 Primitive Curves . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57 Drawing Curves . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57 Creating Curves from Other Objects . . . . . . . . . . . . . . . . . . . . . . . . . 59 Modifying Curves . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65 Inverting Curves . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65 Opening and Closing Curves . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66 Shifting U on Curves. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66 Cleaning Curves . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66 Reparameterizing Curves . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67 Stitching Curves . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68 Working with Points . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69 Selecting Points . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69 Moving Points . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70 Using Proportional Modeling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70 Adding and Deleting Points . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71 Chapter 4 Surfaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73 Surface UV Parameterization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75 Components of Surfaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76 Multiknot Curves . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78 Creating Surfaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79 Primitive Surfaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79 Creating Surfaces from Curves . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80 Creating Surfaces from Other Surfaces . . . . . . . . . . . . . . . . . . . . . . . 87 Modifying Surfaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91 Inverting Surfaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91 Opening and Closing Surfaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92 Shifting UV on Surfaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92 4 • SOFTIMAGE|XSI Contents Swapping UV on Surfaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .93 Cleaning Surfaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .93 Reparameterizing Surfaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .93 Extending Surfaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .95 Stitching Surfaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .96 Working with Points . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .97 Selecting Points . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .97 Moving Points . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .98 Using Proportional Modeling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .98 Working with Knots and Knot Curves . . . . . . . . . . . . . . . . . . . . . . . .100 Selecting Knot Curves . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .100 Adding Knot Curves . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .100 Removing Knot Curves . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .101 Chapter 5 Surface Meshes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .103 Building Surface Meshes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .106 Considerations for Modeling Component Surfaces . . . . . . . . . . . . . .108 Junction Types. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .108 Multiknots . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .111 Snapping Boundaries . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .112 Snapping Boundaries with Different Numbers of Points . . . . . . . .112 Assembling Surface Meshes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .113 Applying the Continuity Manager . . . . . . . . . . . . . . . . . . . . . . . . . . .114 Working with Subsurfaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .115 Selecting Subsurfaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .115 Applying Local Materials and Textures . . . . . . . . . . . . . . . . . . . . . .115 Section II • Deformations Chapter 6 Introduction to Deformations . . . . . . . . . . . . . . . . . . . . . . . . . . . .119 Considerations for Deformations . . . . . . . . . . . . . . . . . . . . . . . . . . . .122 Modifying Deformations in the Operator Stack . . . . . . . . . . . . . . . .123 Modifying Deformation Parameters . . . . . . . . . . . . . . . . . . . . . . . .123 Muting Deformations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .124 Removing Deformations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .124 Freezing the Operator Stack . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .124 Weight Maps . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .125 Creating Weight Maps . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .125 Selecting Weight Maps. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .126 Painting Weights . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .126 Deforming with Weight Maps . . . . . . . . . . . . . . . . . . . . . . . . . . . . .127 Connecting Deformation Parameters to Weight Maps . . . . . . . . .128 Mixing Weight Maps . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .128 Setting Weight-Map Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . .129 Freezing Weight Maps . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .129 Modeling & Deformations • 5 Contents Chapter 7 Basic Deformations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 131 Applying Basic Deformations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 134 Chapter 8 Deforming by Cluster . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137 Cluster Basics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 140 Creating a Cluster . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 140 Selecting Clusters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 140 Viewing Clusters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141 Adding Components to Clusters . . . . . . . . . . . . . . . . . . . . . . . . . . . 142 Removing Components from Clusters. . . . . . . . . . . . . . . . . . . . . . . 143 Clusters’ Last Stand. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143 Animating Clusters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143 Deforming by Cluster Centers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 144 Chapter 9 Spatial Deformations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147 Deforming by Curves . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 150 Deforming by Surfaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 152 Deforming by Lattices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 153 Creating and Applying Lattices . . . . . . . . . . . . . . . . . . . . . . . . . . . . 154 Applying an Existing Lattice . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 154 Setting Lattice Deformation Properties . . . . . . . . . . . . . . . . . . . . . 155 Deforming by Spines . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157 Modifying Spine Weights . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159 C ha p t e r 10 Shrinkwrap . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 163 Sample Uses of Shrinkwrap . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 165 Types of Projection. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 165 Other Shrinkwrap Controls . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 165 Shrinkwrap and the Modeling Relation . . . . . . . . . . . . . . . . . . . . . 166 Shrinkwrapping toward an Inner Object . . . . . . . . . . . . . . . . . . . . . . 167 Shrinkwrapping toward the Target’s Center . . . . . . . . . . . . . . . . . . . 168 Shrinkwrapping along an Axis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 169 C ha p t e r 11 Waves . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 171 Wave Control Objects and Wave Operators . . . . . . . . . . . . . . . . . . 173 Making Waves . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 173 Wave Control Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 174 Creating Wave Control Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . 174 Setting the Wave Shape. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 174 Controlling Periodicity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 176 Controlling Speed. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 176 Controlling Falloff . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 176 Transforming the Wave Control Object . . . . . . . . . . . . . . . . . . . . . 176 6 • SOFTIMAGE|XSI Contents Wave Operators . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .177 Applying Wave Deformations . . . . . . . . . . . . . . . . . . . . . . . . . . . . .177 Editing Wave Operators . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .178 C ha p t e r 12 Quickstretch . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .179 Object Centers. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .181 Object Subdivisions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .182 Applying Quickstretch . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .183 Creating a Quickstretch Deformation . . . . . . . . . . . . . . . . . . . . . . .183 Viewing a Quickstretch Deformation . . . . . . . . . . . . . . . . . . . . . . .183 Motion Components . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .184 Quickstretch Deformation Types . . . . . . . . . . . . . . . . . . . . . . . . . . . . .185 Flexing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .185 Stretching . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .185 Yielding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .185 Editing Quickstretch. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .186 Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .187 Modeling & Deformations • 7 Contents 8 • SOFTIMAGE|XSI Roadmap Modeling & Deformations • 9 Roadmap 10 • SOFTIMAGE|XSI About This Guide About This Guide Modeling & Deformations describes how to build and sculpt the objects you will animate in SOFTIMAGE®|XSI™. • Chapter 1: Basic Modeling—covers some underlying principles of modeling as well as some common techniques. • Chapter 2: Polygons & Polygon Meshes—lists the available tools for manipulating polygon meshes. • Chapter 3: Curves—how to create curves for building surfaces, controlling deformations, and using as paths or trajectories. • Chapter 4: Surfaces—describes the many tools available for creating and modifying NURBS surface objects. • Chapter 5: Surface Meshes—explains how to assemble a single, seamless surface-mesh object out of multiple surfaces. • Chapter 6: Introduction to Deformations—covers some underlying principles common to most or all deformations, including how to use weight maps and paint weights. • Chapter 7: Basic Deformations—describes some simple deformations that can be applied to objects, including Twist, Bend, Push, and others. • Chapter 8: Deforming by Cluster—how to deform objects using groups of components, as well as how to assign a center to a cluster. • Chapter 9: Spatial Deformations—how to deform objects using curves, surfaces, and lattices. • Chapter 10: Shrinkwrap—how to project an object onto the surface of another object. • Chapter 11: Waves—how to apply a wave to an object to create an animated deformation. • Chapter 12: Quickstretch—how to make an object stretch, flex, or yield automatically as it moves. Modeling & Deformations • 11 Roadmap Where to Find Information The SOFTIMAGE|XSI package includes a comprehensive set of learning materials. Use this Roadmap to find the information you need to get up and running quickly and effectively. Start with the Setup Guide to install and license all components. Setup Online Help is also available as you go through the process. We recommend you choose Custom install so that you can perform the tutorials. Refer to Release Notes, an online listing of known problems and limitations for this version. Also includes workarounds and supplemental information. Access through the web at www.softimage.com > support. Follow the Guided Tour (available from the Online Library CD). This is a set of videoclips that provide overviews of features and tools. Work through Tutorials to learn the features in the context of basic productions. This is a full-color set of lessons showing you step-by-step how to perform typical tasks. You can install the scenes from the Software CD. (Choose Custom install when installing SOFTIMAGE|XSI). Then choose the Content option to install the Tutorials project. The Softimage Discussion Group You can join the worldwide network of Softimage users exchanging ideas and techniques by e-mail. To find out more, e-mail [email protected] Leave the Subject line empty and type the word “help” in the body of your mail message. 12 • SOFTIMAGE|XSI Where to Find Information The Global Index & Glossary is an index to all user guides and Tutorials; a glossary of terms; and a list of books, videos, and web sites related to the 3D animation industry. The user guides contain conceptual information and procedures on how to use specific tools. These comprise: • Fundamentals • Animating • Modeling & Deformations • Shaders, Lights & Cameras • Rendering The Online Library CD The Online Library contains the Guided Tour and all the SOFTIMAGE|XSI and some mental ray documentation in electronic form in both PDF and HTML formats. (See next page for how to use.) Online Help On-screen reference information on interface elements, commands, and parameters. There are two ways to access it: • Click the ? button in any property editor or tool view. • Choose Help > Contents and Index from the main-menu bar. Using SOFTIMAGE|3D with SOFTIMAGE|XSI provides tips and techniques about using the two software packages. Available from the Online Library CD and softimage.com > support only) HTML Scripting Reference An HTML-based reference help on the syntax for all scripting commands and arguments. It appears in your default HTML browser. Click on the icon (above) to open the script editor, then click Help > Scripting Reference or press F1. Pin up the SOFTIMAGE|XSI Interface Layout and the Quick Reference Card to help you become familiar with the interface and keyboard shortcuts. Modeling & Deformations • 13 Roadmap Using the Online Library The Online Library contains the Guided Tour and all the SOFTIMAGE|XSI and some mental ray documentation in electronic form in both PDF and HTML formats. For full-text searching and printing, we recommend PDF format. If you do not have Acrobat Reader installed, you can install it it free of charge from the Online Library CD: Follow the instructions in the readme file on the CD. To access the Online Library 1. Insert the Online Library CD in your disk drive. 2. Open one of the following documents: - mainmenu.pdf (PDF format) - mainmenu.htm (HTML format) Document Conventions The following are ways that information is displayed in the SOFTIMAGE|XSI documentation. Typography Conventions 14 • SOFTIMAGE|XSI Type style Usage Bold Menu commands, dialog-box and property-editor options, and file and directory names. Italics Definitions and emphasized words. Courier Text that you must type exactly as it appears. For example, if you are asked to type mkdir style, you would type these characters and the spacing between words exactly as they are appear in this book. > The arrow (>) indicates menu commands (and subcommands) in the order that you choose them: Menu name > Command name. For example, when you see File > Open, it means to open the File menu and then choose the Open command. Document Conventions Visual Identifiers These icons help identify certain types of information: Notes are used for information that is an aside to the text. Notes are reminders or contain important information. Tips are useful tidbits of information, workarounds, and shortcuts that you might find helpful in a particular situation. The 3D icon indicates information about differences in workflow or concepts between SOFTIMAGE|3D and SOFTIMAGE|XSI. You will find these very helpful when working with the two products. Warnings are used when you can lose or damage information, such as deleting data or not being able to easily undo an action. Warnings always appear before you are about to do such a task! Keyboard and Mouse Conventions SOFTIMAGE|XSI uses a three-button mouse for most operations. These are referred to as the left, middle, and right mouse buttons. In many cases, you will use the different buttons to perform different operations; always use the left mouse button unless otherwise stated. The two-button mouse is not supported in SOFTIMAGE|XSI. This table shows the terms relating to the mouse and keyboard. When this term is used... ...it means this Click Quickly press and release the left mouse button. Always use the left mouse button unless otherwise stated. Middle-click Quickly press and release the middle mouse button of a three-button mouse. Right-click Quickly press and release the right mouse button. Double-click Quickly click the left mouse button twice. Shift+click, Ctrl+click, Alt+click Hold down the Shift, Ctrl, or Alt key as you click a mouse button. Drag Hold down the left mouse button as you move the mouse. Alt+key, Ctrl+key, Shift+key Hold down the first key as you press the second key. For example, “Press Alt+Enter” means to hold down the Alt key as you press the Enter key. Modeling & Deformations • 15 Roadmap 16 • SOFTIMAGE|XSI Section I • Modeling Chapter 1 Basic Modeling Modeling & Deformations • 19 Chapter 1 • Basic Modeling 20 • SOFTIMAGE|XSI Modeling is the task of creating the objects that you will animate and render. You can create objects by modifying predefined primitives, drawing curves to build surfaces from, or importing from other software programs like SOFTIMAGE|3D. Types of Geometry SOFTIMAGE|XSI offers several types of renderable geometry: • Polygon meshes are quilts of polygons joined at their edges and vertices. • Surfaces are NURBS (non-uniform rational B-splines) patches formed by intersecting U and V isolines. • Surface meshes are quilts of NURBS subsurfaces acting as a single geometry. SOFTIMAGE|XSI gives you powerful tools to control the continuity at the seams between subsurfaces. In addition, there are several types of non-renderable geometry: • Implicits are basic shapes defined by a mathematical formula. By themselves, they are not renderable but can be used, for example, to define bounding boxes when setting weights for envelopes or as control objects for a character rig. They are also the starting point for primitive polygon meshes and surfaces, which are actually primitives that have been converted. Note that implicit objects are not exported to IGES format. • Curves are NURBS of linear or higher degree. They are not renderable because they have no thickness, but they have many uses. For example, they can be used as the basis for constructing surfaces. They can also serve as paths for objects to move along. Modeling & Deformations • 21 Chapter 1 • Basic Modeling • Nulls are simply points in space. They have many uses; for example, setting constraints, organizing objects in hierarchies, and so on. • Faces (including text) and metaballs are not supported. If you import these objects from SOFTIMAGE|3D, they are converted to polygon meshes. • Bézier, B-Spline, and Cardinal curves and patches are not supported. If you import these objects from SOFTIMAGE|3D, they are converted to NURBS curves and surfaces. • You cannot create text in SOFTIMAGE|XSI. 22 • SOFTIMAGE|XSI Building Blocks of Modeling Building Blocks of Modeling Modeling is the process of creating and assembling basic shapes into a representation of an object—you can group various objects together to work as a model. How a model is built can also determine how it will be animated. SOFTIMAGE|XSI is highly interactive, and it allows you to try different approaches to modeling. By experimenting with different types of building blocks, you can foresee problems you may encounter as a result of your design. Here are the terms you will see in the course of using this guide. Points Objects in 3D space (polygons, curves, and surfaces) are made of points, with each point being an XYZ location in space. Point coordinates provide the minimum information from which SOFTIMAGE|XSI can calculate the geometry for an element. When you model an object, you enter point coordinates to define the size and shape of the element. Points define and control the surface. You can display lines between points. Centers The 3D world has a center (called the origin) and each object in the 3D world has its own center. The center is the reference for defining the object’s shape, location, orientation, and size. Object center Modeling & Deformations • 23 Chapter 1 • Basic Modeling This means that, for all practical purposes, the transformations you perform on an object are really performed on the object’s center. The center is related to the coordinate system you choose. For example, the global center (called the origin) is the center of the 3D world in which you are drawing. When you create an object, its (local) center is located inside the object. However, you can move this center to another location for performing different modeling tasks. This means you can transform objects using one of several possible coordinate systems, with very different results. Geometry Geometry refers to the control points owned by an object, and these control points are usually seen with objects that can be rendered. For example, a cube’s geometry is composed of eight control points. By this definition, a curve has geometry since it is also composed of one or more control points, whereas nulls have no geometry. Objects Objects in SOFTIMAGE|XSI include polygon mesh, surface, curves, implicits, and nulls, as well as lights, cameras, and control objects. Predefined Primitives The simplest objects to use are predefined objects called primitive objects. These are basic 2D and 3D shapes such as circles, spheres, cubes, spirals, multi-sided figures, and so on. These primitives can be used “as is” or modified. Typically, you select a primitive form and then transform it and combine it with other modified pieces, which is much easier than drawing it point by point. Primitives can be nulls, polygon mesh objects, curves, surfaces, implicits, or control objects. Nulls A null has a center with no geometry, but it can still be transformed like any other object. It is very useful as a reference tool—for precision modeling, constraining animation, and building hierarchies of objects. It also provides you with an easy way to indicate a precise spot or orientation. 24 • SOFTIMAGE|XSI Building Blocks of Modeling Polygon Meshes Polygon mesh objects are made up of ... polygons! Polygons can be boxy, such as the traditional cube, or smooth, depending on the number and size of polygons used to create the object. No matter how you define the object for modeling purposes, all objects are tesselated into triangles during rendering. Curves Curves are defined by a set of control points. More precisely, they are a collection of curve segments attached by their ends, or knots, to make a curve. The look of the resulting curve varies depending on the manner of interpolation between the control points. Most of the time, you will draw a curve and model with the resulting profile. You can also select a few predefined curves such as arcs or circles. Curves come in various types, each with its characteristic behavior and possible modeling uses. Implicits Implicits are basic shapes defined by a mathematical formula. By themselves, they are not renderable but can be used, for example, to define bounding boxes when setting weights for envelopes or as control objects for a character rig. Note that implicit objects are not exported to IGES format. Surfaces A surface is an object made up of parametric surface curves, rather than geometric polygons. Surface objects in SOFTIMAGE|XSI are NURBS. Most operations that apply to curves apply equally to surfaces; however, surfaces can also have textures applied to them, which curves cannot. Modeling & Deformations • 25 Chapter 1 • Basic Modeling Control Objects Control objects are objects like waves, forces, and particle clouds that are not rendered themselves but can be used to affect other objects. Components Components are like the atoms that make up objects. You can modify an object by selecting and moving, adding, or deleting components such as points. The components of polygon meshes include points, edges, and polygons. The components of surfaces include points, knots, knot curves, and boundaries, and the components of surface meshes are subsurfaces. Clusters Clusters are groups of components on an object. You can select, transform, and deform clusters. Normals On polygon meshes and surfaces, the control points form closed areas. Normals are vectors perpendicular to these closed areas on the surface, and their purpose is to indicate the visible side of the object and its orientation to the camera. Normals are computed to optimize shading between surface triangles. Normals are represented by thin blue lines. To display them, make sure that Show > Normals is on in a viewport. When normals are oriented in the wrong direction, causing modeling or rendering problems, you can invert them using Modify > Surface > Inverse on the Model toolbar. If a surface object was generated from curves, you can also invert its normals by inverting one or more of its generator curves with Modify > Curve > Inverse. Normals should point toward the camera. Right 26 • SOFTIMAGE|XSI Wrong Useful Tools for Modeling Useful Tools for Modeling SOFTIMAGE|XSI provides several useful tools for modeling. Transformations As you model objects, you will be moving them around; that is, translating, rotating, and scaling them and their components. For more information about transformations in general, see Chapter 6: Working in 3D Space of the Fundamentals guide. Geometric Approximation Parameters The geometric-approximation parameters control how the geometries of objects are approximated—the number of steps drawn per curve segment, and so on. By default, a new scene defines the geometric-approximation parameters for the Scene Root. This property is branch-propagated to all objects in the scene. The Hardware Display parameters define the settings used for the OpenGL display in the viewports, while the Surface, Surface Trim, Polygon Mesh, and Displacement parameters define the settings used for rendering. For more information about geometry approximation, see Geometric Approximation on Polygon Meshes on page 48 as well as Setting an Object’s Surface Approximation in Chapter 3 of the Rendering guide. Steps = 3 Steps = 1 Geometric approximation: Setting the number of steps between knots on a surface Visibility, Display, and Selectability Each object has visibility, display, and selectability parameters that can be set independently of the camera settings for the viewports. • The visibility parameters determine whether the object appears in the viewports and when rendering. • The display parameters control how the object appears as you select and modify it. • The selectability parameter controls whether you can select or pick the object in a viewport. You can always select objects in the Explorer no matter what the value of its selectability parameter. Modeling & Deformations • 27 Chapter 1 • Basic Modeling These parameters are propagated through hierarchies; an object can either inherit its parent’s parameters or use its own local values. The global values for a scene are stored in the Scene_Root model. By changing these parameters, you can work faster by simplifying the tasks of viewing, selecting, and navigating around your scene. For more information, see Setting Object Visibility in Chapter 4, Setting Object Display in Chapter 4, and Defining Object Selectability in Chapter 5 of the Fundamentals guide. Hierarchies To organize the objects of a scene into a hierarchy, you parent one element to another—this lets you propagate properties down the hierarchy from the root element. You can select an entire hierarchy at once in tree mode by right-clicking on any member of the hierarchy, or select an individual branch by middle-clicking on the top node of the branch you want. For example, when you select an object in branch mode and translate it, its children are translated with it. You can create hierarchies using the Parent button, or by dragging and dropping nodes in the Explorer. For more information about hierarchies in general, see Hierarchies in Chapter 5 of the Fundamentals guide. Layers Layers are a useful tool for organizing your scene. You can divide your scene into layers and control the visibility, display, and selectability of all objects in a layer at once. For more information, see Layers in Chapter 5 of the Fundamentals guide. Duplicating and Instancing You can quickly build objects with similar parts by duplicating and instancing objects. A duplicate is simply a copy of another object, while an instance is a “linked” copy—you can modify all instances by modifying the original object. For more information, see Duplicating Objects in Chapter 5 of the Fundamentals guide. Grid Display and Snapping You can use the viewport grid as a guide for modeling. You cannot snap to points or other geometry. Displaying the Grid Options The grid options are on the Visibility Settings property editor. To display them, 1. Do one of the following: - To modify the setting for a particular viewport, choose Visibility Options from the Show menu of that viewport. or - To modify the settings for all viewports, choose View > Visibility Options from the main-menu bar. 2. Click Grid. 28 • SOFTIMAGE|XSI Useful Tools for Modeling Showing the Grid Several settings control how the grid is displayed: • You can show and hide the grid with the Show > Grid option in a viewport. Alternatively, you can use the Grid option in the Show box on the Grid page of the Visibility Settings property editor. • To set the size and orientation of the grid, use the options in the Display Setup box on the Grid page of the Visibility Settings property editor. Grid Snapping When adding or moving points and objects, you can align them to the grid by activating snapping. The grid for snapping can be set independently of the display grid; the options are located in the Snap Setup box on the Grid page of the Visibility Settings property editor: • The Plane options specify the plane in which snapping occurs. • Enable U and Enable V activate snapping along the two axes independently. The exact meaning of U and V depends on which plane is selected. • U Step and V Step specify the granularity of the snapping plane. Alternatively, you can temporarily activate snapping in both U and V while moving points and objects by holding down modifier keys as you drag the mouse: • Shift snaps objects to the grid. • Ctrl snaps objects in integral offsets of the Step values. These temporary modifier keys use the U and V Step parameters set in the Snap Setup box on the Grid page of the Visibility Settings property editor. For rotations, Ctrl snaps in increments of 11.25 degrees. Shift has no effect with rotations. Info Selection Select an object and choose Edit > Info Selection or press Shift+Enter to get useful information about an object: name, type of geometry, number of components, number of triangles when tesselated for rendering, and so on. Symmetry To make a symmetrical copy of an object or hierarchy, duplicate it then scale it by –1 in the axis of symmetry. You can also set the scaling in the Duplicate Options property editor. For more information about duplicating in general, see Duplicating Objects in Chapter 5 of the Fundamentals guide. Note that this method does not work with skeletons and envelopes. Modeling & Deformations • 29 Chapter 1 • Basic Modeling Operator Stack The operator stack is fundamental to modeling in SOFTIMAGE|XSI. It is the history of all the operators (such as deformation and topology modifications) that have been applied to an object. At any time you can go back and modify or delete them. Viewing and Modifying Operators You can view the operator stack of an object in the Explorer or use the Select or Property button on the Selection panel to see it. The operator stack is under the first subnode of an object in the explorer, typically named Polygon Mesh, NURBS Surface Mesh, NURBS Curve List, Null, and so on. For example, suppose you get a primitive polygon mesh grid, apply a twist, then randomize the surface. The operator stack shows the operators that have been applied. You can open the property page of any operator by selecting it and pressing Enter, or by clicking on its icon. Any changes you make are passed up through the history and reflected in the object. You can: • Change the size of the grid. • Change the number of subdivisions. • Change the angle, offset, and axis of the twist in Twist Op. • Change the random displacement parameters in Randomize Op. Deleting Operators To delete an operator in the stack, simply select it and press the Delete key. Freezing the Operator Stack When you are satisfied with an object, you can freeze its operator stack. This removes the history—you can no longer go back and change values. However, the object requires less memory and is quicker to update. To freeze an object’s operator stack, select the object and choose Edit > Freeze Operator Stack or click the Freeze button on the Edit panel. • You can only freeze the entire operator stack; you cannot freeze only the selected operators. • Freezing an object node freezes the entire object, including texture projections. To freeze just the generator and deformation nodes, select the operator stack node before freezing. 30 • SOFTIMAGE|XSI Modeling Relations Modeling Relations When you create objects from other objects, a modeling relation is established. For example, if you create a surface by extruding one curve along another curve, the resulting surface is linked to its generator curves. If you modify the curves, the surface updates automatically. The modeling relation is sometimes called construction history. Modeling Relation The road was created by extruding a crosssection along a guide. When the original guide was deformed into a loop, the road was updated automatically. You can modify the generated object in any way you like; for example, by moving points or applying a deformation. When you change the generators, the object is updated and your modifications are preserved—the object does not “snap” back to its generated shape the way it does in SOFTIMAGE|3D. Modeling & Deformations • 31 Chapter 1 • Basic Modeling 1 The original curve 2 Surface created by revolution 3 Revolved surface modified by moving points 3 MoveComponent operators are added to the stack after the Revolution. 4 The original curve is modified. 32 • SOFTIMAGE|XSI 4 The revolved surface automatically updates to reflect the new curve shape. The modifications you made to the surface after revolving are preserved. Modeling Relations Breaking the Modeling Relation To break the modeling relation, freeze the generated object’s operator stack as described on page 30. If you delete the generator (input) objects without freezing the operator stack of the generated (output) object first, the output object is removed from the scene. See Freezing the Operator Stack on page 30. If this happens accidentally, press Ctrl+z to undo. Modeling & Deformations • 33 Chapter 1 • Basic Modeling Working with Components You can work with components of objects like points, edges, polygons, and subsurfaces by selecting, transforming, and deforming them. You can select various component types using the selection filters in the Selection panel as well as with supra keys. These methods are described in the appropriate chapter: Chapter 2: Polygons & Polygon Meshes on page 37, Chapter 3: Curves on page 51, Chapter 4: Surfaces on page 73, and Chapter 5: Surface Meshes on page 103. Clusters Clusters are groups of components. To create a cluster, select components then click the Cluster button on the Edit panel. For more information about clusters in general, see Chapter 8: Deforming by Cluster on page 137. Transforming Components and Clusters You can transform selected components and clusters using the tools on the Transform panel. For more information about transformations in general, see Transforming Objects in Chapter 6 of the Fundamentals guide. To scale components and clusters To scale by dragging the mouse, click the Scale (s) button. Alternatively, quickly press and release the x key to activate the Scale tool in sticky mode, or press and hold the x key while dragging to scale in supra mode. Use the left, middle, and right mouse buttons to scale in different axes. Click on the x, y, and z icons to enable scaling on an individual axis, or Ctrl+click to toggle-select axes. Press and hold the Shift key down while dragging to scale uniformly in all selected axes. To rotate components and clusters To rotate by dragging the mouse, click the Rotate (r) button. Alternatively, quickly press and release the c key to activate the Rotate tool in sticky mode, or press and hold the c key while dragging to rotate in supra mode. Use the left, middle, and right mouse buttons to rotate in different axes. Click on the x, y, and z icons to enable rotation on an individual axis, or Ctrl+click to toggle-select axes. To translate components and clusters To translate by dragging the mouse, click the translate (t) button. Alternatively, quickly press and release the v key to activate the Translate tool in sticky mode, or press and hold the v key while dragging to translate in supra mode. Use the left, middle, and right mouse buttons to translate in different axes. Click on the x, y, and z icons to enable translation on an individual axis, or Ctrl+click to toggle-select axes. You can also translate individual points with the Move Point tool. 34 • SOFTIMAGE|XSI Working with Components Transformation Modes The buttons below the SRT boxes on the Transform panel control the reference axes for transformations. • Global transformations are performed along the scene’s global axes. • Local transformations are performed along the components’ or clusters’ own reference axes. To display these axes, see Cluster Reference Frames on page 35. • View transformations are performed with respect to the viewing plane of the viewport. • Object transformations are performed in the local coordinate system of the parent object. To display these axes, make sure that Show > Centers is on in a viewport. Each transformation tool has its own “memory.” When you activate a transformation tool, the last mode is automatically selected. Cluster Reference Frames The cluster reference frame is the coordinate system that is used when transforming components or clusters in Local mode. It acts like a center for the selected clusters or components and defines the reference axes when you transform clusters in Local mode. When multiple components are selected, the average reference frame is used. Selected polygons always share a reference frame, even if they are not adjacent. To display cluster reference frames 1. Do one of the following: Cluster reference frame of selected polygon - To display cluster reference frames in a single viewport, choose Show > Visibility Options in that viewport’s menu bar. or - To display cluster reference frames in all viewports, choose View > Visibility Options (All Views) from the main-menu bar. 2. On the Attributes page of the Visibility Settings property editor, set the following: - Cluster Reference Frame—displays an axis indicator for the selected clusters or components. - Cluster Reference Frame Info—displays the XYZ position of the reference frame. Modeling & Deformations • 35 Chapter 1 • Basic Modeling Cluster Centers If you want more control over the center used for transforming components, create a cluster and apply a cluster center deformation. For more information, see Deforming by Cluster Centers on page 144. Deforming Components 36 • SOFTIMAGE|XSI You can apply deformations to selected components and clusters in the same way that you apply them to objects. See Chapter 6: Introduction to Deformations on page 119 for general information about deformations, and see other chapters in this guide for information about specific deformations. Chapter 2 Polygons & Polygon Meshes Modeling & Deformations • 37 Chapter 2 • Polygons & Polygon Meshes 38 • SOFTIMAGE|XSI A polygon is a closed 2D shape formed by straight line segments that meet at points called vertices. There are exactly the same number of vertex points as line segments, and the line segments do not intersect anywhere else. The simplest polygon is a triangle. Approximating a smooth object surface from straight lines depends on the number of polygons defined and also on the treatment of the surface normals during the rendering process. Each polygon on the object may or may not be planar (flat). As you move vertices around in 3D space, you can make polygons non-planar. However, when objects are automatically triangulated for rendering, non-planar polygons are divided into triangles. You can do most of your polygon modeling in SOFTIMAGE|3D and import your objects into SOFTIMAGE|XSI for animation, texturing, and rendering. Modeling & Deformations • 39 Chapter 2 • Polygons & Polygon Meshes Creating Polygon Meshes There are two ways of creating polygon meshes: • Choose a predefined item from the Get > Primitive > Polygon Mesh menu on the Model toolbar. or • Import a polygon mesh object from SOFTIMAGE|3D. Getting Primitive Polygon Meshes To get one of the primitive polygon meshes: 1. Choose Get > Primitive > Polygon Mesh, then choose a shape. The corresponding property editor opens. 2. Set the parameters as desired: - The shape-specific page contains the basic characteristics of the shape. Each shape has different characteristics: for example, a sphere has only a radius but a cylinder has both a radius and a height. - The Geometry page controls how the implicit shape is subdivided when converted into polygons. More subdivisions yield more points and polygons, resulting in greater detail but heavier geometry. Importing Polygon Meshes 40 • SOFTIMAGE|XSI You can import models and scenes with polygon objects from SOFTIMAGE|3D. For more information see Importing Scenes in Chapter 3 of the Fundamentals guide. Working with Polygon-Mesh Components Working with Polygon-Mesh Components Polygon meshes are composed of several different types of component. Using the filters on the Selection panel, you can select and work with each component type: • Points are the vertices of the polygons. Each point can be shared by many adjacent polygons in the same mesh. • Edges are the straight line segments joining two adjacent points. Edges can be shared by at most two polygons. Edges that are not shared represent the boundary of the polygon-mesh object. • Polygons are the closed flat shapes that make up the “tiles” of the mesh. Polygon Edge Point Samples and polynodes will be available in a future release. Modeling & Deformations • 41 Chapter 2 • Polygons & Polygon Meshes Working with Points You can modify polygon-mesh objects by moving points, as well as by selecting points or point clusters then transforming them as described in Transforming Components and Clusters on page 34. You can also apply deformations to selected points and clusters in the same way that you apply them to objects; see Chapter 6: Introduction to Deformations on page 119 for general information about deformations, and other chapters for information about specific deformations. You cannot add or delete points on polygon-mesh objects. Selecting Points You can select (or tag) points, add and remove points from the selection, and select point clusters using the selection filters in the main command area or shortcut keys. For more information about selecting in general, see Selecting and Deselecting Objects in Chapter 5 of the Fundamentals guide. To select points Choose the Point selection filter on the Selection panel and drag across points in a viewport. Alternatively, quickly press and release the t key to activate point selection in sticky mode, or press and hold the t key while dragging to select points in supra mode. Selected points are displayed in red. To extend the selection If both the SI3D Selection Model and Extended Component Selection options are off in the Selection menu, use modifier keys to add or remove points from the selection: • Shift+drag to select additional points. • Ctrl+drag to toggle-select points. • Ctrl+Shift+drag to deselect points. If either SI3D Selection Model or Extended Component Selection are on, use the different mouse buttons to add or remove points from the selection: • Left-click to select additional points. • Middle-click to toggle-select points. • Right-click to deselect points. 42 • SOFTIMAGE|XSI Working with Polygon-Mesh Components To select clusters Activate point selection using either the Point selection filter button or the t key, then choose the Group/Cluster (+) selection filter in the Selection panel and drag to select any point in the cluster. Alternatively, if both the SI3D Selection Model and Extended Component Selection options are off in the Selection menu, activate point selection and middle-click to select any point in the cluster. Selected clusters are displayed in white. Using the Move Point Tool As an alternative to selecting and translating points, you can move points individually using the Move Point tool: 1. Select a polygon-mesh object. 2. Do one of the following: - Choose Modify > Component > Move Point tool from the Model toolbar. or - Quickly press and release the m key to activate the Move Point tool in sticky mode. or - Press and hold the m key move points in supra mode. 3. In a viewport, position the mouse pointer over a point on the object, then click and drag to move it. The Move Point tool has its own transformation mode “memory.” See Transformation Modes on page 35. Using Proportional Modeling When you move or transform points and point clusters, you can use proportional modeling. When this option is on, neighboring points are moved as well, with a falloff that depends on distance. After you have moved points, you can adjust the proportional settings. To activate proportional modeling On the Model toolbar, choose Modify > Component > Proportional. When this option is on, neighboring points are affected any time you move or transform points and point clusters. To deactivate proportional modeling, choose Modify > Component > Proportional to remove the check mark. Modeling & Deformations • 43 Chapter 2 • Polygons & Polygon Meshes To adjust proportional settings 1. Select the object. 2. Do one of the following: - Choose Edit > Modeling Properties from the Edit panel and click the Proportional tab. There is one Proportional property page for each MovePoint operation with proportional on. or - Choose Property on the Selection panel, expand a MovePoint node, and click the Proportional icon. 3. Adjust the parameters. Click the help icon for details. Proportional modeling off Working with Edges Proportional modeling using default profile Proportional modeling using modified profile You can select edges and edge clusters, then transform them as described in Transforming Components and Clusters on page 34. You can also apply deformations to selected edges and clusters in the same way that you apply them to objects; see Chapter 6: Introduction to Deformations on page 119 for general information about deformations, and other chapters for information about specific deformations. You cannot add or delete edges on polygon-mesh objects. Selecting Edges You can select (or tag) edges, add and remove edges from the selection, and select edge clusters using the selection filters in the Selection panel or shortcut keys. For more information about selecting in general, see Selecting and Deselecting Objects in Chapter 5 of the Fundamentals guide. To select edges Choose the Edge selection filter on the Selection panel in or press F10, then drag across edges in a viewport. Selected edges are displayed in red. 44 • SOFTIMAGE|XSI Working with Polygon-Mesh Components To extend the selection If both the SI3D Selection Model and Extended Component Selection options are off in the Selection menu in the Selection panel, use modifier keys to add or remove edges from the selection: • Shift+drag to select additional edges. • Ctrl+drag to toggle-select edges. • Ctrl+Shift+drag to deselect edges. If either SI3D Selection Model or Extended Component Selection are on, use the different mouse buttons to add or remove edges from the selection: • Left-click to select additional edges. • Middle-click to toggle-select edges. • Right-click to deselect edges. To select clusters Activate edge selection using either the Edge selection filter button in or the F10 key, then choose the Group/Cluster (+) selection filter in the Selection panel and drag to select any edge in the cluster. Alternatively, if both the SI3D Selection Model and Extended Component Selection options are off in the Selection menu, activate edge selection and middle-click to select any edge in the cluster. Selected clusters are displayed in white. Working with Polygons You can select polygons and polygon clusters, then transform them as described in Transforming Components and Clusters on page 34. You can also apply deformations to selected polygons and clusters in the same way that you apply them to objects; see Chapter 6: Introduction to Deformations on page 119 for general information about deformations, and see other chapters for information about specific deformations. In addition, you can apply local materials and textures to polygons. • You cannot add or delete polygons on polygon-mesh objects. • You cannot invert polygons. • You cannot duplicate or extrude polygons. Modeling & Deformations • 45 Chapter 2 • Polygons & Polygon Meshes Selecting Polygons You can select (or tag) polygons, add and remove points from the selection, and select polygon clusters using the selection filters in the Selection panel or shortcut keys. The technique for selecting polygons depends on which selection tool you are using: • With the Rectangle, Lasso, and Paint Selection tools, you must include all of a polygon’s vertex points to select it. • With the Free Form Selection tool, you need only draw anywhere in the interior of a polygon to select it. Like the Lasso tool, this tool works only in wireframe views. For more information about selecting in general, see Selecting and Deselecting Objects in Chapter 5 of the Fundamentals guide. Selected polygons always share a reference frame, even if they are not adjacent. To select polygons Choose the Polygon selection filter on the Selection panel then drag across polygons in a viewport. Alternatively, quickly press and release the y key to activate polygon selection in sticky mode, or press and hold the y key while dragging to select polygons in supra mode. Selected polygons are displayed in pink. To extend the selection If both the SI3D Selection Model and Extended Component Selection options are off in the Selection menu, use modifier keys to add or remove polygons from the selection: • Shift+drag to select additional polygons. • Ctrl+ctrl+drag to toggle-select polygons. • Ctrl+Shift+drag to deselect polygons. If either SI3D Selection Model or Extended Component Selection are on, use the different mouse buttons to add or remove polygons from the selection: • Left-click to select additional polygons. • Middle-click to toggle-select polygons. • Right-click to deselect polygons. 46 • SOFTIMAGE|XSI Working with Polygon-Mesh Components To select clusters Activate polygon selection using either the Polygon selection filter button or the y key, then choose the Group/Cluster (+) selection filter in the Selection panel and drag to select any point in the cluster. Alternatively, if both the SI3D Selection Model and Extended Component Selection options are off in the Selection menu, activate polygon selection and middle-click to select any polygon in the cluster. Selected clusters are displayed in gray. Applying Local Materials and Textures You can apply materials and textures locally to selected polygons on a polygonmesh object. This allows you to put different materials and textures on different polygons. For more information, see Applying a Local Material and Applying a Local Texture in Chapter 3 of the Shaders, Lights & Cameras guide. Modeling & Deformations • 47 Chapter 2 • Polygons & Polygon Meshes Geometric Approximation on Polygon Meshes You can control how polygon meshes are rendered by setting the geometry approximation parameters. By default, there is one geometric approximation property that is shared by all objects in the scene. You can modify the shared property, or add a local property on the selected objects. In addition, you can apply geometric approximation properties to groups and layers, as well as use them in overrides. In the Geometry Approximation property editor, only the options on the Polygon Mesh and Displacement pages apply to polygon mesh objects. To display shared geometric approximation properties 1. Select an object with a shared geometric approximation property. 2. Do one of the following: - Choose Edit > Viewing Properties then click on the Geometry Approximation tab. This tab is italicized if the property is shared. or - Click Property on the Selection panel, then click the Geometry Approximation icon. When you are asked whether you want to create a local copy, click No. To create a local geometric approximation property 1. Select an element. 2. Do one of the following: - Choose Get > Property > Geometry Approximation from a toolbar. or - Click Property on the Selection panel, then click the Geometry Approximation icon. When you are asked whether you want to create a local copy, click Yes. 48 • SOFTIMAGE|XSI Geometric Approximation on Polygon Meshes Faceted and Smooth Polygons The options on the Polygon Mesh page of the Geometry Approximation property editor control whether the objects are faceted or smooth at the edges. Faceted polygons are appropriate for geometric shapes like dice. Faceted Smooth Smooth polygons are appropriate for organic shapes like faces. By default, the illusion of smoothness is created by averaging the normals of adjacent polygons if the angle between them (dihedral angle) is less than 60 degrees. At greater angles, no averaging occurs and the discontinuity results in a faceted edge. To change the threshold angle for faceted edges, make sure that Automatic Discontinuity is on and adjust the Discontinuity Angle. For a completely faceted object, set it to 0. For a completely smooth object, turn off Automatic Discontinuity. For a description of the other parameters, click for ? for Online Help. Modeling & Deformations • 49 Chapter 2 • Polygons & Polygon Meshes Setting an Automatic Discontinuity of 60 degrees smooths the edge on the left (< 60°) but not the edge on the right (> 60°). There is no option to keep exactly computed normals. Displacement Mapping The options on the Displacement page of the Geometry Approximation property editor are used when you apply displacement maps. For more information, see Creating a Displacement Map in Chapter 4 of the Shaders, Lights & Cameras guide. If you have set surface approximation options for a polygon-mesh object in SOFTIMAGE|3D, they are translated into the corresponding options on the Displacement page when you import the object into SOFTIMAGE|XSI. 50 • SOFTIMAGE|XSI Chapter 3 Curves Modeling & Deformations • 51 Chapter 3 • Curves 52 • SOFTIMAGE|XSI In SOFTIMAGE|XSI, curves are linear (degree 1) or cubic (degree 3) NURBS (non-uniform rational B-splines). NURBS are a class of curves that are easily manipulated by computers, allowing for a great deal of flexibility in modeling. Curves cannot be rendered because they have length but no width. Instead, you can use curves to build surfaces as described in Chapter 4: Surfaces on page 73. You can also use curves to control deformations as described in Deforming by Curves on page 150 and Deforming by Spines on page 157. In addition, you can use curves as paths and trajectories for animation as described in Chapter 3: Animating along Paths and Trajectories in the Animating guide. Types of Curves SOFTIMAGE|XSI lets you create two types of NURBS curve: • Linear—straight line segments joined at the control points. Linear curves have positional continuity (also known as C0, degree 0, or zero-order continuity); this means that although the curve is connected, it is not necessarily smooth. At least two control points are required to define a linear curve. • Cubic—smooth curves that are interpolated between the control points. Cubic curves have curvature continuity (also known as C2, degree 2, or second-order continuity); this means that there are no abrupt changes in the position, tangent, or curvature along the curve—in other words, the curve is very smooth. At least four control points are required to define a cubic curve. Linear NURBS curve Cubic NURBS curve You can import quadratic NURBS curves from SOFTIMAGE|3D. Other types of curves—Bézier, Cardinal, and B-Spline—are converted to cubic NURBS when imported. Clusters are lost during conversion. Modeling & Deformations • 53 Chapter 3 • Curves Curve Components and Attributes Curves have many components and attributes which you can display with the options on the Show menu in viewports. Knots lie on the curve. Boundary flags show the beginning of the curve (U = 0). Cubic curves are interpolated between points. Segments are the span between knots. Lines join points. Points Points, sometimes called control points or CVs (control vertices), define the curve mathematically. In linear curves, the points lie on the curve itself. At least two points are required to define a linear curve. In cubic curves, the curve is interpolated between the points. At least four points are required to define a cubic curve. You can modify curves by moving, adding, and deleting points. See Chapter 3: Curves on page 69 for more information. To display points, make sure that Show > Points is on in a viewport (or View > Points to set all viewports at once). Alternatively, choose Show > Visibility Options in a viewport (or View > Visibility Options to set all viewports at once), then turn on the Points option on the Components page. You can display points for selected objects, unselected objects, or both. Note that the Show > Points option is automatically turned on whenever you select, move, add, or delete points. 54 • SOFTIMAGE|XSI Knots Knots are the points at which curve segments meet. Each curve is actually a series of connected segments, and every set of four consecutive points defines a segment. To display knots, choose Show > Knots in a viewport (or View > Knots to set all viewports at once). Alternatively, choose Show > Visibility Options in a viewport (or View > Visibility Options to set all viewports at once), then turn on the Knots option on the Components page. You can display knots for selected objects, unselected objects, or both. You cannot manipulate knots directly. Segments Segments are spans of a curve between consecutive knots. For display purposes, they are subdivided approximated by several straight line segments. To specify how many straight line segments are used, set the Curve Step option on the Hardware Display page of the Geometry Approximation property editor. Note that this setting affects only the display; for example, objects on paths will follow the curve as mathematically defined, not as displayed. For more information about geometry approximation in general, see Geometric Approximation Parameters on page 27. Lines Lines, sometimes called hulls, join consecutive points. When working with curves and surfaces, it is sometimes useful to display them: turn on Show > Lines in a viewport (or View > Lines to set all viewports at once). Alternatively, choose Show > Visibility Options in a viewport (or View > Visibility Options to set all viewports at once), then turn on the NURBS Lines option on the Attributes page. You can display lines for selected objects, unselected objects, or both. Boundary Flags Any point along a curve can be defined in terms of a single parameter U. You can display boundary flags (also called edge flags) to show the beginning (U = 0) of a curve: turn on Show > Boundaries in a viewport (or View > Boundaries to set all viewports at once). Alternatively, choose Show > Visibility Options in a viewport (or View > Visibility Options to set all viewports at once), then turn on the Boundary Flags option on the Attributes page. You can display boundaries for selected objects, unselected objects, or both. The U = 0 boundary of a curve is shown in red. Other Components Samples and isopoints will be available in a future version. Modeling & Deformations • 55 Chapter 3 • Curves Parameterization Curves have a single parameter, U, along their length. Depending on how the curve is parameterized, different values of U correspond to different points along the length of the curve. You can reparameterize a curve as described in Reparameterizing Curves on page 67. Multiknots If you add multiple control points at the same position, you create multiknots—two or more overlapping knots. These let you create sharp discontinuities on cubic curves. You can use grid snapping to add points at the same position. Single control point 56 • SOFTIMAGE|XSI Two overlapping control points Three overlapping control points Creating Curves Creating Curves You can create a curve in several ways: • By getting one of the predefined primitive curves, such as an arc or a spiral. • By drawing a curve. • By creating a curve from other objects in your scene. For example, you can extract a portion of another curve, extract a curve from a surface, or extract the intersection of two surfaces as a curve. Primitive Curves There are four types of primitive curve: arcs, circles, spirals, and squares. To get a primitive curve: 1. Choose Get > Primitive > Curve, then choose a shape. The corresponding property editor opens. 2. Set the parameters as desired: - The shape-specific page contains the basic characteristics of the shape. Each shape has different characteristics; for example, a square has only a length but an arc has a radius, start angle, and end angle. - The Geometry page controls how the implicit shape is subdivided when converted into a curve. More subdivisions yield more points, resulting in greater detail but heavier geometry. Once you have added a primitive curve to your scene, you can modify it like any other. Drawing Curves You can draw cubic curves in several different ways: • By placing the control points explicitly. The curve is interpolated between them. This is the traditional way to draw NURBS curves. • By specifying the points that you want the curve to pass through. SOFTIMAGE|XSI automatically adjusts the control points so that the curve always passes through the points you pick. • By clicking and dragging continuously as if you were sketching with a pen. When you release the mouse button, SOFTIMAGE|XSI creates a curve that approximates what you sketched. There is only one way to draw linear curves: by adding points at the locations where you want the straight segments to meet. When drawing curves, grid snapping can be very useful for controlling the position of points. See Grid Display and Snapping on page 28 for more information. Modeling & Deformations • 57 Chapter 3 • Curves You should always draw curves in a counter-clockwise direction. This ensures that the normals of any surfaces you create from the curves will be oriented correctly. Drawing Curves by Placing Control Points To explicitly place control points and have a cubic curve pass between them: 1. Choose Create > Curve > Draw CV NURBS on the Model or Animate toolbar. The mouse pointer changes to a pen. 2. Click in any geometry view to add the first point. Before you release the mouse button, you can drag the mouse to adjust the point’s location. 3. Continue clicking to add more points. - Left-click to add a point at the end of the curve. - Middle-click to add a point in between two others on the curve. - Right-click to add a point at the beginning of the curve. You may be surprised that a curve is drawn after the second point, even though it takes four points to define a cubic curve segment. This is because points are automatically being automatically so that there are always at least four. When you place the second point, three are added. When you place the third point, the extra points are removed and two are added at the third location. After you add the fourth point, there are no extra points. 4. When you have finished drawing, exit the curve tool by choosing another tool or pressing the Esc key. Alternatively, if you want to draw another curve right away, middle-click on Create > Curve. Drawing Curves by Placing Points on the Curve To draw a curve by specifying the locations through which it should pass: 1. Choose Create > Curve > Draw Interpolating NURBS on the Model or Animate toolbar. The mouse pointer changes to a pen. 2. Click in any geometry view to add the first point. Before you release the mouse button, you can drag the mouse to adjust the point’s location. 3. Continue clicking to add more points. - Left-click to add a point at the end of the curve. - Middle-click to add a point in between two others on the curve. - Right-click to add a point at the beginning of the curve. 4. When you have finished drawing, exit the curve tool by choosing another tool or pressing the Esc key. Alternatively, if you want to draw another curve right away, middle-click on Create > Curve. 58 • SOFTIMAGE|XSI Creating Curves Sketching Curves You can draw a cubic curve by dragging the mouse freehand as if it were a pen: 1. Choose Create > Curve > Sketch on the Model or Animate toolbar. The mouse pointer changes to a pen. 2. Click in any geometry view and drag the mouse freehand. 3. Release the mouse button to create the curve. The sketch tool remains active and you can continue to draw more curves. You can use Create > Curve > Fit on Curve to resample a sketched curve. See Fitting Curves onto Curves on page 61 for more information. Drawing Linear Curves To draw a linear curve: 1. Choose Create > Curve > Linear on the Model or Animate toolbar. The mouse pointer changes to a pen. 2. Click in any geometry view to add the first point. Before you release the mouse button, you can drag the mouse to adjust the point’s location. 3. Continue clicking to add more points. - Left-click to add a point at the end of the curve. - Middle-click to add a point in between two others on the curve. - Right-click to add a point at the beginning of the curve. 4. When you have finished drawing, exit the curve tool by choosing another tool or pressing the Esc key. Alternatively, if you want to draw another curve right away, middle-click on Create > Curve. Creating Curves from Other Objects You can use other objects in your scene to create curves. For example, you can: • Extract an arbitrary segment of an existing curve. • Extract a curve from a surface. • Fit a curve onto another curve. • Create a curve from the intersection of two surfaces. • Blend two curves; that is, create a third joining curve between them. • Create a fillet between two intersecting curves. • Merge two curves; that is, create a curve that spans the originals. • Generate a curve from the animated translation of an object. Modeling & Deformations • 59 Chapter 3 • Curves In each case except the last, a modeling relation exists between the new curve and the original objects used to define it. Modifying the originals in any way also modifies the created curve. In addition, you can select the created curve and open the property editor of the corresponding operator to adjust its parameters. The modeling relation exists until you select the created curve and choose Edit > Freeze Operator Stack from the Edit panel. If you delete the input objects without freezing the operator stack of the output object first, the output object is removed from the scene. See Freezing the Operator Stack on page 30. If this happens accidentally, press Ctrl+z to undo. To extract an arbitrary segment of an existing curve 1. Select the curve in Object mode. 2. Choose Create > Curve > Extract Segment from the Model toolbar. A new curve is created corresponding to the total length of the original curve, and the Extract Curve Segment property editor opens. 3. Adjust the Start Position and End Position parameters to the define the segment you want to extract. Original curve Extracted segment To extract a curve from a surface 1. Select the surface in Object mode. 2. Choose Create > Curve > Extract from Surface from the Model toolbar. A curve is created on the surface and the Extract Curve property editor opens. 3. Adjust the parameters to define the curve you want to extract. Extracting a curve from a surface 60 • SOFTIMAGE|XSI Creating Curves Fitting Curves onto Curves You can fit one curve onto another. This is useful for cleaning curves that were drawn with the Sketch tool. You can specify the number of points and the degree of the new curve. Original sketched curve New curve fitted onto sketched curve To fit one curve onto another 1. Select a curve in Object mode. 2. Choose Create > Curve > Fit on Curve from the Model toolbar. A new curve is created and the Fit Curve property editor opens. 3. Set values as desired: - Number of Points controls the number of control points on the created curve and, indirectly, how accurately the new curve follows the original. - Continuity controls the smoothness of the curve. Choose Position (C0, or linear), Tangent (C1, or quadratic), or Curvature (C2, or cubic). - Close does not create a true periodic curve; instead, it superimposes the last point on the first. Intersecting Surfaces You can create a curve that represents the intersection of two surfaces. For best results, first make sure that the surfaces have the same parameterization; see Chapter 4: Surfaces on page 93. Intersection between two surfaces 1. Select one of the surfaces in Object mode. Modeling & Deformations • 61 Chapter 3 • Curves 2. Choose Create > Curve > Intersect Surfaces from the Model toolbar. 3. Pick the other surface. A curve is created and the Intersect Surfaces property editor opens. If you change your mind, press the Esc key to cancel the operation without picking anything. If the two surfaces intersect in multiple places, the new curve will be composed of multiple disjoint segments. However, the curve is one single 3D object as shown in the explorer. 4. You may need to adjust the tolerance parameters for the curve. Blending Curves Blending two curves creates a third curve that joins the two originals. Original curves New blend curve 1. Select the first curve in Object mode. 2. Choose Create > Curve > Blend from the Model toolbar. 3. Pick the other curve. A third curve is created and the Blend Curves property editor opens. If you change your mind, press the Esc key to cancel the operation without picking anything. 4. Depending on how you drew the original curves, you may need to adjust the parameters for the blended curve. As an alternative to blending curves, you can merge them as described on page 64 or stitch them as described on page 68. 62 • SOFTIMAGE|XSI Creating Curves Filleting Curves You can create a curve that is a fillet, or smooth blending arc, between two curves. Depending on how the curves are drawn and the options you set, the two original curves do not need to intersect. Intersecting curves Fillet between them 1. Select the first curve in Object mode. 2. Choose Create > Curve > Fillet Intersection from the Model toolbar. 3. Select the second curve. If you change your mind, press the Esc key to cancel the operation without picking anything. 4. An arc is drawn from the beginning of the first curve to the end of the second, and the Fillet Curves property editor appears. If the two curves intersect in multiple places, the new curve will be composed of multiple disjoint segments. However, the curve is one single 3D object as shown in the explorer. 5. Adjust the Radius and the Tolerance. If no fillet can be created with the specified settings, a unit circle is created at the origin. To change where the fillet is created on the crossing curves, invert one or both curves using Modify > Curve > Inverse. For a non-circular fillet, you can move points or otherwise deform the created curve. The modeling relation with the original curve remains, so that if you modify the original curves the deformed fillet changes accordingly. As an alternative to filleting curves, you can blend curves as described in the previous section, or merge them as described in the next section. Modeling & Deformations • 63 Chapter 3 • Curves Merging Curves Merging two curves creates a third curve that spans the original two. Two separate curves Single merged curve 1. Select the first curve in Object mode. 2. Choose Create > Curve > Merge from the Model toolbar. 3. Pick the other curve. A third curve is created as if the first point of the second curve was superimposed on the last point of the first curve, and the Merge Curves Together property editor opens. If you change your mind, press the Esc key to cancel the operation without picking anything. 4. If necessary, adjust the parameters of the merged curve. Click the help icon for more information. As an alternative to merging curves, you can also or stitch them as described on page 68 or blend them as described on page 62. Creating Curves from Animation If you have animated the translation of an object, you can plot the motion of its center to generate a curve. For example, this can be used to create a trajectory curve. You can also plot the movement of a selected point or cluster, similar to the Tag2Path command in SOFTIMAGE|3D. 1. Select an object, point, or cluster. 2. Choose Tools > Plot > Curve from the Animate toolbar. 3. When prompted, set the start frame and click OK. 4. When prompted, set the end frame and click OK. A curve is created, with one control point for every frame. The original animation remains. 64 • SOFTIMAGE|XSI Modifying Curves Modifying Curves You can modify curves in a variety of ways using the commands in the Modify > Curve menu of the Model toolbar. The Add Point Tool and Delete Point Tool are described in Adding and Deleting Points on page 71. All of the commands in the Modify > Curve menu change the curve’s underlying topology. Topological changes are always evaluated before any deformations, even if you applied the deformations first. If you don’t get the results you want, try freezing the curve’s operator stack as described in Freezing the Operator Stack on page 30. Inverting Curves Inverting a curve reverses its parameterization so that U increases in the opposite direction. The result is as if you had drawn the curve clockwise instead of counter-clockwise, or vice versa. For example, if an object uses the curve as a path, it moves in the opposite direction once you invert the curve. Similarly, if a surface has been built from the curve and its operator stack was not frozen, its normals become reversed. To invert curves: 1. Select one or more curves in Object mode. 2. Choose Modify > Curve > Inverse from the Model toolbar. Reinverting Curves If you later decide that you no longer want the curve inverted, you can do one of three things: • Select the curve and choose Edit > Modeling Properties, then uncheck the Inverse Curve parameter on the Inverse Curve page. Later operations in the stack may be affected. or • Use an explorer view to expand the curve’s node and delete the Inverse Curve operator. Later operations in the stack may be affected. or • Select the curve and choose Modify > Curve > Inverse again. This adds another Inverse Curve node to the operator stack and may result in unnecessary calculations. Modeling & Deformations • 65 Chapter 3 • Curves Opening and Closing Curves You can open a closed curve, and close an open curve. Curves are always opened at the U = 0) position. 1. Select one or more curves in Object mode. 2. Choose Modify > Curve > Open/Close. The curve is opened if it were closed, and closed if open. Open curve Closed curve Reopening and Reclosing Curves If you later decide that you no longer want the curve to be open (or closed), you can do one of two things: • Select the curve and choose Modify > Curve > Open/Close again. This adds another Open/Close Curve node to the operator stack and may result in unnecessary calculations. or • Use an explorer view to expand the curve’s node and delete the Open/Close Curve operator. Later operations in the stack may be affected. Shifting U on Curves On closed curves, you can shift the start point (U = 0 position) along the length of the curve. 1. Select one or more curves in Object mode. 2. Choose Modify > Curve > Shift U. The Curve Shift property editor opens. 3. Adjust the Shift U parameter. As you change values, the start point jumps to the nearest knot. Cleaning Curves Cleaning a curve reduces the number of control points while keeping the same general shape. 1. Select one or more curves using the Object filter on the Selection panel. 2. Choose Modify > Curve > Clean from the Model toolbar. The Clean Curve property editor opens. 3. Set the Tolerance. This controls the maximum difference between the original curve and the resampled shape. 66 • SOFTIMAGE|XSI Modifying Curves Reparameterizing Curves Parameterization refers to the way that any point along the length of a curve is described in terms of the parameter U. Any given point along the curve can have different U values under different parameterizations. The various parameterization methods can affect the curve’s behavior when you perform certain operations. There are four parameterization methods available: • With uniform parameterization, the difference between successive knots is equal to 1 regardless of the actual length of the curve segment. (While it may seem strange that non-uniform rational B-splines can have a uniform parameterization, it is not a contradiction; “non-uniform” here means “not necessarily uniform.”) Uniform parameterization is especially suitable when merging and lofting. • With non-uniform parameterization (the default), the difference between successive knots is related to the length of each curve segment the first time the curve is drawn. However, when you edit the curve, the parameterization is not recomputed. Instead, the exact shape of your curve is preserved. For this reason, you can manipulate curves with nonuniform parameterization more accurately. • With chord length parameterization, the difference between successive knot values is related to the actual length of each curve segment. If you could see the knot values on the actual curve, these values might be unequal: 1, 3.2, 5.3, and so on. Chord length always strives to preserve the relation between the length of the curve segment and the spacing of the knot vector. When you modify the curve, the parameterization of the curve is completely recomputed to preserve the relation of length of segment/knot spacing. As a result of this recomputation, when you move a control point, the edited segment jumps to a slightly different position when you release the mouse button. • With centripetal parameterization, the knot spacing is related to the square root of the length of each curve segment. In some cases, this may make smoother curves. As with chord length parameterization, the parameterization is completely recomputed when you move points, with the result that the curve may jump when you release the mouse button. To reparameterize curves 1. Select one or more curves in Object mode. 2. Choose Modify > Curve > Reparameterize from the Model toolbar. The Reparameterize Curve property editor opens. 3. Choose a parameterization method. Modeling & Deformations • 67 Chapter 3 • Curves To reparameterize curves again If you later decide to change the parameterization again, do one of the following: • Select the curve and choose Edit > Modeling Properties, then click on the Reparameterize Curve tab and choose a different option. The results of later operators in the stack may be affected. or • Select the curve and choose Modify > Curve > Reparameterize again. This adds another Reparameterize Curve node to the operator stack and may cause unnecessary calculations. or • Use an explorer view to expand the curve’s node and delete the Reparameterize Curve operator. This returns to the original parameterization—later operators in the stack may be affected. Stitching Curves Stitching two curves glues their ends together. Unlike blending (page 62) or merging (page 64), it does not create a new curve but instead distorts the originals. 1. Select the first curve in Object mode. 2. Choose Modify > Curve > Stitch from the Model toolbar. 3. Pick the second curve. The Stitch Curves property editor opens. If you change your mind, press the Esc key to cancel the operation without picking anything. 4. Adjust the parameters to obtain the desired shape. Click the help icon for more information. 68 • SOFTIMAGE|XSI Working with Points Working with Points You can modify curves by moving points, as well as by selecting points or point clusters then transforming them as described in Transforming Components and Clusters on page 34. You can also apply deformations to selected points and clusters in the same way that you apply them to objects; see Chapter 6: Introduction to Deformations on page 119 for general information about deformations, and see other chapters for information about specific deformations. In addition, you can add and delete points as described in Adding and Deleting Points on page 71. Selecting Points You can select (or tag) points, add and remove points from the selection, and select point clusters using the selection filters in the Selection panel or using shortcut keys. For more information about selecting in general, see Selecting and Deselecting Objects in Chapter 5 of the Fundamentals guide. To select points Choose the Point selection filter on the Selection panel and drag across points in a viewport. Alternatively, quickly press and release the t key to activate point selection in sticky mode, or press and hold the t key while dragging to select points in supra mode. Selected points are displayed in red. To extend the selection If both the SI3D Selection Model and Extended Component Selection options are off in the Selection menu in the Selection panel, use modifier keys to add or remove points from the selection: • Shift+drag to select additional points. • Ctrl+drag to toggle-select points. • Ctrl+Shift+drag to deselect points. If either SI3D Selection Model or Extended Component Selection are on, use the different mouse buttons to add or remove points from the selection: • Left-click to select additional points. • Middle-click to toggle-select points. • Right-click to deselect points. Modeling & Deformations • 69 Chapter 3 • Curves To select clusters Activate point selection using either the Point selection filter button or the t key, then choose the Group/Cluster (+) selection filter in the Selection panel and drag to select any point in the cluster. Alternatively, if both the SI3D Selection Model and Extended Component Selection options are off in the Selection menu, activate point selection and middle-click to select any point in the cluster. Selected clusters are displayed in white. Moving Points As an alternative to selecting and translating points, you can move points individually using the Move Point tool: 1. Select an object. 2. Do one of the following: - Choose Modify > Component > Move Point tool from the Model toolbar. or - Quickly press and release the m key to activate the Move Point tool in sticky mode. or - Press and hold the m key move points in supra mode. 3. In a viewport, position the mouse pointer over a point on the object, then click and drag to move it. The Move Point tool has its own transformation mode “memory.” See Transformation Modes on page 35. Using Proportional Modeling When you move or transform points and point clusters, you can use proportional modeling. When this option is on, neighboring points are moved as well, with a falloff that depends on distance. After you have moved points, you can adjust the proportional settings. To activate proportional modeling On the Model toolbar, choose Modify > Component > Proportional. When this option is on, neighboring points are affected any time you move or transform points and point clusters. To deactivate proportional modeling, choose Modify > Component > Proportional to remove the check mark. To adjust proportional settings 1. Select the object. 2. Do one of the following: 70 • SOFTIMAGE|XSI Working with Points - Choose Edit > Modeling Properties and click the Proportional tab. There is one Proportional property page for each MovePoint operation with Proportional on. or - Choose Property on the Selection panel, expand a MovePoint node, and click the Proportional icon. 3. Adjust the parameters. Click the help icon for details. Adding and Deleting Points You can add and delete points on curves. When you add or delete points, you change the curve’s underlying topology. Topological changes are always evaluated before any deformations, even if you applied the deformations first. If you don’t get the results you want, try freezing the curve’s operator stack as described in Freezing the Operator Stack on page 30. If you add points or knots to an object with clusters, the clusters will shift. To add points to an existing curve 1. Select a curve in Object mode. 2. Choose Modify > Curve > Add Point from the Model toolbar. The pointer changes to a pen. 3. Click to add points, just as if you were drawing the curve: - Left-click to add a point at the end of the curve. - Middle-click to add a point in-between two others on the curve. - Right-click to add a point at the beginning of the curve. Before you release the mouse button, you can drag the mouse to adjust the point’s location. 4. When you have finished drawing, exit the Add Point tool by choosing another tool or pressing the Esc key. If you want to add points to another curve, you must first select it and choose Modify > Curve > Add Point again—if you don’t choose the command again, the points are added to the previous curve. Note that you can middle-click to quickly repeat the last command chosen from a toolbar menu button. Modeling & Deformations • 71 Chapter 3 • Curves The mode in which you originally drew the curve is preserved until you freeze it or apply a topology operator as described in Modifying Curves on page 65. For example, if you add a point between two others on a curve drawn with Draw CV NURBS, a control point is added where you clicked and the curve is interpolated accordingly. If you add a point to a curve drawn with Draw Interpolating NURBS, a control point is added so that the curve passes through the position you clicked. After you freeze the curve or apply a topology operator, the curve always passes through the position you clicked. To delete points on a curve 1. Select a curve in Object mode. 2. Choose Modify > Curve > Delete Point from the Model toolbar. 3. Click on a point to delete it. You can continue to click on other points to delete them. When you have finished deleting points, exit the Delete Point tool by choosing another tool or pressing the Esc key. 72 • SOFTIMAGE|XSI Chapter 4 Surfaces Modeling & Deformations • 73 Chapter 4 • Surfaces 74 • SOFTIMAGE|XSI Surfaces are one of the basic types of renderable geometry in SOFTIMAGE|XSI. Surfaces are typically smoother than polygon meshes, and they’re ideal for organic and flexible shapes. In SOFTIMAGE|XSI, surfaces are NURBS patches. Mathematically, they are an interconnected patchwork of smaller surfaces defined by intersecting NURBS curves. Surfaces are the building blocks of surface meshes, described in Chapter 5: Surface Meshes on page 103. As you manipulate objects and play back animation, you may notice that surface objects are displayed in coarse mode. This is an option that allows for faster interaction. You can toggle this on or off by choosing File > User Preferences from the main-menu bar then choosing the Interaction tab and clicking Display Options Use Coarse Step by Default for Interaction and Playback under Display Performance. You must restart SOFTIMAGE|XSI before this change takes effect. You can also set the Step value to Coarse, Medium, or Full during Interaction and Playback for Selected Objects and Unselected Objects in individual viewports or all viewports at once. For more information, see Setting Object Display in Chapter 4 of the Fundamentals guide. If you import a Cardinal, Bézier, or B-Spline patch object, it is converted to a NURBS surface. Some things will be lost: • Clusters, cluster animation, and cluster constraints will not be included in the conversion. • If the object is an envelope, the original weight assignment is lost. To avoid this, convert patches to NURBS and use the Skin > Weight Copy and Weight Paste commands before importing the converted NURBS envelopes. Surface UV Parameterization Surfaces have two parameters, U and V. In Wireframe view, surfaces are represented by a grid of curves that intersect at points called knots. Each of these curves is constant in either U or V. An arbitrary point on a surface can be described in terms of its (U, V) coordinates. Like curves, surfaces can be either cubic (second order, or C2) or linear (zero order, or C0). In addition, they can have different orders in their U and V directions, so that they can be smooth in one direction and jagged in the other. You can reparameterize surfaces as described in Reparameterizing Surfaces on page 93. A surface can be open in both U and V like a grid, closed in both like a torus, or open in one and closed in the other like a tube. Modeling & Deformations • 75 Chapter 4 • Surfaces U and V are similar to latitude and longitude. Components of Surfaces Surfaces have many components: points, knots, boundaries, and isolines. Points Points are the control points of the curves that define the surface. Points define and control the surface. You can display lines between points. You cannot add or remove points directly, but you can add and remove knots as described in Working with Knots and Knot Curves on page 100—this has the effect of adding or removing points indirectly. To display points, make sure that Show > Points is on in a viewport (or View > Points to set all viewports at once). Alternatively, choose Show > Visibility Options in a viewport (or View > Visibility Options to set all viewports at once), then turn on the Points option on the Components page. You can display points for selected objects, unselected objects, or both. Note that the Show > Points option is automatically turned on whenever you select or move points. 76 • SOFTIMAGE|XSI Lines Lines, sometimes called hulls, join consecutive points. When working with curves and surfaces, it is sometimes useful to display them: turn on Show > Lines in a viewport (or View > Lines to set all viewports at once). Alternatively, choose Show > Visibility Options in a viewport (or View > Visibility Options to set all viewports at once), then turn on the NURBS Lines option on the Attributes page. You can display lines for selected objects, unselected objects, or both. Knots and Knot Curves Surface knots are the knots of the curves that define the surface; they lie on the surface where the U and V curve segments meet. Knot curves are sets of connected knots along U or V—they are the “wires” shown in wireframe views. You can select knot curves and use them, for example, to build other surfaces using the Loft operator. You can add and remove knots as described in Working with Knots and Knot Curves on page 100. Knots lie on the surface. Knot curves connect knots. To display knots, choose Show > Knots in a viewport (or View > Knots to set all viewports at once). Alternatively, choose Show > Visibility Options in a viewport (or View > Visibility Options to set all viewports at once), then turn on the Knots option on the Components page. You can display knots for selected objects, unselected objects, or both. You cannot transform or deform knots directly. Boundaries The minimum and maximum U and V values define the boundaries of a surface. On surfaces that are open in one or both directions, these are the outer edges. You can use the Boundaries selection filter to help you pick boundaries for lofting and other operations. When working with surfaces, it may be helpful to display boundary flags (also called edge flags). This shows the U = 0 boundary in red and the V = 0 boundary in green. Turn on Show > Boundaries in a viewport (or View > Boundary to set all viewports at once). Modeling & Deformations • 77 Chapter 4 • Surfaces Alternatively, choose Show > Visibility Options in a viewport (or View > Visibility Options to set all viewports at once), then turn on the Boundary Flags option on the Attributes page. You can display boundaries for selected objects, unselected objects, or both. Isolines Isolines are not true components. They are in fact arbitrary lines of constant U or V on a surface . You can use the U and V Isoline selection filter to help you pick isolines for lofting and other operations. Isolines are arbitrary lines on the surface in U or V. Surface Curves and Trim Curves You cannot create projected surface curves or trim curves in SOFTIMAGE|XSI. However, you can import objects with projected surface curves and trim curves from SOFTIMAGE|3D. In SOFTIMAGE|XSI, you can select them using the Surface Curve and Trim Curve selection filters, then use them for lofting and other operations. Other Components Samples and isopoints will be available in a future release. Multiknot Curves 78 • SOFTIMAGE|XSI Just like with multiknots on curves, you can add multiple knot curves at the same position. This lets you create sharp ridges on surfaces. See Adding Knot Curves on page 100. Creating Surfaces Creating Surfaces There are two basic ways to create a surface: • By getting one of the predefined primitive surfaces. or • By building a surface from curves or other objects in your scene. There are several ways to do this. Primitive Surfaces There are several types of predefined primitive surfaces. To get a primitive surface: 1. Choose Get > Primitive > Surface then choose a shape. The corresponding property editor opens. 2. Set the parameters as desired: - The shape-specific page contains the basic characteristics of the shape. Each shape has different characteristics; for example, a sphere has one radius and a torus has two. - The Geometry page controls how the implicit shape is subdivided when converted into a surface. More subdivisions yield more points, resulting in greater detail but heavier geometry. Once you have added a primitive surface to your scene, you can modify it like any other. Modeling & Deformations • 79 Chapter 4 • Surfaces Creating Surfaces from Curves You can create surfaces by first creating curves and using them as building blocks. There are several ways to use curves to create surfaces: • By extruding one curve along an axis or another curve. • By extruding with two profiles, morphing one into the other as it runs along a rail curve. • By creating a series of profiles and lofting them. • By revolving a curve around an axis or another curve. • By extruding an open curve along two guides. (Birail) • By picking a series of curves in U and V. (Curve Net) • By picking the four curves to use as boundaries. (Four Sided) In each case, a modeling relation exists between the surface and the curves used to define it. Modifying the curves in any way also modifies the created surface. In addition, you can select the surface and open the property editor of the corresponding operator to adjust the parameters that control how the surface is created. The modeling relation exists until you select the surface and choose Edit > Freeze Operator Stack from the Edit panel. If you delete the input objects without freezing the operator stack of the output object first, the output object is removed from the scene. See Freezing the Operator Stack on page 30. If this happens accidentally, press Ctrl+z to undo. The resulting surfaces can be linear or cubic in either U or V, depending on whether the original curves are linear or cubic. Remember to draw curves counter-clockwise for the proper alignment of normals. If the normals of the resulting surface are pointing in the wrong direction, you can invert the surface as described on page 91 or invert one or more of the input curves as described on page 65. 80 • SOFTIMAGE|XSI Creating Surfaces Extruding Curves You can create a surface by extruding a profile curve along an axis or a rail curve. This and similar operations are sometimes called rail or sweep. 1. Select the profile curve. 2. Choose Create > Surface > Extrusion from the Model toolbar. If you change your mind, press the Esc key to cancel the operation. 3. Do one of the following: - Pick a guide curve to extrude along and then right-click. or - Right-click without picking anything to extrude along an axis. The Extrude Curve property editor opens. 4. Adjust the parameters as desired: - Specify the number of Subdivisions in U and V. - Specify whether the surface should be open or closed in U and V. - Specify the Start Position and Length along the curve or axis. - Specify whether the surface should be created at the position of the guide curve (Snap to Profile off) or the profile curve (on). - Specify whether the profile should be rotated according to the tangency of the guide curve (Rotate Profile). - If you did not pick a guide curve, specify the axis to extrude along. You can select a combination of axes to extrude along the resulting diagonal. Profile curve Guide curve Extruded surface Modeling & Deformations • 81 Chapter 4 • Surfaces Extruding with Two Profiles When you create a surface by extruding with two profiles, the first profile morphs into the second profile as it runs along a single rail curve. 1. Create two profile curves and a rail curve. For best results, the first points of the two profiles should be close to the endpoints of the rail. You can use the Ctrl key to snap to the grid when adding or moving points. 2. Select the rail curve. 3. Choose Create > Surface > Extrusion - 2 Profiles from the Model toolbar. If you change your mind, press the Esc key to cancel the operation. 4. Pick the first profile. If you made a mistake, Ctrl+click to unpick it. 5. Pick the second profile. The Extrusion 2 Profiles property editor opens. 6. Set the parameters: - Adjust the Maximum Endpoint Gap, depending on how far apart the endpoints of the profile are from the guide rails. - Set the desired number of subdivisions in U and V. Profile 2 Resulting surface Guide curve Profile 1 82 • SOFTIMAGE|XSI Creating Surfaces Lofting Curves You can create a series of profile curves, then use the Loft command to create a surface with the corresponding cross-sections. This procedure is sometimes called skinning. While lofting, you can use the selection filters in the Selection panel to pick any combination of curve objects, knot curves, boundaries, isolines, surface curves, and trim curves. For example, you can create a loft surface that joins two surfaces while passing through other curves. You can also quickly create a low resolution version of an object by picking isolines along its surface. 1. Select the first curve in the series. You can use the Selection filters to select a boundary, isoline, or knot curve on a surface as well as an ordinary curve object. 2. Choose Create > Surface > Loft from the Model toolbar. If you change your mind, press the Esc key to cancel the operation. 3. Pick each of the other profile curves in order. As you pick, you can change the selection filters to pick any combination of boundaries, isolines, knot curves, and object curves. If you make a mistake, you can unpick curves in order using Ctrl+click. You can also cancel the loft operation by pressing Esc. • With the Free Form selection tool, you can pick curve objects in a single sweep. • To create a surface that is closed in U, repick the first curve as the last curve. Loft will not work if there are overlapping curves. If you created curves by duplicating them, make sure that two or more don’t overlap. 4. Right-click to indicate that you have finished picking profile curves. The Loft property editor opens. 5. Set the parameters as desired: - Specify the number of Subdivisions in U and V. - The Start and End Surface parameters are used only when the first and last curves are on surfaces (boundaries, knot curves, or isolines). They determine how the continuity of the loft surface matches that of the input surfaces. For more information, click the help icon. Modeling & Deformations • 83 Chapter 4 • Surfaces Lofting curve objects Lofting using mixed curves Boundary Curve object Isoline Revolving Curves You can create a surface by revolving a curve around an axis or around another curve: 1. Select the curve to be revolved in Object mode. 2. Choose Create > Surface > Revolution from the Model toolbar. If you change your mind, press the Esc key to cancel the operation. 3. Do one of the following: - Pick a curve to revolve around and then right-click. The revolution occurs around a straight line from the start to the endpoint of the curve you pick. or 84 • SOFTIMAGE|XSI Creating Surfaces - Right-click without picking anything to revolve around an axis. The Revolution property editor opens. 4. Adjust the parameters as desired: - Specify the number of Subdivisions in U and V. - Specify whether the surface should be open or closed in U and V. - Specify the angle at which to begin the revolution (Start Angle) and number of degrees to sweep through (Revolution Angle). - If you did not pick a curve to revolve around, specify the axis to extrude along. You can select a combination of axes to revolve around the resulting diagonal. Revolution Axis Profile Birail The Birail operator lets you extrude an open-profile curve by running its endpoints along two rails, or guide curves. This is sometimes called guided extrusion. 1. Create the profile curve and the two rail curves. For best results, make sure that each endpoint of the profile is close to the start of the corresponding rail. You can use the Ctrl key to snap to the grid when adding or moving points. 2. Select the profile curve, then choose Surface > Create > Birail from the Model toolbar. If you change your mind, press the Esc key to cancel the operation. 3. Pick the first rail. If you make a mistake, you can unpick it with Ctrl+click. 4. Pick the second rail. The Birail property editor opens. 5. Set the parameters: - Adjust the Maximum Endpoint Gap, depending on how far apart the endpoints of the profile are from the guide rails. - Set the desired number of subdivisions in U and V. Modeling & Deformations • 85 Chapter 4 • Surfaces Birail Profile Guide rails Using Curve Net You can create a surface by picking a series of curves in U and V. Curve Net is similar to Loft, but you can control the detail in both the U and V directions. 1. Create two sets of curves, representing cross-sections in U and V. For best results, make sure the curves intersect each other as closely as possible, particularly at the boundaries. 2. Select the first U curve in Object mode. 3. Choose Create > Surface > Curve Net from the Model toolbar. If you change your mind, press the Esc key to cancel the operation. 4. Pick the remaining U curves in order. With the Free Form selection tool, you can pick the curves in a single sweep. Be careful not to accidentally select a V curve. If you make a mistake, Ctrl+click to “unpick” the last curve. Repeat to “unpick” multiple curves. 5. Right-click to indicate that you have finished picking U curves. 6. Pick the V curves in order. 7. Right-click. The Curve Net property editor opens. 8. Adjust parameters as necessary: - Specify the number of Subdivisions in U and V. - Set Feature Match to follow the detail of the input curves more closely. Note that this may significantly affect performance. 86 • SOFTIMAGE|XSI Creating Surfaces Picking Boundaries Using Four-Sided You can create a simple surface by picking four curves to define the surface’s boundaries: 1. Draw the four curves to serve as the boundaries. For best results, make sure that their ends meet as closely as possible. You can use the Ctrl key to snap to the grid when adding or moving points. 2. Select one of the curves in Object mode. 3. Choose Create > Surface > Four Sided from the Model toolbar. If you change your mind, press the Esc key to cancel the operation. 4. Pick the remaining boundary curves in clockwise order. If you make a mistake, Ctrl+click to unpick the last curve. When you pick the last one, the surface is created immediately and the FourSided property editor opens. 5. Set the desired number of subdivisions in U and V. Four Sided Creating Surfaces from Other Surfaces You can create surfaces from other surfaces in several ways: • You can create a third surface that fills the gap and blends between the boundaries of two surfaces. • You can create a fillet to smooth the intersection of two surfaces. • You can create a merged surface that spans two others. In each case, a modeling relation exists between the new surface and the originals used to define it. Modifying the originals in any way also modifies the created curve. In addition, you can select the created surface and open the property editor of the corresponding operator to adjust the parameters that control how the surface is created. The modeling relation exists until you select the surface and choose Edit > Freeze Operator Stack from the Edit panel. If you delete the input objects without freezing the operator stack of the output object first, the output object is removed from the scene. See Freezing the Operator Stack on page 30. If this happens accidentally, press Ctrl+z to undo. Modeling & Deformations • 87 Chapter 4 • Surfaces Blending Surfaces To create a surface that fills the gap and blends between two other surfaces: 1. Select one of the surfaces in Object mode. 2. Choose Create > Surface > Blend from the Model toolbar. If you change your mind, press the Esc key to cancel the operation. 3. Pick the other surface. A blend is created and the Blend Surfaces property editor opens. 4. Set the options as desired: - If the blend was not created between the boundaries you wanted, use the options on the Boundaries page to specify which boundaries of the original surfaces to use. - Use the options on the Subdivision page to specify the resolution in U and V. - Use the options on the Shape page to adjust the overall shape of the blend. For information about each parameter, click the help icon. Blending surfaces Input surfaces 88 • SOFTIMAGE|XSI Resulting blend Creating Surfaces Filleting Intersections A fillet is a surface that smooths the intersection of two others, like a molding between a wall and a ceiling. To create a fillet 1. Select one of the intersecting surfaces in Object mode. 2. Choose Create > Surface > Fillet Intersection from the Model toolbar. If you change your mind, press the Esc key to cancel the operation. 3. Pick the other surface. A fillet is created and the Fillet Intersecting Surfaces property editor opens. 4. Adjust the options as desired: - Specify the number of Subdivisions in U and V. - Specify the Radius and Radius Type of the fillet. The fillet can have a Constant radius, or one that interpolates from a Start to an End value in a Linear or Cubic way. If you set the radius value too high, it may be impossible to fit the fillet on the input surfaces. Filleting surfaces Input surfaces Resulting fillet Shaded view Modeling & Deformations • 89 Chapter 4 • Surfaces Merging Surfaces Merging two surfaces creates a third surface that spans the originals. You have the option of specifying an intermediary curve for the merged surface to pass through. For best results, first reparameterize the surfaces uniformly as described on page 93. To merge two surfaces 1. Select one of the surfaces in Object mode. 2. Choose Create > Surface > Merge from the Model toolbar. If you change your mind, press the Esc key to cancel the operation. 3. Pick the other surface. 4. Do one of the following: - To specify an intermediary curve for the merged surface to pass through, pick a curve. or - To create a merged surface without an intermediary curve, right-click in a 3D view. A merged surface is created and the Merge Surfaces property editor opens. 5. Set options as desired: - If the merged surface was not created along the boundaries you wanted, use the options on the Boundaries page to specify which boundaries of the original surfaces to use. - Use the Tolerance option on the Clean page to specify the maximum error for calculating the merged surface. Lower values result in more subdivisions. - Use the options on the Shape page to adjust the overall shape of the blend. In particular, if you selected a curve to pass through in step 4, set Seam to Curve. For information about each parameter, click ? for Online Help. Merging surfaces Input surfaces 90 • SOFTIMAGE|XSI Single merged surface Modifying Surfaces Modifying Surfaces You can modify surfaces in a variety of ways using the commands in the Modify > Surface menu of the Model toolbar. The Insert Knot and Remove Knot commands are described in Working with Knots and Knot Curves on page 100. All of the commands in the Modify > Surface menu change the surface’s underlying topology. Topological changes are always evaluated before any deformations, even if you applied the deformations first. If you don’t get the results you want, try freezing the surface’s operator stack as described in Freezing the Operator Stack on page 30. If you add points or knots to an object with clusters, the clusters will shift. Inverting Surfaces If the normals of a surface are pointing the wrong way, you can invert it: 1. Select one or more surfaces in Object mode. 2. Choose Modify > Surface > Inverse from the Model toolbar. In the Inverse Surface property editor that opens, leave the Inverse Surface option checked. When you invert a surface in SOFTIMAGE|XSI, the U direction becomes V and V becomes U. This is different from SOFTIMAGE|3D, where U becomes –U and V is unchanged. Reinverting Surfaces If you later decide that you no longer want the surface inverted, you can do one of three things: • Select the surface and choose Modify > Surface > Inverse again. This adds another Inverse Surface node to the operator stack and may cause unnecessary calculations. or • Select the surface and choose Edit > Modeling Properties, then uncheck the Inverse Surface parameter on the Inverse Surface tab. or • Use an explorer view to expand the surface’s node and delete the Inverse Surface operator. Modeling & Deformations • 91 Chapter 4 • Surfaces Opening and Closing Surfaces You can open a closed surface and close an open surface. A surface can be open in both U and V like a grid, closed in both like a torus, or open in one and closed in the other like a tube. 1. Select one or more surfaces in Object mode. 2. Choose Modify > Surface > Open/Close from the Model toolbar. The Open/Close Surface property editor opens. 3. Specify the directions in which to open or close the surface. Closed surfaces always open at their boundary. Reopening and Reclosing Surfaces If you later decide that you no longer want the surface to be open (or closed), you can do one of three things: • Select the surface and choose Modify > Surface > Open/Close again and set different options. This adds another Open/Close Surface node to the operator stack and may cause unnecessary calculations. or • Choose Edit > Modeling Properties, then click the Open/Close Surface tab and change options. or • Use an explorer view to expand the curve’s node and delete the Open/Close Surface operator. Shifting UV on Surfaces If a surface is closed in a direction, you can shift the boundary (U = 0 or V = 0 position) along the surface. 1. Select one or more surfaces in Object mode. 2. Choose Modify > Surface > Shift UV. The Surface Shift property editor opens. 3. Adjust the Shift U and Shift V parameters. As you change values, the corresponding boundary jumps to the nearest knot curve. 92 • SOFTIMAGE|XSI Modifying Surfaces Swapping UV on Surfaces You can swap the U and V directions on a surface. This simply changes which direction is considered U and which is V for the purpose of other modeling operations; it does not change the object’s shape. The new U direction is the old -V and the new V is the old U, preserving the direction of the normals. 1. Select one or more surfaces in Object mode. 2. Choose Modify > Surface > Swap UV from the Model toolbar. In the Surface UV Swap property editor that opens, leave the Swap UVs option checked. Reswapping U and V If you later decide that you no longer want U and V to be swapped, you can do one of three things: • Choose Edit > Modeling Properties, then click the Surface UV Swap tab and turn Swap UVs off. or • Use an explorer view to expand the surface’s node and delete the Surface UV Swap operator. or • Select the surface and choose Modify > Surface > Swap UV again. This adds another Surface UV Swap node to the operator stack and will cause unnecessary calculations. Cleaning Surfaces Cleaning a surface reduces the number of control points while keeping the same general shape. 1. Select one or more surfaces using the Object filter. 2. Choose Modify > Surface > Clean from the Model toolbar. The Clean Surface property editor opens. 3. Specify the directions in which to clean. You can also set Tolerance separately for U and V; the tolerance controls the maximum difference between the original curve and the resampled shape. Reparameterizing Surfaces Parameterization refers to the way that any position on a surface is described in terms of the parameters U and V. Different parameterizations give different behaviors as you manipulate the surface. Reparameterizing surfaces does not affect how textures are applied. In SOFTIMAGE|XSI, surfaces can have separate texture spaces. Modeling & Deformations • 93 Chapter 4 • Surfaces The various parameterization methods can affect the surface’s behavior when you perform certain operations. There are four parameterization methods available: • With uniform parameterization, the difference between successive knots is equal to 1 regardless of the actual length of the knot curve segment. (While it may seem strange that non-uniform rational B-splines can have a uniform parameterization, it is not a contradiction; “non-uniform” here means “not necessarily uniform.”) Uniform parameterization is especially suitable when merging. • With non-uniform parameterization (the default), the parameterization is not recomputed when you edit the surface. Instead, the exact shape of your surface is preserved. For this reason, you can manipulate surfaces with non-uniform parameterization more accurately. • With chord length parameterization, the difference between successive knot values is related to the actual length of each knot curve segment. If you could see the knot values on the curve, these values might be unequal: 1, 3.2, 5.3, and so on. Chord length always strives to preserve the relation between the length of the curve segment and the spacing of the knot vector. When you modify the curve, the parameterization of the curve is completely recomputed to preserve the relation of length of segment/knot spacing. As a result of this recomputation, when you move a control point, the surface changes slightly when you release the mouse button. • With centripetal parameterization, the knot spacing is related to the square root of the length of each knot curve segment. In some cases, this may make smoother surfaces. As with chord length parameterization, the parameterization is completely recomputed when you move points, with the result that the surface may change when you release the mouse button. To reparameterize surfaces 1. Select one or more surfaces in Object mode. 2. Choose Modify > Surface > Reparameterize from the Model toolbar. 3. Select a parameterization method. For a description of the available options, see Reparameterizing Curves on page 67. 94 • SOFTIMAGE|XSI Modifying Surfaces To reparameterize surfaces again If you later decide to change the parameterization again, there are three ways: • Select the surface and choose Edit > Modeling Properties, then click on the Reparameterize Surface tab and choose different options. The results of later operators in the stack may be affected. or • Select the surface and choose Modify > Surface > Reparameterize again. This adds another Reparameterize Surface node to the operator stack and may cause unnecessary calculations. or • Use an explorer view to expand the surface’s node and delete the Reparameterize Surface operator. This returns to the original parameterization—later operators in the stack may be affected. UV Parameterization and Textures If you reparameterize a surface first then apply a UV texture support, and later go back and change the parameterization in the original operator, the texture may slide on the surface. This is the same behavior as in SOFTIMAGE|3D. However, if you apply the UV texture support first and then reparameterize a surface, the texture will not slide. This is because the texture support comes before the reparameterization in the operator stack. Extending Surfaces You can extend a surface to a curve. 1. Select the surface. 2. Choose Modify > Surface > Extend to Curve on the Model toolbar. If you change your mind, press the Esc key to cancel the operation. 3. Pick the curve. The surface is extended and the Extend to Curve property editor opens. 4. If the wrong boundary of the surface was extended, specify the correct one in the Boundary box. You can also specify the Continuity (degree) and the Scaling factor. Modeling & Deformations • 95 Chapter 4 • Surfaces Stitching Surfaces You can stitch the boundaries of two surfaces together. This is similar to merging (described on page 90) but instead of creating a new surface, the original input surfaces are modified. For best results, first reparameterize the surfaces uniformly as described on page 93. 1. Select one of the surfaces in Object mode. 2. Choose Modify > Surface > Stitch from the Model toolbar. If you change your mind, press the Esc key to cancel the operation. 3. Pick the other surface. 4. Do one of the following: - To specify an intermediary curve to pass through, pick a curve. - To stitch without an intermediary curve, right-click in a 3D view. The surfaces are stitched and the Merge Surfaces property editor opens. 5. Set options as desired: - If the stitch was not created along the boundaries you wanted, use the options on the Boundaries page to specify which boundaries of the original surfaces to use. - Use the Tolerance option on the Clean page to specify the maximum error for calculating the merged surface. Lower values result in more subdivisions. - Use the options on the Shape page to adjust the overall shape. In particular, if you selected a curve to pass through in step 4, set Seam to Curve. For information about each parameter, click the help icon. 96 • SOFTIMAGE|XSI Working with Points Working with Points You can modify surfaces by moving points as well as by selecting points or point clusters then transforming them as described in Transforming Components and Clusters on page 34. You can also apply deformations to selected points and clusters in the same way that you apply them to objects; see Chapter 6: Introduction to Deformations on page 119 for general information about deformations, and other chapters for information about specific deformations. You cannot add or delete points directly. However, you can add and delete them indirectly by adding and removing knot curves; see Working with Knots and Knot Curves on page 100. Selecting Points You can select (or tag) points, add and remove points from the selection, and select point clusters using the selection filters in the main command area or shortcut keys. For more information about selecting in general, see Selecting and Deselecting Objects in Chapter 5 of the Fundamentals guide. To select points Choose the Point selection filter on the Selection panel and drag across points in a viewport. Alternatively, quickly press and release the t key to activate point selection in sticky mode, or press and hold the t key while dragging to select points in supra mode. Selected points are red. To extend the selection If both the SI3D Selection Model and Extended Component Selection options are off in the Selection menu, use modifier keys to add or remove points from the selection: • Shift+drag to select additional points. • Ctrl+drag to toggle-select points. • Ctrl+Shift+drag to deselect points. If either SI3D Selection Model or Extended Component Selection are on, use the different mouse buttons to add or remove points from the selection: • Left-click to select additional points. • Middle-click to toggle-select points. • Right-click to deselect points. Modeling & Deformations • 97 Chapter 4 • Surfaces To select clusters Activate point selection using either the Point selection filter button or the t key, then choose the Group/Cluster (+) selection filter in the Selection panel and drag to select any point in the cluster. Alternatively, if both the SI3D Selection Model and Extended Component Selection options are off in the Selection menu, activate point selection and middle-click to select any point in the cluster. Selected clusters are displayed in white. Moving Points As an alternative to selecting and translating points, you can move points individually using the Move Point tool: 1. Select an object. 2. Do one of the following: - Choose Modify > Component > Move Point tool from the Model toolbar. or - Quickly press and release the m key to activate the Move Point tool in sticky mode. or - Press and hold the m key move points in supra mode. 3. In a viewport, position the mouse pointer over a point on the object, then click and drag to move it. The Move Point tool has its own transformation mode “memory.” See Transformation Modes on page 35. Using Proportional Modeling When you move or transform points and point clusters, you can use proportional modeling. When this option is on, neighboring points are moved as well, with a fall-off that depends on distance. After you have moved points, you can adjust the proportional settings. To activate proportional modeling On the Model toolbar, choose Modify > Component > Proportional. When this option is on, neighboring points are affected any time you move or transform points and point clusters. To deactivate proportional modeling, choose Modify > Component > Proportional to remove the check mark. 98 • SOFTIMAGE|XSI Working with Points To adjust proportional settings 1. Select the object. 2. Do one of the following: - Choose Edit > Modeling Properties and click the Proportional tab. There is one Proportional property page for each MovePoint operation with proportional on. or - Choose Property on the Selection panel, expand a MovePoint node, and click the Proportional icon. 3. Adjust the parameters. Click Online Help (?) for details. Modeling & Deformations • 99 Chapter 4 • Surfaces Working with Knots and Knot Curves Knot curves are sets of connected knots along U or V—they are the “wires” shown in wireframe views. You can select knot curves to use with modeling operations such as lofting. You can also add and remove knot curves to change the resolution of a surface. When you add or delete knots, you change the topology of the surface. Topological changes are always evaluated before any deformations, even if you applied the deformations first. If you don’t get the results you want, try freezing the surface’s operator stack as described in Freezing the Operator Stack on page 30. Selecting Knot Curves To select knot curves 1. Select a surface object. 2. Choose the U Knot Curve or V Knot Curve selection filter in the Selection panel. 3. Click in a 3D view to select knot curves: If both the SI3D Selection Model and Extended Component Selection options are off in the Selection menu in the Selection panel, use modifier keys to add or remove points from the selection: Selection filter list - Shift+drag to select additional points. - Ctrl+drag to toggle-select points. - Ctrl+Shift+drag to deselect points. If either SI3D Selection Model or Extended Component Selection are on, use the different mouse buttons to add or remove points from the selection: - Left-click to select additional points. - Middle-click to toggle-select points. - Right-click to deselect points. Adding Knot Curves You can add knot curves to increase the resolution of a surface. You can add multiple knot curves at the same position (multiknots) to create sharp ridges. 1. Select a surface object. 2. Choose Modify > Surface > Insert Knot. The Insert Surface Knot property editor opens. 3. Set the options: - Choose the Insertion Domain for the new knot curve: Surface U or Surface V. 100 • SOFTIMAGE|XSI Working with Knots and Knot Curves - Use the Knot Value slider to choose the location along U or V for the new knot. - Use the Knot Multiplicity slider to specify how many overlapping knot curves to add at that location. Knot multiplicity = 1 Knot multiplicity = 2 Knot multiplicity = 3 Removing Knot Curves You can remove knot curves to decrease the resolution of surfaces. For multiknot curves, you can choose how many knot curves to remove. 1. Select a surface object. 2. Choose Modify > Surface > Remove Knot. The Remove Surface Knot property editor opens. 3. Set the options: - Choose the Removal Domain, that is, the type of knot curve you want to remove: Surface U or Surface V. - Use the Knot Value slider to choose the knot curve to remove. As you adjust this slider, the nearest knot curve is removed. - For multiknots, use the Knot Multiplicity slider to specify how many knot curves to remove from that location. Modeling & Deformations • 101 Chapter 4 • Surfaces 102 • SOFTIMAGE|XSI Chapter 5 Surface Meshes Modeling & Deformations • 103 Chapter 5 • Surface Meshes 104 • SOFTIMAGE|XSI Surface meshes are quilts of surfaces joined at their boundaries, just as polygon meshes are quilts of polygons joined at their edges. They are a special type of renderable geometry. Surface meshes are ideal for complex envelopes on skeletons. The component surfaces of a surface are called subsurfaces. The continuity at their seams is maintained automatically no matter how the surface mesh is deformed. Subsurfaces can also have their own local clusters, materials, and textures. The main distinction between surface meshes and ordinary surfaces (such as a primitive or a surface you create) is the number of subsurfaces. Ordinary surfaces have just one subsurface—they can be thought of as extremely simple surface meshes. You can select both simple and complex surface meshes with the Surface_Mesh filter in the Selection filter list in the Selection panel. Modeling & Deformations • 105 Chapter 5 • Surface Meshes Building Surface Meshes There are several parts to building a surface mesh: 1. Create a collection of separate surfaces. These will become the surface mesh’s subsurfaces. For example, you can import the component surfaces from scanning software, or you can shrinkwrap curves onto a high-resolution polygon mesh and use the curves to build the surfaces. 2. Optionally, apply the Snap Boundary operator to help align control points along the surfaces’ boundaries. 106 • SOFTIMAGE|XSI Building Surface Meshes 3. Assemble the surfaces into a single surface mesh. 4. Apply the continuity manager to ensure that the continuity is preserved at the seams. You can then deform and animate the surface mesh as desired. Each of these stages is explained in more detail in the sections that follow. Modeling & Deformations • 107 Chapter 5 • Surface Meshes Considerations for Modeling Component Surfaces There are several considerations when modeling the surfaces that will be assembled into a surface mesh: • All surfaces must be either cubic NURBS in both the U and V directions, or linear NURBS in both U and V. SCM (surface continuity manager) does not work with quadratic NURBS. • Surface meshes work by locking boundary points together then managing the continuity across the junction. Each boundary point can match one and only one point on another surface’s boundary. You can insert and remove knots to create the necessary boundary points. See Working with Knots and Knot Curves on page 100. • SCM uses the next row of points after the boundary to calculate continuity. Make sure that there are enough rows between two junctions: preferably two or more. • The assemble operation uses distance to determine whether two points across a junction should be locked together, so make sure points are overlapping or very close together. You can apply the Snap Boundary operator to help line up points along boundaries. Junction Types Surfaces can meet at an edge (I Junction), a T junction, or a star junction. Alternatively, an edge of one or more surfaces may be collapsed to a single point as at the poles of a sphere. I Junctions In an I junction, two surfaces are joined along a common border. This is the simplest of all possible junctions. 108 • SOFTIMAGE|XSI Considerations for Modeling Component Surfaces T Junctions In a T junction, three surfaces are joined. The border of one surface is joined to the borders of the other two. In addition, the other two surfaces share a border. Star Junctions In a star junction, several surfaces come together at a point. You can have three surfaces (Y junction), 4 surfaces (X junction), or more. When using star junctions: • Make sure that the points around the star junction are more or less equidistant. • Make sure that there are at least four control points between two star junctions. • Avoid placing star junctions in areas of high deformation. Good: Points around the junction are equidistant. Bad: This junction will not deform well. Modeling & Deformations • 109 Chapter 5 • Surface Meshes Make sure there are at least four pairs of points between star junctions. Collapsed Junctions In a collapsed junction, one boundary of a surface is collapsed to a point (like at the poles of a sphere) and two opposite boundaries are joined like a cone. Boundary collapsed to a single point. Opposite boundaries lined up. 110 • SOFTIMAGE|XSI Considerations for Modeling Component Surfaces Multiknots You can use multiknots (created by overlapping control points) to create discontinuities that help to line up surfaces. This is especially useful to eliminate holes where three or more surfaces meet in a complex way. Three surfaces meeting at a point can pose a problem. Simply joining them at the central point causes overlapping edges. To solve the problem, create knots of multiplicity 3 (shown here with an outline). The multiknots create a discontinuity that helps align the surfaces. Continuity is maintained across the multiknot curves as if they were junctions. Modeling & Deformations • 111 Chapter 5 • Surface Meshes Snapping Boundaries Snapping boundaries constrains the control points on the boundary of one surface to the matching control points on the boundary of another. This is useful when you are aligning points on boundaries before assembling a surface mesh. 1. Select one of the surfaces. 2. Set the selection filter to Boundary and select the boundary to which you want to snap points. 3. Choose Create > Surf Mesh > Snap Boundary from the Model toolbar. 4. Click to pick the second surface, then click again to pick the boundary you want. The boundary points of the second surface snap to the first, and the Snap Boundary property editor opens. 5. Adjust the parameters as desired: - Subsurface specifies the index of the subsurface that “owns” the boundary if one or other of the surfaces you selected was already a complex surface mesh. - Boundary specifies which boundary to snap on the corresponding surface. - Inverse Boundary lines up points in the opposite direction. - Offset is used when the two boundaries do not have the same number of points. See the next section Snapping Boundaries with Different Numbers of Points. The Snap Boundary operator is persistent—any time you move the second surface, the boundary points of the first one follow it. Repeat the procedure to snap other boundaries together. Snapping Boundaries with Different Numbers of Points If two boundaries don’t have the same number of points, you can still snap them. In addition, you can specify an offset to determine which points get snapped together. 1. Using the Boundary selection filter, select the boundary with fewer points. 2. Choose Create > Surf Mesh > Snap Boundary from the Model toolbar. 3. Click to pick the second surface, then click again to select the boundary with more points. The boundary points of the second surface snap to the first, and the Snap Boundary property editor opens. 4. In the Snap Boundary property editor, adjust the Offset slider to control which points get snapped to which. 5. Adjust the other parameters as desired. 112 • SOFTIMAGE|XSI Assembling Surface Meshes Assembling Surface Meshes Once you have created surfaces and aligned their boundaries, you can assemble them into a single surface mesh: 1. Select all the surfaces in Object mode. You can use the Shift key to select multiple objects at once. 2. Choose Create > Surf Mesh > Assemble from the Model toolbar. The Assemble NurbsMesh (SCM) dialog box opens. 3. Set parameters: - Specify a positional tolerance for matching boundary points. Any boundary points that are farther apart than this tolerance value will not be joined, and the entire boundary will be excluded from continuity management. - You also have the option of keeping local materials and any clusters you have defined on the surfaces. 4. Click OK. A surface mesh is created. The original surfaces remain, but there is no modeling relation between them and the surface mesh. At this point, the surface mesh is one object composed of separate subsurfaces. If you snapped any boundaries, they maintain positional continuity. If you also want them to have tangential continuity, that is, remain smooth as the surface mesh deforms, then you should apply SCM as described in the next section. Modeling & Deformations • 113 Chapter 5 • Surface Meshes Applying the Continuity Manager When you apply the SCM (surface continuity manager) Fixer Op to a surface mesh, it maintains the continuity across the assembled boundaries so that the surface mesh appears seamless as it is deformed. 1. Select the surface mesh in Object mode. 2. Choose Create > Surf Mesh > Continuity Manager from the Model toolbar. 3. Set the options: - Always Evaluate toggles the continuity manager on and off. You can switch this off for faster performance while you work, then switch it back on again before you render. - Continuity determines the continuity across every junction managed by the SCM Fixer Op: C0 (or positional continuity; that is, no holes but not necessarily smooth) or C1 (or tangential continuity; that is, smooth). • Only one SCM Fixer Op node can manage the continuity of a surface mesh at any time. • The SCM Fixer Op node is always evaluated last—it is always at the top of the operator stack even if you apply other operators after it. • If there appear to be seams, these could be artifacts. Increase the geometry approximation for a smoother result. For more information about geometry approximation in general, see Setting an Object’s Surface Approximation in Chapter 3 of the Rendering guide. 114 • SOFTIMAGE|XSI Working with Subsurfaces Working with Subsurfaces You can select subsurfaces or subsurface clusters, then transform as described in Transforming Components and Clusters on page 34. You can also apply deformations to selected subsurfaces and clusters in the same way that you apply them to objects; see Chapter 6: Introduction to Deformations on page 119 for general information about deformations, and see other chapters for information about specific deformations. In addition, you can apply local materials and textures to subsurfaces. Selecting Subsurfaces To select subsurfaces: 1. Select a surface-mesh object. 2. Choose the Subsurface selection filter in the Selection panel. 3. Click in a 3D view to select subsurfaces: If both the SI3D Selection Model and Extended Component Selection options are off in the Selection menu in the Selection panel, use modifier keys to add or remove points from the selection: - Shift+drag to select additional points. Selection filter list - Ctrl+drag to toggle-select points. - Ctrl+Shift+drag to deselect points. If either SI3D Selection Model or Extended Component Selection are on, use the different mouse buttons to add or remove points from the selection: - Left-click to select additional points. - Middle-click to toggle-select points. - Right-click to deselect points. Applying Local Materials and Textures You can apply materials and textures locally to selected subsurfaces on a surfacemesh object. This allows you to put different materials and textures on different subsurfaces. For more information, see Applying a Local Material and Applying a Local Texture in Chapter 3 of the Shaders, Lights & Cameras guide. Modeling & Deformations • 115 Chapter 5 • Surface Meshes 116 • SOFTIMAGE|XSI Section II • Deformations Chapter 6 Introduction to Deformations Modeling & Deformations • 119 Chapter 6 • Introduction to Deformations 120 • SOFTIMAGE|XSI Deformations are powerful modeling and animation tools. You can apply deformations to objects such as polygon meshes, surfaces, and surface meshes, as well as to hierarchies and clusters of components. You can also apply deformations to lattices and particle clouds. Deformations are applied as operators in the operator stack. At any time, you can go back into the history and modify the deformations parameters—the changes percolate up through the history and are reflected in the deformed object. Once you are satisfied with an object, you can freeze the operator stack. This discards the history and keeps only the current shape of an object, saving memory and computation time for updates. When you apply deformations to selected components, you can use a weight map to modulate the amplitude of the deformation. This lets you paint deformations onto objects. If you import an object deformed by curve or surface in branch mode from SOFTIMAGE|3D, it might not appear correctly in SOFTIMAGE|XSI. Modeling & Deformations • 121 Chapter 6 • Introduction to Deformations Considerations for Deformations Before you start applying and animating deformations, here are some of the most important points to remember: • All operations that modify the topology of an object (the Modify > Curve and Modify > Surface commands) are evaluated before any deformations, even if you applied the deformations first. If you don’t get the results you want, try freezing the curve’s operator stack as described in Freezing the Operator Stack on page 30. • An object with a hierarchy provides more possibilities for deformation animation than a single object. You can apply the deformation on the parent selected in branch mode (middle-mouse button) or tree mode (right-mouse button), in which case the deformation is transmitted to its children as if the hierarchy were a single piece. You can also deform the children individually: any deformation you apply explicitly to a child is added to the deformation inherited from the parent. 122 • SOFTIMAGE|XSI Modifying Deformations in the Operator Stack Modifying Deformations in the Operator Stack Once a deformation has been applied, it is kept in the operator stack. You can go back and change its parameters—the object is updated automatically. For example, if you bend an object and then randomize its surface, you can go back and change the angle of the bend. Modifying Deformation Parameters To modify the parameters of a deformation after it has been applied, you must reopen its property editor: 1. Do one of the following: - Select the deformed object, choose Edit > Modeling Properties, then click the tab for the deformation. or - Alt+right-click on the object in a 3D view, choose Edit > Modeling Properties, then click the tab for the deformation. or - Select the deformed object, click the Property or the Select button on the Selection panel, then click the icon of the deformation from the pop-up explorer that opens. or - In an explorer view with Show > Properties on, expand the object’s operator stack then click the icon of the deformation. 2. Modify parameters as desired. 1. The original hat 2. Result of a deformation (Bend) 3. Result of a second deformation (Twist) 4. Muting the Bend yields a Twist. Modeling & Deformations • 123 Chapter 6 • Introduction to Deformations Muting Deformations All deformations can be muted. This temporarily turns off the deformation, preventing it from affecting the objects on which it is applied. This can be useful to improve the speed of interaction in large scenes or to make other selections and adjustments. To mute or unmute a deformation 1. Open the deformation’s property editor as described in the previous section, Modifying Deformation Parameters. 2. Toggle the Mute option. When an operator is muted, the letter m appears on its icon in explorer views. You can also mute envelope deformations in the same way. This gives you faster performance because you can pose a skeleton without updating the envelope. When the skeleton is in the desired position, unmute the envelope. Removing Deformations To remove a deformation from an object 1. Select the deformed object. 2. Click the Select button on the Selection panel. A pop-up explorer opens. 3. Select the deformation node’s name, then press the Delete key. Freezing the Operator Stack 124 • SOFTIMAGE|XSI Freezing the were created as is, as a primitive. You can no longer go back and modify its deformations, but you save on computer memory and time. For more information see Freezing the Operator Stack on page 30. Weight Maps Weight Maps Weight maps are properties of point clusters that let you modulate deformations. Each cluster can have multiple weight maps so that you can modulate different parameters in different ways. You can create weight maps, paint weight values on them, connect them to deformation parameters, and mix multiple weight maps on the same parameter. You can also change the display color for weights as well as freeze a weight map’s history. Creating Weight Maps Weight maps are a property of clusters. 1. Select the element to which you want to apply a weight map: - If you select a cluster, the weight map will be applied to it. - If you select an object, a cluster will be created for all the points on the object and the weight map will be applied to the cluster. - If you tag (select) points, a cluster will be created and the weight map will be applied to the cluster. Selected cluster 2. Choose Get > Property > Weight Map from the Model toolbar. A weight map is applied and its property editor opens. Modeling & Deformations • 125 Chapter 6 • Introduction to Deformations To see the weight map in a viewport, select it and make sure that the View mode is set to Constant or Shaded and that Show > Property Maps is on. This options are automatically toggled on temporarily when you activate the Paint tool. 3. Set the options you want for your base map on the Weight Map Generator page. For example, if you set the Weight Map Type to Constant and the Base Weight to 0, you start with a blank map for painting weights. You can also choose from a selection of linear and radial gradients, and so on. Blank weight map, ready for painting When you create a weight map it is automatically selected, so you can immediately paint on it as described in Painting Weights on page 126 or apply a deformation as described in Deforming with Weight Maps on page 127. Selecting Weight Maps Weight maps are stored under the clusters they belong to. To select a weight map 1. Select the object. 2. Choose Explore > Property Maps from the Selection panel. A pop-up explorer opens. 3. Select the desired weight map by clicking on its name. Painting Weights To paint weights on a map 1. Select the weight map. 2. Activate the Paint tool by choosing Create > Property > Paint Tool or by pressing the w key. The pointer changes to reflect the current brush width. You can change the radius of the brush by clicking and dragging the middle mouse button. To change other properties, press Ctrl+w or choose Create > Property > Brush Properties. 3. Click and drag to add paint strokes. Use the right mouse button to remove weight or paint negative weights. 126 • SOFTIMAGE|XSI Weight Maps When painting, you can increase performance by reducing the geometry approximation settings. The Paint tool uses the triangulation of the object to follow its surface. For more information see Geometric Approximation Parameters on page 27. A spot of paint and it’s as good as new. Deforming with Weight Maps If you apply a deformation when a cluster’s weight map is selected, the weight map is automatically used to modulate the deformation’s amplitude. 1. With a cluster’s weight map selected, choose a deformation from the Modify > Deform menu on the Model toolbar. Refer to the other chapters of this guide for descriptions of the available deformations. 2. In the deformation’s property editor, adjust the parameters as desired. After you have applied a deformation on a weight map, you can select the weight map again and then press the w key to add more paint strokes. If you select the object and choose Edit > Modeling Properties, you see the parameters for the deformation only. However if you click on the deformation’s icon in an explorer, you see the parameters for the deformation and weight map together. A slight Push is all that’s needed. Modeling & Deformations • 127 Chapter 6 • Introduction to Deformations Connecting Deformation Parameters to Weight Maps Any parameter that has a connection icon to the right of its slider can be connected to a weight map. If you have already applied a deformation, you can connect its parameters to weight maps later or connect them to different maps. To connect a weight map 1. Open the deformation’s property editor. 2. Click on the connection icon of a parameter. A menu pops up. 3. Choose Connect. A pop-up explorer opens. 4. Navigate through the explorer and pick a weight map. The selected weight map turns purple. 5. Click outside the pop-up explorer to close it. The connection icon changes to show that a weight map is connected. When a map is connected, you can click on this icon to open the weight map’s property editor. Some deformations have several parameters with a connection icon; for example, Curve Deform has connection icons for Along Curve, Along Normal, and Along Binormal. However, all parameters share the same connection—if a weight map is connected to one parameter, it is connected to all of them. To disconnect a weight map 1. Open the deformation’s property editor. 2. Right-click on the connection icon of a connected parameter. A menu pops up. 3. Choose Disconnect. Mixing Weight Maps You can mix multiple weight maps additively on the same parameter. 1. Open the deformation’s property editor. 2. Disconnect any weight maps that are currently connected. 3. Click on the connection icon of a parameter. A menu pops up. 4. Choose Add. A pop-up explorer opens. 5. Navigate through the explorer and Ctrl+click to toggle-select multiple weight maps. The selected weight maps turn purple. 6. Click outside the pop-up explorer to close it. A new MappingNode weight map is created to hold the result of the blended maps. 128 • SOFTIMAGE|XSI Weight Maps 7. Use the parameters on the Weight Maps Mixer Op page to control the blend. There are three parameters for each weight map in the blend: - Use the Multiplier and Offset parameters to map weight values from [0, 1] to the desired range using the formula (Multiplier * Weight) + Offset. For example, to obtain a range of [-1, 1], use a Multiplier of 2 and an Offset of –1. - Use the Weight parameter to set the mix weight of the corresponding weight map relative to the others in the blend. Setting Weight-Map Properties You can modify weight-map properties. For example, you can change the name or display color—this is useful if you have several weight maps on the same cluster. To display a Weight Map property editor 1. Select the object. 2. Choose Explore > Property Maps from the Selection panel. A pop-up explorer opens. 3. Click on the icon of the weight map. 4. Set the options to change the weight map name or display color. Freezing Weight Maps Weight maps can be frozen. This collapses the weight map generator (the base constant or gradient map you chose when you created the weight map) together with any strokes you have applied. After you have frozen a weight map, you can still add new strokes but you cannot change the base map or delete any strokes you performed before freezing. 1. Select the weight map. 2. Click the Freeze button on the Edit panel in the Edit panel. Modeling & Deformations • 129 Chapter 6 • Introduction to Deformations 130 • SOFTIMAGE|XSI Chapter 7 Basic Deformations Modeling & Deformations • 131 Chapter 7 • Basic Deformations 132 • SOFTIMAGE|XSI There are a variety of basic deformations you can quickly apply to objects. The parameters of each deformation are set in a single property editor and require no other input, so you can modulate the deformation easily. The deformations can be applied to objects, hierarchies, and clusters. With clusters, you can use weight maps to further modulate the deformation. Modeling & Deformations • 133 Chapter 7 • Basic Deformations Applying Basic Deformations You can apply a basic deformation to an object, hierarchy, or cluster. With clusters, you can also modulate the deformation with a weight map. 1. Select the object, hierarchy, cluster, or weight map. Undeformed hat 2. Choose one of the basic deformations from the Deform menu on the Model or Animate toolbar: - Bend folds an object. You can specify the axis that gets bent, the angle of the bend, the radius over which the bend occurs, the position where the bend starts, and the direction of the bend. Bend deformation - Bulge pushes an object’s points out from the center. You can specify which axes the deformation occurs on, as well as the reference axis, the amplitude, and the amplitude’s profile. Bulge deformation 134 • SOFTIMAGE|XSI Applying Basic Deformations - Shear pulls the ends of an object in opposite directions. Again, you can specify which axes the deformation occurs on, as well as the reference axis, the amplitude, and the amplitude’s profile. Shear deformation - Taper gradually scales an object in one direction. Yet again, you can specify which axes the deformation occurs on, as well as the reference axis, the amplitude, and the amplitude’s profile. Taper deformation - Twist progressively rotates an object in one direction. You can specify the axis or rotation, the maximum angle, and the angle’s modulating profile. You can also use this deformation to create a vortex, where the amplitude of the rotation depends on the distance from the axis. Twist deformation Modeling & Deformations • 135 Chapter 7 • Basic Deformations - Push moves points in the direction of their normals. You can specify the amplitude. Push deformation - Randomize moves points around randomly. You can specify the maximal displacement in each axis, the number of repetitions, and the way that random values are generated. Randomize deformation - Shape Jitter is like an animated Randomize. You can additionally specify time control options. Shape jitter deformation 3. Adjust and animate the parameters as desired. Click Online Help (?) for information about every parameter on a page. 136 • SOFTIMAGE|XSI Chapter 8 Deforming by Cluster Modeling & Deformations • 137 Chapter 8 • Deforming by Cluster 138 • SOFTIMAGE|XSI A cluster is a named group of components that are grouped together for a specific modeling or animation purpose. By grouping and naming components, it makes it easier to work with that same group of components again and again. For example, by grouping all points that form an eyebrow, you can easily deform the eyebrow as an object instead of trying to reselect the same points each time you work with it. A cluster stores only an index plus a vector for each component, not all geometry information of each point in the cluster. You can define as many clusters on an object as you like, and the same component can belong to a number of different clusters. You can define clusters for points, edges, polygons, and subsurfaces. Each cluster can contain one type of component. For example, a cluster can contain points or polygons, but not both. Spinning top with two clusters Top Bottom Modeling & Deformations • 139 Chapter 8 • Deforming by Cluster Cluster Basics You can create and select clusters, set viewing options, and add and remove components. If you add points or knots to an object with clusters, the clusters will shift. Creating a Cluster To create a cluster of components on an object 1. Select an object. 2. Select some components using one of the following methods: - On the Selection panel, specify the type of component, then use the mouse to select. - Press the t key for points or the y key for polygons, then left-click to select, middle-click to deselect, and right-click to toggle the selection status of components. 3. Choose Edit > Create Cluster from the Edit panel. A cluster is created and automatically selected. 4. If desired, press Enter to open the cluster’s property editor and change the default name. You can also change the default display color for unselected clusters—this is useful if you have many clusters on the same object. Clusters are also created automatically if you apply a deformation or store a shape key on selected components. Selecting Clusters You can select clusters using the buttons on the Selection panel, by clicking in a 3D view or by using the explorer. Selected clusters are displayed in white. To select a cluster using the Selection panel 1. Select the object that contains the cluster. 2. Click the Cluster button on the Selection panel. A transient Explorer opens, listing the available clusters on the object. 3. Click on a cluster’s name to select it. 140 • SOFTIMAGE|XSI Cluster Basics To select a cluster in a 3D view 1. Select an object with a cluster. 2. Do either of the following: - Activate the filter for the desired type of component on the Selection panel; alternatively, press the t key for points or the y key for polygons. Next, choose the Group/Cluster (+) selection filter then click and drag to select any component in the cluster. or - If both the SI3D Selection Model and Extended Component Selection options are off in the Selection menu, switch point selection on and use the middle mouse-button to select any point in the cluster. 3. The entire cluster is selected. If the selected components belong to multiple clusters, all clusters that contain them are selected. You can use the Select button on the Selection panel to refine the selection list. To select a cluster in an explorer 1. Make sure that Show > Clusters is on. 2. Expand the object’s node, then its operator stack (first child node), then its Clusters folder. 3. Click on the cluster’s name. Viewing Clusters You can toggle on or off the display of clusters in the 3D views, change cluster display colors, and display cluster reference frames. Displaying Clusters You can change how clusters are displayed in each of the 3D views by doing one of the following: • To quickly toggle the display of clusters on selected objects, choose Clusters from an individual viewport’s Show menu or from the View menu on the main-menu bar to set all viewports. or • For more options, display the Visibility Settings property editor by choosing Visibility Options from an individual viewport’s Show menu or from the View menu on the main-menu bar to set all viewports. Modify the settings on the Clusters property page. Modeling & Deformations • 141 Chapter 8 • Deforming by Cluster Changing Cluster Display Colors You can also change the display color of each cluster individually. This makes it easy to distinguish clusters on a complex model. 1. Select a cluster and press the Enter key. The Cluster property editor opens. 2. Use the sliders to adjust the red, green, and blue components of the cluster’s display color. Cluster Reference Frames When working with clusters, you may find it useful to display the cluster reference frames. The reference frame acts like a center for the selected clusters or components. It defines the reference axes when you transform clusters in Local mode. To display cluster reference frames: 1. In a viewport, choose Show > Visibility Options to edit the properties of that viewport. Alternatively, choose View > Visibility Options (All Views) from the main-menu bar to edit the properties of all viewports. 2. On the Attributes tab of the Visibility Settings property editor, set the following: - Cluster Reference Frame displays an axes indicator for the selected clusters or components. - Cluster Reference Frame Info displays the XYZ position of the reference frame. Cluster reference frame Adding Components to Clusters To add components to an existing cluster 1. Select an object with a cluster. 2. On the Selection panel, specify the type of component. Alternatively, press the t key for points or the y key for polygons. 3. Select a cluster with the middle mouse button. 4. Holding the Shift key down, select components with the left mouse button. 5. Choose Edit > Add to Cluster from the Edit panel. 142 • SOFTIMAGE|XSI Cluster Basics Removing Components from Clusters To remove components from a cluster 1. Select an object with a cluster. 2. Select a cluster. 3. Holding the Shift key down, select components with the left mouse button. 4. Click the Uncluster button or choose Edit > Remove from Cluster from the Edit panel. Clusters’ Last Stand To remove a cluster Removing a cluster removes the group but does not remove the components from the object. To remove a cluster from an object. 1. Select an object with a cluster. 2. Select a cluster. 3. Click the Uncluster button or choose Edit > Remove Cluster from the Edit panel. Alternatively, you can delete a cluster using the explorer view. Animating Clusters You cannot animate cluster transformations directly. Instead, you can use the Cluster Center deformation as described in Deforming by Cluster Centers on page 144 or use shape animation as described in Chapter 12: Shape Animation of the Animating guide. Modeling & Deformations • 143 Chapter 8 • Deforming by Cluster Deforming by Cluster Centers You can assign the center of a cluster to a deformer like a null or other object. The cluster is constrained to the center and you can deform the object by moving the center. You can animate the deformation by animating the center. This is especially effective if you use a weight map to create a falloff that modulates the amplitude of the deformation. You can create a null and assign it as the center when you create a cluster, or you can create a cluster and assign a center later. Transform the null... ...to transform the cluster. In SOFTIMAGE|XSI, cluster centers are implemented as a deformation operator. You can mute the deformation, use weight maps, and so on, like any other deformation. To create a cluster and a center 1. Select components on an object. 2. Choose Edit > Create Cluster with Center from the Edit panel. A cluster and a null are created, with a Cluster Center deformation already applied. The null center is automatically selected. 3. Modify and animate the scaling, rotation, and translation of the null to affect the cluster. 144 • SOFTIMAGE|XSI Deforming by Cluster Centers To assign a center to a cluster 1. Create an object to act as the cluster center. You can use any type of object; you are not restricted to nulls. 2. If desired, create a weight map for the cluster as described in Creating Weight Maps on page 125. 3. Make sure that the cluster (or the weight map, if you are using one) is selected, and choose Deform > Cluster Center from the Model or Animate toolbar. 4. Pick the null. The Cluster Center property editor opens. 5. Lock the Cluster Center property editor to prevent it from updating, then select and move the null. Adjust the parameters on the Cluster Center property editor to achieve the desired effect; for details open Online Help (?). To achieve the same effect as SOFTIMAGE|3D when rotating, make sure that SI3D Rotation is on—rotations are performed around the center’s center. When this option is off, rotations are performed around the cluster’s reference frame. Modeling & Deformations • 145 Chapter 8 • Deforming by Cluster 146 • SOFTIMAGE|XSI Chapter 9 Spatial Deformations Modeling & Deformations • 147 Chapter 9 • Spatial Deformations 148 • SOFTIMAGE|XSI Spatial deformations are like space warps: they work by distorting the regular, orthogonal space in which an object exists and moves. For example, you can deform an object by a curve so that its Y axis follows the shape of the curve, or you can deform by a surface so that the object’s XY plane follows the surface’s UV. The object appears to be distorted, but it is actually preserving its shape relative to its own distorted space. Modeling & Deformations • 149 Chapter 9 • Spatial Deformations Deforming by Curves Deformation by curve distorts an object by remapping the Y axis to any curve you pick. You can animate the object in the deformed space defined by the curve, and you can also animate the shape of the curve itself. Since deformation by curve uses the Y axis, you need to build the object so that the axis you want facing forward along the curve is pointing up in the positive Y direction. If you can’t build your model this way, translate and rotate the model until it is at the origin and faces up in positive Y. Choose Transform > Reset Center - All Transforms to freeze the object before continuing, or use the options on the Constraint page when you apply the deformation. Object and curve before the deformation is applied 150 • SOFTIMAGE|XSI Object and curve after the deformation is applied Deforming by Curves To deform by curve 1. Create a curve using any of the available tools. Note that if the curve contains extremely sharp bends, the object may become severely distorted. For information about curves in general, see Chapter 3: Curves on page 51. 2. Select the object, branch, group, or model you want to deform. 3. Choose Modify > Deform > by Curve from the Model toolbar. 4. Pick the curve. The center of the deformed object snaps to the beginning of the curve, and the Curve Deform property editor opens. 5. Use the Translation, Scaling, and Roll parameters to move the object in deformed space. You can still use the standard SRT commands to move the object in ordinary space. 6. If you moved either the curve or the object from the global scene center before applying the curve deformation, you can compensate with the options on the Constraint page: - If you moved the object before deforming, turn Constrain to Deformer on. - If you moved the curve before deforming, turn Constrain to Deformee on. - If you moved both, turn both options on. If you deformed an object by a curve, you should freeze its operator stack before using it as an envelope. If you import an object deformed by curve in branch mode from SOFTIMAGE|3D, it might not appear correctly in SOFTIMAGE|XSI. This is because of basic differences in how deformation by curve is implemented. However, it should still be possible to recreate the original effect by modifying the Curve Deform parameters in SOFTIMAGE|XSI. Modeling & Deformations • 151 Chapter 9 • Spatial Deformations Deforming by Surfaces Deformation by surface distorts an object by remapping the XZ plane to the UV space of a surface you pick. You can animate the object in the deformed space defined by the surface, and you can also animate the deforming surface. Object and surface before the deformation is applied Object deformed by the surface To deform by surface 1. 2. 3. 4. Create a surface of any shape using any of the surface or deformation tools. Select the object, branch, group, or model you want to deform. Choose Modify > Deform > by Surface from the Model toolbar. Pick the surface. The object deforms and the Surface Deform property editor opens. 5. Use the Translation, Scaling, and Roll parameters to move the object in deformed space. In particular, if the object is severely distorted, try using the Scale parameters to shrink it. You can still use the standard SRT commands to move the object in ordinary space. 6. If you moved either the surface or the object from the global scene center before applying the curve deformation, you can compensate with the options on the Constraint page: - If you moved the object before deforming, turn Constrain to Deformer on. - If you moved the surface before deforming, turn Constrain to Deformee on. - If you moved both, turn both options on. If you deformed an object by a surface, you should freeze its operator stack before using it as an envelope. If you import an object deformed by surface in branch mode from SOFTIMAGE|3D, it might not appear correctly in SOFTIMAGE|XSI. 152 • SOFTIMAGE|XSI Deforming by Lattices Deforming by Lattices Lattices make it easy to deform a large amount of geometry at once. They allow you to deform objects by warping the 3D space around them. A lattice is a control box with a variable resolution, looking rather like scaffolding surrounding an object. When you move a point on a lattice, its original location in space is mapped to its new location. This warps the space between points, and objects that are affected by the lattice become distorted. Lattice deformations have two parts: • A lattice object. • A Lattice deformation operator on each object deformed by the lattice. You can set the properties for these parts independently, so that several objects can be deformed in different ways by the same lattice object. Unlike in SOFTIMAGE|3D, lattices are not a special type of geometry. You can select and transform points, move points, create clusters, assign cluster centers, apply deformations, use shape animation, and so on, just as with other 3D objects. Lattices do not need to be the parent of the deformed objects. However, to obtain similar results to SOFTIMAGE|3D when transforming lattices, make the deformed objects the children of the lattice. Scenes with lattice animation might not be imported correctly. There may be differences because transitions in SOFTIMAGE|XSI transitions are between two shape clips, while in SOFTIMAGE|3D transitions are between all shape keys. You can fix this problem in the animation mixer by mixing weight curves instead of using transitions. Deform objects by moving points on lattices. Modeling & Deformations • 153 Chapter 9 • Spatial Deformations Creating and Applying Lattices You can create a lattice and apply it to an object at the same time: 1. Select the object, branch, group, or model you want to deform. 2. Choose Get > Primitive > Lattice from the Model toolbar. A lattice is created to fit the object, and the lattice’s property editor opens. 3. You can set the lattice’s subdivisions in each axis; more subdivisions give greater resolution for the deformation. You can also set the interpolation type along each axis. Curve yields smoother deformations than Linear. Undeformed Linear interpolation Curve interpolation 4. Deform the lattice in any way. For example, you can select and move points, use clusters, or apply any other deformation to it. You can also animate the lattice’s deformation. As the lattice deforms, the object deforms with it. Applying an Existing Lattice You can also apply an existing lattice to objects: 1. If necessary, create a new lattice by first deselecting all objects then choosing Get > Primitive > Lattice from the Model toolbar. A lattice is created and the Lattice property editor opens. You can set the lattice’s subdivisions and interpolation type. 2. Select the object, branch, or model you want to deform. 3. Choose Modify > Deform > by Lattice. 4. Pick the lattice. The Lattice deformation property editor opens. 5. Deform the lattice in any way. 154 • SOFTIMAGE|XSI Deforming by Lattices Setting Lattice Deformation Properties You can set various properties for the Lattice deformation operator on each object deformed by a lattice. To open the Lattice deformation property editor Do one of the following: • Select the deformed object, choose Edit > Modeling Properties, then click the Lattice tab. or • Alt+right-click on the object in a 3D view, choose Edit > Modeling Properties, then click the Lattice tab. or • Select the deformed object, click the Property or the Select button on the Selection panel, then click the Lattice icon from the pop-up explorer that opens. or • In an explorer view with Show > Properties on, expand the object’s operator stack then click the Lattice icon. Setting the Scope of Lattice Deformations By default, all points on an object are deformed by a lattice no matter where they are in space. You can set the Deformation Scope in the Lattice deformation property editor so that only those points that are within the lattice object itself are affected: • All Points deforms the entire object no matter where it is. • Points Inside Pre-deformed Lattice deforms only those points that would currently be within the undeformed lattice’s shape. As you move the object away from the lattice, points that fall outside are not affected. Position of undeformed lattice Deformation Scope = All Points Deformation Scope = Points Inside Pre-deformed Lattice Modeling & Deformations • 155 Chapter 9 • Spatial Deformations Scaling You can control how an object is affected when the lattice object is scaled by setting the Scaling Mode option in the Lattice deformation property editor: • No Scaling—The deformed object is not scaled when the lattice object is scaled. However, the deformed object is still affected as the lattice’s points move when scaled. • Treat Scaling as Deformation—The deformed object is scaled before the lattice deformation is applied. • Apply Scaling to Geometry (SI3D)—The lattice deformation is applied first, then the deformed object is scaled. This is the behavior in SOFTIMAGE|3D. 156 • SOFTIMAGE|XSI Deforming by Spines Deforming by Spines Deformation by spine lets you change an object’s shape using curves as deformers, similar to the way that you can deform envelopes by moving bones in a chain. Each curve defines a cylinder of influence with an associated radius, and object points within a curve’s influence are assigned to that curve. If an object point is close to two or more curves, it is weighted between them. However, unlike envelopes, you cannot manually adjust the weighting. To deform by spine 1. Create the curves for deforming the object. The curves should be as close to the object’s surface as possible; otherwise, points on the object’s surface may fall outside the curve’s radius of influence. Also, note that the closer the curves’ points are to the object’s points, the more closely the deformation of the object’s surface will follow the curves’ points as you move them. Surface and curve You can use the Shrinkwrap deformation to project curves onto the object’s surface. Don’t forget to freeze the shrinkwrapped curves before using them with Deform by Spine. For more information about Shrinkwrap in general, see Chapter 10: Shrinkwrap on page 163. 2. Select the object you want to deform. 3. Choose Deform > By Spine. This command is available under Modify on the Model toolbar as well as under Deform on the Animate toolbar. 4. Pick the curves you want to act as deformers. 5. When you have finished picking curves, click the right mouse button in a geometry view. Clusters are created and colored according to the deformer, and the Deform by Spine property editor appears. Modeling & Deformations • 157 Chapter 9 • Spatial Deformations Clusters on the surface 6. Adjust the values as desired: - Falloff Amplitude controls the modulation of the deformation along the radius of influence from the curve to the edge of the effect. - Radius controls the base width of the cylinder of influence in SOFTIMAGE units. - Longitudinal Radius controls the actual width of the cylinder of influence as a fraction of the base Radius along the percentage length of the curve. 7. Select a curve deformer and use it to change the shape of the object. Any change you make to a curve deformer is reflected in the shape of the object. For example, you can: - Translate, rotate, or scale the curve. - Move points, either using the Move Point tool or by selecting points and transforming them with the SRT tools. You can also add points to the curve for finer control. For more information, see Modifying Curves on page 65. - Apply deformations like Twist and Bend to the curve. Move the curve to pull the points. 158 • SOFTIMAGE|XSI Deforming by Spines Modifying Spine Weights Spine deformations use the same mechanism as envelopes for weighting points to deformers. You can modify the weights of points in a spine deformation either manually or by painting. Both methods use the envelope weight editor. Each point on an envelope has a total weight of 100%, which is divided between the deformers to which it is assigned. For example, if a point is weighted by 75% to deformer A and 25% to deformer B, then A pulls three times as strongly as B on the point. Displaying the Envelope Weight Editor To display the envelope weight editor for a spine deformation 1. Select an object deformed by spine. 2. Choose Deform > Envelope > Edit Weights on the Animate toolbar, or press Ctrl+e. Choose a weight option. Change how the selected point is weighted to the selected deformer. Select a deformer to modify how points are weighted to it. Select a point to modify its weight. View how the selected point is weighted to different deformers. Choose a different display color for deferrers and points. Points highlighted in green are weighted to the selected deformer. Modeling & Deformations • 159 Chapter 9 • Spatial Deformations The first time you open the envelope weights editor, you will probably need to resize it to see all the controls. To keep the new size for future sessions, first close the editor and then save your layout. For more information about saving layouts, see Customizing the Layout in Chapter 8 of the Fundamentals guide. If you will be working for a while with the envelopes weight editor, it’s a good idea to lock it to prevent it being recycled by other property editors. Selecting Deformers To select a deformer, click on it in the Deformers column. The selected deformer is highlighted in white in the 3D views. Points that are wholly or partly weighted to the selected deformer are highlighted in green in the Elems column. Selecting Points To select a point, click on it in the Elems column. The selected point is highlighted in white in the 3D views. The Wghts column shows how the selected point is weighted to all the deformers. You can also select multiple points. Click and drag to select a range of points. Ctrl+click to select or deselect multiple points individually. Showing Selected Points Because the list of points is often very long, you can restrict it to the points you are working on. In a 3D view, tag the points using the t supra key. To show all points again, untag all points. Modifying Display Colors You can change the display color for deformers and their point clusters, as well as set the threshold for displaying points in a deformer’s color. To display deformer colors on points in 3D views, make sure that Show > Clusters is on. To change deformer colors To change the display color of a deformer and its point cluster in 3D views, click on a color swatch and use the color editor. 160 • SOFTIMAGE|XSI Deforming by Spines To change color thresholds By default, points that are assigned 50% or more to a deformer are displayed in the corresponding color. To change this threshold for a particular deformer: 1. Find the deformer in the Deformers column of the envelope weights editor, then find the name of its cluster in the corresponding row of the Clusters column. 2. Click the Clusters button on the Selection panel, then click the icon of the deformer’s cluster. The cluster’s property editor opens. 3. On the Envelope Selection Clusters Op page, set the Weight Threshold to the desired value. Setting Weight Options You can modify weights by painting or by editing them manually, as described in the sections that follow. Either way, the weight options determine how the weights are affected by values you set: • Absolute sets the weight to exactly the value you apply. • Additive adds or subtracts an amount to the current weight. • Add Percentage adds or subtracts a percentage of the current weight. Editing Weights Manually To edit spine deformation weights manually 1. In the envelope weights editor, select a point in the Elems column. You can select multiple points in the Elems column, but note that the displayed weight values reflect only the first point selected. 2. Select a deformer in the Deformers column. 3. Use the Weight slider to adjust how the selected points are weighted to the deformer according to the current Weight Options. Alternatively, you can type values directly in the Wghts column. Modeling & Deformations • 161 Chapter 9 • Spatial Deformations Painting Weights To paint spine deformation weights interactively in a viewport 1. Display the envelope weights as described in the previous section. 2. Press the w key to activate the Paint tool. The pointer changes to reflect the current brush width. To change the width, click and drag with the middle mouse button. You can also set the radius and other brush properties by choosing Get > Property > Paint Properties or pressing Ctrl+w. 3. Click on the name of a deformer in the envelope weights editor to select it and paint in its color. You can toggle the display of weight maps for individual deformers on or off by clicking in the Vis. column. To make it easier to see the weights you are painting, turn off the display for the other deformers. 4. In a viewport, click and drag to paint on the envelope. Use the left mouse button to add weight and the right mouse button to remove weight. When painting, you can increase performance by reducing the geometry approximation settings. The Paint tool uses the triangulation of the object to follow its surface. For more information see Geometric Approximation Parameters in Chapter 1 of the Modeling & Deformations guide. Freezing Envelope Weight Maps You can freeze spine deformation weight maps. This operation collapses the weight map’s operator stack, removing the individual paint stroke operations. It also removes the ability to change the falloff and radius of the cylinder of influence. 1. Make sure that the envelope weight map is selected. To select it, first select the envelope then click the Property button on the Selection panel, expand the Envelope Operator node, and click on the name of the map Envelope_Weights. 2. Choose Edit > Freeze Operator Stack or click the Freeze button on the Edit panel. 162 • SOFTIMAGE|XSI Chap ter 10 Shrinkwrap Modeling & Deformations • 163 Chapter 10 • Shrinkwrap 164 • SOFTIMAGE|XSI The shrinkwrap deformation projects a wrapper object onto the surface of a target object. You can completely engulf the target thereby giving the wrapper the same overall shape, or you can apply the wrapper onto the target like a decal. You are not restricted in the type of objects that you can shrinkwrap. You can shrinkwrap any combination of surfaces, surface meshes, polygon meshes, and curves onto other like objects. Deforming surface mesh objects with multiple subsurfaces may be slow. Sample Uses of Shrinkwrap Among many things, the shrinkwrap deformation can be used to: • Create a metamorphosis between two dissimilar objects by shrinkwrapping an object like a sphere onto each of the two objects separately, and then selecting the resulting shapes as keys for shape animation. • Project a curve onto a surface. For example, you can project a path onto uneven terrain, or use a shrinkwrapped curve as a modeling aid. • Create single-surface objects. An object like a sphere can be shrinkwrapped to a hierarchy composed of several objects. This creates a simpler object consisting of a single surface without seams. • Shrinkwrap surfaces onto a high-resolution polygon-mesh object to capture detail. Types of Projection When shrinkwrapping, there are several choices for how each point of the wrapper is projected onto the target: • Toward an inner object until they hit the surface of the target. • Toward the center of the target. • Along an axis. If any points of the wrapper do not hit the surface of the target using the selected projection type, they are not affected by the shrinkwrap deformation. Other Shrinkwrap Controls With any type of projection, there are two other parameters that control the shrinkwrap deformation: Reverse Projection and Amplitude. Reverse Projection The Reverse Projection option in the Shrinkwrap property editor controls the direction in which the points of the wrapper object are projected. When on, points are moved in the opposite direction. For example, you can project the wrapper along an axis in the negative direction instead of the positive direction. Modeling & Deformations • 165 Chapter 10 • Shrinkwrap Amplitude The Amplitude parameter in the Shrinkwrap property editor controls how far the points of the wrapper object are moved toward the target: • When the Amplitude is 1, the points of the wrapper object are deformed to the surface of the target. • Between 0 and 1, the points are deformed between their original positions and the target. • Below 0, the points deform away from the target. • Above 1, the points overshoot the surface of the target. You can use a weight map to modulate the amplitude of the shrinkwrap effect across the surface of the wrapper object. Effect of different Amplitude values on a grid shrinkwrapped to a sphere Shrinkwrap and the Modeling Relation The shrinkwrap deformation maintains a modeling relation. This means that if you transform or deform the target (or the inner object, depending on the type of projection) after you have applied the deformation, the shape of the wrapper is altered accordingly. As with all deformations, you can break the modeling relation by selecting the wrapper and choosing Edit > Freeze Operator Stack. This collapses the entire operator stack of the wrapper. You must always break the modeling relation by freezing the shrinkwrapped object before deleting the target or the inner object. Otherwise, the deformation no longer has any effect. 166 • SOFTIMAGE|XSI Shrinkwrapping toward an Inner Object Shrinkwrapping toward an Inner Object To shrinkwrap toward an inner object First, you need three objects: • A wrapper—the object that becomes deformed. Normally it should be outside the target object. If you want, the wrapper can completely surround the target. • A target—the object around which the wrapper is shrunk. • An inner object—the object toward which the wrapper is projected until it hits the target. It must have the same number of points as the wrapper— each point on the wrapper is projected toward the corresponding point on the inner object. The easiest way to create an inner object is to duplicate the wrapper, then scale the duplicate down and move it inside the target. If desired, you can deform the inner object so that there is more geometry near areas where you want high detail. Once you have created and positioned your three objects, follow these steps. 1. Select the wrapper object. 2. Choose Deform > Shrinkwrap. This command is available under Modify on the Model toolbar, as well as under Deform on the Animate toolbar. 3. Pick the target object. 4. Pick the inner object. The Shrinkwrap property editor opens. 5. In the property editor, make sure that Toward Inner Object is selected and set the other parameters as desired—for information about specific parameters click Online Help (?) in the property editor. The wrapper, target, and inner object Using a modified inner object to help the shrinkwrap Final result Modeling & Deformations • 167 Chapter 10 • Shrinkwrap Shrinkwrapping toward the Target’s Center When you shrinkwrap toward the target’s center, each point of the wrapper object is projected toward the target’s center until it hits the target’s surface. In this case you require two objects: • A wrapper—the object that becomes deformed. Normally it should be outside the target object. If you want, the wrapper can completely surround the target. • A target—the object around which the wrapper is shrunk. Once you have created and positioned both objects, follow these steps: 1. Select the wrapper object. 2. Choose Deform > Shrinkwrap. This command is available under Modify on the Model toolbar, as well as under Deform on the Animate toolbar. 3. Pick the target object. 4. Right-click in a geometry view to end the picking session. 5. In the Shrinkwrap property editor that opens, make sure that Toward Center is selected and set the other parameters as desired: - If Bounding Box Center is off, the points of the wrapper are projected toward the center of the target’s local coordinate system. You can move the target’s center in Center mode, and the wrapper’s shape is altered accordingly. - If Bounding Box Center is on, the points of the wrapper are projected toward the center of a bounding box containing the target. You can use Center mode to move the center of the target’s local coordinate system without affecting the wrapper’s deformation. For information about other parameters, click Online Help (?) in the property editor. The wrapper (sphere) and target (apple) 168 • SOFTIMAGE|XSI Result of shrinkwrapping the sphere toward the apple’s center Shrinkwrapping along an Axis Shrinkwrapping along an Axis When you shrinkwrap along an axis, each point of the wrapper object is projected parallel to one of the axes of the target’s local coordinate system until it hits the target’s surface. As with shrinkwrapping toward the center, you require two objects: • A wrapper—the object that becomes deformed. Normally it should be outside the target object. If you want, the wrapper can completely surround the target. • A target—the object around which the wrapper is shrunk. Once you have created and positioned both objects, follow these steps: 1. Select the wrapper object. 2. Choose the Deform > Shrinkwrap. This command is available under Modify on the Model toolbar, as well as under Deform on the Animate toolbar. 3. Pick the target object. 4. Right-click in a geometry view to end the picking session. 5. In the Shrinkwrap property editor that opens, select Parallel to Axis, then select one of the target’s local axes. Set the other parameters as desired— for information about specific parameters click Online Help (?) in the property editor. Shrinkwrapping a curve along the Y axis onto a surface Modeling & Deformations • 169 Chapter 10 • Shrinkwrap 170 • SOFTIMAGE|XSI Chap ter 11 Waves Modeling & Deformations • 171 Chapter 11 • Waves 172 • SOFTIMAGE|XSI Waves are animated deformations that travel in both time and space. You can create shock waves, water waves, and other types of natural disturbances with wave deformations. Wave Control Objects and Wave Operators There are two basic parts of a wave deformation: the wave control object and the wave operator. Wave Control Objects The wave control object controls the basic parameters that are intrinsic to the wave itself, such as its speed and shape. Each wave control object can be used to deform any number of objects in a scene. The wave control object is represented by a wireframe icon in the geometry views; there are different icons for the different types of wave. The position of the wave control object also defines the “epicenter” of the wave, and its orientation defines the direction of the waves. Wave Operators The wave operator deforms an object or cluster by “attaching” a wave control object. The wave operator is a node in the object’s operator stack. It controls the parameters that are specific to how the wave affects a particular object, such as the spread of the deformation. You can also use a weight map to modulate the amplitude of the deformation across the surface. Making Waves Just as there are two parts to a wave deformation, there are two basic steps to creating one: 1. Create a wave control object to define the basic wave as described in Creating Wave Control Objects on page 174. 2. Attach the wave to objects as described in Applying Wave Deformations on page 177. If you are familiar with SOFTIMAGE|3D, you will find that waves are much simpler to work with in SOFTIMAGE|XSI. For example, you can save keyframes for a wave control object’s position just like for any object’s position—you do not need to use a special set of commands. In the same manner, the wave operator is treated just like any other deformation: you can move points on the deformed object without detaching the wave first. Modeling & Deformations • 173 Chapter 11 • Waves Wave Control Objects The wave control object controls the basic parameters that are intrinsic to the wave itself, such as its speed and shape. Each wave control object can be used to deform any number of objects in a scene. Creating Wave Control Objects To create a wave control object, choose Get > Primitive > Control Object > Wave. The wave control object is created (as represented by a wireframe icon in the geometry views), and its property editor opens. You can use the wave property editor to set the wave’s basic characteristics such as its shape and speed—these are described in the sections that follow. However, it may be useful to first “pin” the property editor, then attach the wave to an object as described in Applying Wave Deformations on page 177. This way, as you change the various parameters in the editor, you can see the effect on an object’s deformation. You can also scale, rotate, and translate the wave control object to define its center and the direction of the waves. Setting the Wave Shape There are three parameters that control the wave shape: Type, Displacement Direction, and Profile. Setting the Wave Type The Type parameter on the General tab of the wave property editor controls how the wave moves through space. There are three options: circular, planar, and spherical. Each type of wave is represented by a different icon in the geometry views and is shown in the following illustrations. • Circular—The waves move out from a point in a circular, planar pattern, like those from a pebble dropped in still water. 174 • SOFTIMAGE|XSI Wave Control Objects • Planar—The waves move out from a line in a straight, planar pattern, like boat waves hitting a beach. • Spherical—The waves moves out from a point spherically in all directions, like the shock waves of an explosion. Setting the Displacement Direction The Displacement Direction determines which way the points of deformed objects move when they are displaced: • Up displaces points along the local Y axis of the wave object. • Direction displaces points in the direction in which the wave is moving. • Normal displaces each point along the normal of the deformed object at that point. Modeling & Deformations • 175 Chapter 11 • Waves Setting the Wave Profile The shape of the wave’s displacement is controlled by the Amplitude Profile curve on the Profiles property page of the wave property editor. You can edit the profile using the mouse and the same keyboard commands as the animation editor, or right-click to display a menu. Controlling Periodicity Waves can be periodic, meaning that the profile is repeated in space. To repeat the wave profile, turn on Periodicity in the wave control object’s property editor. Controlling Speed You can control the velocity and acceleration at which the wave profile moves through space using the Velocity and Acceleration parameters in the wave control object’s property editor. Controlling Falloff You can make the strength of the wave effect fall off after a certain vertical distance. The effect decays linearly between the Vertical Falloff Start and End values as measured along the wave’s local Y axis. Transforming the Wave Control Object Translations and rotations may be applied to wave control objects in the same manner as ordinary objects. The wave’s effect on objects changes in the obvious way. For example if you move a circular wave along a grid, you change the point from which the wave emanates. You can apply scaling as well. The icon changes shape accordingly, but the wave’s effect on objects changes only in the following ways: • For scaling in X and Y, the effect appears as if the profile curve were scaled correspondingly. • Scaling in Z does not change the effects of circular or spherical waves, but it does change the Z-extents for planar waves. The planar-wave icon makes this quite clear. 176 • SOFTIMAGE|XSI Wave Operators Wave Operators The wave operator deforms an object or cluster by “attaching” a wave control object. The wave operator is a node in the object’s operator stack that controls the parameters that are specific to how the wave affects a particular object, such as the spread of the deformation. You can also use a weight map to modulate the amplitude of the deformation across the surface. Before you can apply a wave deformation, you must create a wave control object (choose Get > Primitive > Control Object > Wave) as described on page 174. Applying Wave Deformations To apply a wave deformation 1. Select the objects and clusters to be deformed. If you select a weight map, it will be used to modulate the wave deformation’s amplitude on the corresponding cluster. 2. Choose Deform > Wave. This command is available under Modify on the Model toolbar, as well as under Deform on the Animate toolbar. 3. Pick a wave control object. The Wave Op property editor opens. 4. Set the parameters as desired. By default, both the Amplitude and Spread are animated with a function curve. Controlling Amplitude Amplitude provides an overall scaling factor for the wave profile’s height over time. By default it starts at 0, rises sharply to 1, and then decays slowly back to 0. This corresponds to a wave rising rapidly on a surface and then slowly receding back to nothing. High amplitude Low amplitude Modeling & Deformations • 177 Chapter 11 • Waves Controlling Spread Spread gives an overall inverse scaling factor to the X values of the wave profile. For example, a value of 0.5 stretches the profile by 2 horizontally, which has the effect of spreading the wave. By default, the spread is the constant value 1. Certain types of waves, such as water waves, spread out as they move. For such waves, you should edit the spread function curve to start at 1 and end at a smaller value such as 0.5. Wave spreads out over time Editing Wave Operators The wave operator can be edited like any other deformation: • To open its property editor, click on its icon in the object’s operator stack. • To remove the wave deformation, select its name in the operator stack and press the Delete key. Note that this does not affect the wave control object. • To freeze the wave deformation as well as the rest of the operator stack, select the object and choose Edit > Freeze Operator Stack or click the Freeze button on the Edit panel. Freezing removes the wave animation. The object’s shape is frozen as deformed by the wave at the current frame when you choose Edit > Freeze Operator Stack. 178 • SOFTIMAGE|XSI Chap ter 12 Quickstretch Modeling & Deformations • 179 Chapter 12 • Quickstretch 180 • SOFTIMAGE|XSI Quickstretch is an animated deformation that changes an object’s shape automatically, based on its motion. Quickstretch calculates deformations on the fly, according to the object’s speed and acceleration. There are four components of motion used to calculate quickstretch deformation: linear velocity, linear acceleration, rotational velocity, and rotational acceleration. These motion components are described in more detail on page 184. For each motion component, you can apply up to three quickstretch deformations: flexing, stretching, and yielding. The different effects of these deformation types is described on page 185. Once you have applied quickstretch, you can see the effect by playing back the animation or by simply moving the object around in a geometry view. Before you apply quickstretch, there are several things you should check: object centers, explicit clusters, and subdivisions. Object Centers Quickstretch uses the object center as the center of the deformation. For hierarchies selected in branch mode, it uses the parent’s center. Objects with quickstretch appear to be deformed by some force—whether active or inertial—and the location where this force seems to be applied is the center of the deformation. Quickstretch uses the object center for deforming Before You Apply Quickstretch Before you apply quickstretch, make sure that the object’s center is located where you want the deformation to emanate from. For example, if a building faces such a strong wind that it bends a little, the deformation should originate from the ground up because you would expect the building to be attached to the ground. If you move the center after you apply quickstretch, there is no change in the quickstretch deformation. This is because the move-center operator comes after the quickstretch operator in the operator stack. Modeling & Deformations • 181 Chapter 12 • Quickstretch Object Subdivisions 182 • SOFTIMAGE|XSI Quickstretch looks best with many subdivisions in the deforming object, but that can result in a great deal of computation and a heavy scene as you work. You can use the operator stack to change an object’s subdivisions at any time, using fewer subdivisions to help you work quickly and then adding more subdivisions for the final result. Applying Quickstretch Applying Quickstretch Before applying quickstretch, make sure you have read Before You Apply Quickstretch on page 181. Creating a Quickstretch Deformation To create a quickstretch deformation 1. Select an object, cluster, or weight map. 2. Choose Deform > QStretch. This command is available under Modify on the Model toolbar, as well as under Deform on the Animate toolbar. The QStretch Op property editor appears. 3. Set the parameters as desired. On the Overview property page (default), you can toggle the three deformation types (Flex, Stretch, and Yield) for each motion component (Linear Velocity/Acceleration and Rotational Velocity/Acceleration). These toggles are also available on the other property pages, which also provide finer control over the deformations associated with each motion component. - Motion components are described on page 184. - Deformation types are described on page 185. Viewing a Quickstretch Deformation Once you have created a quickstretch deformation, you can view the effect in either of the following ways: • By playing back the animation. or • By using the Translate tool to move the object around in a geometry view. Since motion vectors are computed on the fly during playback of an animated sequence, the deformation that occurs is different if you play the animation backward! Similarly, if you jump from one frame to another, a huge deformation may occur if the difference in position implies a very large velocity or acceleration. In this case, the geometry returns to normal at the next refresh. Modeling & Deformations • 183 Chapter 12 • Quickstretch Motion Components Quickstretch uses the following aspects of an object’s motion to deform the object. • Linear velocity • Linear acceleration • Rotational velocity • Rotational acceleration A moving object has speed or velocity. If it is changing speed, then it also has acceleration or deceleration. For example, a car moving at a steady 100 km/h has a velocity of 100 but an acceleration (and deceleration) of 0. Velocity and acceleration can each be further divided into two types: linear and rotational. For example, a car that moves along a straight line has only a linear motion, whereas a ball that spins on the spot has only rotational motion. Regardless of the type of motion, the faster the object is moving, the more it is deformed. Even if you don’t want a quickstretch deformation on an object, you can still apply it, then mute it to calculate its velocity and acceleration. You can then use these parameters in expressions. 184 • SOFTIMAGE|XSI Quickstretch Deformation Types Quickstretch Deformation Types Whichever type of motion you give to an object, it can be deformed in one or more ways: it can flex, stretch, yield, or do any combination of the three. Each of these deformation types can be weighted independently of the others, but their effects are additive. Each effect is designed to be tweaked separately as much as possible, so that when you use them all together the resulting deformation is more predictable. Flexing A flexible object when moving rapidly in one direction appears to bend or flex in the direction of the motion, due to the resistance of the air (or water). Stretching In the case of a cartoon “squash and stretch” effect, the object usually elongates in the direction of the motion and becomes thinner in the other directions. Yielding Depending on the mass assigned, a moving object might appear to bulge due to the internal displacement of its mass. Modeling & Deformations • 185 Chapter 12 • Quickstretch Editing Quickstretch After you have applied quickstretch, it can be edited like any other deformation: • To open its property editor, click on its icon in the object’s operator stack. • To remove the quickstretch deformation, select its name in the operator stack and press the Delete key. • To freeze the quickstretch deformation as well as the rest of the operator stack, select the object and choose Edit > Freeze Operator Stack. Freezing removes the deformation animation. The object’s shape is frozen as deformed by quickstretch at the current frame when you choose Edit > Freeze Operator Stack. 186 • SOFTIMAGE|XSI Index Index Symbols A acceleration quickstretch 184 animation, creating curves from 64 approximation geometric 27 assembling surface meshes 113 Automatic Discontinuity 49 B bend deformation 134 Bézier curves 53 birail 85 blending curves 62 surfaces 88 boundaries about 77 snapping 112 boundary flags curves 55 using 77 branch mode deformations 122 selecting 28 transformations 28 brush properties 126 B-Spline curves 53 bulge deformation 134 C C0 continuity, curves 53 C2 continuity, curves 53 Cardinal curves 53 center deformation, cluster 144 centers 23 centripetal parameterization 67, 94 children 28 chord-length parameterization 67, 94 cleaning curves 66 surfaces 93 closing curves 66 surfaces 92 cluster center deformation 144 clusters about 139 adding components 142 centers 144 constraining to objects 144 creating 140 defined 26 display colors 142 reference frames 142 removing 143 removing components 143 selecting 140 transforming 34 viewing 141 Component > Move Point 43, 70, 98 Component > Proportional 43, 70, 98 components adding to clusters 142 creating clusters 140 defined 26 deforming 36 polygon meshes 41 removing from clusters 143 surface meshes 115 surfaces 76 constraints cluster 144 construction history See modeling relations, operator stack continuity across subsurface junctions 114 curves 53 control objects 26 waves 174 control points See points control vertices See points curvature continuity curves 53 Curve > Add Point 71 Curve > Delete Point 72 curve net 86 curves about 53 adding points 71 Bézier 53 blending 62 boundary flags 55 building surfaces 80 cleaning 66 closing 66 continuity 53 creating from animation 64 cubic 53 deforming by 150 deforming components and clusters 36 deleting points 72 drawing 57 extracting from surfaces 60 extracting segments 60 filleting 63 fitting 61 freehand 59 intersecting surfaces 61 inverting 65 knots 55 linear 53, 59 lines 55 merging 64 multiknots 56 opening 66 points 54, 69 primitive 57 projecting onto surfaces 165 quadratic 53 reparameterizing 67 segments 55 shifting U 66 sketching 59 stitching 68 subdivisions 55 transforming components and clusters 34 Modeling & Deformations • 187 Index See also function curves curves to surfaces, extending 95 CVs See points D deformations about 121 bend 134 branch mode 122 bulge 134 by curve 150 by lattice 153 by motion 181 by shrinkwrap 165 by spine 157 by surface 152 cluster center 144 components 36 freezing 124 muting 124 push 136 quickstretch 181 randomize 136 removing 124 shape jitter 136 shear 135 spine 157 taper 135 tree mode 122 twist 135 vortex 135 weight maps 125 degree 0 continuity curves 53 degree 2 continuity curves 53 dihedral angle 49 displacement mapping polygon meshes 50 display properties 27 drawing curves 57 dummy objects See implicit objects 188 • SOFTIMAGE|XSI E edge flags See boundary flags 55, 77 edges defined 41 deforming 36 reference frames 35 selecting 44 transforming 34 Edit > Freeze Operator Stack 30 Envelope > Edit Weights 159 Envelope Weight editor 159 Extended Component Selection curve points 69 edges 45 polygon mesh points 42 polygons 46 subsurfaces 115 surface knots 100 surface points 97 extending curves to surfaces 95 extracting curve segments 60 curves from surfaces 60 extruding curves 81 with two profiles 82 See also birail 81 F faces 22 filleting curves 63 surfaces 89 fitting curves onto curves 61 flags, boundary 77 flexing (quickstretch) 185 flipping See inverting four-sided (surfaces) 87 freehand curves 59 freezing operator stack 30 spine deformation weight maps 162 weight maps 129 G GAP (generic attribute painting) See painting generic attribute painting (GAP) See painting geometric approximation polygon meshes 48 using 27 geometry defined 24 types of 21 global transformation mode components 35 grids in viewports 28 guided extrude See birail, extruding H hierarchies 28 history See modeling relations, operator stack hulls See lines I IGES files exporting implicit objects 21 implicit objects 21, 25 inverting curves 65 surfaces 91 isolines 78 isopoints 55, 78 J jitter, shape deformation 136 K knot curves 77, 100 adding 100 removing 101 selecting 100 knots curves 55 surfaces 77 Index L lattices about 153 applying 154 creating 154 scaling 156 setting scope 155 linear acceleration, quickstretch 184 linear velocity (quickstretch) 184 lines, NURBS 55, 77 local materials polygons 47 subsurfaces 115 local textures polygons 47 subsurfaces 115 local transformation mode components 35 lofting 83 M maps, weight 125 merging curves 64 surfaces 90 meshes assembling surface 113 polygon 39 surface 105 metaballs 22 mixing weight maps 128 Model toolbar Refer to Online Help modeling relation and shrinkwrap 166 modeling relations 31 modifier stack See operator stack Move Point tool curves 70 polygon meshes 43 surfaces 98 multiknots creating 100 curves 56 removing 101 surfaces 78 muting, deformations 124 N net, curve 86 non-rendering objects See implicit objects, control objects non-uniform parameterization 67, 94 normals 26 nulls 22 NURBS lines, showing 55, 77 NURBS See curves, surfaces O object transformation mode components 35 objects control 26 defined 24 implicit 21, 25 opening curves 66 surfaces 92 operator stack about 30 modifying operators 30 operators deleting from stack 30 P painting brush properties 126 deformation weights 126 spine deformation weights 162 parameterization centripetal 67, 94 chord-length 67, 94 curves 67 non-uniform 67, 94 surfaces 93 uniform 67, 94 parenting See also hierarchies plotting curves 64 points adding to curves 71 curves 54, 69 defined 23 deforming 36 deleting from curves 72 moving 43, 70, 98 polygon meshes 41, 42 proportional modeling 43, 70, 98 reference frames 35 selecting 42, 69, 97 snapping to 28 surfaces 76, 97 transforming 34 polygon meshes 25, 39 components 41 creating 40 deforming components and clusters 36 edges 44 faceted 49 geometric approximation 48 points 41, 42 polygons 41, 45 smoothing 49 surface approximation 50 transforming components and clusters 34 polygons 41, 45 deforming 36 local materials 47, 115 local textures 47, 115 reference frames 35 selecting 46 transforming 34 polynodes 41 positional continuity curves 53 Primitive > Curve 57 Primitive > Polygon Mesh 40 primitives 24 curves 57 Modeling & Deformations • 189 Index surfaces 79 properties display 27 Property > Brush Properties 126 Property > Paint Properties 162 Property > Paint Tool 126 Property > Weight Map 125 property maps See weight maps proportional modeling curve points 70 polygon mesh points 43 surface points 98 push deformation 136 Q quadratic NURBS curves 53 quickstretch 181 deformation modes 185 R rail See birail, extruding 81 randomize deformation 136 animated 136 reference frames clusters 142 components 35 edges 35 relations modeling 31 removing multiknots 101 reparameterizing curves 67 surfaces 93 revolving 84 rotation clusters 34 components 34 rotational acceleration (quickstretch) 184 rotational velocity (quickstretch) 184 S samples 41, 55 scaling clusters 34 190 • SOFTIMAGE|XSI components 34 lattices 156 SCM (surface continuity manager) 114 second-order continuity curves 53 segments, as curve 55 selectability 27 selecting branch mode 28 clusters 140 curve points 69 edge clusters 45 edges 44 point clusters 43, 70, 98, 141 polygon clusters 47 polygon mesh points 42 polygons 46 surface points 97 tree mode 28 weight maps 126 shape animation and shrinkwrap 165 shape jitter deformation 136 shear deformation 135 shifting curves 66 surfaces 92 shrinkwrap about 165 along axis 169 projection types 165 toward center 168 toward inner object 167 SI3D Selection Model curve points 69 edges 45 polygon-mesh points 42 polygons 46 subsurfaces 115 surface knots 100 surface points 97 sketching curves 59 snapping boundaries 112 to points 28 to viewport grid 29 spine deformations about 157 display colors 160 editing weights 161 freezing weight maps 162 modifying weights 159 painting weights 162 stack operator 30 stitching curves 68 surfaces 96 stretching (quickstretch) 185 subdivisions curves 55 polygon meshes 40 subsurfaces 105, 115 selecting 115 Surf Mesh > Assemble 113 Surf Mesh > Continuity Manager 114 Surf Mesh > Snap Boundary 112 Surface > Inverse 26 surface approximation polygon meshes 50 surface continuity manager 114 surface curves extracting 60 using 78 surface meshes about 105 applying SCM 114 assembling 113 components 115 creating 106 selecting subsurfaces 115 snapping boundaries 112 surfaces about 75 adding knot curves 100 birail 85 Index blending 88 boundaries 77 cleaning 93 closing 92 components 76 creating 79 creating multiknots 100 curve net 86 deforming by 152 deforming components and clusters 36 extending curves to 95 extending to curves 95 extruding 81 extruding (2 profiles) 82 filleting 89 four sided 87 inverting 91 isolines 78 isopoints 78 knots 77 lines 77 lofting 83 merging 90 multiknots 78 opening 92 points 76 primitives 79 removing knot curves 101 reparameterizing 93 revolving 84 selecting knot curves 100 shifting UV 92 stitching 96 surface curves 78 swapping UV 93 transforming components and clusters 34 trim curves 78 sweep See birail, extruding 81 symmetry 29 T W Tag2Path 64 tagging See selecting taper deformation 135 text 22 texture projection freezing 30 transformation modes components 35 transformations branch mode 28 clusters 34 components 34 edges 34 points 34 polygons 34 tree mode 28 using 27 waves 176 translation clusters 34 components 34 tree mode deformations 122 selecting 28 transformations 28 trim curves 78 extracting 60 twist deformation 135 waves about 173 amplitude 177 applying operator 177 circular 174 control objects 174 displacement direction 175 falloff 176 periodicity 176 planar 175 profiles 176 speed 176 spherical 175 spread 178 transforming 176 weight maps applying 127 changing color 129 connecting 128 creating 125 defined 125 displaying 126 freezing 129 mixing 128 painting 126 selecting 126 spine deformation 159 U uniform parameterization 67, 94 V Y yielding (quickstretch) 185 Z zero-order continuity curves 53 velocity quickstretch 184 vertices See points view transformation mode components 35 viewing geometric approximation 27 visibility 27 vortex deformation 135 Modeling & Deformations • 191 Index 192 • SOFTIMAGE|XSI
* Your assessment is very important for improving the work of artificial intelligence, which forms the content of this project
advertisement