Bringing ICE Data into the Render Tree with Attribute Shaders
The ICE attribute shaders allow you to access a particle’s ICE attributes that are driven by ICE trees. You can also apply the Attribute shaders to geometry that is used as shape instances on ICE particles.
![]()
|
The attribute shaders are currently available only for ICE particles. |
These shaders allow you to control your shading based on calculations done by an ICE tree, thus creating a link between data in the ICE tree and data in the render tree. To use the attribute shaders, you must make sure that the particles first have the appropriate attribute created for it in the ICE tree.
For example, you can control the particle’s transparency based on the distance to a surface by writing an ICE tree that sets a DistancetoSurface attribute and then accessing that attribute in the render tree via an attribute shader. Or make smoke dissipate or a color change with a gradient depending on the velocity of the particle.
If the shaders are applied to particles with an ICE tree, only ICE attributes from that object will be shown in the shader’s Attribute drop down list.
If they are applied to an object that does not have an ICE tree, then all attributes from all ICE trees in the scene are displayed in the Attribute list for that shader. This is so that instances can choose attributes even if there is no bi-directional link between the Instance Shape node (or the Set Instance Geometry compound) in the ICE tree and the instance object itself.
![]()
|
The Switch shaders (Color, Scalar, and Vector Multi Switch) are used in conjunction with state systems that you’ve set up in the point cloud’s ICE tree. Attribute shaders are used with these switch shaders to bring the ICE tree data into the render tree so that you can use the state data. See Processing > Switch [Shader Reference] for more information. |
There is one attribute shader per data type:
• Boolean data — use the Attribute Boolean shader.
• Color and 4D vector data — use the Attribute Color shader.
For an example of using this shader, see Using the ICE Particle Color in the Render Tree.
• Integer data — use the Attribute Integer shader.
• Scalar data — use the Attribute Scalar shader.
• Quaternion (as rotation), Matrix 3x3, Matrix 4x4, and Rotation data — use the Attribute Transform shader.
• 2D vector, 3D vector, and Rotation data — use the Attribute Vector shader.
To connect an Attribute shader
1. Select a point cloud.
2. Open a render tree and click the Update icon or press F6 to display the render tree for the selected point cloud.

3. In the render tree, drag an appropriate Attribute shader from the Attributes group in the preset manager on the left, or choose a shader from Nodes > Attributes on the toolbar.
4. Plug it into any input port on a shader that supports ICE particles (each Attribute shader is different).
For example, you can plug many of the Attribute shaders as inputs into the Particle Gradient shader to drive the color gradient based on almost any ICE attribute for the particles, such as their velocity, size, orientation, mass, point position, etc.

For information on each of the Attribute shader parameters, see Data > Attribute [Shader Reference].
Autodesk Softimage 2011 Subscription Advantage Pack