The V-Ray Stochastic Flakes Material can be used to simulate car paints, snow and other glittery materials. It works by simulating at render time the aggregated effect of a large number of mirror-like flakes scattered over the surface of an object. The material is somewhat similar to the V-Ray Car Paint Materia, but uses less memory and avoids the tiling issues for that material.

Basic Parameters

Enable Flakes – When enabled, the material simulates flakes scattered on the surface of the object. When disabled, the material simply renders the specified brdf type with the specified glossiness.

Num Flakes – The number of flakes in the unit texture square. The number of flakes is restricted to 231. If you need more flakes than that, you can increase the Flake Scale parameter.

Hilight Glossiness – Controls the distribution of the flakes. Values close to 1.0 will make all flakes oriented along the surface, whereas lower values will randomize the normals of the flakes.

Blur Angle – Controls the “softening” of the flakes effect. Higher values produce softer results while smaller values make the flakes sharper. Usually, value between 0.5 and 8 are used.

Subdivs – Controls the number of samples to use when calculating reflections.

Reflection Filter – Specifies the reflection color of the flakes.

Reflection Map – Allows the reflection color to be controlled with a map.

Mapping Type – Specifies the way the flakes are scattered on the surface:

  • Explicit UVW channel – the flakes are mapped according to the specified mapping channel. The density of the flakes on the surface depends on the way the UVs follow the surface.
  • Triplanar from Object XYZ – the material will use a triplanar mapping to create the flakes. This mode is useful for objects that don’t have suitable UV mapping.

Map Channel – Specifies which map channel to use, when mapping type is set to Explicit UVW channel.

Flake Scale – Allows to scale the flakes in texture space. For mapping type Explicit UVW channel scale 1.0 is recommended. For Triplanar from Object XYZ mapping, num flakes number of flakes are distributed in each square unit in local object coordinates. In this case it is necessary to lower flake scale (0.05, 0.01 or less) and increase num flakes, depending on the object size, especially if square artefacts are observed.

BrDF Type – Specifies the BRDF that is used to guide the distribution of the flakes:

  • Beckmann – Uses a Beckmann distribution for the flakes.
  • GGX – Uses GGX distribution for the flakes. The GGX distribution has a longer “tail” compared to Beckmann.

Colored Flakes Parameters

Random Hue – Enables randomized hue for the flakes.

Random Saturation – Determines the variance in color strength used for the flake colors when Random Hue is enabled.

Saturation – Default Saturation value.

Random Lightness – Controls the brightness variation for the flake colors when Random Hue is enabled.

Lightness – Default Lightness value.

Advanced Parameters

Texture Subdivs  – Controls the number of samples to use when calculating blend texture.

Blend Min – Specifies the number of flakes per pixel below which the flakes are computed. When the number of flakes per pixel is above this value, the material gradually transitions into a smooth (non-discrete) BRDF.

Blend Max – Specifies the number of flakes per pixel above which the material will only compute the smooth (non-discrete) BRDF. If the number of flakes per pixel is below this value, the material gradually transitions into discrete flakes.

Example: Enable Flakes

enable flakes is off; the continuous GGX distribution is rendered

enable flakes is on

Example: Number of Flakes

num flakes is 5000000 (5 mln)

num flakes is 50000000 (50 mln)

num flakes is 500000000 (500 mln)

Example: Highlight Glossiness

hilight glossiness is 0.6

hilight glossiness is 0.8

hilight glossiness is 0.95

Example: Blur Angle

blur angle is 1.0

blur angle is 3.0

blur angle is 6.0