Unformatted text preview: Hierarchical Modeling April 5, 2010 April SCG 3023 1 Where are we now?
Display Framebuffer Rasterize Rasterize Primitives Primitives Clipping Transformations Model Individual Model Primitives Primitives
April 5, 2010 April SCG 3023 Model Complex Model Objects with Primitives Primitives
2 Transformation hierarchy
Display Coordinates View-Display View-Display Transformation Transformation View Coordinates World-View World-View Transformation Transformation World Coordinates Model-World Model-World Transformation Transformation Model Coordinates
April 5, 2010 April SCG 3023 3 Object models
So if we want to build a model of a complex object, we can just So stick a bunch of primitives together … stick + = = April 5, 2010 April SCG 3023 4 Object models
It’s often convenient to model objects in an object-local It’s coordinate system. Why? coordinate Once we have an object modeled, we can manipulate it Once anyway we want. anyway Really? ? April 5, 2010 April SCG 3023 5 Hierarchical modeling
If we broke that model down into components we could apply If different transformations to them and achieve the desired animation. animation. Wait? Didn’t we just say we should combine primitives to Wait? model objects? Now we’re saying break models apart to allow the parts to be transformed independently? allow Yes. Strike a balance between the need to group related Yes. primitives into models and the need to control the model. primitives You group primitives such that you can get reuse of the You objects they form or you get the desired level of articulation. articulation.
April 5, 2010 April SCG 3023 6 Hierarchical modeling
Head-World Head-World Transform Transform Torso-World Torso-World Transform Transform UpperRightArmWorld Transform UpperLeftArmWorld Transform LowerRightArmWorld Transform UpperRightLegWorld Transform LowerRightLegWorld Transform LowerLeftArmWorld Transform UpperLeftLegWorld Transform LowerLeftLegWorld Transform April 5, 2010 April SCG 3023 7 Hierarchical modeling
How do we move that arm?
UpperRightArmWorld Transform UpperRightArmWorld Transform LowerRightArmWorld Transform LowerRightArmWorld Transform - Rotation of the upper arm Rotation of the lower arm Translation of the lower arm How much do we rotate the upper arm? How much do we rotate the lower arm? How much do we translate of the lower arm?
April 5, 2010 April SCG 3023 8 Hierarchical modeling
Now, how do we move that arm?
RightArm-World RightArm-World Transform Transform UpperRightArmRightArm Transform RightArm-World RightArm-World Transform Transform UpperRightArmRightArm Transform LowerRightArmRightArm Transform LowerRightArmRightArm Transform How do we transform the arm? How do we transform the upper arm? How do we transform the lower arm? April 5, 2010 April SCG 3023 9 Example April 5, 2010 April SCG 3023 10 Hierarchical modeling
Body-World Body-World Transform Transform RightLeg-Body RightLeg-Body Transform Transform RightArm-Body RightArm-Body Transform Transform Torso-Body Torso-Body Transform Transform Head-Body Head-Body Transform Transform LeftArm-Body LeftArm-Body Transform Transform LeftLeg-Body LeftLeg-Body Transform Transform RightBicep-RightArm RightBicep-RightArm Transform Transform RightForeArmRightArm Transform LeftBicep-LeftArm LeftBicep-LeftArm Transform Transform LeftForeArm-LeftArm LeftForeArm-LeftArm Transform Transform RightThigh-RightLeg RightThigh-RightLeg Transform Transform RightCalf-RightLeg RightCalf-RightLeg Transform Transform April 5, 2010 April SCG 3023 LeftThigh-LeftLeg LeftThigh-LeftLeg Transform Transform LeftCalf-LeftLeg LeftCalf-LeftLeg Transform Transform 11 Implementation
What sort of a structure is this? How do you build up the final transformation to apply to the How objects? objects? How could you track transformation state as you process the How structure? structure? Keep in mind order of operations.
April 5, 2010 April SCG 3023 12 ...
View Full Document
- Spring '10
- Coordinate system, Model transformation, Transform Transform