Procedural geometry. It is defined in terms of user-supplied c++ code or a via scene description file (ass, obj or ply are supported).


A procedural can point to ass , obj and ply (Polygon File Format) filetypes. It can also point to a dll or so, which will be recognized as c++ compiled procedural program. In this case, Data attribute is enabled so you can pass parameters to define the procedural creation as a string.
This string parameter is used to pass parameters that are parsed by the procedural program and can be used for its creation/initializations. The format of this string is not standard and is dictated by the particular implementation of each procedural program. A better and more compact way of passing parameters and data to the procedural is through user data.
It will force the loading of a procedural during the initialization process. In that case, that procedural (and any other with the same setting) will be loaded serially (unless it was created from another procedural which is being created during rendering, in which case it will be executed in the current thread, possibly in parallel with others).
Defines the min point in world space coordinates of the procedural bounding box.
Defines the max point in world space coordinates of the procedural bounding box
It will try to load the procedural program from a function pointer. This won't work in an ass file, only inside a programmatic Arnold session

You can selectively disable an object's visibility for the various types of rays in the renderer. By default, objects are visible to all types of rays. Camera - Camera rays (i.e., primary or view rays). Shadow - Shadow rays fired in the direct lighting calculations. Reflected - Mirror reflection rays. Refracted - Refraction rays. Diffuse - Indirect diffuse rays (i.e. global illumination, hemi, or GI rays). Glossy - Indirect specular rays (i.e. glossy reflection rays).


Just like you can disable the visibility for specific ray types, you can also change an object's sidedness depending on the ray type. By default, objects are double-sided for all rays. By unclicking any of these checkboxes, the object will become single-sided, which means that those parts of the object whose normal vector points away from the incoming ray direction will not be rendered.


Determines whether or not the object picks up shadows from other objects.


Determines whether or not the object casts shadows on itself.


Invert normals (so that normals face inwards and not outwards).


Raytrace bias value specified for the object.


Transformation matrix. This can be either a single matrix or an array of matrices that define the SRT motion of the object for the current frame. (The matrices define the motion for the full frame, not just between the shutter open - close time.)


An array of nodes pointing to the shader or shaders in the case of per-face shader assignment.


The opaqueness (transparency) of the object. By default all objects are marked as opaque, because that speeds up the rendering considerably. Note that this flag is not set automatically by adding a transparent material to the object, it has to be set manually!


A boolean to enable selective light linking


An array of nodes pointing to the lights that will affect the node if use_light_group is enabled.


A boolean to enable selective shadow linking.


An array of nodes pointing to the lights that will not cast shadows on the polymesh, if use_shadow_group is enabled.


An array of strings each of which names a trace set. A custom shader must be used to make an effective use of these strings via the AiShaderGlobalsSetTraceSet and the AiShaderGlobalsUnsetTraceSet API calls






Unique ID for a node in the Arnold scene. 

  • No labels