XRefBasic Coord. Object
The XRef function can be viewed as a type of instance function that works over multiple Projects: Individual Cinema 4D Reference Projects can be combined into a Master Project, edited further and rendered there as if all objects were part of the Master Project, including materials, tags, deformers and so on …
So what is this good for?
Let’s say you are working with a very large Project that contains several complex objects. One person is responsible for placing or animating the objects and others are creating the final models. Objects that are part of individual Reference Projects can be added to the master file via XRef which lets the Master Project be updated quickly and easily without having to go through a laborious Merge process for each Project.
The position, scale and rotation of objects from the Reference Projects will be assumed exactly when placed into the Master Project. Once an object has been placed into the Master Project it can be animated just like any other object.
In Cinema 4D R13, we now have a completely new XRef system, which can do much more than it used to. The new system is intended to bring the external objects directly into the document, so that they can be used for expressions and animation.
It brings great benefits to team work, since now the modeler can send his reference Project to the character rigger, who in turn can send it to the Master Project after having rigged the character (or while rigging it). All people working on the project will now be able to edit their own reference Project, even nested references, and all these changes will trickle down to the Master Project, which can also be edited.
The person working on the Master Project will actually now be able to control and animate a referenced, rigged character directly in his Master Project. All controllers, constraints and expressions will be active and editable (if the correct options are set in the XRef object, of course). If changes are needed in the modeling or rigging referenced Projects, these changes can then be updated in the Master Project, and it will still retain its animation or changes made there as well.
While the new XRefs have been developed with character animation in mind, it is of course not restricted to this use only.
For example, it could also really be useful for architectural visualization work, with one member of the team working on geometry, while another one works specifically on materials and shaders, and one person assigning XRef materials to specific XRef objects (or regular objects) in the Master Project as the project moves along.
When adding an XRef object to your Master Project, you will now have a choice of what you can import, display and edit.
For example, when importing a reference Project, you can decide if you want to import animations and materials. Then, you can choose if you want to display all objects contained in the XRef in the Object Manager or hide everything so they don't clutter your hierarchies. And finally, you can decide if you should be able to edit their parameters, position, materials and so on …
In essence, it's very close to what the Merge command does, except you keep an active connection with the referenced Project, which can be edited on its own and its changes will be passed on to your Master Project.
XRef/referenced objects can:
Some of the previous limitations have also been removed or improved, such as layers being imported properly now and relative paths handling.
Important: Do not edit the geometry of a referenced object directly in the Master Project, as all modifications will be lost upon refresh. Make sure you duplicate and use the Make Editable or Current State to Object commands first.
With the introduction of Cinema 4D R14, a polygonal object’s geometry can be edited without these changes being lost (to do so, enable the Points option in the XRef’s Modify tab). However, modifying primitives will lead to the same results as in earlier versions.
Note: If you set the XRef object to Generator you will lose all changes that were made to the master Project. The XRef object will in effect be reset to its default values.