View Single Post
# 2 13-04-2007 , 06:03 AM
jsprogg's Avatar
Lifetime Member
Join Date: Feb 2004
Location: Chicago
Posts: 1,712
What you need to do is create a double sided shader that applies one material to one side and another to the opposite side. You can do this in Maya by creating a condition that samples an
object’s normal direction and uses it as material switcher.
You need to uv map the box lid as a seperate object and add a lambert material to it.

Open the Hypergraph and, selecting your object (box lid) , select Graph > Graph Materials On Selected Objects.
You should see your Lambert material in the
Hypergraph. Create a condition node and a samplerInfo node.
MMB-click and drag the samplerInfo node to the condition.
Select Other as the connection to open the Connection Editor.

In the Connection Editor, connect the flipped normal
attribute of the samplerInfo node to the condition
node’s second term. now select the condition node in the hypergraph and in the connection editor reload left,the select the Lambert in the hypergraph and reload right.
Connect condition1. outColor to the Lambert Material incandescence. Now double-click on condition1 to open the Attribute Editor. Under Conditon Attributes set its operation to Not Equal to distinguish one object face from its opposite side. Render a frame; the lid now has a white and a black side. In the Hypergraph create two more materials (Lambert, blinn whatever you need): one red, one green. Connect the red material’s outColor to condition1.colorIfTrue by MMB draging the red material to the condition node and selecting colorIfTrue and the green’s outColor to condition1.colorIfFalse by doing the same with the green and selecting colorIfFalse.
Rename the green material to ‘Front’ and the red one to ‘Back’.
You can now treat these as two normal shaders on one
object. Add front and back texture maps to each materials' colours as you would normally, and there you have it.


Last edited by jsprogg; 13-04-2007 at 06:59 AM.