DelightAttributes
Applies 3Delight attributes to objects in the scene.
user
Container for user-defined plugs. Nodes should never make their own plugs here, so users are free to do as they wish.
out
The processed output scene.
enabled
The on/off state of the node. When it is off, the node outputs the input scene unchanged.
in
The input scene
filter
The filter used to control which parts of the scene are processed. A Filter node should be connected here.
attributes
The attributes to be applied - arbitrary numbers of user defined attributes may be added as children of this plug via the user interface, or using the CompoundDataPlug API via python.
attributes.dl:visibility_camera
Whether or not the object is visible to camera
rays. To hide an object completely, use the
scene:visible
attribute instead.
attributes.dl:visibility_diffuse
Whether or not the object is visible to diffuse rays.
attributes.dl:visibility_hair
Whether or not the object is visible to hair rays.
attributes.dl:visibility_reflection
Whether or not the object is visible in reflections.
attributes.dl:visibility_refraction
Whether or not the object is visible in refractions.
attributes.dl:visibility_shadow
Whether or not the object is visible to shadow rays - whether it casts shadows or not.
attributes.dl:visibility_specular
Whether or not the object is visible to specular rays.
attributes.dl:matte
Turns the object into a holdout matte. This only affects primary (camera) rays.
global
Causes the attributes to be applied to the scene globals instead of the individual locations defined by the filter.
extraAttributes
An additional set of attributes to be added. Arbitrary numbers
of attributes may be specified within a single IECore.CompoundObject
,
where each key/value pair in the object defines an attribute.
This is convenient when using an expression to define the attributes
and the attribute count might be dynamic. It can also be used to
create attributes whose type cannot be handled by the attributes
CompoundDataPlug, with IECoreScene.ShaderNetwork
being one example.
If the same attribute is defined by both the attributes and the extraAttributes plugs, then the value from the extraAttributes is taken.