-- Views
October 15, 25
スライド概要
Unreal Fest Bali 2025 で行った Substrate マテリアルに関するスライドです。
動画は以下のページで公開されています。
https://www.youtube.com/watch?v=4X-nZ7qflcw
Unreal Engineを開発・提供しているエピック ゲームズ ジャパンによる公式アカウントです。 勉強会や配信などで行った講演資料を公開しています。 公式サイトはこちら https://www.unrealengine.com/ja/
Exploring Substrate Materials Basic to Advanced Techniques Syuya Mukai Senior Solutions Architect – Epic Games
In this session, I will focus on… Making materials how artists can create materials utilizing Substrate
Agenda • What is Substrate? • New nodes and inputs • Examples to discover the Substrate more
What is Substrate? Substrate is a new way of authoring materials that gives you more control over the look and feel of objects for all platforms, from mobile to cinematic. • UE5.1: Strata(Experimental) • UE5.2: Strata → Substrate(Experimental) • UE5.3, 5.4: Experimental • UE5.5, UE5.6: Beta (We’re here) • UE5.7(Target): Production-Ready & Default
Features of Substrate Substrate represents material using Principled BSDFs BSDF: how much and at what angle light is diffused, reflected, or absorbed on / in the material Layering and mixing Independent of shading models Substrate allows users to layer and mix materials. Light reflection, diffusion, and absorption happens at each layer. No need to specify shading models. What’s possible now, wasn’t possible in the past. For example… • Drops of water on skin • Multi-layered car paint • Dust on objects, etc. Layer A Layer B
Difference between legacy and Substrate Legacy materials may seem like layering with the use of Blend Material or Lerp node. But these methods do not consider how light is transmitted/absorbed through the material on the top layer. Layer A Layer B
Difference between legacy and Substrate Legacy materials may have artifacts when combining metals and non-metals due to the concept of metallic materials. Substrate Legacy
Difference between legacy and Substrate Improve the reproduction of material formats such as Standard Surface and OpenPBR from Material X, etc.
Root Node Front Material is the input for Substrate. Legacy material inputs can also be used with Substrate from UE5.6. They are converted to Substrate behind the scenes.
Substrate BSDFs BSDF nodes (+ other specific nodes) function like the legacy result node or material attribute which defines the material.
Substrate Slab BSDF Almost any matter(material) can be achieved. What is the slab? Slab is the composition of an interface and a medium. Interface Medium
Diffuse Albedo - input the color of the material in the same way as BaseColor. - because of Diffuse, the color is black (the value is 0) for metals. - defines the percentage of light reflected as diffuse from a surface.
F0 Specular - reflectance where the surface is perpendicular to the camera. - metal’s color (specular) is controlled by F0. • non-metals: 0~0.08 • metal: 1
F90 Edge specular color - the color of the specular highlight where the surface normal is 90 degrees from the camera.
Substrate Metalness-To-DiffuseColorF0 BaseColor, Metallic, Specular workflow is also available
Substrate Helper Nodes Substrate Helper nodes are a set of nodes and material functions to perform some conversion or achieve something that legacy materials could do.
Substrate IOR-to-F0 Convert a dielectric IOR into F0 value. A dielectric: woods, plastics, stones, water, glasses, or something like that, except metals. Image Source: Pixel and Poly - Index of Refraction (IOR)
Second Roughness - for material surfaces that are lightly polished or mirror surfaces that have been worn out
Fuzz - simulates the soft, scattered light caused by tiny surface fibers - for fabric, velvet, fur, or felt
Glint - for snow, car paints, etc - Roughness values closer to 1 will result in more variation in glitter
SSS MFP Subsurface Scattering Mean Free Path This controls the density and influences the absorption and scattering of light. Red wavelengths: 0.2cm, Green wavelengths: 0.2cm, Blue wavelengths: 0.9cm absorbed and then scattered. Use for SSS, translucent, or coating MFP the average distance at which light interacts with a particle of matter
SSS MFP for Subsurface Scattering Input values directly because SSS is absorption and scattering. You can also use the SSS profile.
SSS MFP for Colored Translucent What is the MFP value of a red glass? → It's complicated and not artist-friendly. → Subsurface Transmittance-ToMeanFreePath, which controls color and thickness + Make sure about the settings These are the settings of this example • Blend Mode: TranslucentColoredTransmittance • Lighting Mode: Surface ForwardShading
SSS MFP for Colored Translucent Blend Mode: • TranslucentColoredTransmittance: Similar to ThinTranslucent shading model • TranslucentGreyTransmittance: Similar to Translucent Blend Mode. • This is also used as a fallback on platforms that do not support RGB hardware blending (called Dual Source blending) Lighting Mode: Most translucent materials, like photorealistic glass, use Surface Translucency Volume or Surface Forward Shading
SSS MFP for Colored Translucent • Diffuse Albedo is basically close to BLACK • the color is controlled by TransmittanceColor or SSS MFP for glasses, plastics, etc. Albedo is black, so all colors are absorbed but red is scattered and transmitted
What if the value of diffuse albedo is close to 1 (white)? 1. All colors are diffused(reflected) 2. Some red is absorbed and scattered 3. Red component is attenuated 4. Whitish blue appears
SSS MFP for Coating Substrate Vertical Layer node allows coating like a legacy clear coat. Control coating color by SSS MFP or TransmittanceColor
Substrate Operator Nodes Substrate Operator nodes mix or layer multiple Substrate Slabs.
Substrate Vertical Layer Coating the Bottom Slab with the Top slab Top Thickness Unit: cm Top Bottom 画像をいくつか
Substrate Horizontal Blend Mixing two slabs The Mix input controls how much these two Slabs mix together. 画像をいくつか
Substrate Coverage Weight Masking coatings with Substrate Vertical Layer node Weight:1 Weight:0 Top Thickness Bottom
Vertical Layer VS Coverage Weight + Vertical Layer Even if Top Thickness is 0, it is coated. Top Bottom Bottom Bottom
Vertical Layer + Coverage Weight VS Horizontal Blend Horizon Blend is basically used for mixing opaque slabs. Opaque + Opaque SSS MFP + Opaque Bottom Translucent+Translucent Opaque + Opaque SSS MFP + Opaque Translucent+Translucent
What is the slab? Slab is the composition of an interface and a medium. Medium Interface • how light interacts with the surface of a medium. • primarily defined by the Roughness, Normal, Diffuse Albedo, F0, and F90 values fed into them. + • how light is scattered, transmitted, and absorbed in a medium. • primarily defined by MFP and Diffuse Albedo
Let’s discover the Substrate more with some examples
Accumulation of Snow
M_MS_Base
With SSS and Glint Without SSS and Glint
Nanite Displacement Tessellation and Displacement for Nanite meshes Also available for Landscape
Center Defines which value of the displacement input is used as the baseline for displacement.
Metallic Car Paint
Clear coat Clear coat Base Coat Base Coat Primer Primer+Glints
Primer + Glint(Flakes)
Base Coat + Primer + Glints
Clear Coat +Base Coat +Primer + Glints
Chameleon Paint
Specular Profile Control specular color with ramps or a texture • LUT Format: Sampling method for the 2D lookup table (LUT) View / Light: sampling based on “Normal and View” and “Normal and Light” • → Easy and intuitive Half Angle: sampling based on “View and Half vector” and “Normal and Half vector” • → Physically realistic and precise
LUT Format: View / Light r.Substrate.BytesPerPixel
Chameleon Paint
Puddle
Puddle with oil
Substrate Thin-Film Easy to make an iridescent material such as soap bubbles, oil, etc
Mesh Texture Color Paint Each texture is stored on the instance of the mesh being painted. Usage: 1. Enable Virtual Textures for the project. 2. Set up “Mesh Paint Texture Object” on the material. 3. Painting texture using “Texture Color of Mesh Paint Mode”
River with Leaves
Adding Water Normal to POM With normal Without normal
Moss with Fuzz
Cracked Glass
Glass & Dirt Glass Crack Glass • Blend Mode: Translucent Colored Transmittance • Lighting Mode: Surface Forward Shading
Rough refraction The background is blurred by Roughness value like frosted glass.
Rough refraction Lower layers are blurred by Roughness value and Thickness value.
r.Substrate.BytesPerPixel Enable POM Disable POM
r.Substrate.BytesPerPixel
Glass & Dirt Glass Crack Glass
Bytes per pixel is out of budget Substrate automatically simplifies material using parameter blending when the budget is exceeded.
Parameter Blending Pixel Byte: 104 bytes 80 bytes 52 bytes 24 bytes
Material per pixel byte • Simple: up to 8 bytes • Use only Albedo Diffuse, F0, Roughness, Normal • Single: up to 24 bytes • Use more features: F90, Second Roughness, Fuzz, MFP, SSS • Complex: up to 36 bytes • Use more features: Anisotropy, Specular Profile • Complex Special: Up to 52 bytes • Use more features: Glint
Bytes per pixel is out of budget The budget can be changed with “r.Substrate.BytesPerPixel” (Read only) The default value is 80 bytes.
Other Considerations… Topology Closure
More detailed information
Documentation, Samples, Feedback Thread Documentation Samples in Content Examples Feedback Thread
Thank you! Special thanks to Sebastien Hillaire and the Substrate team