{
    "Name": "Immersion Apply Mask Material Definition",
    "OverrideMaterial": "engine:engineDefaults.rematerialdefinition",
    "Parameters": {
        "Textures": {
            "textureMask"  : "fallback.texture2dArray"
        }
    },
    "Techniques": [
    {
        "Name": "MaskPortalTechnique",
        "VertexShader": {
            "Entry": "vsFullscreenNearPlane"
        },
        "PixelShader": {
            "Entry": "fsApplyImmersionMask"
        },
        "State" : {
            "AlphaBlend"             : true,
            "WriteDepth"             : false,
            "DepthCompareFunction"   : "Always",
            "AlphaBlendOperation"    : "Add",
            "AlphaSourceFactor"      : "Zero",
            "AlphaDestinationFactor" : "SourceAlpha",
            "RgbBlendOperation"      : "Add",
            "RgbSourceFactor"        : "Zero",
            "RgbDestinationFactor"   : "SourceAlpha"
        }
    },
    {
        "Name": "DepthClear",
        "VertexShader": {
            "Entry": "fullScreen2Vert"
        },
        "State" : {
            "AlphaBlend"             : false,
            "WriteDepth"             : true,
            "DepthCompareFunction"   : "Always",
            "ColorWriteMask"         : "None"
        }
    }],
    "TechniqueMapping": {
        "MaskPortal": "MaskPortalTechnique",
        "DepthClear": "DepthClear"
    }
}

