3dsmax - External Scene References

It is possible to reference external scenes in MXS or Alembic (ABC) format and have Maxwell load them at render time. This is useful in many scenarios, such as:

  • creating a library of ready-to-render props complete with materials which you just reference into new scenes
  • shortening export times in an animation by referencing the static objects and only exporting the animated parts at each frame
  • reducing scene complexity and improving viewport performance by referencing heavy objects

To reference an external file, create a MXSRef node from the Maxwell category in the Create->Geometry rollout and press the browse button next to the MXS File edit box to select the reference file. You will be prompted to select a MXS or ABC file which will be associated with the Node.

The node has only a few parameters:

  • File: the path to the referenced scene file.
  • Enable Sequence: when this is enabled, the current frame number (padded to 5 digits) is inserted before the file extension prior to loading the scene, e.g. scene.mxs becomes scene.00001.mxs. If a frame number is already present before the extension, it is replaced.
  • Display LOD: controls how many vertices to load and display in the viewport. The referenced objects are shown as point clouds, just like instances, to keep the viewport performance inside reasonable limits when heavy scenes are used.
  • Pre Behavior: controls how the sequence frame behaves when the frame number is less than the Start Frame parameter. Possible values are:
    • Hold - the sequence frame is always Start Frame when the current frame is less than Start Frame.
    • Loop - the sequence frame loops from End Frame to Start Frame when the current frame is less than Start Frame.
    • Ping Pong - the sequence frame loops alternatively from End Frame to Start Frame and back when the current frame is less than Start Frame.
    • Hide - when the current frame is less than Start Frame, the mesh doesn't render.
  • Post Behavior: controls how the sequence frame behaves when the frame number is bigger than the End Frame parameter. The values and behaviours are the same as for the Pre behaviour.
  • Padding: the number of digits used for the frame number in the file names.
  • Sequence Format: allows you to select the naming convention for the file sequence.
  • Override Materials: set per object material overrides for this MXS instance.

Apart from the reference parameters which are the same for all references, there are also the following parameters specific to Alembic references:

  • Axis: select the axis system of the referenced scene.
  • Smooth Normals: specifies whether to smooth the imported normals.
  • Smoothing Angle: specifies the maximum angle allowed between two normals in the same smoothing group.

Maxwell uses the geometry and materials found in the MXS file. It does not load environment settings, camera parameters or render options. By default, the objects use the materials they have in the referenced scene. It is not possible to use only a subset of the referenced scene; all the objects will always be used.

You can create a MXS file ready to be referenced by selecting the objects you need and clicking the Menu->Export and selecting the MXS format for the export. You will be presented with the following options dialogue:

The Animation flag can be used to export a sequence of files if the objects are animated. The camera field instructs the plug-in which camera to export in the MXS file. The camera is not used by Maxwell when the scene is referenced, but it can be used by an external tool or script, e.g. to generate thumbnails of the MXS files. The Pack'n Go flag also exports all the assets referenced by the scene to the same directory as the exported mxs.

You can reference MXS scenes from any other sources, including those files written by the plug-in if persistent MXS is on.