Search:

Product Information All Elsevier Sites   Advanced Product Search
SiteStat.jsp
COMPLETE MAYA PROGRAMMING VOLUME II, 2
Complete Maya Programming Volume II, 2
An In-depth Guide to 3D Fundamentals, Geometry, and Modeling
To order this title, and for more information, click here

By
David Gould, Weta Digital, New Zealand

Included in series
The Morgan Kaufmann Series in Computer Graphics,

Description
David Gould's acclaimed first book, Complete Maya Programming: An Extensive Guide to MEL and the C++ API, provides artists and programmers with a deep understanding of the way Maya works and how it can be enhanced and customized through programming. In his new book David offers a gentle, intuitive introduction to the core ideas of computer graphics. Each concept is explained progressively and is fully implemented in both MEL and C++ so that an artist or programmer can use the source code directly in their own programs. Geometry and modeling are covered in detail with progressively more complex examples demonstrating all of Maya's possible programming features.
David Gould's first volume is widely regarded as the most authoritative reference on Maya programming. Volume II continues this tradition and provides an unmatched guide for the artist and programmer tackling complex tasks.

Audience
Intermediate to advanced Maya developers, technically savvy artists, technical directors, and students; in the film, television, and game industries

Contents
Preface


1 Introduction
1.1 Example Files 1.1.1 Compiling Example Plug-ins 1.1.2 Sourcing Example MEL Scripts 1.2 Executing MEL Code in the Script Editor


2 Points
2.1 Dimensions 2.2 Cartesian Coordinates 2.3 Homogeneous Coordinates 2.4 Polar and Spherical Coordinates 2.5 Conversions 2.5.1 Cartesian to Homogeneous 2.5.2 Homogeneous to Cartesian 2.5.3 Cartesian to Polar 2.5.4 Polar to Cartesian 2.5.5 Cartesian to Spherical 2.5.6 Spherical to Cartesian 2.6 MEL 2.7 C++ API 2.8 Locators


3 Vectors
3.1 MEL 3.2 C++ API 3.3 Adding 3.4 Subtracting 3.5 Scaling 3.6 Length 3.6.1 MEL 3.6.2 C++ API 3.7 Distance Between Points 3.7.1 MEL 3.7.2 C++ API 3.8 Normalizing Vectors 3.8.1 MEL 3.8.2 C++ API 3.9 Dot Product 3.9.1 Angle Between 3.9.2 Length Squared 3.9.3 Perpendicular Projection 3.10 Cross Product 3.10.1 Perpendicular Vector 3.10.2 Area of Triangle 3.11 Points Versus Vectors


4 Rotations
4.1 Angles 4.1.1 MEL 4.1.2 C++ API 4.2 Rotations 4.3 Orientation Representations 4.3.1 Euler Angles 4.3.2 Quaternions


5 Transformations
5.1 Matrices 5.1.1 Matrix Multiplication 5.1.2 Matrix Transpose 5.1.3 Identity Matrix 5.1.4 Inverse Matrix 5.1.5 MEL 5.1.6 C++ API 5.2 Transforming Points 5.2.1 MEL 5.2.2 C++ API 5.3 Transforming Vectors 5.3.1 MEL 5.3.2 C++ API 5.4 Transforming Normals 5.4.1 MEL 5.4.2 C++ API


6 Transform Nodes
6.1 Pivot Points 6.2 Transformation Matrices 6.2.1 Querying Transformation Matrices 6.2.2 Editing Transformation Matrices 6.3 Hierarchies of Transformations 6.3.1 Transformation Spaces 6.3.2 MEL 6.3.3 C++ API


7 Coordinate Frames
7.1 Up Axis 7.1.1 MEL 7.1.2 C++ API 7.2 Handedness 7.3 Custom Coordinate Frames 7.3.1 C++ API


