Shadow Generations Shaders - DirectionBlend dpnndpn: Difference between revisions
Justin113D (talk | contribs) Added gallery |
Justin113D (talk | contribs) No edit summary |
||
Line 135: | Line 135: | ||
| technical = | | technical = | ||
For some reason using the <code>IBL_CAPTURE</code> debug view the directional blend factor is set to 0. | For some reason using the <code>IBL_CAPTURE</code> debug view the directional blend factor is set to 0. | ||
Why this was done is unknown, and makes no sense. | <br/>Why this was done is unknown, and makes no sense, as this produces IBL textures with an incorrect looking environment. | ||
| features = | | features = |
Revision as of 13:28, 25 August 2025
Overview
[2] Standard (PBR)
Does not support:
An advanced PBR shader that uses
- directional blending to interpolate between two texture sets
- distance blending to blend a detail normal map into the first normal texture
Related shaders
- Blend_dpnbdpn
- Blend_dpndpn
- BlendDetail_dndnd
- BlendDetail_dpndpnn
- Detail_dpndpn
- Detail_dpnn
- DirectionBlend_dpndpn
- DirectionBlend_dpndpnn
- DistanceBlend_dpn
Behavior
Distance blending
Uses distance blending to interpolate
- from the
normal
texture - to the
normal
andnormal[1]
textures blended together
for the normal map of the first set of textures.
The shader uses detailDistance
and detailFadeRange
from the stage RFL to determine the detail range.
Directional blending
This shader has two sets of PBR textures:
diffuse
,specular
andnormal
diffuse[1]
,specular[1]
andnormal[2]
The shader uses a blend factor to interpolate from the first set of textures to second one.
This blend factor is calculated using directional blending.
This involves various inputs:
Input | Description |
---|---|
Normal map | The normal (afterdistance blending) texture is applied to the normal direction before calculating the directional blend factor
|
Red vertex color channel | The directional blend bias |
DirectionParam parameter
|
The directional blend direction |
NormalBlendParam parameter
|
The Directional blend intensity and offset |
diffuse and diffuse[1] (multiplied together)
|
The Directional blend limit |
Transparency
(For some reason) the directional blend factor is used for the transparency, and not any of the diffuse textures alpha channels, which makes for limited use cases.
Vertex Colors
- The colors...
- Red channel is used as the directional blend bias
- Green and blue channels are unused
- Alpha is unused
Bugs
normal[2]
texture, the tangent and binormal vectors are left at 0, which results in no change by the normal map at all.
Speculation:
Material Inputs
Textures
Name | Index | UV Index | Kind | Red | Green | Blue | Alpha |
---|---|---|---|---|---|---|---|
diffuse
|
0 | Any | Albedo | First Albedo color | directional blend limit | ||
diffuse
|
1 | Any | Albedo | Second Albedo color | directional blend limit | ||
specular
|
0 | Any | PRM | First Specular factor; Gets multiplied by 0.25 |
First Smoothness factor | First Metallic factor | First Ambient Occlusion |
specular
|
1 | Any | PRM | Second Specular factor; Gets multiplied by 0.25 |
Second Smoothness factor | Second Metallic factor | Second Ambient Occlusion |
normal
|
0 | Any | Normal map | First Normal map direction | N/A | N/A | |
normal
|
1 | Any | Detail Normal map | Detail Normal map direction | N/A | N/A | |
normal
|
2 | Any | Normal map | Second Normal map direction | N/A | N/A |
Parameters
Name | X | Y | Z | W |
---|---|---|---|---|
DetailFactor
|
UV scale for the normal[1] texture
|
N/A | N/A | N/A |
DirectionParam
|
Directional blend direction | N/A | ||
NormalBlendParam
|
Directional blend intensity | Directional blend offset | N/A | N/A |
Gallery
-
How
DirectionBlend_dpnndpn
is used in Shadow Generations to create a "moss" layer on top of the cliffs in Kingdom Valley -
Showing how the bug affects normals of the second set of textures
Technical
For some reason using the IBL_CAPTURE
debug view the directional blend factor is set to 0.
Why this was done is unknown, and makes no sense, as this produces IBL textures with an incorrect looking environment.
Shader Features |
---|
is_compute_instancing
|
is_use_tex_srt_anim
|
enable_alpha_threshold
|
is_use_gi_prt
|
is_use_gi_sg
|
is_use_gi
|