Hour 23. Correct Project Management and Scene Workflow


What You’ll Learn in This Hour:

Image How to take advantage of Maya’s project directory structure

Image What are good project settings and workflows

Image What are some common issues in project management

Image How to set up an animated project from start to finish


We covered the Maya default project structure briefly in Hour 3, “File Types and Managing Assets.” Although we touched on the normal project directories that Maya creates for you, we did not talk specifically about taking advantage of this structure. Using Maya’s organizational tools to your advantage can mean the difference between a smooth project and rough sailing.


Note: About the Scene File Locations

So far, we have been operating with this book in a way that has allowed you to open each scene file smoothly and without issue. That is because all of the files you need to open a scene are located within a single directory. By default, Maya will look in the same directory as the scene file for linked assets, such as textures, caches, and reference files. We will break away from the default and set up a project the right way now.


In this Hour, you find out how to make the most of the organizational tools that Maya has built into it. We will then discuss the best settings for your projects and how to come up with an efficient workflow for organizing your scenes and assets. We will point out common pitfalls so you can avoid them when you are working. Finally, we’ll follow a scene through an entire simple production pipeline to see it start to finish. Although the methods described in this Hour are not revolutionary or even unique to Maya, they are pivotal to the success of a project.

The Maya Project Structure

The Maya project was covered briefly in Hour 3. Let’s take another look at the Set Project window in Figure 23.1, accessed through File, Project Window.

Image

FIGURE 23.1 The Project Window in Maya shows you the directory in which your project exists, and the directories that Maya will save the file to by default.

Setting your project (File, Set Project) and creating a new project through the Project Window tells Maya to create or read the workspace.mel script file, which contains details about the locations of the directories and files in your project. With this kind of automation, the best practice is to always save your files in the same directories. However, Maya’s defaults can make it so that the files start to fill directories very quickly. For instance, if you save the in-progress scenes for your character models, the in-progress rig files for your character rigs, and every single revision of a dozen animated shots in the same “scenes” directory, you will have to wade through hundreds of files in order to find the right one. Instead, we separate “assets” from “scenes.” The distinction will be that a scene is any Maya file that contains manipulation done to final assets. Assets go into scenes, not the other way around.

Take a look at Figure 23.2, where the folder structure of a default Maya project is laid out.

Image

FIGURE 23.2 The default Maya project structure as seen in Windows.

The very first folder is named “assets.” This is where your assets will live, including character models and rigs, props and environments, textures and plates, and anything else that is combined together to make a moving, finished image. (Why we will not be putting textures into source images is explained a little later.)

Naming Conventions

With everything going into folders of their own, we need to make sure that a proper naming convention is adopted so that files almost “sort themselves.” You should be able to tell at a glance what the status or revision is of an asset, what type of file the asset is, and what the file contains. Here is my favorite naming convention, applicable to almost every single asset type that you can use in a Maya scene:

assetName_assetType_versionNumber_Notes.extension

Let’s come up with a few examples of this naming convention for assets. For instance, if you are saving the fifth revision of a color map for Sam’s skin, and the note you want to leave for yourself is that it is a work in progress (WIP) and still needs speckles, then you might save the file like this:

Sam_skinColor_v05_WIPNeedsSpeckles.tga

Why are the notes after the version number? If you save multiple versions of the same asset, you want them to sort alphabetically by the version number, and not by the notes.

If you are saving the tenth revision of a rig file for Sam and it just needs the controllers to be put into correct display layers, then the file would look like this:

Sam_rig_v10_WIPDispLayersForCTRLS.ma

At a glance, you can tell everything that is happening in that scene, what needs to be done, and where the file should go. As long as you follow this naming convention, and choose and repeat your name for every task, you should be fine. You don’t have to call the file in which you are creating a control rig the “rig” file; instead, you can call it the “ctrl” file or the “puppet” file—as long as you call it the same thing every time.

For scenes, the naming convention is similar:

projectName_sequenceLabel_shotLabel_task_versionNumber_notes.extension

So, the third version of an animation file in the project “Sam Runs Away,” in the “Boat Chase” sequence, and the second shot in the sequence in which you have added overlap to the spine, would look like this:

SRA_BOAT_020_anim_v03_overlapInSpine.ma

You can abbreviate your project names and your sequence names however you like—again, as long as you are consistent. The same goes for the task names. “Anim” is a fine abbreviation for animation, but you might like something even shorter. Also, numbering your shots by tens means that you can add up to nine shots between two present shots without having to mess up your naming convention. So, the first shot is 010, the second 020, and so on.

