Referenced MXS files



Image courtesy of Quentin Chaillet (www.qchaillet.com)


Maxwell Render can render referenced MXS files, if you don't want your geometry to be embedded in the scene. This allows you to replace repetitive or complex static geometry in your main scene by a reference to an MXS file (containing the object(s) and materials), and Maxwell will take the geometry from that external file at render time, before voxelization, dramatically reducing the main scene export time and the size of the scene file (saving space in disk and bandwidth on transfers for network rendering). 

The referenced object(s) must be an MXS file, and only the geometry and materials and its hierarchy will be taken from it. The cameras, environment and scene settings will be taken from the parent scene. The reference MXS file can contain any number of objects and materials, it can in fact be a completely different scene.


Working with referenced MXS files

The references allow you to maintain independence between your objects and the scenes that contain them, which is extremely useful in a collaborative production environment. Using them instead of regular objects allows you to: 

  • Use the exact same object in different scenes (as the same object is invoked at render time from the same MXS file) and keep them synchronized with the latest updates

  • Perform changes in the referenced MXS that will be automatically updated in all the scenes that use it (without needing to change the parent scene)

  • Reduce your export time (and scene file size) as the geometry doesn't need to be exported for each frame of an animation


A unique palm object stored as an external MXS file is referenced and instanced in the scene several times to generate a forest from a very small file size


Just replacing the referenced MXS file by a new one with the same name, automatically replaces the object when it is invoked at render time

Most of the plug-ins and Maxwell Studio allows you to load MXS references directly in your scenes, displaying them as a point cloud to get an idea of its size and shape. Materials already applied to the objects inside the MXS will be kept or you can override the material by applying another one to the reference.


Nested References

In Maxwell, you can now put one reference inside another one and another one and another one,... This was not possible before. You can nest several references one inside the other up to 32 nesting levels.



This will allow for more complex setups where you can have several trees referenced inside the mxs file of a house, which is also referenced into the scene of a town, which is referenced into an empty scene where you only adjust the camera and sun parameters.

Another smart usage of referenced geometry

If you are creating a fly-through sequence with the camera traveling across your scene, you could reference the whole geometry to an MXS file, and move the camera around. As the geometry doesn't need to be exported (being an external link), the exportation of each frame will be really fast, and the MXS file for each frame of the animation will be very small. This is very suitable for Network rendering as only a small MXS file per frame needs to be transferred to all the nodes, and the main MXS reference scene which contains all the geometry will be sent only once to each node.


Override Flags

The MXS_Reference offers some options to override visibility and object ID options of the referenced scene:


MXS Reference specific options


Hidden and Hidden from Camera, Reflections/Refractions and Global Illumination options allow overriding any of those visibility flags applied to the objects in the referenced scene and apply them to all the objects in the referenced scene.

Object Id options allow you to customize how you want the reference to show in the object Id channel (if active). You have three options:

  • Container ID: it gets one unique color for all the objects included in the reference, which is the one specified in Appearance tab.
  • Content ID: it gets the colors of the objects specified in the referenced scene, so they can be many.
  • Recolor: it provides a new random set of colors (but they will always be the same for each object) for the objects inside the referenced scene.


Render and object Id channel output with Object Id option set to Container ID, Content ID and Recolor.