Normal Blend Node


Blends two normal maps defined by inputs A and B together, normalizing the result to create a valid normal map.


Name Direction Type Binding Description
A Input Vector 3 None First input value
B Input Vector 3 None Second input value
Out Output Vector 3 None Output value


Name Type Options Description
Mode Dropdown Default, Reoriented Selects the the method used for blending.

Generated Code Example

The following example code represents one possible outcome of this node per Mode.


void Unity_NormalBlend_float(float3 A, float3 B, out float3 Out)
    Out = normalize(float3(A.rg + B.rg, A.b * B.b));


void Unity_NormalBlend_Reoriented_float(float3 A, float3 B, out float3 Out)
    float3 t = + float3(0.0, 0.0, 1.0);
    float3 u = * float3(-1.0, -1.0, 1.0);
    Out = (t / t.z) * dot(t, u) - u;