SItoA 3.5 includes the Volume primitive and a OpenVDB volume plugin, so you can render VDB files in Softimage.
Category Archives: Arnold
Loading PLY files into Softimage
As Arnold standins…
The Arnold procedural node can load Arnold Scene Source (ASS), Wavefront Obj (OBJ, OBJ.GZ), and Stanford Geometry (PLY), as well as DLLs/SOs.
The swirl is a PLY file I downloaded from http://www.3dvia.com/
How many Softimage licenses do you need for an Arnold render farm?
None, not for the render farm itself. You just need Arnold licenses for the render nodes. You need Softimage licenses for artist workstations; on the render nodes, you’ll be using xsibatch -processing -render to render (and -processing doesn’t take a Batch license for third-party renderers).
You wouldn’t need Maya Batch licenses for Arnold render nodes either. The Maya render/mayabatch command line tools won’t take a Batch license for third-party renderers either.
Using ICE attributes to control point light instances
Instancing a random shape with a random start frame
Here I’m instancing a group of Arnold standin sequences, and giving each instance a different start frame. (Each standin sequence is an animated bulge on a cylinder.)
PS It works fine until you go past the last frame of the sequence, because looping or clamping the ShapeInstanceTime doesn’t seem to prevent SItoA from loading the non-existent ass file.
Using an ICE attribute to drive a procedural texture
Here’s a simple example of using an ICE attribute to drive a procedural texture. In this case, I’m using a random integer to drive the number of repeats of a checkerboard:
To set it up, I ran this script to programmatically add an ICE attribute. Unfortunately, I found I had to add an ICE tree to get the attribute to show up in the render tree.
import random si = Application for o in si.Selection: # Long, Single, Singleton a = o.ActivePrimitive.Geometry.AddICEAttribute("_random", 2, 1, 1 ) a.DataArray = [ (random.randint(1,8))] si.ApplyOp("ICETree", o, "siNode", "", "", 0)
Then in the render tree I used Integer Attribute node to get the attribute value. This same material is applied to every cube in my example.
And if you wanted to update the ICE attribute later, eg increase the range of random values, you could do something like this:
import random si = Application for o in si.Selection: a = o.ActivePrimitive.Geometry.ICEAttributes("_random") a.DataArray = [ (random.randint(1,12))]
Arnold licensing explained visually
As requested in the comments, here’s a visual explanation of Arnold licensing, to go along with the Softimage version I posted last week.
Suppose you had five Arnold licenses. With those five licenses, you can have five machines using Arnold to render. For example, you might have two artist workstations and three render nodes (but you can have any combination of workstations and render nodes that adds up to five).
Arnold licenses are checked out when you actually render, not when you start Softimage or load a scene. If a workstation isn’t doing a render region, or a render preview, or rendering frames, then there’s no Arnold license being used. So maybe it is more accurate to think of it like this:
Arnold licenses are per machine, so all processes on the same machine share the same license. Note that you can limit the number of threads per render if you want to run multiple renders on one machine.
Advanced troubleshooting for shader DLL dependencies
Help! My Arnold render channels are missing
If you don’t see any of the Arnold render channels (like Arnold_Alpha or Arnold_Opacity), open up the script editor (press ALT+4) and run the SITOA_CreateRenderChannels() command.
Tip – You can avoid this by making Arnold the default scene renderer. The SITOA plugin will then make sure the Arnold render channels exist (by calling SITO_CreateRenderChannels from OnNewScene and OnStartup events).
hat tip to Francois Lord for pointing this out
# Python Application.SITOA_CreateRenderChannels()
// JScript SITOA_CreateRenderChannels();
Arnold gamma correction settings
In this video, I take a quick look at the different gamma correction settings used by Arnold. I don’t tell you how to set up a linear workflow; my goal is to help you understand what the gamma correction settings mean.