Working with references in Maya and Guerilla is straightforward.

During the export, the Maya objects that come from a referenced file are not exported. If a GuerillaNode is available in the Maya referenced file, the export process will create a Guerilla reference in the exported project.

For example, let's say you have 3 Maya projects : One for the set, one for the character and one for the animation. The animation project references the set and the character. You will have to export :
  • A Guerilla project for the set, where you will work the lighting and the shading of the set.
  • A Guerilla project for the character, where you will work the shading of the character.
  • A Guerilla project for the animation, where you will work the lighting of the character for the shot and render everything. This Guerilla project will automatically reference the character and the set projects.

Resolving missing files

When Guerilla tries to load a reference, it first checks that this file was already loaded in the current document. If so, it loads the same file as before. If it is the first time this reference is loaded, it first checks that the specified file exists. If not, it tries to locate the given file in the parent reference loading directory. If such file cannot be found, Guerilla will ask for the correct file path.

Load a reference:
  • Is this reference already loaded?
    • Yes: Load the reference with the same file as before
    • No: Does this file exist?
      • Yes: Load the reference file and remember this path
      • No: Does this file exist in the parent reference directory?
        • Yes: Load the reference file in the parent reference directory and remember this path
        • No: Ask for the correct reference path, load the answered reference and remember this path

When Guerilla tries to load data from a ghostdata file, it first check that it has already opened this file. If not, if the file has an absolute path, it locates this file. In case this file not absolute or cannot be located, Guerilla assumes this file is located next to any loaded gproject or ghostproject file that has the same name. If multiple g(host)project files can be matched (that is, having the same name than the requested ghostdata), Guerilla behaviour is undefined. In this case, you should manually resolve the path in the source project.

In practice, this allows you to move all gproject, ghostproject and ghostdata along to a different directory with minimal remapping, provided all files are moved altogether. File remapping is not saved into the project, so Guerilla will ask each time you open a project for missing files, even if you previously resolved these files.

Guerilla without UI

When using Guerilla without UI (--noui option in command line), Guerilla will not prompt for missing files, and will not load these missing references.