Versions Compared


  • This line was added.
  • This line was removed.
  • Formatting was changed.

InSItoA, you can use any polygon object as a stand-in by applying a Standin property to it, that references an .ass file on disk (or other procedural formats supported by Arnold such as .obj.dll, etc.).

Exporting models

Exporting assets to .ass archives

to disk

The .ass extension stands for Arnold Scene Source. In order

There are three ways to export any model assets to an  .ass  file on disk you may simply use the normal Export Selected Object menu:

Image Removed


Remember that you may files:


  1. Select the objects to export, and pick Export->Selected Object...

Image Added

You can export single objects as well as a whole hierarchy made out of multiple objects. 


Important note: During export, Arnold will honor its current render settings, for example, whether motion blur is enabled. You should think about whether you will want to use motion blur with the stand-in (and so enable it or not) before you export objects to be used as stand-ins later on.

 You can also export the scene

2. From the script editor, with the




Code Block
 createStandIn, selectionOnly, filename) 


You can find information of the parameters involved in here


Image Removed



Rendering external .ass archives

As mentioned above SItoA can turn any polygon object into a stand-in. Select the object and pick the Arnold Standin property from the Arnold Properties > Geometry menu, or from the top Arnold menu.

Information about the Arnold Stand-in parameters can be found here.

A typical usage of the standin property is to replace an ICE instance shape with complex geometry, as shown below. Because of the number of objects in the model, having all that geometry in the scene would make the export time rather long. Referencing the archive, on the other hand, makes the render start in a matter of seconds.

Image Removed


Additional features

• Materials: You can apply a new material to the proxy object which will propagate to the standin, allowing you to, for instance, render an occlusion or matte pass from the standins without having to export an .ass file with that material already applied. In the image below, you can see that we're overriding the hair material by simply assigning the Arnold hair shader to the cube.

• Properties: Applying an "Arnold Visibility" or "Arnold Sidedness" property to the proxy object also works.

• Custom procedurals: you can also load compiled procedurals in both Windows (.dll extension) or Linux (.so extension). At the moment, only one compiled procedural is shipped with SItoA, but there may be support for more in the future. The compiled procedural currently available is sitoa_curves_proc, used to load hair objects saved as .bin files (which are much smaller than .ass files). You can find this in the bin folder of your SItoA installation. So, you can now use sitoa_curves_proc as your standin path, providing the bin file path as data, as shown below. Note that if several bin files were exported for the same hair object (for instance hair.0.1.bin, hair.1.1.bin, etc.), you just need to provide the first one, the others are loaded automatically by the sitoa_curves_proc program.

Image Removed

Image Removed


Advanced features

In version 2.2, we added a graphic sequencer allowing to preview the standins' content. See the SITOA_Viewer page for details.

Also, we provide a way to attach custom user parameters to the exported procedural.

We've added a User Parameters grid. Is Enabled, each row of the grid can define a user parameter by its Name, Structure, Type and Value. You can add a row by clicking New Parameter, or delete an existing one by selecting it and clicking Delete Parameter.

The Structure can be either SINGLE or ARRAY, the Type can be BOOL, INT, VECTOR, POINT, etc.

The syntax to use for the Value depends on the structure and the type.

  1. If the structure is SINGLE, and the type is made of a single element (bool, int, float) just type the plain value. Instead, if the type is a vector, point, etc, each field must be separated by a white space.
  2. If the structure is ARRAY, the array members must be separated by a ',' character.
  3. As an example, here is a list of valid entries, and the corresponding section of the exported ass file.
Image Removed


  name cube
  dso "C:/dev/Arnold/Arnold_DB_2010/Render_Archives/torus_Archive.ass"
  min -4 -1 -4
  max 4 1 4
  1 0 0 0
  0 1 0 0
  0 0 1 0
  0 0 0 1 
  declare BoolSimple constant BOOL
  BoolSimple on
  declare VecSimple constant VECTOR
  VecSimple 1 2 3
  declare VecArray constant ARRAY VECTOR
  VecArray 3 1 VECTOR 4 5 6 7 8 9 10 11 12 
  declare FloatArray constant ARRAY FLOAT
  FloatArray 2 1 FLOAT 13 14 
  declare StringArray constant ARRAY STRING
  StringArray 3 1 STRING   "One" "Two" "Three"

 selectionOnly, filename)
  • frameStart: start frame of the sequence to be exported.
  • frameEnd: end frame.
  • frameStep: frame step.
  • createStandIn: if true, the options and camera are not exported, and a .asstoc file is also created, hosting the bounding box information of the exported objects. This is usually the option you want to use if you plan to use the exported ass file a standin later.
  • selectionOnly: if true, only the selected objects are exported.
  • filename: the output filename.

Filename supports tokens. When exporting a sequence, you can use the [Frame] token in the filename, to have it resolved correctly at each frame. 


Code Block
SITOA_ExportScene(1, 10, 1, false, false, "/usr/tmp/Test.[Frame #4].ass);

Exports 10 .ass files, named /usr/tmp/Test.0001.ass, /usr/tmp/Test.0002.ass, etc.


3. From the rendering options, using the Export Frame or Export Animation buttons in the ASS Archives tab.

Privacy settings / Do not sell my personal information / Privacy/Cookies