About Texture Layers

Texture layering is the process of mixing several textures together, one after the other, such that each texture is blended with the cumulative result of the preceding textures. In Softimage, you can use this technique to build complex effects by adding texture layers to an object's material or its shaders.

What makes texture layers so powerful is that at any time in the texturing process, you can add, modify, and remove any layer, giving you complete control over the resulting effect. You can also quickly and easily change the order in which layers are blended together, something that's quite difficult to do when you mix textures using mixer shaders in the render tree. Because texture layers only affect designated ports, you can blend a number of layers with each of a shader's attributes and create a complex effect for each.


The weatherbeaten road sign was created by adding three texture layers to a basic Lambert-shaded grid. The images below show the cumulative effect of the layers.


The parameters of the grid's Lambert surface shader are represented in the base layers. In this case, nothing is connected to the Lambert shader's ports, so only the base colors are shown.


The first layer adds the basic sign texture to the Ambient and Diffuse ports. The texture's alpha channel is used to control transparency, cutting out the shape of the sign.


The second layer adds some rust. The rust texture is blended with the Ambient and Diffuse ports according to its alpha channel, and a separate mask — in this case, a weight map.


The final layer, blended with Ambient, Diffuse, and Transparency adds the bullet holes. Bump mapping is activated in the layer's shader, creating the depression around each bullet hole.

When you add a texture layer to a shader, one or more of that shader's parameters, or ports, is added to the layer. The layer is mixed on the selected ports, in accordance with its assigned strength, or weight, using one of several different mixing methods.

For texture layering purposes, the shader's ports are collectively treated as the base layer with which the texture layers are blended. If some of the shader's ports are connected to other shaders, those shaders are considered part of the base layer as well. For example, if you've connected a Cell texture to a Phong shader's Ambient and Diffuse ports, the Cell texture is treated as part of the Phong's base layer.

Subsequent texture layers are blended in sequentially, each at its own weight, and using its own mixing method. It's important to remember that each texture layer affects only the ports that have been added to it, irrespective of its position in the mixing order.