![]() |
Figure 5: An example of
the user interface for the above
system. |
Listing 2: User interface creation for the control system. global proc kbGCS() if
(!`window –exists $window`) showWindow $window; waitCursor -state off; }
// kbGCS // global proc makekbGCSWin(string $window, string
$object) formLayout kbGCSForm; textFieldGrp attrFieldSliderGrp checkBoxGrp separator -style "in" sep1; text -l "Individual:" individual_t; textFieldGrp attrFieldSliderGrp attrFieldSliderGrp separator -style "in" sep2; text -l "Group:" group_t; attrFieldSliderGrp separator -style "in" sep3; button formLayout -e kbGCSForm; } // makekbGCSWin // |
What has been presented here are the fundamentals of developing a system to control a large number of actors. Like any solution to a problem, there is no single best approach. A new scenario will often require you to take a fresh multi-displinary view. However, bear in mind that a good system is usually one that is well designed, able to incorporate the physics requirement, and yet be aesthetically impressive. Hopefully this article will give you some ideas on how best to incorporate your own group behavioral control system for your next animation and game. Good luck!
Kian is currently working as a Technical Director for a production company in Japan. Though extremely busy with his production schedule, he still managed to steal some of his employer's time to finish a book called Digital Effects Animation Using Maya (http://www.4deffects.com/). A more detailed and complete implementation of the examplein the article may be found in the book. You can email him with any comments at kian@4deffects.com.