Adopting and sticking to a set-naming convention is absolutely essential in a production environment. There is no leeway for your own structure; you are expected to adhere strictly to the established naming convention if you want to be a hire-able artist. So learn to be organized!

Directory Structure Issues

A little while ago, we established that every single asset, no matter what, goes into the Assets directory. That includes texture files. Maya creates the sourceImages directory for you, though, so why not use that folder?

The reason is simple. You are going to be creating a directory for every single asset that you have in your project. Each character, prop, and environment needs its own folder. The issue comes down to choosing to create one directory for each asset, and then multiple subdirectories that have the same name, or one directory for each asset type, and then multiple subdirectories for each asset. Allow me to demonstrate further.

Under the first system, you have an assets directory, and let’s say a character (Sam) and a prop (Hammer), and all of the associated assets to go with these assets. The directories would look like this:

ProjectAssetsCharactersSammodels
ProjectAssetsCharactersSam igs
ProjectAssetsCharactersSamsourceimages

and

ProjectAssetsPropsHammermodels
ProjectAssetsPropsHammer igs
ProjectAssetsPropsHammersourceimages
Etc.

See how in the preceding structure, there is only one directory named Sam, and one named Hammer. Here’s the other way to organize this:

ProjectsourceImagesSam
ProjectAssetsmodelsSam
ProjectAssets igsSam
Etc.

This is a huge problem. If you want to know where all of the files associated with a single asset are, you will have to hunt around or (even worse) search for the directories that share the same name. Having up to a dozen directories all called “Sam” is not organization, it’s madness. And although the poor sourceImages directory will be mostly deserted in a project set up by these specifications, there will be many other sourceImages directories within the assets’ folders to make up for it!

Referencing Pipeline

We’ve been using scene files that have all of the connected assets present in the same directory as the scene itself. However, in production, a “referencing pipeline” is much more common. This practice makes use of “references,” which is Maya’s way of bringing an asset into a scene by reading the asset file but not importing the asset fully. Rather, it is almost like a link that is updated any time the scene is reloaded. The benefits of this kind of workflow are immense; the most major positive effect is that you can update an asset file, and then all of the scene files that reference that asset will “pick up” the revised asset the next time the scene is read. You can change a texture file, fix a rig problem, or replace an asset entirely, and the changes will propagate to scenes with the click of a button. The other major benefit is scene overhead and drive space. Because a referenced file is not actually imported into the scene, the scene files stay very small. A few hundred kilobytes is normal for an animation file—even one that references a 200MB rig file and a 50MB environment. Rather than import or start from the asset file itself, use references. To see how referencing works, follow these steps:

Image Create a new scene in Maya.

Image Click on File, Create Reference.

Image The normal File dialog box will open.

Image Select sam_rig_v02_final.ma and click on OK.

Image Sam will appear in your scene exactly as if he was imported.

Image Save this scene by going to File, Save As.

Image Name it reference_Test.ma.

Image Navigate to the folder where you saved the file and see how large the file is. It is very small.

Image Now let’s take a look at the Reference Editor to see some more of the functions that referencing allows us to do.

Image Click on File, Reference Editor. It should look like Figure 23.3.

Image

FIGURE 23.3 The Reference Editor with the Sam rig loaded.

Checking or unchecking a reference simply loads it or unloads it from a scene. This is not the same as importing or deleting the reference. It just means that temporarily the reference will be removed from view and you can continue to work on the scene until you are ready to bring the reference back. It is very useful if you have a scene with multiple characters to reduce scene overhead and work efficiently. In the Reference menu, you can Reload and Replace Reference, the two most common commands after loading and unloading. Reloading a reference simply tells Maya to re-read the asset file and make any updates to the reference contained within. Replacing the reference allows you to choose a new asset that should take the current asset’s place. Be warned that if you replace a reference and the new reference has a different hierarchy or naming convention, Maya may not be able to reconnect all of the information in the scene.

You may lose information such as render layers, animation, and so on. Careful riggers know not to make too many changes to the hierarchy or controls, and usually a new character rig can replace an old one with minimal damage. Even on high-end productions, though, a rig update can spell trouble for the animators. Save multiple versions of your scenes (and assets) to prevent data loss.

Relative and Absolute Paths

Take a look at the top of the Reference Editor window again. Select the Sam reference and see the path that loads into the very top bar of the Reference Editor. Mine says:

