docs.unity3d.com
Search Results for

    Show / Hide Table of Contents

    Normal Blend Node

    Description

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

    Ports

    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

    Controls

    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.

    Default

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

    Reoriented

    void Unity_NormalBlend_Reoriented_float(float3 A, float3 B, out float3 Out)
    {
        float3 t = A.xyz + float3(0.0, 0.0, 1.0);
        float3 u = B.xyz * float3(-1.0, -1.0, 1.0);
        Out = (t / t.z) * dot(t, u) - u;
    }
    
    In This Article
    Back to top
    Copyright © 2025 Unity Technologies — Trademarks and terms of use
    • Legal
    • Privacy Policy
    • Cookie Policy
    • Do Not Sell or Share My Personal Information
    • Your Privacy Choices (Cookie Settings)