Softimage's normal way of loading stand-ins or "archives" as they are also called is through the "stand-in" primitive. This method is supported in SItoA, however for greater flexibility you may also use any polygon object as a stand-in by applying a property to it that references an .ass file on disk (or other procedural formats supported by Arnold such as .obj, .dll, etc.).
Exporting models to .ass archives to disk
The .ass extension stands for Arnold Scene Source. In order to export any model to an .ass file on disk you may simply use the normal Export Selected Object menu:
Remember that you may 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 before you export.
You can also export the scene with the following command:
SITOA_ExportScene(frameStart, frameEnd, frameStep, toRender, createStandIn, selectionOnly, filename)
You can find information of the parameters involved in here.
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.
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.
• 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.
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.
- 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.
- If the structure is ARRAY, the array members must be separated by a ',' character.
- As an example, here is a list of valid entries, and the corresponding section of the exported ass file.