D:/SamsTeachYourselfMaya/Chapters/23/sam_rig_v2_Final.ma

This is what is called an absolute path. It is the path to the directory with no context or relation to the Project directory. For maximum compatibility between machines and within a studio, relative paths are recommended. Relative paths simply means that the Project directory is considered the “base directory” and that all paths should be written relative to the Project directory. So if my Project directory is in D:SamsTeachYourselfMaya, then the relative path for this rig is now:

/Chapters/23/sam_rig_v2_Final.ma


Try It Yourself: Replace Absolute Paths with Relative

Replace all of the paths in your scene with relative paths. First, make sure your project is set to this Hour’s directory:

1. Starting in the Reference Editor, delete the parts of the path up to the point where the Project directory is removed. Pressing Enter should reestablish the path and set it for the loaded reference. If you made a mistake, Maya will ask you to correct it.

2. Go into the Hypershade and select Sam’s textures. Double-click on them to open the Attribute Editor, and find the File tabs to see the paths for Sam’s textures. Chances are, the textures haven’t loaded yet anyway.

3. Replace the texture’s paths with relative paths as well.


Good Project Workflows

When you are creating a project from scratch, practicing good workflow will save you headaches down the road. Following a strict naming convention is a great start. Also, creating a template project directory that can be copied and renamed for each one of your new projects saves you the time of having to create the directories each time. This template contains other supportive directories within it, and also distinguishes which directory is going to be used as the actual Maya “Project.” Take a look at Figure 23.4 and you will see what is meant by this.

Image

FIGURE 23.4 The template directory contains some supportive directories for our project.

As you can see, the template directory has subdirectories for other parts of an animated project like audio and editorial. The “3D” directory contains the normal Maya Project directories. You will “Set Project” to the “3D” directory.

Other good workflow is to create your scene directories in advance as well. Within the scenes directory, you create an animation, lighting, and fx directory within each shot and within each sequence. So, a template shot directory might look like this:

3Dscenessequenceshotanim
3Dscenessequenceshotlight
3Dscenessequenceshotfx

In a large project, the simple task of creating directories can take hours and hours. Organizing ahead of time will pay off greatly in the long run.

Pull or Push Workflows

The one major decision that needs to be made in terms of file management and workflow is whether you want to using a “Pull” workflow or a “Push” workflow. With a Pull workflow, you are always making sure that you are updating your scene files with the latest assets. When an asset is updated, it is up to you or another artist to load the new asset into their scenes. For example, if you just saved Sam_rig_v03.ma, then all of the animators that are currently using Sam_rig_v02.ma will need to replace their references in their Maya scenes to “pull” the update. The advantage of this workflow is that you are sure an asset update will not break working scenes. The disadvantage is that you will have to manually update all of the scenes that use an asset. On a long project, this could mean hundreds of scenes.

With a Push workflow, there is a single file that is overwritten to “push” updates into scenes using an asset. This file is normally labeled “Published” or “Final” or some other label reserved for the single pushed file. You would still be working on Sam_rig_v03.ma, but when you save it, you would save it as Sam_rig_v04.ma and then save it again and overwrite Sam_rig_PUB.ma. All animation scenes are using the PUB file already, so when they reopen their scenes, the new asset will load in. No manual updating is necessary. The pros and cons are the opposite of a Pull workflow. While you are doing a lot less work to update your scenes when an asset is published, there is the potential that a scene could break and you would then have to manually downgrade the asset to the previous version.

Most major studios employ a combination of Push and Pull, depending on the asset and the stage of production. For personal projects and small projects, a Push workflow works nicely.

Project X Workflow Case Study

Let’s follow a project called Project X through the pipeline. This project is a commercial that has three shots starring one character named Sam who is playing with a beach ball in a beach environment.

First, we will copy the template folder and rename it to “ProjectX”.

We will start by creating our character. His models will be saved in:

ProjectX3DassetscharactersSammodels

As we continue to revise the model and get closer to final, the naming convention will follow our strict pattern:

Sam_model_v10.ma, Sam_model_v11.ma, etc.

When it is finished, save the model as:

Sam_model_PUB.ma

As you rig the character, save the files in the following directory:

ProjectX3DassetscharactersSam igs

Textures can be placed in:

ProjectX3DassetscharactersSamsourceimages

At the same time you are working on the character rig, you may be modeling the beach ball and the beach environments as well; save them in their respective directories:

