In 2007 Sesame was looking for another solution to the production and found Keyframe Digital in Niagara Falls, Canada. Keyframe Digital is known for developing children's television series and special effects for the Film and TV. Keyframe developed a 2D TV series using a 3D animation package but only worked on an hand full of episodes. Taking on a full series that needed to have an episode created every couple of weeks presented another problem all together. Every thing in the production would have to be setup so that animators an artists could work in a controlled environment that allowed for fast development but didn't constrain the animators from doing their jobs.
Keyframe contacted PEN Productions Inc. to help develop a pipeline for Pinky Dinky Doo that was flexible and fast to work with. Here at PEN we have been developing production pipelines around character driven productions for over ten years. Having been involved in all aspects of production from concept art trough 3D development to final renders allows us to know how and where bottle necks typically occur in a production. From this knowledge we can build pipelines that are both solid and flexible.
For a seamingly simple production there ended up being a great number of assets to have to deal with and manage.
The opportunity to work with a company like Keyframe and Sesame Workshop was something that we couldn't pass up as we always look forward to a challenge in new production and artistic styles. PEN Productions has worked with Keyframe on a number of smaller projects building models and character rigs on projects including Dresden Files and Spiderman promotional stills.
The characters are flat, 2 dimensional cards in the 3D world with images placed on the cards and cut out with an alpha channel. Again this sounds like a simple setup but each part of the character could end up with many texture maps to be able to attain all the poses that each part of the character are capable of doing, for instance the hands have ninety different texture maps to achieve all the possible needed poses There also had to be an easy way to add more poses as the production moved forward and required more flexibility for each episode.
The simple geometry setup still needed to be deformed and posed, the arms, legs and body could be bent using IK and FK bone setups that handled the basic motions of the body. Mathieson Facer, Key Frame Digitals senior TD, setup a rig system that allowed the arms and legs to be bent in either direction so the character could walk left or right without having to turn in 3D space since this was not possible. The arms and legs also had the ability to curve to create "S" shapes for more pleasing poses.
Approximately 9 characters needed to be setup just to get started and every episode added more characters to help tell Pinky's dynamic stories. By production end there were some 125 characters available for use. Pinky's house and each environment also needed to be created at Keyframe and in many cases that had to match the previous work that had been done in flash. Keeping track of hundreds of assets for a production like this takes lots of production planning and a tracking system that would not get in the artists way but keep every thing in order and allow Keyframe to know what was waiting to be worked on, what was complete and what needed revisions.
PM was developed using Max Script, .net and XML as the data base. PM allows for new projects to be setup in a fast and organized way by using XML based templates that define how the directory structures would be setup for any given type of project and who would have access to which assets based on user rights. The idea of PM was not to lock every one out and take complete control but instead to help direct data and make it easier for artists to know where files are and who is currently working on them.
Data about users and the state of the files could be checked using the User Data tab. This data listed what the status of the file was, who worked on it and also listed any notes about the file and when it was checked in. The whole system is running on an XML back end that stores the data to several different data files. The main XML file stores the structure of the project and file data is stored in file specific XML data files. All this allows for very flexible system that doesn't hamper the artist.
The rigs are unlike most 3D rigs as they never have to rotate in the scene. Each rig needs to achieve poses while staying aligned to an orthographic camera. The legs at first posed the first challenge but Mathieson found a simple solution to the problem of making a character walk to the left or right without being able to rotate the rig. Using the same methods used in creating and IK/FK system Mathieson created and IK to IK blend or left to right. This could be blended to any point in between so any angle could be achieved.
Because all the characters are 2 dimensional all the controls had to be constrained to work in 2D space to stop the animators trying to rotate the character around the wrong axis. This meant there had to be several steps taken to be able to make it appear as if the characters were rotating. Rotation, position and the swapping of textures all had to happen at the same time to fake the look that was needed.
The scripted plugin modifier uses dot net controls for the interface and a dot net XML object for storing poses that can be loaded from a server so setups can be shared and updated in all files using the characters.
Most of the poses for the character are created with flat cards that are skinned to the rig The cards in many cases have over a hundred texture maps that can be used. None of the built in features of 3DS Max could handle switching hundreds of textures in real time so the animator could see what was happening in the scene.
A custom scripted material plugin was developed at PEN that could stream hundreds of textures off the hard drive or cache them to memory for faster access. Steaming textures off the drive allows for larger texture sizes to be used at render time and caching is used for smaller textures for use in the viewport.
Using scripted plugins in 3DS Max increases the speed of development in projects like Pinky that needs to get started and producing results quickly. C++ plugins take longer to write and beta test so a scripted solution can be implemented more quickly and allow for further development during production but technical directors as new tools are needed. Both Matheison Facer and Eric Harvey of Keyframe were able to expand upon the tool set as they needed.