Go to start of banner

# V-Ray Material Structure

The standard V-Ray Material is the most versatile and commonly used material available in V-Ray. It can realistically reproduce various materials ranging from plastic, wood, and metal to glass, water, and skin. Its versatility is the result of the different layers that make up the material and how they interact with the lighting in the scene. This article describes the structure of the standard V-Ray material.

## Layered Model

To calculate a point in the shader viewed from a certain direction, we'll need to use a bidirectional scattering distribution function (BSDF) that describes the light-scattering properties of the surface at that point and from that direction (plus a self-illumination component and a subsurface scattering distribution). The resultant BSDF can be represented as a mixture, or a linear combination, of constituent BSDFs. Since this is a linear interpolation, this formula maintains energy conservation.

Each building-block BSDF is either a reflection or a refraction (transmission) distribution function, i.e., BRDF or BTDF (except for Self-illumination and Subsurface Scattering). Each BSDF has its own set of physically-based parameters used by V-Ray to evaluate and sample each BSDF efficiently and produce a realistic appearance. In general, a single BSDF corresponds to a single layer in Fig. 1. You can edit these parameters of your V-Ray material to affect its properties.

Other V-Ray materials use a similar layered model, though the number and content of layers vary depending on the purpose of the material. For instance, a FastSSS material would not have a Self-illumination layer or a Metallic Reflection layer since the material is designed to simulate translucent substances, which do not display metallic or illuminative properties.

In Fig. 1, the V-Ray Material is represented as layers. Two primary operations take place in this model - layering and mixing. Layering is closer to how real-world materials are built (e.g., coating an object with multiple layers of paint and varnish). This allows V-Ray to estimate the amount of light reflected from a given layer and the amount of light refracted and propagated into the layers below. Mixing is a simplified form of layering where the contributions of two or more BSDFs are calculated, and a simple interpolation computes the final value. For more information on how light behaves when it reaches a medium, see the Transparency and Translucency article.

The vertical slices stacked horizontally in Fig. 1 represent the mixing process, e.g., Refraction can be mixed with a combination of Sheen and Diffuse and, separately, with Subsurface Scattering. As you can see, the Transparency and Self-illumination layers are not included in the mix, as these properties do not depend on the light in the scene.

Fig. 1. Layered Model of the standard V-Ray Material. Click on the image to view it in full-size

## Closure Function Representation

The computation of the V-Ray Material can be represented as a tree, such as the one in Fig. 2. The V-Ray Material root closure is a weighted product of all its child closures, which are shown as leaf nodes (the colored blocks). The weight of each child closure is the sum of the edge weights along its path from its corresponding leaf to the root node (the V-Ray Material closure). The edge weights are parameterized by interface-level parameters, shown in bold. To compute the V-Ray material, the contribution of each leaf node is multiplied by the sum of its edge weights and multiplied by its child closures. For example, the calculation of the Sheen Reflection and Diffuse leaf nodes looks like this:

sheenBRDF * sheen color + (1 - sheen color * reflectance(sheenBRDF)) * diffuse color * diffuseBRDF

Then, this needs to be multiplied by each following closure and its edge weights to result in the formula for calculating a standard V-Ray Material.

Fig. 2. Closure Function visualized as a binary tree. Click on the image to view it in full-size