{
    "Name": "ShadowReceiver",
    "OverrideMaterial": "engine:pbrCommon.rematerialdefinition",
    "Techniques": [
    {
        "Name": "ShadowReceiver",
        "VertexShader": {
            "Entry": "vsRealityShadowReceiver"
        },
        "PixelShader": {
            "Entry": "fsRealityShadowReceiver"
        },
        "State" : {
            "AlphaBlend"                : true,
            "WriteDepth"                : true,
            "DepthCompareFunction"      : "GreaterEqual",
            "AlphaBlendOperation"       : "Add",
            "AlphaSourceFactor"         : "One",
            "AlphaDestinationFactor"    : "OneMinusSourceAlpha",
            "RgbBlendOperation"         : "Add",
            "RgbSourceFactor"           : "One",
            "RgbDestinationFactor"      : "OneMinusSourceAlpha"
        },
        "FunctionConstants" : {
            "ShadowPcfFilterOption" : "1",
            "EnableClipping" : "false",
            "EnableBtMask" : "false"
        },
        "Variations" : {
            "EnableClipping" : ["true", "false"]
        },
        "RuntimeFunctionConstantDefaults" : {
            "EnableClipping" : "true"
        },
        "DefaultVariations" : [ "ShadowReceiverCommon" ],
        "SupportsRuntimeFunctionConstants" : true
    },
    {
        "Name": "PortalOcclusionShadowReceiver",
        "InheritFromTechnique": "ShadowReceiver",
        "State" : {
            "AlphaBlend" : false,
            "ColorWriteMask" : "None",
            "WriteDepth" : false,
            "DepthCompareFunction" : "GreaterEqual"
        }
    }
    ],
    "TechniqueMapping": {
        "Occlusion": "ShadowReceiver",
        "PortalOcclusion": "PortalOcclusionShadowReceiver"
    }
}
