Mixing matte and glossy materials with the weight node
in Softimage XSI 3.01

© 2004 Rob Wuijster

With the examples from the previous tutorials, it's quite simple to go a little step further and use the capabilities of the "Mix2Colorsnode" and a B/W image for mixing two different materialtypes on one object.


1. Let's start simple:

In XSI create a simple cylindrical thingy just for the sake of it, and in Photoshop create three basic files, one colorimage and two B/W images, one for bump and one for the reflection and mixing the material types.

OK, here we go: Assign the cylinder a "Phong Material" and assign a "Cylindrical Projection" to it. Assign a texture, in this case the "steelrust.tga" file. No need to set up the shader, because most of the values are driven by the textures.

The three imagefiles that I used for this example are shown in the image below:


Now we have set a basic setup for our object, it's time to open the Rendertree, and start adding some nodes. Create an extra "Lambert" material node, an extra "Texture image" node, a "Bumpmap Generator" node and a "Mix2Colors" node.
Now disconnect the "Phong" node from the "Material" , and connect the "Mix2Colors" node back to the "Material" 's "Surface, Shadow and Photon" slots.

Connect the "Phong" node back into the "base_color" slot of the "Mix2Color" node, and connect the "Lambert" into the "color1" slot of the "Mix2Color" node. Also connect the "imagenode" of the "steelrust.tga" image into the "Diffuse" slot of the "Lambert". Now you have assigned the first image to the two materials, you can open up the "Mix2Color" node and fiddle with the Mixvalues if you want.

If you would render this in the renderregion you can see that there's no real visual difference between the "Phong" and "Lambert" material. Now connect the extra "Texture image" node" to the "weight1" slot of the "Mix2Color" node, and also select the image that's going to define the reflection, in this case the "steelrustshine.tga" file.

To make it even more realistic, connect the "Bumpmap_generator" node into the "Bump Map" slot of the "Material". Select the image that's driving the bump, in this case the "steelrustbump.tga" file. Open the "Bumpmap_generator" node and set the bump to your liking.

The Rendertree now should look like this:


Note: When disconnection nodes, be sure not to click on the refresh button untill you're finished, or your tree is gone. And nope, the Rendertree has NO undo ! ! ! !

To spice up your rendering you could try to create a HDRI pass for a boost in the reflections. So there you have it, a simple rendertree and some textures to create a bit more complicated texturing. In this case two different material types are mixed by a texture, a bumpmap is added for some extra detail
If you refresh the renderregion, the render would look something like this:


You can see how the metal is very reflective at the end, but where the corrosion starts, it's slowly becomes a matte, rusty material. You're not limited by just reflections, you can also use this method to add transparancy etc. to your object.

I hope you found this usefull.

Cheers,

Rob