File Referencing
Character Referencing:
We will not reference our characters (or any elements using the Helm GUI). The Helm GUI relies on very specific name relationships with the nodes in our character files. The namespace feature employed by file referencing breaks the connections between the GUI and the rig. Although a MEL command may be employed to force the use of the referenced file's default namespace ("file -r -dns filename.ma"), this command comes with significant risks and does not always produce a robust result.
In short: characters and their accessories (anything with a GUI) should be imported, not referenced.
Set & Prop Referencing:
Since our set & prop files are simple and don't employ the Helm GUI, we can employ file referencing. The namespacing which is applied should not be a problem, and in fact can be used to handle copies of elements (simply reference the same element again, which will be placed into its own namespace).
For example, to reference the hires barber shop:
1.) invoke "File > Create Reference..."
2.) select "barberShop_hires_model" from within the "/current" directory
3.) the barber shop nodes will be assigned a "barberShop_hires_model:" namespace prefix (successive references of the same element will be prefixed as "barberShop_hires_model1:", "barberShop_hires_model2:", etc...)
To change the reference to a lower resolution:
1.) invoke "File > Reference Editor..."
2.) select the referenced file from the list
3.) in the "Unresolved Name" field, change "hires" in the filename to "lores" or "proxy" (assuming these versions of the model exist)
IMPORTANT: For transformation values and animation to transfer properly from one referenced resolution version to the next, set & prop elements should be placed within the scene using these upper transform nodes: "_ORT", "_TRS" or "_ROT". The "_TRS" node is the primary element placement transform.