Dirty propagation is the process of walking through the DG, from animation curves to renderable objects, and marking DG node attributes as requiring evaluation (i.e., dirty). Maya uses the DG’s dirty propagation mechanism to build the EG. For example, you may have loaded a new scene and no EG may have been built yet, or you may have changed your scene, invalidating a prior EG. A valid EG may not exist or become invalid for various reasons. EG connections represent node-level dependencies destination nodes employ data from source nodes to correctly evaluate the scene.
The EG is a simplified version of the Dependency Graph (DG), consisting of DG nodes and connections. Prior to evaluating your scene, the EM checks if a valid EG graph exists. The EM schedules EG nodes across available compute resources.
For now, let’s focus on understanding key Maya evaluation concepts.Īt the heart of Maya’s new evaluation architecture is an Evaluation Manager (EM), responsible for creating a parallel-friendly description of your scene, called the Evaluation Graph (EG). As you can imagine, the amount of parallelism depends on how your scene has been constructed. Similarly, if your scene has a single complex character, it may be possible to evaluate rig sub-sections simultaneously. For example, if your scene contains different characters that are unconstrained to one another, Maya can evaluates each character at the same time. Unlike previous versions of Maya, which was limited to node-level parallelisms, Maya now includes a mechanism for scene-level analysis and parallelization.
Starting from Maya 2016, Maya accelerates existing scenes by taking better advantage of your hardware. If you would like an overview of related topics prior to reading this document, check out Supercharged Animation Performance in Maya 2016. This guide will be of interest to riggers, TDs, and plug-in authors wishing to take advantage of speed enhancements in Maya. It covers key concepts, shares best practices/usage tips, and lists known limitations that we will aim to address in subsequent versions of Maya. This guide describes the Maya features for accelerating playback and manipulation of animated scenes.