Our studio, SilverCord-VR, presents an original shader for generating realistic gemstone materials for Unreal Engine, starting from version UE 5.5.4.
The core material is built using Substrate Material technology, but the package also includes two simplified non-Substrate versions that are fully compatible with any engine version.
(These versions can also be used on lower LODs for improved performance.)
With this shader, you can texture sparkling gemstones of any color and cut.
The pack includes four base gemstone models with predefined materials:
- Rounded (round cut)
- Oval (oval cut)
- Emerald (emerald cut)
- Pear (pear-shaped cut)
Each model comes with a pre-configured material setup.
A distinctive feature of the shader is its iridescent rainbow glints, which depend on the angle of reflection relative to the camera, or on a custom light direction defined by the Fake Light Vector parameter.
This vector can simulate a fixed light angle or receive real-time lighting data from a Blueprint light source.
With flexible parameter control, you can customize the shader for diamonds, rubies, emeralds, sapphires, amethysts, topazes, garnets, aquamarines, and more.
Material Overview
The Substrate version of the shader uses three layers:
- Top Layer — defines the gemstone surface: its color, transparency, roughness, and reflections.
- Middle Layer (Glint / Glitter Layer) — creates iridescent color sparkles that change depending on the reflection angle or a custom light vector.
- Bottom Layer — defines the internal facet texture, parallax depth, and a customizable Fresnel effect.
A key feature of this shader is the rainbow glint effect, which depends on the camera’s reflection vector or a user-defined Fake Light Vector parameter.
This allows you to simulate angular lighting or connect a real light source direction dynamically via Blueprint.
Material Parameters
❖ Fake Refraction
Simulates the shimmering effect of gemstone facets on the lower layer.
- Refraction Texture Strength — brightness of the additional facet texture that shifts depending on the camera angle.
- Refraction Texture Tiling — tiling scale of the facet texture (higher values make facets smaller).
❖ Fresnel Effect
Fresnel simulates how reflection strength increases near the edges of the object.
In Unreal Engine, this is achieved with the Fresnel node, which highlights object edges based on view angle.
- Fresnel Base Reflect — controls the general reflectivity (high values make the stone appear hazy).
(Internally connected to theBaseReflectFractionIninput of the Fresnel node.) - Fresnel Color — color of the edge reflections.
- Fresnel Emission — glow intensity on the edges (0 = off; higher = brighter glow).
- Fresnel Exponent — defines how sharp or smooth the falloff is.
(Mapped to theExponentIninput of the Fresnel node — higher values create a thinner, sharper edge.) - Fresnel Opacity — controls the strength and visible width of the effect.
- Fresnel Color Balance — blends the Fresnel color with the top reflection texture.
(0 = pure color, 1 = texture only, values >1 boost texture brightness.)
❖ Glitter / Glint Layer
Generates color sparkles and micro-highlights.
- Fake Light Vector — overrides the real reflection direction; can receive a real light vector from Blueprint for dynamic lighting.
- Gem Glitter Map — texture used for sparkle pattern.
- Glitter Center Shift X / Y — shifts the texture horizontally and vertically.
- Glitter Clamp / Glitter Clamp Middle — defines the brightness thresholds for colored sparkles.
- Glitter Intensity — increases intensity of sparkles (0 disables the effect).
- Glitter Map Tile — sparkle texture tiling (higher = smaller sparkles).
- Glitter Multiplier — global brightness of the glint (emissive boost).
- Glitter Offset / Glitter Rotation — offset and rotation of the sparkle texture.
- Has Glint — disables the entire glint calculation for performance optimization.
- Main Rainbow Map — color distribution map for iridescent highlights.
- Min / Max Glitter Hue — defines the color range (HUE shift) of sparkles.
- Min Rainbow Glow Level — minimum glow intensity at which color appears.
- Rainbow Second Density — color saturation factor at the sparkle edges.
❖ Main Texture (Facets)
Defines the base facet pattern of the gemstone.
- Gem Texture — main facet texture.
- Texture Center Shift X / Y — moves the texture along the axes.
- Texture Tile — controls texture scale (higher = smaller facets).
- Texture Rotation — rotation angle of the facet texture.
❖ Parallax Mapping
Parallax Occlusion Mapping adds a depth illusion to flat surfaces using a height map.
When the camera moves, the internal facets appear to have real 3D depth.
- Parallax Height — controls the perceived height of the depth effect (higher = deeper look, but more GPU cost).
- Parallax Map — height map that defines which areas are raised or recessed.
❖ Top Layer
Controls the gemstone surface properties — color, transparency, and reflections.
- Top Gem Color Texture — reflection texture on the surface.
- Top Gem Tint — gemstone color tint.
- Top Layer Sickness — controls transparency: higher values make the surface more opaque and reduce visibility of inner facets.
- Top Roughness — defines surface reflectivity (higher = more matte).
- Top Texture Rotation / Shift X / Shift Y / Tile — controls mapping of the reflection texture.
Tips & Compatibility
- The Substrate version offers maximum realism but requires a modern GPU.
Use the non-Substrate version for mobile or performance-sensitive environments. - You can connect a real light vector to the Fake Light Vector input in Blueprint to simulate dynamic lighting.
- Works with Unreal Engine 5.5.4 and above.