An example of a basic traditional (not scanned) cloth material setup in Arnold 5 for Maya using an aiStandardSurface shader.
The shading network uses a classic angle dependent color blend to simulate the color of the cloth being washed out at grazing angle of view.
Explanation of the node graph:
A black and white fabric weave texture that will serve as input for multiple shading channels.
* This is actually not the best example of such a pattern, and could be replaced with a much better texture.
A remapValue node is used to set contrast to the fabric pattern (reduce contrast in this case) prior to it being multiplied with the fabric colors.
* Note that only one of the textures RGB channels is connected to the remapValue node since it’s a float (mono) processor and not RGB.
* Note that depending on the fabric texture, you may have to design different curves to achieve the right effect.
Two colors are defined with colorConstant nodes:
A deep color as the main fabric color, and a washed out color for grazing angle view (“side color”).
An aiFacingRatio node is used as an input for incident angle info.
* Note that in this case I checked the node’s invert option to make it behave more like other systems I’m used to (if you don’t use invert, the angle blend curve in 5 will be different..)
A remapValue node used to set the angle blend curve or in other words, how much does the color appears washed out per change of view angle of the cloth surface.
* The longer it take the curve to become steep from left to right, the more the main color will be dominant before the washed out color will appear.
A colorCorrect node is used in this example just as a way to convert the remapped float value back to RGB for being multiplied with the cloth colors.
* We could also connect it directly to the individual float components of the RGB colors but this way the node graph is cleaner.
A multiplyDivide node is used to multiply the processed fabric texture with the 2 fabric colors “baking” the pattern into the color.
A blendColors node is used to blend the 2 processed fabric colors together according to the processed facingRatio angle input.
The result is the final cloth color that is connected to the aiStandardSurface shader.
An aiBump2d node is used to convert the fabric pattern to normal data that will be connected to the aiStandardSurface shader to produce bumps.
An aiStandartSurface shader serving as the main shading node for this material.
* Note that under Geometry the Thin Walled option is checked so that the Subsurface layer of the shader will act as a Paper Shader rather than SSS.
* The main cloth color is connected to the SubSurface Color input.
Set a project folder and save your scene.
* If your painting into an existing texture you can skip this step.
Make sure your model has UV coordinates.
Make sure your model has a basic Lambert material.
* If you’re using a different material/shader on your model,
Temporarily switch to Lambert just for the texture painting operation,
And connect the original shader with the painted texture map to the surface shader input of the shading group after you’re done painting.
In the Rendering tab toolbar, Double-Click the 3D Paint tool button to activate 3D Paint and also open its tool settings window.
Make sure the object is selected.
In the 3D Paint Settings window, go to the File Textures part,
Choose a material attribute to paint to.
* this would usually be Color because we are using Lambert temporarily anyway.
Click Assign/Edit Textures to open the Assign/Edit Textures dialog,
Choose a resolution and a file format for the new texture,
And than click Assign/Edit Textures button at the bottom of the Assign/Edit Textures dialog to create the new texture and close the dialog.
* If you already connected an existing texture file to the Lambert shader’s Color input you can skip this step.
Check Update on stroke and Save texture on stroke.
Set the viewport to Textured display mode.
Set paint brush settings.
Click the 3D Paint tool button to activate it and paint on the model surface.
A VRayToon node that creates a graphic contour effect on the rendered image.
A flat shader that uses surface luminance data to define color areas.
* A VRayLightMtl can be used for that.
Creating the VRayToon node:
Click the Create V-Ray Toon button in the V-Ray toolbar to create a VRayToon node.
In the VRayToon node attributes, set line thickness, color, and more graphic properties.
* if you created a VRayToon node and it’s not selected RMB click the Create V-Ray Toon button in the V-Ray toolbar and choose Select VRayToon node.
* To delete the VRayToon node, select it and press Delete.
Creating the toon shader:
Create a VRayLightMTL node as the object’s surface shader.
Create a Ramp texture node, connect it’s output color to the VRayLightMTL’s color input and delete it’s accompanying 2D placement node.
Create a surfaceLuminance node and connect it’s output to the Ramp node’s V Coord input.
Optional remapValue node between the surfaceLuminance node and the Ramp node to clamp the luminance values.
Optional floatMath node to scale or manipulate the surfaceLuminance output value.