ProjectX3Dassetspropsallmodels
ProjectX3Dassetssetseachmodels

When all of the assets are complete, you save PUB versions of them. As you start the three shots, you copy the shot template directory (which contains anim, fx, and light subdirectories) three times into the seq1 directory and name them as follows:

ProjectX3Dscenesseq110
ProjectX3Dscenesseq120
ProjectX3Dscenesseq130

When you create your shots, you will start by referencing in the three assets needed:

ProjectX3DassetscharactersSam igsSam_rig_PUB.ma
ProjectX3Dassetssetseach igseach_rig_PUB.ma
ProjectX3Dassetspropsall igsall_rig_PUB.ma

Then you save the resulting file as follows:

ProjectX3Dscenesseq110animseq1_010_anim_v01_sceneSetup.ma

As you work, you save new versions and notes until your animation is complete. Then you create a new scene and reference your animation file into the scene. Save this new scene as follows:

ProjectX3Dscenesseq110lightseq1_010_light_v01_animComplete.ma

Remember, the note can be whatever you want it to be, just keep it after the version number.

When the scene is finally complete, you will render the images to:

ProjectX3Dimages endersseq110v01

If you have followed proper naming convention, been tidy with your directories, and did not deviate from good workflow, the only difficulties you have with the project should be artistic ones.


Image Bonus: Good Project Example

This Hour’s Bonus file is a Project directory structure within the Bonus folder. Open the Project folder labeled “Project X” and notice how each folder has a template folder already inside. To create new subdirectories, copy and rename the “_template” folders to whatever you choose. For instance, within the 3Dassetscharsdirectory, copy the “_template” directory and rename it “Sam.” This new directory will contain all of the subdirectories you need for this character. Explore the project and feel free to use this structure for all of your projects.


Summary

Proper project workflow is essential to completing your work on time and on budget. Starting with Maya’s project directory structure, we can take advantage of where Maya saves files by default. When we save files, we must keep absolute adherence to a naming convention; otherwise, files will quickly become disorganized and cluttered. We must decide on a Push or Pull workflow, depending on the needs of the project and the size of the team. We can even save ourselves a lot of time by setting up some templates to be used on projects in the future rather than reinventing a pipeline every time.

Q&A

Q. When I set my project, it asks me if I want to create a default workspace. Why?

A. This is because the folder you have chosen does not have a workspace.mel file within it. This file is used by Maya to determine the paths of your project. If you are sure the project you want to set exists, make sure you selected the correct directory, because all existent projects contain a workspace.mel file.

Q. Can I have multiple Maya projects within the same directory?

A. Not within the same directory, but two subdirectories can both be Maya projects. This used to be the way that things were done; set your project to the asset or the scene that you were working on. Up until Maya 2008 or so, it made sense, but modern Maya depends so much on scattered files that this is not advisable.

Q. I want to name my published files “Final” or something else. Is that okay?

A. That is totally fine, as long as you keep a consistent naming convention.

Q. What do I do if there are no sequences in my project, because it is just one shot?

A. You can remove directories that are not necessary, but I would still have a shot directory in your 3D/scenes directory. Call it 010 for consistency. Overall, you will be working on projects with many shots and sequences, so do not get lazy and put all of your scenes in the 3D/scenes directory.

Workshop

The workshop contains quiz questions and exercises to help you solidify your understanding of the material covered. Try to answer all questions before looking at the “Answers” section that follows.

Quiz

1. How do you set your project in Maya?

2. Which workflow depends on artists to update their own scenes with new assets?

3. When you are saving a file, where do the notes go in the filename?

4. What goes in the 3D/sourceimages folder?

5. Why are scenes that make use of referenced assets small in file size?

Exercise

Create your template directories for your projects. Create a template for the assets folders (sets, props, characters) as well as a shot template to go into your sequences (anim, light, FX). Decide and stick to a naming convention, and test your new project template on one of the Hours in this book by moving the files into their appropriate directories, referencing assets if necessary, and saving files with version numbers and comments.

Answers

1. Click on File, Set Project.

2. A “Pull” workflow means that each scene needs to be manually updated to the latest assets.

3. Notes always go after the version name, so that when you sort alphabetically, your revisions will always stay in order.

4. Nothing goes into this folder. You should create a new sourceimages folder in each one of the asset’s folders in the 3D/assets directory.

5. Referenced files are read by Maya but not imported into the scene. Only the edits done to references are saved into a file, such as animation information, adjustment of attributes, and layers.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset