sceneAssemblyManager

Scene Assembly Manager provides a complete workflow for using scene assembly in Maya.

Using scene assembly out of the box is very complicated and is a multi-step process, which calls for automation because it requires setting up and defining different versions of assets before they can be used efficiently.

The Maya bonus tools features the Pipe Assembly Manager (or PAM) which greatly simplifies the process of creating scene assembly representations and definitions through a simple interface.

However, the initial version of Pipe Assembly Manager had platform specific issues and lacks some practical functionality, such as the support for proxies and VRay. The current state is unknown, but since bonus tools are not supported the chance for further development is small.

Scene Assembly Manager is build upon the basic idea of how to approach the concept of scene assembly used in Pipe Assembly Manager but featuring a better and more stable workflow which is necessary for production usage.

Please see the general install guide.

sceneAssemblyManager;
evalDeferred("dockControl -e -r samDock");

Project oriented database
All assets, representations and definitions are stored in a subfolder of the current project as a simple database. Assets can be added and removed and are separated by the categories ‘character’, ‘environment’ and ‘prop’.

Easy creation of representations
For each type of representation you can choose between various options and save/export types, animated and static. Also the exported time range can be easily defined through the UI, rather than always using the time slider range.

Automatic creation of definitions
The tool automatically builds a definition by default. You can also choose to add the representations to an existing definition or to only create the representation files but leave the definition untouched.

Export of mesh objects only
When creating representations Scene Assembly Manager always only exports meshes. If necessary, the lowest common parent node is used to export. This reduces the number of unnecessary nodes when exporting i.e. to an Alembic file, which can happen if the entire hierarchy of a character is selected containing not only the character mesh but also the rig with all controls.

Versioning
When re-creating representations, you can decide to overwrite the existing or to create a version. Making versions is the default. This works with representations, definitions, shading and script files.

Export of shaders and attributes
When exporting to Alembic or exporting the current scene state as a representation, shader assignments and attributes are exported as well if needed. Especially when writing to an Alembic cache it makes most sense as it is able to receive shading, in contrast to the GPU cache.

VRay support
Almost all VRay custom attributes are exported (subdiv, displacement, roundCorners, etc.) as well as any connected VRayDisplacement nodes and their attributes. All information is stored in a mel script which gets applied after importing the alembic the cache into a new scene. Fur is currently not supported.

There is a great introduction to scene assembly by Ashraf Aiad on vimeo. (right-click link to open in new window)