Morgan Kaufmann, 2003. — 529 p.
Maya is, undisputedly, a very powerful tool for creating computer graphics. However, it must also be stated that learning Maya is a daunting task. Its sheer depth and breadth of features alone make it a formidable package to learn, let alone master. There was probably never a time when this was more apparent than the day you first opened it up. I'm sure that it felt as if you were at the foot of a mountain, about to start a long climb. You will be pleased to know that the journey can be made easier. Maya can be customized and extended in ways that you never thought possible. A great many of your daily tasks can be automated or greatly simplified. You can create tools that not only increase your productivity but also give you far greater control. All this, and more, can be achieved through Maya programming.
For many, the mere mention of programming provokes fear and trepidation. This is understandable, since many programming books make extensive assumptions about the reader's existing programming expertise.
This book assumes that you have no prior programming experience and, as such, will dispel the myth that only professional programmers can program Maya. With a solid understanding of the basic concepts, anyone can begin harnessing the level of control that only programming offers. What would once have seemed a daunting undertaking will be shown instead to be an enabling and empowering experience. With an experienced and patient guide, any journey is made easier. As such, this book endeavors not to lecture but to guide you gently through an understanding of how Maya works at its most fundamental level. Starting with an exploration of the very heart of Maya, you will learn how data is maintained and processed. This knowledge is critical, since it is the foundation on which all of Maya's functionality is built. Using Maya's easiest programming language, MEL (Maya Embedded Language), you will begin to learn how to control Maya and automate many operations.
The C++ application programming interface (API) is then presented. With a basic understanding of the C++ language, you'll quickly learn how to develop your own custom tools and features. As each real-world example is presented, you'll gain a further understanding of just how Maya's features can be accessed and controlled. By using MEL and C++, in combination, you'll soon be able to gain complete control over every aspect of Maya and extend it to suit your every need.
In addition to teaching the specifics of Maya programming, this book focuses on why something is designed in a particular way. Programming often affords an unlimited number of possible ways for solving a problem. However, it is important to understand that Maya has its own particular design philosophy. This book presents a set of guidelines for designing your programs so that they will integrate and work seamlessly within Maya. With an understanding of why a particular approach is used, you'll be able to extrapolate the underlying idea to solve your own problems. It is my goal that when you finish reading this book you will not only be inspired to imagine new and exciting possibilities but you will also have the necessary skills and knowledge to turn them into reality.
Fundamental Maya Concepts
MEL
C++ API