8 Polygonal Meshes
8.1 Displaying Meshes 8.1.1 General 8.1.2 Components 8.1.3 Normals 8.1.4 Back-face Culling 8.1.5 UV Texture Coordinates 8.1.6 Vertex Colors 8.1.7 Nonplanar Faces 8.2 Querying Meshes 8.2.1 Vertices 8.2.2 Edges 8.2.3 Polygons 8.2.4 Face Vertices 8.2.5 Normals 8.2.6 UV Texture Coordinates 8.2.7 Blind Data 8.3 Creating Meshes 8.3.1 Problematic Meshes 8.3.2 Creation Checks 8.3.3 Molecule1 Plug-in 8.3.4 Molecule2 Plug-in 8.3.5 Molecule3 Plug-in 8.3.6 Molecule4 Plug-in 8.4 Editing Meshes 8.4.1 Construction History 8.4.2 Supporting Construction History 8.4.3 Supporting Tweaks 8.4.4 Mesh-editing Framework 8.4.5 Displace Mesh Plug-in


9 Nurbs
9.1 Concepts 9.1.1 Control Vertex (CV) 9.1.2 Hull 9.1.3 Span 9.1.4 Degree 9.1.5 Order 9.1.6 Edit Points 9.1.7 Curve Point 9.1.8 Parameterization 9.1.9 Knots 9.1.10 Form 9.1.11 Surface Point 9.1.12 Surface Isoparms 9.1.13 Surface Patches 9.1.14 Surface Curves 9.1.15 Trimmed Surfaces 9.2 NURBS Curves 9.2.1 Displaying Curves 9.2.2 Querying Curves 9.2.3 Creating Curves 9.2.4 Editing Curves 9.3 NURBS Surfaces 9.3.1 Displaying Surfaces 9.3.2 Querying Surfaces 9.3.3 Creating Surfaces 9.3.4 Editing Surfaces


10 Subdivision Surfaces
10.1 Concepts 10.1.1 Control Mesh 10.1.2 Subdivision 10.1.3 Limit Surface 10.1.4 Creases 10.1.5 Hierarchical Subdivisions 10.1.6 Ordinary and Extraordinary Points 10.1.7 Subdivision Scheme 10.2 Displaying Subdivision Surfaces 10.3 Querying Subdivision Surfaces 10.3.1 Components 10.3.2 Creases 10.3.3 UV Texture Coordinates 10.3.4 MEL 10.3.5 C++ API 10.4 Creating and Converting Subdivision Surfaces 10.4.1 Polygonal Mesh to Subdivision Surface 10.4.2 Subdivision Surface to Polygonal Mesh 10.4.3 NURBS Surface to Subdivision Surface 10.4.4 Subdivision Surface to NURBS Surface 10.5 Editing Subdivision Surfaces 10.5.1 MEL


11 Contexts (Tools)
11.1 SelectRingContext1 Plug-in 11.1.1 Usage 11.2 SelectRingContext2 Plug-in 11.2.1 Installation 11.2.2 Usage 11.3 SelectVolumeContext1 Plug-in 11.3.1 Installation 11.3.2 Usage


A Further Learning
A.1 Online Resources A.1.1 Companion Web Site A.1.2 Additional Web Sites A.2 Maya Application A.2.1 Documentation A.2.2 Examples


B Further Reading
B.1 Mathematics B.2 Programming B.2.1 General B.2.2 C++ Language B.3 Computer Graphics B.3.1 General B.3.2 Modeling B.3.3 Animation B.3.4 Image Synthesis
Glossary Index

Bibliographic details
Paperback, 744 pages, publication date: AUG-2005
ISBN-13: 978-0-12-088482-7
ISBN-10: 0-12-088482-8
Imprint: MORGAN KAUFFMAN

Price and Ordering
Price:
GBP 49
EUR 57.95
USD 72.95
order now
Books and book related electronic products are priced in US dollars (USD), euro (EUR), and Great Britain Pounds (GBP). USD prices apply to the Americas and Asia Pacific. EUR prices apply in Europe and the Middle East. GBP prices apply to the UK and all other countries.
See also information about conditions of sale & ordering procedures, and links to our regional sales offices.

077/747
Last update: 5 Sep 2009
Book contents
Table of contents
Reviews
Submit your review
Bookmark this page
Recommend this publication
Overview of all books
Printer-friendly version   Printer-friendly version